DOLCLAN Middleware Support for Peer-to-Peer Distributed Shared Objects Jakob E. Bardram and Martin Mogensen University of Aarhus, Denmark [Center for Pervasive.

Slides:



Advertisements
Similar presentations
Pervasive Healthcare Martin Mogensen mastering student and student programmer Centre for Pervasive Healthcare [ Computer Science Department.
Advertisements

Distributed Systems Topics What is a Distributed System?
Distributed Systems 1 Topics  What is a Distributed System?  Why Distributed Systems?  Examples of Distributed Systems  Distributed System Requirements.
DELOS Network of Excellence on Digital Libraries WP1 Digital Library Architectures - From JPA1 to JPA2 to JPA3 - Hans-Jörg Schek UMIT
 Introduction Originally developed by Open Software Foundation (OSF), which is now called The Open Group ( Provides a set of tools and.
Distributed components
1 Sensor Networks and Networked Societies of Artifacts Jose Rolim University of Geneva.
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Application Layer – Lecture.
UNCW UNCW SIGGRAPH 2002 Topic #3: Continuous Media in Wired and Wireless Environments Ronald J. Vetter Department of Computer Science University of North.
Rheeve: A Plug-n-Play Peer- to-Peer Computing Platform Wang-kee Poon and Jiannong Cao Department of Computing, The Hong Kong Polytechnic University ICDCSW.
Abc Architectural Support for Activity- Based and Ubiquitous Computing Jonathan Bunde-Pedersen Ph.D. student Centre for Pervasive Healthcare Aarhus University.
DOLCLAN - Distributed Objects in Loose Coupled Local Area Networks 1 DOLCLAN Distributed Objects in Loose Coupled Local Area Networks.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
Electrical Engineering Department Software Systems Lab TECHNION - ISRAEL INSTITUTE OF TECHNOLOGY Persistent chat room Authors: Hazanovitch Evgeny Hazanovitch.
Mobile Agents: A Key for Effective Pervasive Computing Roberto Speicys Cardoso & Fabio Kon University of São Paulo - Brazil.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
Pervasive Healthcare Martin Mogensen mastering student and student programmer Centre for Pervasive Healthcare [ Computer Science Department.
ABC - Ad-hoc collaboration - 24/03/ ABC Ad-hoc collaboration.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
A Study on Mobile P2P Systems Hongyu Li. Outline  Introduction  Characteristics of P2P  Architecture  Mobile P2P Applications  Conclusion.
Community Manager A Dynamic Collaboration Solution on Heterogeneous Environment Hyeonsook Kim  2006 CUS. All rights reserved.
Client-Server Computing in Mobile Environments
Introduction to Cyberspace
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
Inter-process Communication and Coordination Chaitanya Sambhara CSC 8320 Advanced Operating Systems.
Institute of Computer and Communication Network Engineering OFC/NFOEC, 6-10 March 2011, Los Angeles, CA Lessons Learned From Implementing a Path Computation.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
Distributed Systems Principles and Paradigms
Software Architecture Framework for Ubiquitous Computing Divya ChanneGowda Athrey Joshi.
McGraw-Hill/Irwin © The McGraw-Hill Companies, All Rights Reserved BUSINESS PLUG-IN B17 Organizational Architecture Trends.
Wireless Access and Terminal Mobility in CORBA Dimple Kaul, Arundhati Kogekar, Stoyan Paunov.
Standard for a Convergent Digital Home Network for Heterogeneous Technologies Zhimeng Du 12/5/2013.
1 Networking Fundamentals S. Hussain Ali M.S. (Computer Engineering) Department of Computer Engineering King Fahd University of Petroleum and Minerals.
Architectures of distributed systems Fundamental Models
21/05/2010 AU DEPARTMENT OF COMPUTER SCIENCE FACULTY OF SCIENCE AARHUS UNIVERSITY TATIONpRESEN The homeport system Jeppe Brønsted, Post Doc, Phd Aarhus.
Objectives Functionalities and services Architecture and software technologies Potential Applications –Link to research problems.
Workshop on Future Learning Landscapes: Towards the Convergence of Pervasive and Contextual computing, Global Social Media and Semantic Web in Technology.
1- Distributed Systems Principles and Paradigms Operating Systems: Concurrent and Distributed Software Design Jean Bacon, Tim Harris 2003.
Dr. Ian Wang Cardiff University, U.K.. Ian Wang, Cardiff University Peer-to-Peer and Grids What does the Peer-to-Peer paradigm offer Grids? Scalable Decentralized.
Cerberus: A Context-Aware Security Scheme for Smart Spaces presented by L.X.Hung u-Security Research Group The First IEEE International Conference.
Introduction Infrastructure for pervasive computing has many challenges: 1)pervasive computing is a large aspect which includes hardware side (mobile phones,portable.
OS Services And Networking Support Juan Wang Qi Pan Department of Computer Science Southeastern University August 1999.
Distributed Computing Systems CSCI 4780/6780. Geographical Scalability Challenges Synchronous communication –Waiting for a reply does not scale well!!
Reconsidering Internet Mobility Alex C. Snoeren, Hari Balakrishnan, M. Frans Kaashoek MIT Laboratory for Computer Science.
Chapter 5 McGraw-Hill/Irwin Copyright © 2011 by The McGraw-Hill Companies, Inc. All rights reserved.
Cloud Networked Robotics Speaker: Kai-Wei Ping Advisor: Prof Dr. Ho-Ting Wu 2013/04/08 1.
OSPF Offloading: The HELLO Protocol A First Step Toward Distributed Heterogeneous Offloading Speaker: Mary Bond.
A policy-based per-flow mobility management system design
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
CORBA1 Distributed Software Systems Any software system can be physically distributed By distributed coupling we get the following:  Improved performance.
Toward a Standard Ubiquitous Computing Framework Martin Modahl Bikash Agarwalla Dr. Gregory Abowd Dr. Umakishore Ramachandran T. Scott Saponas.
Mobile Agents For Mobile Computing Department Of Computer Science – Dartmouth College Robert Gray David Kotz Saurab Nog Daniela Rus George Cybenko.
An Introduction to Networking
© Chinese University, CSE Dept. Distributed Systems / Distributed Systems Topic 1: Characterization of Distributed & Mobile Systems Dr. Michael R.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Securing the Grid & other Middleware Challenges Ian Foster Mathematics and Computer Science Division Argonne National Laboratory and Department of Computer.
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
IPv6 - The Way Ahead Christian Huitema Architect Windows Networking & Communications
Societal-Scale Computing: The eXtremes Scalable, Available Internet Services Information Appliances Client Server Clusters Massive Cluster Gigabit Ethernet.
70-294: MCSE Guide to Microsoft Windows Server 2003 Active Directory, Enhanced Chapter 6: Active Directory Physical Design.
SmartGRID Decentralized, dynamic grid scheduling framework on swarm agent-based intelligence Seminar in HUST, Wuhan, China. Oct. 22, 2008 Ye HUANG, Amos.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Grid Services for Digital Archive Tao-Sheng Chen Academia Sinica Computing Centre
Introduction to Mobile-Cloud Computing. What is Mobile Cloud Computing? an infrastructure where both the data storage and processing happen outside of.
Cross-functional team who negotiates and implements changes in the FRAG Framework Responsible for finding common solutions that should be added to the.
Chapter 1 Characterization of Distributed Systems
Introduction There are many situations in which we might use replicated data Let’s look at another, different one And design a system to work well in that.
New Tools In Education Minjun Wang
Presentation 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]

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects2 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 '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects3 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 '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects4 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 '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects5 Concept PDSO Peer-to-Peer Distributed Shared Objects –Physical distribution –Synchronized objects –Peer-to-Peer updates –Responsive optimistic concurrency protocol –Distribution-aware programming

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects6 Concept PDSO

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects7 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 '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects8 Concept PDSO

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects9 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 '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects10 DOLCLAN Proof-of-PDSO-concept implemented –Service discovery –Peer joining –Synchronous object state replication –Data management –Network management –Language support

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects11 A simple example Let’s create a distributed Pacman game

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects12 A simple example A model for a distributed Pacman game

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects13 C# Language Support New keywords distributed classes and fields accountable and ephemeral modifiers

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects14 C# Language Support New keywords distributed properties accountable and ephemeral modifiers

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects15 C# Language Support Object creation and joining Create PDSOs with the new keyword Join PDSO groups with the join keyword

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects16 C# Language Support Domain specific conflict resolution Override public void merge(object)

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects17 C# Language Support The complete EaterModel You are not supposed to read this ;-)

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects18 Evaluation - Language Support A simple programming task Create a distributed tree-view application

DAIS '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects19 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 '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects20 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 '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects21 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 '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects22 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 '07DOLCLAN - Middleware Support for Peer-to-Peer Distributed Shared Objects23 More Information [Martin Mogensen - Thank you for listening ! [Center for Pervasive Healthcare] [iHospital research project at Horsens Hospital, Denmark] [Activity Based Computing and the ABC framework]