UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE Why Current Middleware Fails for Mobile Peer-to-Peer Computing Thomas Kunz Systems and Computer Engineering.

Slides:



Advertisements
Similar presentations
MicroKernel Pattern Presented by Sahibzada Sami ud din Kashif Khurshid.
Advertisements

© 2005 Avaya Inc. All rights reserved. A Client-Side Architecture for Supporting Pervasive Enterprise Communications Amogh Kavimandan, Reinhard Klemm,
Understanding Code Mobility
Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
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.
Reliability on Web Services Presented by Pat Chan 17/10/2005.
Distributed components
Network Operating Systems Users are aware of multiplicity of machines. Access to resources of various machines is done explicitly by: –Logging into the.
03/11/20021 PRISM Programming in the Small and Many Nenad Medvidovic Marija Mikic-Rakic
City University London
EEC-484/584 Computer Networks Lecture 2 Wenbing Zhao
Revision Week 13 – Lecture 2. The exam 5 questions Multiple parts Read the question carefully Look at the marks as an indication of how much thought and.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
Middleware Technologies compiled by: Thomas M. Cosley.
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Software Engineering and Middleware A Roadmap Author: Wolfgang Emmerich Presented by: Sam Malek.
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Community Manager A Dynamic Collaboration Solution on Heterogeneous Environment Hyeonsook Kim  2006 CUS. All rights reserved.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
1 System Models. 2 Outline Introduction Architectural models Fundamental models Guideline.
Interoperating with Services in a Mobile Environment Andreas Dahl, Pål Rolfsen Grønsund, Per Thomas Kraabøl,
Mobile Agent Technology for the Management of Distributed Systems - a Case Study Claudia Raibulet& Claudio Demartini Politecnico di Torino, Dipartimento.
Software Architecture Framework for Ubiquitous Computing Divya ChanneGowda Athrey Joshi.
1 MSCS 237 Communication issues. 2 Colouris et al. (2001): Is a system in which hardware or software components located at networked computers communicate.
Wireless Access and Terminal Mobility in CORBA Dimple Kaul, Arundhati Kogekar, Stoyan Paunov.
Distributed Systems: Concepts and Design Chapter 1 Pages
Source: George Colouris, Jean Dollimore, Tim Kinderberg & Gordon Blair (2012). Distributed Systems: Concepts & Design (5 th Ed.). Essex: Addison-Wesley.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Architectures of distributed systems Fundamental Models
PERVASIVE COMPUTING MIDDLEWARE BY SCHIELE, HANDTE, AND BECKER A Presentation by Nancy Shah.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Design and run-time bandwidth contracts for pervasive computing middleware Peter Rigole K.U.Leuven – Belgium
Introduction to CORBA University of Mazandran Science & Tecnology By : Esmaill Khanlarpour January
Lecture 4: Sun: 23/4/1435 Distributed Operating Systems Lecturer/ Kawther Abas CS- 492 : Distributed system & Parallel Processing.
DISTRIBUTED COMPUTING Introduction Dr. Yingwu Zhu.
Introduction Infrastructure for pervasive computing has many challenges: 1)pervasive computing is a large aspect which includes hardware side (mobile phones,portable.
1 MSCS 237 Communication issues. 2 Colouris et al. (2001): Is a system in which hardware or software components located at networked computers communicate.
Distributed Computing Systems CSCI 4780/6780. Geographical Scalability Challenges Synchronous communication –Waiting for a reply does not scale well!!
Chapter 5: Distributed objects and remote invocation Introduction Remote procedure call Events and notifications.
SDN Management Layer DESIGN REQUIREMENTS AND FUTURE DIRECTION NO OF SLIDES : 26 1.
© Chinese University, CSE Dept. Distributed Systems / Distributed Systems Topic 1: Characterization of Distributed & Mobile Systems Dr. Michael R.
GYTE - Bilgisayar Mühendisliği Bölümü Bilgisayar Mühendisliği Bölümü GYTE - Bilgisayar Mühendisliği Bölümü AN ARCHITECTURE FOR NEXT GENERATION MIDDLEWARE.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
Distributed objects and remote invocation Pages
Operating Systems Distributed-System Structures. Topics –Network-Operating Systems –Distributed-Operating Systems –Remote Services –Robustness –Design.
Distributed Systems Architecure. Architectures Architectural Styles Software Architectures Architectures versus Middleware Self-management in distributed.
 Background  Introduction  Purpose  Basic rover services  Physical architecture of Rover System  Server operation  Logical Architecture of A Rover.
Computer Networking A Top-Down Approach Featuring the Internet Introduction Jaypee Institute of Information Technology.
Supporting Mobile Collaboration with Service-Oriented Mobile Units
Software Connectors.
CHAPTER 3 Architectures for Distributed Systems
#01 Client/Server Computing
Chapter 3: Windows7 Part 4.
Chapter 1 Introduction.
EEC-484/584 Computer Networks
Mobile Agents.
Multiple Processor Systems
Architectures of distributed systems Fundamental Models
Unit V Mobile Middleware.
Architectures of distributed systems Fundamental Models
Architectures of distributed systems
Computer Networking A Top-Down Approach Featuring the Internet
Distributed Systems Bina Ramamurthy 4/22/2019 B.Ramamurthy.
Architectures of distributed systems Fundamental Models
#01 Client/Server Computing
Presentation transcript:

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE Why Current Middleware Fails for Mobile Peer-to-Peer Computing Thomas Kunz Systems and Computer Engineering Carleton University Abdulbaset Gaddah Joint work with Abdulbaset Gaddah, Ph.D. candidate

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 1 Agenda Background Traditional Middleware Requirements for Middleware for Mobile Applications Survey/Evaluation of Mobile Middleware Paradigms Conclusions and Future Work

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 2 Background We have explored issues related to mobile applications since 1997: WWW transcoding proxy Mobile code for adaptive mobile applications Now: how to incorporate our ideas into middleware for mobile applications What middleware? What extensions? Detailed report available from the WWW,

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 3 Middleware Definition: a layer of software that allows peers to interact a cross a network Context: distributed systems Role: coordination and communication (connectivity software) Implements: session and presentation layers Bonus: higher level primitives Applications Applications interfaces Middleware Local Operating System Hardware Platform

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 4 Traditional Middleware Requirements Network communication Support marshalling and unmarshalling Provide higher level primitives Coordination Components synchronization Components activation and deactivation Reliability Processing individual and multiple requests Support Fault-tolerant and different levels of QoS Scalability Load Balancing (transparent replication, access, and migration) Heterogeneity Integrate elements from various contexts Support interoperability

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 5 Current Middleware Solutions Model Network Communication CoordinationReliabilityScalabilityHeterogeneity Client requests are grouped into transactions Through synchronous and asynchronous methods. Support for activation policies Fault-tolerant due to DTP and 2 phase commit protocol. Support for transactions Support load balancing & replication of server components Component heterogeneity supported but no support for data heterogeneity Through Notification, Request and Reply messages. Content includes information Asynchronous message delivery. More scalable and easy broadcast but difficult for synchronous requests Fault-tolerance implemented using message queues Not scalable as no support for transparent replication, access & migration No support for heterogeneity either Transactional Message-oriented

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 6 Current Middleware Solutions (Cont.) Model Network Communication CoordinationReliabilityScalabilityHeterogeneity Marshalling and unmarshalling of procedure calls into messages by the stubs and messages sent to hosts where server reside Synchronous interactions between exactly one client & server. Support for activations At-most once semantics are only supported Limited Scalability as no replication mechanisms Heterogeneity of components and data supported Client objects can request execution of a server objects operation and client object has object reference of server object Mainly synchronous, but others supported. Also support activation policies Default is at- most once but others also supported Support for transactions too Still limited scalability as very limited replication support They support both kinds of heterogeneity Procedural Object-oriented

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 7 Challenges of Mobile P2P Computing Network condition: slow, expensive, disconnected, limited bandwidth, high error rate Mobile devices: limited resources and high diversity Physical mobility: different networks and services Internet Internet SlowNet ExpensiveNet Fast Net

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 8 An Electronic Shopping System: A Case Study Transparent replication: Application cannot influence the replication decision Location awareness: collecting my order on my way home Dynamic reconfiguration: interacting with servers running different middleware platforms Adaptivity: overloaded server (switching) image/video requested (filtration) Asynchronous: Clients are not blocked during the matching process or receiving notification receipt. PPC Laptop PC E-commerce Site

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 9 Requirements for Next Generation Middleware Dynamic Reconfiguration Detect changes in available resources and reallocate them or notify the application to change its behaviour Adaptivity The ability of a system to recognize unmet needs within its execution context and to adapt itself to meet those needs Context-Awareness Disclose the execution context to the upper layer. The context may include device characteristics, users activities, and services Asynchronous Paradigm Decouple the client and server components and deliver multicast messages Lightweight Minimum range of functionality used by most applications

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 10 Middleware State of the Art Reflective Middleware Reflection approach to support inspection and adaptation Examples: OpenCorba, Open-ORB, and DynamicTAO Tuple Spaces Middleware Tuple space approach to facilitate communication Examples: LIME, TSpaces, and JavaSpaces Context-Aware Middleware Awareness approach to expose the context information Examples: Nexus, Alternis, and SignelSoft Event-based Middleware Event notification approach to support large-scale systems Examples: Hermes, CEA, and JEDI

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 11 Requirements Addressed by Various Categories RequirementsReflective Tuple Spaces Context- Aware Event- based Synchronous/ connection based XX Asynchronous/ connectionless XX Reconfiguration X Adaptation XX Awareness XX Heavy weight XXX

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 12 Conclusions We have presented current middleware solutions and exhibited their characteristics Why traditional middleware systems fail to support mobile settings We have outlined a set of requirements for next generation middleware We have illustrated the state of the art of middleware for mobile computing and discussed four different classes of middleware We have shown what type of requirements are addressed by each class of middleware

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 13 Next Steps Better understand mobile application requirements and device/network constraints for specific application domains Select a specific middleware paradigm, experiment with sample system it in our testbed (iPaq/laptop/PCs, IEEE b wireless LAN and Bluetooth) Suggest and develop appropriate enhancements, based on our prior work

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE 14 Thank you Questions & comments