+ All Categories
Home > Documents > DOLCLAN Middleware Support for Peer-to-Peer Distributed Shared Objects Jakob E. Bardram and Martin...

DOLCLAN Middleware Support for Peer-to-Peer Distributed Shared Objects Jakob E. Bardram and Martin...

Date post: 21-Dec-2015
Category:
View: 223 times
Download: 0 times
Share this document with a friend
Popular Tags:
23
DOLCLAN Middleware Support for Peer-to-Peer Distributed Shared Objects Jakob E. Bardram and Martin Mogensen University of Aarhus, Denmark [Center for Pervasive Healthcare] http://pervasivehealthcare.com
Transcript

DOLCLAN Middleware Support for Peer-to-Peer

Distributed Shared Objects

Jakob E. Bardram and Martin Mogensen

University of Aarhus, Denmark

[Center for Pervasive Healthcare]

http://pervasivehealthcare.com

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 2

Background

  Motivation– Pervasive Computing– Mobility, pervasiveness, changing environments, …– Transient infrastructure– Heterogeneous devices, incl. Sensors– Increasing demand for dependability of such systems– Termed by Laprie [1] as the "dependability gap"

  Goal– Pervasive Computing infrastructure– Development framework– Integrated language support

  [1] Jean-Claude Laprie  Resilience for the Scalability of Dependability  In: Proceedings of the IEEE International Symposium on Network Computing and Applications

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 3

Main Problem

  RPC Paradigm– Remote objects accessed by procedure calls– Assumes reliable infrastructure– Assumes stable host machine– Synchronous blocking procedure calls

  Pervasive Environments– Intermitted network connections– Heterogeneous devices– More or less (un)stable devices

  => RPC does not fit in this environment !

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 4

Approach

  Peer-to-Peer Distributed Shared Objects– Physically distributed replicas– Peer-to-Peer updates

  Advantages– Heightens application responsiveness– Support disconnected work– Distributes computational and network load– Resilient network joining

  Drawbacks– Increased complexity managing data– Increased complexity managing network topology– DOLCLAN handles these

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 5

Concept PDSO

  Peer-to-Peer Distributed Shared Objects– Physical distribution– Synchronized objects– Peer-to-Peer updates– Responsive optimistic concurrency protocol– Distribution-aware programming

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 6

Concept PDSO

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 7

Terms PDSO

  Terms used– OID : Object Identifier

• Names a single local replica• E.g. A

– PDSO : Peer-to-Peer Distributed Shared Object• Set of local replicas named by the same OID• E.g. PDSO(A)

– Group : Set of PDSOs• Defined by the transitive closure of a specified PDSO• I.e. There is a path in the object graph• E.g. Group(PDSO(A))

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 8

Concept PDSO

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 9

Distribution Awareness

  Key differentiation between what we [2] have termed– accountable events

• Crucial events, long lived• Affects the state of the system in long time• The system needs to account for the events• TCP or reliable multicast

– ephemeral events• Transient events, short lived• Collaboration awareness events• Tele-pointers, voice links, etc ...• UDP or unreliable multicast

  [2] Bardram, J.E., Bunde-Pedersen, J., Mogensen, M.:   Differentiating between Accountable and Ephemeral Events in the ABC Hybrid Architecture for

Activity-Based Collaboration.   In: Proceedings of the IEEE International Conference on Collaborative Computing 2005

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 10

DOLCLAN

  Proof-of-PDSO-concept implemented– Service discovery– Peer joining– Synchronous object state replication– Data management– Network management– Language support

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 11

A simple example

  Let’s create a distributed Pacman game

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 12

A simple example

  A model for a distributed Pacman game

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 13

C# Language Support

  New keywords• distributed classes and fields• accountable and ephemeral modifiers

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 14

C# Language Support

  New keywords• distributed properties• accountable and ephemeral modifiers

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 15

C# Language Support

  Object creation and joining• Create PDSOs with the new keyword• Join PDSO groups with the join keyword

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 16

C# Language Support

  Domain specific conflict resolution• Override public void merge(object)

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 17

C# Language Support

  The complete EaterModel• You are not supposed to read this ;-)

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 18

Evaluation - Language Support

  A simple programming task• Create a distributed tree-view application

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 19

Evaluation - Performance

  Time to push state changes into the net• Does not say anything about time to deliver• Stresses the need for ephemeral and accountable modifiers

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 20

Evaluation - Utility

  Can pervasive applications be created?– We have used DOLCLAN for the ABC framework– Adds support for ad-hoc collaboration– Re-coding took few days– Shows that more complex applications can be created

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 21

On-going Work

  Technical work– Support outside LANs – Support for sensor networks– .NET Compact Framework library

  Applications– Integration with real EHR

(Electronic Health Record)

– Enable collaborative sessions(Between surgeons in the operating theater and second level experts)

– Integration with PACS system(Picture, Archiving, and Communication System)

  Deployment– Horsens hospital, Denmark– Surgical department

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 22

Summary

  Challenges– RPC paradigm is imperfect in a pervasive environment

  Peer-to-Peer Distributed Shared Objects– Pervasive Computing infrastructure– Development framework– Integrated language support

  On-going work– Extending support and infrastructure– Creating pervasive applications– Deploying applications in hospitals

DAIS '07 DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects 23

More Information

[Martin Mogensen - [email protected]]

Thank you for listening !

[Center for Pervasive Healthcare]

www.pervasivehealthcare.com

[iHospital research project at Horsens Hospital, Denmark]

www.ihospital.dk

[Activity Based Computing and the ABC framework]

www.activity-based-computing.org


Recommended