1 / 21

Synthesis of Protocol Converter Using Timed Petri-Nets

Synthesis of Protocol Converter Using Timed Petri-Nets. Presented by:. Anh Dang Balaji Krishnamoorthy Manoj Iyer. Motivation. Heterogeneous, distributed networks Protocol converters allow communication among incompatible network protocols

lexiss
Download Presentation

Synthesis of Protocol Converter Using Timed Petri-Nets

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Synthesis of Protocol Converter Using Timed Petri-Nets Presented by: Anh Dang Balaji Krishnamoorthy Manoj Iyer

  2. Motivation • Heterogeneous, distributed networks • Protocol converters allow communication among incompatible network protocols • The authors of this paper describe a new synthesis technique used in protocol converter design and modeling

  3. Service and Protocol Concepts Communication services (to users) is organized as a stack of layers. Each layer offers services to the next higher layer • High-level abstraction: providing a number of communication services to users (service level) • Low-level abstraction: number of cooperating protocol entities (PEs) exchange protocol messages called protocol data units (PDUs) (protocol level)

  4. Converter Design Approaches • Top-down:service-level conversion • Easy to implement, tends to be “passive” • Bottom-up:protocol-level conversion • Very powerful, very complex • Hybrid: combination of Top-down and Bottom-up

  5. Converter Properties • Safety • Free from deadlock or livelock, and is complete • Liveness • Performs the required functionality • Timeliness • Satisfies the timing of both protocols

  6. Converter Design Criteria • Modeling formalism • CFSM, Petri Nets, etc. • Design approach • Service level, protocol level, or hybrid • Design methodology • Analytic: trial-and-error iterations • Synthetic: systematic, safe generation

  7. 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 compatibility

  8. Design Criteria (con’t) • Timeliness • Internal timing and protocol requirements • Data loss and recovery • Dynamicity • Self-induced, active communication • Concurrency • Complexity

  9. 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

  10. Some more for petri net

  11. Synthesis Technique • Greatest common service definition • Trace generation and collection • Trace synchronization • Synthesis of Petri Net model

  12. 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

  13. Example: GCSD ?

  14. 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

  15. 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)*} Example: Trace Generation

  16. 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)

  17. 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)*} Example: Trace Synchronization TC = TCABPTCPE

  18. Result (after PN synthesis)

  19. Example: Alternating Bit (pick one)

  20. Example: Poll-End (pick one)

  21. 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

More Related