Towards Distributed Reo Jos Proena Centrum voor Wiskunde en - - PowerPoint PPT Presentation

towards distributed reo
SMART_READER_LITE
LIVE PREVIEW

Towards Distributed Reo Jos Proena Centrum voor Wiskunde en - - PowerPoint PPT Presentation

Motivation Distributed Reo Behaviour agreement Conclusions Towards Distributed Reo Jos Proena Centrum voor Wiskunde en Informatica CIC, 2007 J. Proena (CWI) Towards Distributed Reo CIC, 2007 1 / 15 Motivation Distributed Reo


slide-1
SLIDE 1

Motivation Distributed Reo Behaviour agreement Conclusions

Towards Distributed Reo

José Proença

Centrum voor Wiskunde en Informatica

CIC, 2007

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 1 / 15

slide-2
SLIDE 2

Motivation Distributed Reo Behaviour agreement Conclusions

Outline

1

Motivation

2

Distributed Reo Model

3

Behaviour agreement

4

Conclusions

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 2 / 15

slide-3
SLIDE 3

Motivation Distributed Reo Behaviour agreement Conclusions

Outline

1

Motivation

2

Distributed Reo Model

3

Behaviour agreement

4

Conclusions

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 3 / 15

slide-4
SLIDE 4

Motivation Distributed Reo Behaviour agreement Conclusions

Motivation

Coordination: How to implement it? Where to run it?

Distributed Coordination

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 4 / 15

slide-5
SLIDE 5

Motivation Distributed Reo Behaviour agreement Conclusions

Motivation

Coordination: How to implement it? Where to run it?

Distributed Coordination

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 4 / 15

slide-6
SLIDE 6

Motivation Distributed Reo Behaviour agreement Conclusions

Motivation

Coordination: How to implement it? Where to run it?

Distributed Coordination

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 4 / 15

slide-7
SLIDE 7

Motivation Distributed Reo Behaviour agreement Conclusions

Architecture

Designer Deployment Resolver Local Optimization Instantiator Kernel

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 5 / 15

slide-8
SLIDE 8

Motivation Distributed Reo Behaviour agreement Conclusions

Architecture

Designer

Use of tools, such as a GUI Deployment Resolver Local Optimization Instantiator Kernel

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 5 / 15

slide-9
SLIDE 9

Motivation Distributed Reo Behaviour agreement Conclusions

Architecture

Designer

Deployment Resolver

Unspecified locations are re-

  • solved. Constraints and poli-

cies need to be considered. Local Optimization Instantiator Kernel

a b d

c c

c

c c

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 5 / 15

slide-10
SLIDE 10

Motivation Distributed Reo Behaviour agreement Conclusions

Architecture

Designer Deployment Resolver

Local Optimization

Plugins: CA CC CSP Instantiator Kernel

a b d

c c

c

c c

x

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 5 / 15

slide-11
SLIDE 11

Motivation Distributed Reo Behaviour agreement Conclusions

Architecture

Designer Deployment Resolver Local Optimization

Instantiator

Creation of primitives Kernel

b a

c c c

d

c

c

x

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 5 / 15

slide-12
SLIDE 12

Motivation Distributed Reo Behaviour agreement Conclusions

Architecture

Designer Deployment Resolver Local Optimization Instantiator

Kernel

Execution of the engine

b a

c c c

d

c

c

x

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 5 / 15

slide-13
SLIDE 13

Motivation Distributed Reo Behaviour agreement Conclusions

Outline

1

Motivation

2

Distributed Reo Model

3

Behaviour agreement

4

Conclusions

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 6 / 15

slide-14
SLIDE 14

Motivation Distributed Reo Behaviour agreement Conclusions

Distributed Reo

Distributed: deals with partial knowledge. Primitive (coordinator) Node

Implemention: Scala language

Integrates features of object-oriented and functional languages; Fully interoperable with Java; Actor model for communication.

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 7 / 15

slide-15
SLIDE 15

Motivation Distributed Reo Behaviour agreement Conclusions

Distributed Reo

Distributed: deals with partial knowledge. Primitive (coordinator) Node

Implemention: Scala language

Integrates features of object-oriented and functional languages; Fully interoperable with Java; Actor model for communication.

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 7 / 15

slide-16
SLIDE 16

Motivation Distributed Reo Behaviour agreement Conclusions

Distributed Reo

Primitives and nodes

Each port has a location. Must react to some messages: Request Behabiour Reply Behaviour Refuse (reason) Give Behaviour & Request/Give Data Reply Data Can be seen as a particular case of a primitive that: has no state; can be distributed; propagates synchronous constraints.

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 8 / 15

slide-17
SLIDE 17

Motivation Distributed Reo Behaviour agreement Conclusions

Distributed Reo

Primitives and nodes

Each port has a location. Must react to some messages: Request Behabiour Reply Behaviour Refuse (reason) Give Behaviour & Request/Give Data Reply Data Can be seen as a particular case of a primitive that: has no state; can be distributed; propagates synchronous constraints.

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 8 / 15

