Download presentation
Presentation is loading. Please wait.
Published byGrace Rooney Modified over 11 years ago
1
Synthesis of Protocol Converter Using Timed Petri-Nets Anh Dang Balaji Krishnamoorthy Manoj Iyer Presented by:
2
Motivation Heterogeneous, distributed networks 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 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 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 Top-down: service-level conversion –Easy to implement, tends to be passive Bottom-up: protocol-level conversion Bottom-up: protocol-level conversion –Very powerful, very complex Hybrid: combination of Top-down and Bottom-up Hybrid: combination of Top-down and Bottom-up
5
Converter Properties Safety Safety –Free from deadlock or livelock, and is complete Liveness Liveness –Performs the required functionality Timeliness Timeliness –Satisfies the timing of both protocols
6
Converter Design Criteria Modeling formalism Modeling formalism –CFSM, Petri Nets, etc. Design approach Design approach –Service level, protocol level, or hybrid Design methodology Design methodology –Analytic: trial-and-error iterations –Synthetic: systematic, safe generation
7
Design Criteria (cont) Information transfer issues 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 Synchronization issues –Mapping of messages (traces) to ensure compatibility
8
Design Criteria (cont) Timeliness Timeliness –Internal timing and protocol requirements –Data loss and recovery Dynamicity Dynamicity –Self-induced, active communication Concurrency Concurrency Complexity Complexity
9
Timed Petri Net Model Standard Petri net with predicated and timed transitions Standard Petri net with predicated and timed transitions New notations New notations –Input/Output actions marked with +/- –Parallel composition: PN 1 || PN 2 –Trace schuffling: t 1 t 2 –Complement of a trace: ~t
10
Some more for petri net Some more for petri net
11
Synthesis Technique Greatest common service definition Greatest common service definition Trace generation and collection Trace generation and collection Trace synchronization Trace synchronization Synthesis of Petri Net model Synthesis of Petri Net model
12
Greatest Common Service Start with both service descriptions Start with both service descriptions –I/O operations are service primitives Map equivalent primitives into a service interface converter (SIC) Map equivalent primitives into a service interface converter (SIC) Remove primitives not mapped in 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 Interested in traces of each separate network which contribute to the GCSD Can be found with following analysis: Can be found with following analysis: –Let T N 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 –T N = N || us_N
15
Example: Trace Generation T ABP = {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)} T PE = {SEND +poll (-data SEND) (-data SEND)* -end, +poll SEND (-data SEND) (-data SEND)* -end, (+poll)*, -poll (+data RECEIVE) (+data RECEIVE)* +end, (-poll)*}
16
Trace Synchronization For trace sets T N and T M found above: For trace sets T N and T M found above: –Prune the protocol components TR N, TR M –Take complements to get TC N –Schuffle the complements (TC N TC M ) 14 rules for ordering data, confirmation, ack, and nack messages safely 14 rules for ordering data, confirmation, ack, and nack messages safely –(N+m,N-c) (M-m) = (N+m,M-m,N-c)
17
Example: Trace Synchronization TC ABP = {lower_ABP} ~TC ABP = {-DATA(bit) (+ACK(~bit) -DATA(bit))* +ACK(bit), +DATA(bit) (-ACK(~bit) +DATA(bit))* -ACK(bit), -DATA(bit) (-DATA(bit))* +ACK(bit)} TC PE = {lower_ABP} ~TC ABP = {-poll (+data SEND) (+data SEND)* +end, (-poll)*, +poll (-data SEND) (-data SEND)* -end, (+poll)*} T C = TC ABP TC PE
18
Result (after PN synthesis)
19
Example: Alternating Bit (pick one)
20
Example: Poll-End (pick one)
21
Summary Hybrid approach Hybrid approach –Starts with service specification, but performs all synthesis on protocols Timed Petri net model Timed Petri net model –Can incorporate timing in specification –Models concurrency and comes with well-known analysis algorithms Resulting converter is safe and functional Resulting converter is safe and functional
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.