YOU ARE DOWNLOADING DOCUMENT

Please tick the box to continue:

Transcript
Page 1: Coordination middleware for decentralized applications in dynamic networks

1

Apr

il 20

, 202

3

Coordination middleware for Coordination middleware for decentralized applications in decentralized applications in

dynamic networksdynamic networks

Kurt Schelfthout, Tom Holvoet

Page 2: Coordination middleware for decentralized applications in dynamic networks

2

Apr

il 20

, 202

3

Elevator TalkElevator Talk

• Dynamic networkso Changing composition over time

• Decentralized applicationso Application components spread over the network

nodes

o no single component has global control

• Coordination both important and difficult for application developer

• Coordination support needed o Appropriate abstractions

o Support abstractions through middleware

Page 3: Coordination middleware for decentralized applications in dynamic networks

3

Apr

il 20

, 202

3

OverviewOverview

• Case Studyo Automatic Guided Vehicle control

• Views o gather and maintain context information

• Roles o setup and maintain a group of components

interacting through a protocol

Page 4: Coordination middleware for decentralized applications in dynamic networks

4

Apr

il 20

, 202

3

Example ApplicationExample Application

Page 5: Coordination middleware for decentralized applications in dynamic networks

5

Apr

il 20

, 202

3

Description of purposeDescription of purpose

• Decentralizationo Collision avoidance

o Deadlock avoidance

o Job assignment

• Dynamic networko Mobility of AGVs

• Coordinationo Support a higher level of abstraction wrt “message

sending”

o Deal with network dynamics

Page 6: Coordination middleware for decentralized applications in dynamic networks

6

Apr

il 20

, 202

3

Goal StatementGoal Statement

• Developo Abstractions for the coordination of application

components

o Supported by middleware

• Advantageso Offers a suitable architecture to structure application

o Allows reuse of common functionality

o Accelerates application development

Page 7: Coordination middleware for decentralized applications in dynamic networks

7

Apr

il 20

, 202

3

MethodologyMethodology

• Case-driveno Analyse case

o Propose abstraction

o Develop middleware

o Evaluate in case study

• Two iterationso Views for information gathering in mobile ad hoc

networks

o Roles for protocol-based coordination in mobile networks

Page 8: Coordination middleware for decentralized applications in dynamic networks

8

Apr

il 20

, 202

3

ViewsViews

Node

Node

Node

Node

Page 9: Coordination middleware for decentralized applications in dynamic networks

9

Apr

il 20

, 202

3

ViewsViews

• Application components useo tuplespace for publishing information tuples

o View for gathering information tuples

• Declarative description Which nodes? Which tuples?

E.g. ‘gather all printers within 30 meters’

• Middleware collects the tuples in the viewo As network changes

o As content of tuplespaces changes

Page 10: Coordination middleware for decentralized applications in dynamic networks

10

Apr

il 20

, 202

3

Related WorkRelated Work

• Tuplespaces-based systemso LIME: shared tuplespaces

o EgoSpaces: views

o TOTA: Distributed tuples

• Publish/subscribe-based systemso STEAM : Location-dependent subscriptions

o JEDI: moveIn and moveOut operator

• Related to botho View ~ gathering of tuples from neighboring tuplespaces

o View ~ subscription on events on neighboring tuplespaces

Page 11: Coordination middleware for decentralized applications in dynamic networks

11

Apr

il 20

, 202

3

Colllision Avoidance in AGV caseColllision Avoidance in AGV case

Page 12: Coordination middleware for decentralized applications in dynamic networks

12

Apr

il 20

, 202

3

Colllision Avoidance in AGV caseColllision Avoidance in AGV case

Page 13: Coordination middleware for decentralized applications in dynamic networks

13

Apr

il 20

, 202

3

Colllision Avoidance in AGV caseColllision Avoidance in AGV case

Page 14: Coordination middleware for decentralized applications in dynamic networks

14

Apr

il 20

, 202

3

Colllision Avoidance in AGV caseColllision Avoidance in AGV case