slide-18
SLIDE 18

Motivation Distributed Reo Behaviour agreement Conclusions

Behaviour

What is it?

What each primitive can do

Which end points can flow data, and relation between data flowing in the end points.

Join of behaviours

Given the behaviour of two primitives, the behaviour of the composition of both can also be

  • btained.

Example: Connector Colouring

Colouring tables provide the behaviour of each primitive; Join of colouring tables is defined.

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 9 / 15

slide-19
SLIDE 19

Motivation Distributed Reo Behaviour agreement Conclusions

Behaviour

What is it?

What each primitive can do

Which end points can flow data, and relation between data flowing in the end points.

Join of behaviours

Given the behaviour of two primitives, the behaviour of the composition of both can also be

  • btained.

Example: Connector Colouring

Colouring tables provide the behaviour of each primitive; Join of colouring tables is defined.

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 9 / 15

slide-20
SLIDE 20

Motivation Distributed Reo Behaviour agreement Conclusions

Outline

1

Motivation

2

Distributed Reo Model

3

Behaviour agreement

4

Conclusions

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 10 / 15

slide-21
SLIDE 21

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Locations are not relevant; Assume partial knowledge (know only neighbours); Two phase algorithm: Negotiation and Communication.

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 11 / 15

slide-22
SLIDE 22

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Locations are not relevant; Assume partial knowledge (know only neighbours); Two phase algorithm: Negotiation and Communication.

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 11 / 15

slide-23
SLIDE 23

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Basic case

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 12 / 15

slide-24
SLIDE 24

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Basic case

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 12 / 15

slide-25
SLIDE 25

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Basic case

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 12 / 15

slide-26
SLIDE 26

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Basic case

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 12 / 15

slide-27
SLIDE 27

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Multiple starting points

> >

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 13 / 15

slide-28
SLIDE 28

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Multiple starting points

> >

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 13 / 15

slide-29
SLIDE 29

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Multiple starting points

> >

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 13 / 15

slide-30
SLIDE 30

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Multiple starting points

> >

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 13 / 15

slide-31
SLIDE 31

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Multiple starting points

> >

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 13 / 15

slide-32
SLIDE 32

Motivation Distributed Reo Behaviour agreement Conclusions

Commit to a behaviour

Multiple starting points

> >

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 13 / 15

slide-33
SLIDE 33

Motivation Distributed Reo Behaviour agreement Conclusions

Outline

1

Motivation

2

Distributed Reo Model

3

Behaviour agreement

4

Conclusions

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 14 / 15

slide-34
SLIDE 34

Motivation Distributed Reo Behaviour agreement Conclusions

Conclusions

Common architecture to include design and implementation; Implementation platform, where each (distributed) element knows

  • nly about its own neighbours;

Resolve synchrony constraints (imposed by Reo) using asynchronous messages; The kernel supports messages for other purposes:

Fail/Abort; Suspend – to allow reconfiguration. . . .

How to determine the rank of the inititiators? A primitive(s) can be obtained from other coordination models

  • ther than Reo (e.g., Orc);

Allow unification of more coordination models;

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 15 / 15

slide-35
SLIDE 35

Motivation Distributed Reo Behaviour agreement Conclusions

Conclusions

Common architecture to include design and implementation; Implementation platform, where each (distributed) element knows

  • nly about its own neighbours;

Resolve synchrony constraints (imposed by Reo) using asynchronous messages; The kernel supports messages for other purposes:

Fail/Abort; Suspend – to allow reconfiguration. . . .

How to determine the rank of the inititiators? A primitive(s) can be obtained from other coordination models

  • ther than Reo (e.g., Orc);

Allow unification of more coordination models;

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 15 / 15

slide-36
SLIDE 36

Motivation Distributed Reo Behaviour agreement Conclusions

Conclusions

Common architecture to include design and implementation; Implementation platform, where each (distributed) element knows

  • nly about its own neighbours;

Resolve synchrony constraints (imposed by Reo) using asynchronous messages; The kernel supports messages for other purposes:

Fail/Abort; Suspend – to allow reconfiguration. . . .

How to determine the rank of the inititiators? A primitive(s) can be obtained from other coordination models

  • ther than Reo (e.g., Orc);

Allow unification of more coordination models;

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 15 / 15

slide-37
SLIDE 37

Motivation Distributed Reo Behaviour agreement Conclusions

Conclusions

Common architecture to include design and implementation; Implementation platform, where each (distributed) element knows

  • nly about its own neighbours;

Resolve synchrony constraints (imposed by Reo) using asynchronous messages; The kernel supports messages for other purposes:

Fail/Abort; Suspend – to allow reconfiguration. . . .

How to determine the rank of the inititiators? A primitive(s) can be obtained from other coordination models

  • ther than Reo (e.g., Orc);

Allow unification of more coordination models;

  • J. Proença (CWI)

Towards Distributed Reo CIC, 2007 15 / 15