Presentation is loading. Please wait.

Presentation is loading. Please wait.

Synchronized Hyperedge Replacement for Heterogeneous Systems joint work with Emilio Tuosto Dipartimento di Informatica Università di Pisa Ivan Lanese Dipartimento.

Similar presentations


Presentation on theme: "Synchronized Hyperedge Replacement for Heterogeneous Systems joint work with Emilio Tuosto Dipartimento di Informatica Università di Pisa Ivan Lanese Dipartimento."— Presentation transcript:

1 Synchronized Hyperedge Replacement for Heterogeneous Systems joint work with Emilio Tuosto Dipartimento di Informatica Università di Pisa Ivan Lanese Dipartimento di Informatica Università di Pisa COORDINATION 2005, Namur, 20-23 April 2005

2 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Which kind of systems? Usually not cats and dogs Entities on huge networks applications web services computers …

3 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Features of the systems Systems composed by interacting components pre-existing, off-the-shelf heterogeneous different computational power, features, owner, … Interaction via middleware for communication many primitives for communication complex protocols Mobile/reconfigurable systems

4 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Classical formal tools Frameworks in literature usually have one simple primitive for communication e.g.  -calculus uses message passing Other primitives must be encoded not always an easy task No primitives modeling complex protocols useful for abstract models of coordination

5 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Our approach Two level modeling Modeling the primitives provided by the middleware synchronization algebras with mobility (SAMs) Modeling the system hypergraphs evolution via synchronized hyperedge replacement (SHR) synchronization uses SAMs

6 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Roadmap Our approach A simple example A less simple example What else?

7 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Roadmap Our approach A simple example A less simple example What else?

8 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Basics of system modeling Hyperedges are system components Nodes are communication channels or ports Nodes can be global or local

9 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Basics of hyperedge replacement Productions rewrite an edge into a general graph attached to the same nodes Context free mechanism Limited expressivity  synchronization is needed 

10 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Basics of synchronization Specified via constraints on nodes adjacent to the rewritten edge A set of productions can be applied in one step iff the constraints are satisfied Problems: how to specify constraints? when constraints are satisfied?

11 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Synchronization: general idea A production performs actions on nodes If the actions can be composed, then constraints are satisfied Defined using a synchronization algebra (extends Winskel’s definition)  a b ε

12 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Synchronization algebras A tuple Act: set of actions ActComp: set of triples of actions a triple (a,b,c) specifies that a can synchronize with b giving c associative and commutative ε: action stands for “not involved in the synchronization” neutral element in the synchronization c=ε iff a=ε and b=ε Allow to specify synchronization, nondeterminism, asynchronous execution and incompatibility between actions

13 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: Milner (CCS) SA Actions {a, a, , ε} Synchronizations (a,a,  ) and symmetric (,ε, ) and symmetric Other synchronizations (broadcast, mutual exclusion,…) can be easily modeled

14 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Adding mobility Each action is equipped with a tuple of node references During synchronization we compute the references attached to the resulting action compute a fusion among nodes mobility in the Fusion Calculus style apply the fusion to the graph and to the references of the resulting action

15 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Modeling mobility Actions have an arity (number of attached references) We extend the tuple (a,b,c) to (a,b,(c,Mob)) Mob: partial function {1,…,ar(a)} + {1,…,ar(b)}  {1,…} Parameters of c computed using Mob surjective on {1,…,ar(c)} Elements that are mapped to the same position are merged abc 2 32 …

16 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Other issues Some channels are local only actions that do not require further interactions are meaningful here modeled by a subset Fin of actions May have many SAMs with the same formal structure SAMs are named to distinguish them

17 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: Milner (Fusion) SAM Actions {a, a, , ε} ar(a)=ar(a), ar(  )=ar(ε)=0 Synchronizations (a,a,  ) and symmetric corresponding names are merged (,ε, ) and symmetric names of the non-ε action are propagated Fin= { , ε}

18 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Managing multiple SAMs SAMs label nodes For new nodes a SAM must be specified When merging nodes, SAMs must be composed SAMs form a programmer-defined commutative monoid monoidal operation used for composition

19 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Roadmap Our approach A simple example A less simple example What else?

20 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: graph S1S1 Au C … x:Mil u:Mil SnSn

21 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: productions C x:Mil C y:Mil  Au x u:Mil x:Mil  u:Mil auth,y:Mil auth,u:Mil

22 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: synchronization S1S1 Au C … x:Mil u:Mil SnSn auth,y:Mil auth,u:Mil

23 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: final graph S1S1 Au C … x:Mil u:Mil SnSn Assumption: Mil Mil = Mil

24 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto The full power of our approach Suppose servers are search engines and some clients want to submit the request to all of them Want to use broadcast synchronization between client and servers but Milner synchronization to interact with Au Just change the production for the client with y:Bdc and define Mil Bdc = Bdc

25 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: synchronization again S1S1 Au C … x:Mil u:Mil SnSn auth,y:Bdc auth,u:Mil

26 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Example: final graph again S1S1 Au C … x:Mil u:Bdc SnSn Assumption: Mil Bdc = Bdc

27 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Roadmap Our approach A simple example A less simple example What else?

28 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto A network example Network with routers and clients Channels can have 4Kb/16Kb packets error detection/no error detection To communicate a client creates a virtual communication channel that uses the underlying infrastructure The communication channel supports 16Kb packets/error detection only if all the underlying channels do

29 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Modeling the scenario Eight different SAMs with all the combinations of 4Kb < 16Kb no error detection < error detection communication < control SAMs provide variants of Milner synchronization e.g. action for detecting errors SAMs form a partial order (pointwise) SAM composition corresponds to glb

30 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Building a virtual channel C RR C R R 16,√ 4,× 16,× 4,√ 16,√ 16,× 4,√ comm,16,× Act

31 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Ideas on the productions Each production creates a node labelled with a SAM for communication with the features provided by the nearby channels During synchronization these nodes are merged to build the communication node it is automatically labelled with the desired SAM

32 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Roadmap Our approach A simple example A less simple example What else?

33 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Behind graphic A textual representation for hypergraphs, transitions, productions A labelled transition system for system evolution Inference rules to derive transitions from productions Production schemas to define classes of similar productions

34 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Only for the most proud

35 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Conclusions A general framework for modeling heterogeneous systems SAMs to model synchronization/complex interaction protocols SHR to model system evolution Different synchronizations can be used Synchronization policy can be changed dynamically Sound mathematical foundations

36 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto Future work Use SHR+SAMs to model real protocols/heterogeneous systems Use SAMs for QoS [see Emilio’s poster] Study the expressivity of the framework Implement SHR (someone wants to do that?) Apply SAMs to process calculi [paper submitted to CONCUR] Study the relationships between SAMs (composition/refinement)

37 COORDINATION 2005, 20-23 April, Namur, Belgium Ivan Lanese and Emilio Tuosto


Download ppt "Synchronized Hyperedge Replacement for Heterogeneous Systems joint work with Emilio Tuosto Dipartimento di Informatica Università di Pisa Ivan Lanese Dipartimento."

Similar presentations


Ads by Google