Page 15: Coordination middleware for decentralized applications in dynamic networks

15

Apr

il 20

, 202

3

Views for collision avoidance?Views for collision avoidance?

• Can be used as “discovery mechanism”o Detect possible overlapping hulls

• But: complex coordinationo Involving more than information exchange

o Mutual exclusion protocol needed

Page 16: Coordination middleware for decentralized applications in dynamic networks

16

Apr

il 20

, 202

3

RolesRoles

• Behavior of one partner in an interaction protocol

• To describe object collaborations in OOo Framework design

o OO related languages (EpsilonJ)

o Role pattern

• To describe protocols in multi-agent systems

Page 17: Coordination middleware for decentralized applications in dynamic networks

17

Apr

il 20

, 202

3

RolesRoles

Node

Node

Node Initiator

Node

Participant

Participant

Participant

Page 18: Coordination middleware for decentralized applications in dynamic networks

18

Apr

il 20

, 202

3

Roles for protocol-based Roles for protocol-based interactioninteraction

• Group o declaratively describes with which nodes to execute

the protocol

o Determines activation of roles

• Middleware maintains groups of activated roleso Executing an interaction session

o Group is updated as network changes

Page 19: Coordination middleware for decentralized applications in dynamic networks

19

Apr

il 20

, 202

3

Collision avoidance revisitedCollision avoidance revisited

Requester Voter 1 Voter 2 Voter n

Request(Hull)

Request(Hull)

Allow

Allow

Deny

...

Request(Hull)

Request(Hull)

Page 20: Coordination middleware for decentralized applications in dynamic networks

20

Apr

il 20

, 202

3

Activation of RolesActivation of Roles

Page 21: Coordination middleware for decentralized applications in dynamic networks

21

Apr

il 20

, 202

3

Colllision Avoidance in AGV caseColllision Avoidance in AGV case

Page 22: Coordination middleware for decentralized applications in dynamic networks

22

Apr

il 20

, 202

3

Colllision Avoidance in AGV caseColllision Avoidance in AGV case

Start Requester Role

Page 23: Coordination middleware for decentralized applications in dynamic networks

23

Apr

il 20

, 202

3

Colllision Avoidance in AGV caseColllision Avoidance in AGV case

requester

voter

Page 24: Coordination middleware for decentralized applications in dynamic networks

24

Apr

il 20

, 202

3

Colllision Avoidance in AGV caseColllision Avoidance in AGV case

requester

voter

Request(Hull)

Page 25: Coordination middleware for decentralized applications in dynamic networks

25

Apr

il 20

, 202

3

Colllision Avoidance in AGV caseColllision Avoidance in AGV case

requester

voter

Deny

Page 26: Coordination middleware for decentralized applications in dynamic networks

26

Apr

il 20

, 202

3

Colllision Avoidance in AGV caseColllision Avoidance in AGV case

Requester (waiting)

Page 27: Coordination middleware for decentralized applications in dynamic networks

27

Apr

il 20

, 202

3

Evaluation: ViewsEvaluation: Views

• Developed protocol to support views in a MANET

• Experimentso Analytically & in a simple MANET similator

Overhead: <10%

Correctness: best-effort, very dependent on mobility of nodes

o In progress: ns-2 simulations

More realistic

Comparison with related protocols

• Applicationo Updating network stacks in an active network

o E.g. dynamically adding compressor/decompressor to improve quality of service

Page 28: Coordination middleware for decentralized applications in dynamic networks

28

Apr

il 20

, 202

3

Evaluation: RolesEvaluation: Roles

• Real world application: Automatic Guided Vehicle controlo Role-based middleware used throughout

Collision avoidance, deadlock avoidance, job assignment,…

• Gain experience

• Real life testing2 vehicles in test setup

More vehicles in simulation

• Not “just” prototype implementation

Page 29: Coordination middleware for decentralized applications in dynamic networks

29

Apr

il 20

, 202

3

Thank you!Thank you!

Questions?


Related Documents