protocol converter synthesis using timed petri nets
DESCRIPTION
Protocol Converter Synthesis Using Timed Petri Nets. Kevin Camera EE249 Fall 2000 10/24/2000. Motivation. Evolution of heterogeneous, distributed networks Protocol converters act as mediators between otherwise incompatible protocols - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/1.jpg)
Protocol Converter Synthesis Using Timed Petri Nets
Kevin CameraEE249 Fall 2000
10/24/2000
![Page 2: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/2.jpg)
Motivation
Evolution of heterogeneous, distributed networks Protocol converters act as mediators
between otherwise incompatible protocols
This work improves on previous converter modeling and synthesis methodologies
![Page 3: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/3.jpg)
Services and Protocols
Layer N services provide functions for layer N+1 via service access points User-based functional specification
Protocol entities (PE) exchange protocol data units (PDU) via lower and upper SAPs Low-level behavioral specification
![Page 4: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/4.jpg)
Converter Design Approaches
Top-down:service-level conversion Easy to implement,
tends to be “passive”
Bottom-up:protocol-level conversion Very powerful, very
complex
![Page 5: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/5.jpg)
Converter Properties
Safety Free from deadlock or livelock, and is
complete Liveness
Performs the required functionality Timeliness
Satisfies the timing of both protocols
![Page 6: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/6.jpg)
Design Criteria
Modeling formalism CFSM, TPN, etc.
Design approach Service level, protocol level, or hybrid
Design methodology Analytic: trial-and-error iterations Synthetic: systematic, safe
generation
![Page 7: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/7.jpg)
Design Criteria (con’t)
Information transfer issues Direct: no buffers, messages
transmitted immediately to each protocol
Indirect: messages stored in non-FIFO buffer, re-ordered, and transmitted
Synchronization issues Mapping of messages (traces) to
ensure compatbility
![Page 8: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/8.jpg)
Design Criteria (con’t)
Timeliness Internal timing and protocol
requirements Data loss and recovery
Dynamicity Self-induced, active communication
Concurrency Complexity
![Page 9: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/9.jpg)
Timed Petri Net Model
Standard Petri net with predicated and timed transitions
New notations Input/Output actions marked with +/- Parallel composition: PN1 || PN2
Trace “schuffling”: t1 t2
Complement of a trace: ~t
![Page 10: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/10.jpg)
Example: Alternating Bit
![Page 11: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/11.jpg)
Example: Poll-End
![Page 12: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/12.jpg)
Synthesis Technique
Greatest common service definition
Trace generation and collection Trace synchronization Synthesis of Petri Net model
![Page 13: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/13.jpg)
Greatest Common Service
Start with both service descriptions I/O operations are
service primitives Map equivalent
primitives into a service interface converter (SIC)
Remove primitives not mapped in SIC
)||||(}_,_{ MNMupperNupper SSICSPGCSD
![Page 14: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/14.jpg)
Example: GCSD
?
![Page 15: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/15.jpg)
Trace Generation
Interested in traces of each separate network which contribute to the GCSD
Can be found with following analysis: Let TN be set of traces at {lower,upper}_N Find N’, a pruning with contributions to S’N
Find us_N, composition of lower services and communication channel
TN = N’ || us_N
![Page 16: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/16.jpg)
Example: Trace Generation
TABP ={ACCEPT –DATA(bit) (+ACK(~bit) –DATA(bit))* +ACK(bit),+DATA(bit) (-ACK(~bit) +DATA(bit))* DELIVER -ACK(bit),+DATA(bit) DELIVER (-ACK(~bit) +DATA(bit))* -ACK(bit),+DATA(bit) (+DATA(bit))* DELIVER -ACK(bit),+DATA(bit) DELIVER (+DATA(bit))* -ACK(bit)}
TPE ={SEND +poll (-data SEND) (-data SEND)* -end,+poll SEND (-data SEND) (-data SEND)* -end,(+poll)*,-poll (+data RECEIVE) (+data RECEIVE)* +end,(-poll)*}
![Page 17: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/17.jpg)
Trace Synchronization
For trace sets TN and TM found above: Prune the protocol components TRN, TRM
Take complements to get TCN
Schuffle the complements (TCN TCM)
14 rules for ordering data, confirmation, ack, and nack messages safely (N+m,N-c) (M-m) = (N+m,M-m,N-c)
![Page 18: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/18.jpg)
Example: Trace Synchronization
TCABP = {lower_ABP} ~TCABP ={-DATA(bit) (+ACK(~bit) -DATA(bit))* +ACK(bit),+DATA(bit) (-ACK(~bit) +DATA(bit))* -ACK(bit),-DATA(bit) (-DATA(bit))* +ACK(bit)}
TCPE = {lower_ABP} ~TCABP ={-poll (+data SEND) (+data SEND)* +end,(-poll)*,+poll (-data SEND) (-data SEND)* -end, (+poll)*}
TC = TCABP TCPE
![Page 19: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/19.jpg)
Result (after PN synthesis)
![Page 20: Protocol Converter Synthesis Using Timed Petri Nets](https://reader035.vdocuments.mx/reader035/viewer/2022062409/56814d80550346895dbade9c/html5/thumbnails/20.jpg)
Summary
Hybrid approach Starts with service specification, but
performs all synthesis on protocols Timed Petri net model
Can incorporate timing in specification Models concurrency and comes with well-
known analysis algorithms Resulting converter is safe and
functional