1 / 44

Synchronization strategies for global computing models

Synchronization strategies for global computing models. Ivan Lanese Computer Science Department Univers ity of Bologna. Roadmap. Global computing Synchronized Hyperedge Replacement SHR vs Fusion Calculus Synchronization Algebras with Mobility Congruence results Future work. Roadmap.

yvette-hyde
Télécharger la présentation

Synchronization strategies for global computing models

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. Synchronization strategiesfor global computing models Ivan Lanese Computer Science Department University of Bologna

  2. Roadmap • Global computing • Synchronized Hyperedge Replacement • SHR vs Fusion Calculus • Synchronization Algebras with Mobility • Congruence results • Future work

  3. Roadmap • Global computing • Synchronized Hyperedge Replacement • SHR vs Fusion Calculus • Synchronization Algebras with Mobility • Congruence results • Future work

  4. What is global computing? • Essentially networks deployed on huge areas • Global computing systems quite common nowadays • Internet, wireless communication networks, overlay networks …

  5. Features of global computing systems • Distribution • Huge areas: localities can not always be hidden • Mobility • Both physical and code mobility • Heterogeneity • Interoperability, coordination • Openness • Reconfigurability • Non-functional requirements

  6. Formal methods for GC • Building models of the system • To concentrate on a particular aspect • To abstract from details • To analyze the properties of the system before building it • Traditional formal methods are not enough for GC • Mobility must be modeled explicitly • Need for compositionality • Need for more abstraction

  7. High level models • We look for models at the high level of abstraction • Models of coordination among subsystems • We need powerful primitives • Multiple synchronizations • Abstractions of full protocols • Declarative specification of constraints • Possible evolutions derived as solution of system of constraints

  8. Roadmap • Global computing • Synchronized Hyperedge Replacement • SHR vs Fusion Calculus • Synchronization Algebras with Mobility • Congruence results • Future work

  9. Synchronized Hyperedge Replacement • A graph transformation approach • Suitable to deal with distribution, mobility, compositionality • (Hyper)edges are systems connected through common nodes • Productions describe the evolution of single edges • Local effect, easy to implement • Synchronization via constraintson nodes • Determines which productions can be applied concurrently • Productions applied indipendently • Allows to define complex transformations • Multiple synchronization is allowed • Declarative approach

  10. Hyperedge Replacement Systems • A production describes how the hyperedge L is rewritten into the graph R L R H 3 3 4 4 2 2 1 1

  11. L R H 3 3 4 4 2 2 1 1 1 1 2 2 3 3 R’ L’ Hyperedge Replacement Systems • A production describes how the hyperedge L is transformed into the graph R Many concurrent rewritings are allowed

  12. Synchronizing productions • Synchronization: productions execute actions on nodes. A transition is allowed iff thesynchronization constraints imposed on actions are satisfied • Many synchronization models are possible (Hoare, Milner, ...)

  13. a a a a A1 B1 A1 A2 B1 B2 A2 B2 An example: Milner SHR • Milner synchronization: pair of edges can synchronize by performing complementary actions

  14. We use name mobility • Actions carry tuples of references to nodes (new or already existent) • References associated to synchronized actions are matched and corresponding nodes are merged a<x> a<y> a<x> A1 B1 a<y> x y A1 A2 B1 B2 x=y A2 B2 SHR with mobility

  15. Brother: Initial Graph Star Reconfiguration: r<w> C C x C C w S r<w> C S C C C Star Rec. Brother Brother Brother x C S C C C S S C C C (5) (1) (2) (3) (4) Example

  16. Algebraic presentation of SHR • Graphs represented as terms • Edges (applied to nodes) are basic constants • Operators for parallel composition and hiding of nodes • Transitions described by a LTS • Inference rules to derive transitions from productions • Allows proofs by induction

  17. Roadmap • Global computing • Synchronized Hyperedge Replacement • SHR vs Fusion Calculus • Synchronization Algebras with Mobility • Congruence results • Future work

  18. Fusion Calculus • Calculus for mobility inspired by π-calculus • Input prefix is not a binder • Symmetric input/output • Names are merged • Input of π-calculus obtained as input+restriction on the objects of the input

  19. SHR vs Fusion Calculus • Many common features • LTS semantics • Synchronization in Milner style • Mobility using fusions • Straightforward mapping of Fusion into SHR • SHR adds: • Graphical presentation • Multiple synchronizations • Concurrent semantics

  20. Fusion Calculus vs SHR Fusion Milner SHR Processes Graphs Sequential processes Hyperedges Names Nodes Parallel comp. Parallel comp. Scope Restriction Prefixes Productions Transitions Interleaving tr.

  21. Example We can also execute both the steps at the same time

  22. Roadmap • Global computing • Synchronized Hyperedge Replacement • SHR vs Fusion Calculus • Synchronization Algebras with Mobility • Congruence results • Future work

  23. Synchronization Algebras with Mobility (1) • Extend Winskel’s synchronization algebras to deal with name mobility and local resources • Allow to have synchronization models as first-class citizens • Can be used to have models with parametric synchronization policies • Many synchronization policies in the same model • Different policies can be compared and combined • Common policies can be expressed as SAMs • Simple ones: Milner, Hoare, broadcast • More complex ones: with priority, treshold synchronization

  24. Synchronization Algebras with Mobility (2)

  25. Synchronization Algebras with Mobility (2) • SAs specify composition of actions • (a,a,τ) a synchronizes with a producing τ • SAMs also provide: • Mapping from parameters of synchronizing actions to parameters of the result • Fusions among parameters • Final actions (performed on local channels) • Some more technical stuff

  26. Milner synchronization as a SAM • Actions: normal actions, coactions, τ, ε • ε stands for “not taking part to the synchronization” • Normal actions synchronize with corresponding coactions giving τ, corresponding parameters are fused, no parameters are propagated • Anything can synchronize with ε, action and parameters are propagated, no fusions • No other synchronization is allowed • Only τ and ε can be performed on local channels

  27. Sample synchronization a b c

  28. Parametric SHR • The SAM is a parameter of the model • Different models obtained via instantiation • Allows to recover Hoare and Milner SHR… • …and to easily define new models • Properties can be proved in general • Allows to highlight relations between properties of SAMs and properties of the model

  29. Heterogeneous SHR • Allows to model heterogeneous systems • Different primitives in different parts of the system • Example: wireless connections with broadcast and wired connections with Milner • Each node is labeled by a SAM • SAMs must be managed dynamically • SAMs are required to form a commutative monoid • Node fusions cause SAMs composition

  30. PRISMA Calculus • Generalization of Fusion based on SAMs • Prefixes of the form x a y . P • Synchronization ruled by the SAM • Standard Fusion is (more or less) Milner PRISMA Calculus • The same approach can be applied to other calculi (with some more technical difficulties)

  31. Roadmap • Global computing • Synchronized Hyperedge Replacement • SHR vs Fusion Calculus • Synchronization Algebras with Mobility • Congruence results • Future work

  32. Abstract semantics for parametric SHR • Bisimulation can be defined in a standard way for SHR • Under reasonable conditions on the SAM bisimilarity is a congruence for parametric SHR • Milner, Hoare and many others satisfy the conditions

  33. Congruence results for Fusion Calculus • Bisimilarity is not a congruence for Fusion Calculus (not closed under substitutions) • The mapping from Fusion into SHR allows to derive a semantics whose bisimilarity is a congruence • The result can be extended also to π-calculus

  34. The idea of the semantics

  35. The idea of the semantics • Allowing many actions in the same transition but on different channels • Process a|b can execute a and b concurrently going to 0 (but can also execute either a or b) • Process a|a is bisimilar to a.a • Process a|a|b can perform τ and b concurrently going to 0 • Allows to observe the degree of parallelism of a process

  36. Congruence properties

  37. Congruence properties • no more a counterexample since the two terms are not bisimilar

  38. Congruence properties • no more a counterexample since the two terms are not bisimilar • Observing where a synchronization is performed becomes important • Otherwise congruence non preserved by context a|[-] • Actions aτ in addition to normal τ • The resulting bisimilarity is a congruence

  39. Roadmap • Global computing • Synchronized Hyperedge Replacement • SHR vs Fusion Calculus • Synchronization Algebras with Mobility • Congruence results • Future work

  40. Future work • I have moved, so my work has changed a bit • Core calculus for service oriented computing • Techniques for proving bisimilarity properties of mobile calculi • Some follow-up of the previous work that I would like to analyze • Congruence results for concurrent semantics of π-calculus • Applying SAMs to π-calculus • Exploiting SAMs for quality of service (see Tuosto & Hirsch work)

  41. General bibliography • “A Model of Distributed Systems based on Graph Rewriting”, P. Degano and U. Montanari, Journal of the ACM, 34 • “Synchronized Hyperedge Replacement with Name Mobility”, D. Hirsch and U. Montanari, Proceedings of CONCUR 2001, LNCS 2154 • “The Fusion Calculus: Expressiveness and Symmetry in Mobile Processes”, B. Victor, Ph.D. Thesis, Department of Computer Systems, Uppsala University, Uppsala, Sweden • “Synchronization trees”, G. Winskel, TCS, 34 • “SHReQ: Coordinating Application Level QoS”, D. Hirsch and E. Tuosto, Proceedings of SEFM 2005, IEEE

  42. My bibliography • “Software Architecture, Global Computing and Graph Transformation via Horn Clauses”, I. Lanese and U. Montanari, Proceedings of SBES 2002 – 16th Brazilian Symposium on Software Engineering • “A Graphical Fusion Calculus”, I. Lanese and U. Montanari, Proceedings of CoMeta: Computational Metamodels Final Workshop, ENTCS 104 • “Mapping Fusion and Synchronized Hyperedge Replacement into Logic Programming”, I. Lanese and U. Montanari, to appear in a special issue of TPLP • “Synchronization Algebras with Mobility for Graph Transformations”, I. Lanese and U. Montanari, Proceedings of FGUC 2004 – Workshop on Foundations of Global Ubiquitous Computing, ENTCS 138

  43. My bibliography • “Synchronized Hyperedge Replacement for Heterogeneus Systems”, I. Lanese and E. Tuosto, Proceedings of COORDINATION 2005, LNCS 3454 • "Hoare vs Milner: Comparing Synchronizations in a Graphical Framework with Mobility", I. Lanese and U. Montanari, Proceedings of GT-VC‘05, ENTCS, to appear • "Exploiting User-Definable Synchronizations in Graph Transformation",I. Lanese, Proceedings of GT-VMT'06, ENTCS, to appear • "Synchronization Strategies for Global Computing Models",Ivan Lanese, Ph.D. Thesis, Computer Science Department, University of Pisa, to appear

  44. End of talk Thanks Questions?

More Related