1 synchronization strategies for global computing models ivan lanese computer science department...

25
1 Synchronization strategies for global computing models Ivan Lanese Computer Science Department University of Bologna

Post on 19-Dec-2015

216 views

Category:

Documents


3 download

TRANSCRIPT

1

Synchronization strategiesfor global computing models

Ivan LaneseComputer Science Department

University of Bologna

2

Roadmap

Application field: global computing

The main tool: graphs and SHR

Some contributions

– Parametric synchronization

– Compositionality properties

– Relations with Fusion Calculus

And after?

3

What is global computing?

Essentially networks

deployed on huge areas

Global computing

systems quite common

nowadays

– Internet, wireless

communication networks,

4

Challenges of global computing systems

Distribution, mobility, heterogeneity, openness,

reconfigurability, non-functional requirements

Traditional formal methods are not enough

– Strong emphasis on coordination among

subsystems

– Mobility must be modeled explicitly

– Need for compositionality and high abstraction

5

Synchronized Hyperedge Replacement

We want to model systems as graphs

Components are edges

Links are common nodes

Behaviour specified by transitions

– Derived from the behaviour (productions) of single components

– Keep into account synchronization and communication/mobility

6

Hyperedge Replacement Systems

A production describes how the hyperedge L is rewritten into the graph R

R

1

2 3 4

L

1

2 3 4 H

7

Hyperedge Replacement Systems

A production describes how the hyperedge L is transformed into the graph R

R

R’

1

2 3 4

1

2

3

Many concurrent rewritings are allowed

L

L’

1

2 3 4

1

2

3

H

8

Synchronizing productions

Synchronization: productions execute actions

on nodes. Actions on the same node should be

compatible

Two existing synchronization models: Milner

(message passing) and Hoare (agreement)

9

Milner SHR

Milner synchronization: pair of edges can synchronize by performing complementary actions

a

A1

aA1 B1

a

A2

a

B1 B2

A2 B2

10

SHR with mobility

– Actions carry references to nodes

– References associated to synchronized actions are matched and

corresponding nodes are merged

We use node mobility

a<x>

A1

a<x>A1 B1

a<y>

A2

a<y>

B1 B2

A2 B2

x y

x=y

11

Example

x

Initial Graph

C

Brother:

C

C

C

C S

Star Reconfiguration:

w

r<w>

r<w>

x CBrother

C

C

C

C

C

C

CC CBrother Brother

(4)(3)(2)(1)

Star Rec.S

S

SS

(5)

12

Algebraic presentation of SHR

Helps the development of the theory

– Proofs by induction

Graphs represented as terms in an algebra

– Edges are basic constants

– Operators for composing them

Transitions described by a labelled transition system

Inference rules to derive transitions from productions

13

Parametric synchronization

The expressive powers of Hoare and Milner

synchronizations are not comparable

– Can specify different classes of reconfigurations

Is it possible to find some more general framework?

Winskel proposed synchronization algebras to

describe general synchronizations

– Not suitable for synchronizations with mobility

We generalize them to SAMs (Synchronization

Algebras with Mobility)

14

Synchronization Algebras with Mobility

15

Synchronization Algebras with Mobility

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

– Some more technical stuff

16

Milner SAM on 2 actions

in, out, τ, ε

(in, out, τ)

(a, ε, a)a ε a

in out τ

17

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 for any SAM or for a

class of SAMs

Many SAMs can be used in the same model

– Useful to model heterogeneous systems

18

Compositionality for parametric SHR

Bisimulation allows to observe interactions

of a system with the environment

– Can be defined in a standard way for SHR

Bisimulation is a congruence for SHR with

most SAMs

– Behaviour of a system can be inferred from the

behaviour of its components

19

Fusion Calculus

Calculi for mobility allow to model concurrent

and mobile systems

– π-calculus is the most used

Fusion Calculus generalizes and simplifies it

– More symmetric

– Shared-state update

20

Milner SHR vs Fusion Calculus

Apparently very different models

Some important similarities

– Synchronization in Milner style

– Mobility using fusions

Faithful mapping of Fusion into Milner SHR

SHR is more general

– Graphical presentation

– Multiple synchronizations

– Concurrent semantics

21

Fusion Calculus vs Milner SHR

Fusion Milner SHR

Processes Graphs

Sequential processes Hyperedges

Names Nodes

Comm. primitives Productions

Transitions Interleaving tr.

22

Example

).|.|.)(( RzyQyxPuxxy

)||)((

).|.|)(().|.|.)(( )(

RQPy

RzyQyxPyRzyQyxPuxxyzx

uxx

23

Exploitation of the mapping

The results obtained for SHR can be applied to

Fusion Calculus

PRISMA Calculus = Fusion + SAMs

The semantics of Fusion induced by the

mapping is compositional

– The result does not hold for the standard semantics

– The trick is concurrency

24

Future work

Some applications to π-calculus

– Analysis of the concurrent semantics of π-calculus

– Application of SAMs to π-calculus

From global computing to service oriented computing

– In service oriented computing services are discovered, invoked and composed

– Which are the correct primitives to model them?

– Which are the interesting properties and equivalences?

25

End of talk