PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed...

14
PDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas Robert [email protected]

Transcript of PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed...

Page 1: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

PDP 4PS : Periodic Delayed

Protocol for Partitioned

Systems

Authors: Antoine Jaouën

Etienne Borde

Laurent Pautet

Thomas Robert

[email protected]

Page 2: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services 4/17/2014 Page 2 PDP 4PS : A deterministic communication protocol

Introduction & Issues Context

N1 Inter-Partition Communication mechanism

• Usage : Data Fusion, Triple Modular Redundancy

• Issues : Natively not supported by ARINC

Non-Propagation Non disturbance of non-faulty partitions by faulty partitions (i.e.

port overflow, message loss)

Message Identification Ability to identify the origin of each message

Safety Critical systems • Under standard specification

(ARINC, CENELEC-EN 50128)

• Partitioned systems (space & time

segregation of applications)

• Certification requirements

Page 3: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services 4/17/2014 Page 3 PDP 4PS : A deterministic communication protocol

Introduction & Issues The Periodic Delayed Protocol (PDP)

Objectives : Deterministic N1 mechanism • Message consumption order known

• Execution time & memory overheads minimized (e.g. No locks)

• Tight estimation of sufficient memory space

Communication Model • Periodic task set

• One message produced per job

• Message available at the sender’s job deadline

• PDP available next receiver’s job

• Messages ordered with jobs deadlines

Communication Mechanism • Wait-free shared circular queue (aka. PDP buffer)

• One pre-defined slot per message

Message Identification

• One pre-defined message per slot

Non-Propagation

Page 4: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services

B A C R B A R B C A B R A B C A B A

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29

4/17/2014 Page 4

Introduction & Issues PDP - Example

PDP 4PS : A deterministic communication protocol

a1 b1 b2 c1 a2 b3 a3 b4 c2 a4 b5 a5 b6 c3

PDP Available

New job of R

PDP buffer

Nothing to read Nothing to read

Task A B C R

P

D

C

6

5

2

5

5

1

10

10

1

15

15

2

A A

B

B

R

A B

C

A B A B

C

B

C

R

Key:

A

Deadline of A

R can consume

Page 5: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services

B

31 33 35 37 39 41 43 45 47 49 51 53 55 57 59

4/17/2014 Page 5

Introduction & Issues PDP - Example

PDP 4PS : A deterministic communication protocol

a1 b1 b2 c1 a2 b3 a3 b4 c2 a4 b5 a5 b6 c3

PDP Outdated PDP Available

New job of R

PDP buffer

Task A B C R

P

D

C

6

5

2

5

5

1

10

10

1

15

15

2

Key:

A

Deadline of A

Page 6: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services 4/17/2014 Page 6 PDP 4PS : A deterministic communication protocol

Introduction & Issues PDP adaptation to partitioned systems

I) Implementation issue

Space & time segregation • PDP : for shared memory systems

• PDP : direct transfer to the receiver queue

II) Design issue

• How do we deal with disjoint memory ?

• How do we allow the PDP semantic

• How do we maintain the Non-Propagation

& Message Identification properties

Activated Activated

Activated

P1 P2 P3

Context switch Context switch

Time

Activated

Inter-Partition Communication example

Page 7: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services 4/17/2014 Page 7

PDP 4PS : For Partitioned Systems General Methodology

PDP 4PS : A deterministic communication protocol

Message Conditioning Before Transfer • Store msg in sender memory space

• Prevent from msg overproduction

• Non-Propagation

• Provide sender IDs to msg

• Message Identification

Message Actual Transfer • Done before next receiver activation

Message Conditioning After Transfer • Store msg in receiver memory space

• Insert msg in the RPB

• Non-Propagation

• Message Identification

General architecture

Page 8: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services 4/17/2014 Page 8

PDP 4PS 4PS – For Partitioned Systems

Features:

• Role separation (DO-297)

• XML configuration

Two architectures:

1. For platform suppliers

• Native implementation

• Wait-free access protocol

2. For application suppliers

• Reduce maintenance effort

PDP 4PS : A deterministic communication protocol

Page 9: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services 4/17/2014 Page 9

PDP 4PS : For Platform Supplier Methodology

PDP 4PS : A deterministic communication protocol

Message Conditioning Before Transfer • Store msg in EPB under PDP policy

• Check slot state before insertion

• No overproduction

• Non-Propagation

Message Actual Transfer • By the Partitioning Kernel

• Execute at receiver partition activation

• Transfer only PDP available msg

• Statically determined

• Message Identification

Message Conditioning After Transfer • Insert the msg in the RPB by the

Partitioning Kernel

Transfer and insertion by Partitioning

Kernel

Emission by senders Reception by receiver

Platform supplier architecture

Page 10: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services

P1 P3 P1 P3 P1 Idle P1 Idle

B A C R B A B A C R B A B C A B A

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29

4/17/2014 Page 10

PDP 4PS : For Platform Supplier An example

PDP 4PS : A deterministic communication protocol

P2 P2 P2

a1 b1 b2 c1 a2 b3 RPB

EPB

P1 EPB

P2 a1 b1 b2 a2 b3 a3 b4 a4 b5 a5 b6 c3 c2 c1

Flush Nothing to flush

PDP Available PDP Available

R can consume

Partition Task

P1 (RMS) A, B

P2 C

P3 R

Task A B C R

P

D

C

6

5

2

5

5

1

10

10

1

15

15

2

Page 11: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services

P1 P3 P1 P3 P1 Idle P1 Idle

B A C R B A B A C R B A B C A B A

31 33 35 37 39 41 43 45 47 49 51 53 55 57 59

4/17/2014 Page 11

PDP 4PS : For Platform Supplier An example

PDP 4PS : A deterministic communication protocol

P2 P2 P2

a1 b1 b2 c1 a2 b3 a3 b4 c2 a4 b5 a5 b6 c3 RPB

EPB

P1 EPB

P2 a3 b4 a4 b5 a5 b6 a6 b7 c3 c2

Flush

PDP Available PDP Available

PDP Outdated R can consume

c4

Partition Task

P1 (RMS) A, B

P2 C

P3 R

Task A B C R

P

D

C

6

5

2

5

5

1

10

10

1

15

15

2 New job of R

Page 12: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services 4/17/2014 Page 12

PDP 4PS : For Application Supplier Methodology

PDP 4PS : A deterministic communication protocol

Message Conditioning Before Transfer • Store msg in Partitioning Kernel

sending port

• Maintain the number of sent msg by job

• No overproduction

• Non-Propagation

Message Actual Transfer • Partitioning Kernel original transfer

policy (e.g. FIFO)

• Done before next receiver activation

Message Conditioning After Transfer • Store msg in Partitioning Kernel

receiving ports

• Message Identification

• Insert the msg in the RPB by the

receiver

Transfer by Partitioning Kernel

Emission by senders Insertion and reception by receiver

Application Supplier architecture

Page 13: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services 4/17/2014 Page 13 PDP 4PS : A deterministic communication protocol

Conclusion

N1 Inter-Partition Communication mechanism

• Main properties

- Periodic task set

- Specific communication model

- Deterministic message delivery order

- Non-Propagation and Message Identification properties

• Two architectures

- For Platform supplier : wait-free

- For Application supplier

• Experimented on POK (Partitioned Open Kernel)

Further works

• Model transformation to produce kernel or application configuration

• Adaptation to direct memory accesses

Page 14: PDP 4PS : Periodic Delayed Protocol for Partitioned · PDF filePDP 4PS : Periodic Delayed Protocol for Partitioned Systems Authors: Antoine Jaouën Etienne Borde Laurent Pautet Thomas

direction ou services 4/17/2014 Page 14 PDP 4PS : A deterministic communication protocol

Thank you