LIME Team Adam Bazinet Hau San Si Tou. Project Goals Implement a ‘lightweight’ version of Lime that works with the M2MP – Anhinga Spaces – Devices will.

Slides:



Advertisements
Similar presentations
Operating Systems Components of OS
Advertisements

UNCLASSIFIED – APPROVED FOR PUBLIC RELEASE Why Current Middleware Fails for Mobile Peer-to-Peer Computing Thomas Kunz Systems and Computer Engineering.
Service Oriented Architecture for Mobile Applications Swarupsingh Baran University of North Carolina Charlotte.
UNDERSTANDING JAVA APIS FOR MOBILE DEVICES v0.01.
Lime Team Adam Bazinet Hau San Si Tou. What is LIME?  LIME stands for Linda In a Mobile Environment Linda : a shared memory computing model developed.
An Associative Broadcast Based Coordination Model for Distributed Processes James C. Browne Kevin Kane Hongxia Tian Department of Computer Sciences The.
PROTOCOLS AND ARCHITECTURE Lesson 2 NETS2150/2850.
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.
GRASSHOPPER-a mobile agent platform mailto:
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
Quality of Service in IN-home digital networks Alina Albu 7 November 2003.
1 Concurrent and Distributed Systems Introduction 8 lectures on concurrency control in centralised systems - interaction of components in main memory -
Networking Theory (Part 1). Introduction Overview of the basic concepts of networking Also discusses essential topics of networking theory.
Software Engineering and Middleware: a Roadmap by Wolfgang Emmerich Ebru Dincel Sahitya Gupta.
3.5 Interprocess Communication Many operating systems provide mechanisms for interprocess communication (IPC) –Processes must communicate with one another.
3.5 Interprocess Communication
Software Engineering and Middleware A Roadmap Author: Wolfgang Emmerich Presented by: Sam Malek.
The Bio-Networking Architecture: An Infrastructure of Autonomic Agents in Pervasive Networks Jun Suzuki netresearch.ics.uci.edu/bionet/
Implementing Remote Procedure Calls an introduction to the fundamentals of RPCs, made during the advent of the technology. what is an RPC? what different.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
COE 342: Data & Computer Communications (T042) Dr. Marwan Abu-Amara Chapter 2: Protocols and Architecture.
Chapter 4.1 Interprocess Communication And Coordination By Shruti Poundarik.
Processes.
Communication Network Protocols Jaya Kalidindi CSC 8320(fall 2008)
SOA, BPM, BPEL, jBPM.
THE NEXT STEP IN WEB SERVICES By Francisco Curbera,… Memtimin MAHMUT 2012.
© Drexel University Software Engineering Research Group (SERG) 1 Based on the paper by Philippe Kruchten from Rational Software.
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
Interoperating with Services in a Mobile Environment Andreas Dahl, Pål Rolfsen Grønsund, Per Thomas Kraabøl,
Protocols and the TCP/IP Suite
Small Devices on DBGlobe System George Samaras Chara Skouteli.
Three fundamental concepts in computer security: Reference Monitors: An access control concept that refers to an abstract machine that mediates all accesses.
Wireless Access and Terminal Mobility in CORBA Dimple Kaul, Arundhati Kogekar, Stoyan Paunov.
Source: George Colouris, Jean Dollimore, Tim Kinderberg & Gordon Blair (2012). Distributed Systems: Concepts & Design (5 th Ed.). Essex: Addison-Wesley.
Chapter 2 (PART 1) Light-Weight Process (Threads) Department of Computer Science Southern Illinois University Edwardsville Summer, 2004 Dr. Hiroshi Fujinoki.
Architectures of distributed systems Fundamental Models
A Survey on Programming Model Context Toolkit Gaia ETC (of Equator Project) Tentaculus.
DBAS: A Deployable Bandwidth Aggregation System Karim Habak†, Moustafa Youssef†, and Khaled A. Harras‡ †Egypt-Japan University of Sc. and Tech. (E-JUST)
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
Chapter 1 : The Linux System Part 1 Lecture 1 10/21/
Example: Sorting on Distributed Computing Environment Apr 20,
Virtual Private Ad Hoc Networking Jeroen Hoebeke, Gerry Holderbeke, Ingrid Moerman, Bard Dhoedt and Piet Demeester 2006 July 15, 2009.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
IBM TSpaces Lab 1 Introduction. Summary TSpaces Overview Basic Definitions Basic primitive operations Reading/writing tuples in tuplespace HelloWorld.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
1 Presentation_ID © 1999, Cisco Systems, Inc. Cisco All-IP Mobile Wireless Network Reference Model Presentation_ID.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
An Architecture to Support Context-Aware Applications
Virtual Machines Created within the Virtualization layer, such as a hypervisor Shares the physical computer's CPU, hard disk, memory, and network interfaces.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Seminar on Service Oriented Architecture Distributed Systems Architectural Models From Coulouris, 5 th Ed. SOA Seminar Coulouris 5Ed.1.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Threads-Process Interaction. CONTENTS  Threads  Process interaction.
IHP Im Technologiepark Frankfurt (Oder) Germany IHP Im Technologiepark Frankfurt (Oder) Germany ©
PART1: NETWORK COMPONENTS AND TRANSMISSION MEDIUM Wired and Wireless network management 1.
Lecture 14 Mobile IP. Mobile IP (or MIP) is an Internet Engineering Task Force (IETF) standard communications protocol that is designed to allow mobile.
KVM Verification KVM uses StackMaps generated by the preverifier to verify the trustworthiness of unknown classes. Relatively easy to process on the device,
 Background  Introduction  Purpose  Basic rover services  Physical architecture of Rover System  Server operation  Logical Architecture of A Rover.
Pervasive Computing MIT SMA 5508 Spring 2006 Larry Rudolph 1 Publish & Subscribe Larry Rudolph May 3, 2006 SMA 5508 & MIT
Current Generation Hypervisor Type 1 Type 2.
Self Healing and Dynamic Construction Framework:
UNIT II –Part 2.
Chapter 18 MobileApp Design
Chapter 3: Windows7 Part 4.
Mobile Agents.
Basic Mechanisms How Bits Move.
Network Layer The network layer is responsible for the source-to-destination delivery of a packet, possibly across multiple networks (links). Whereas the.
Presentation transcript:

LIME Team Adam Bazinet Hau San Si Tou

Project Goals Implement a ‘lightweight’ version of Lime that works with the M2MP – Anhinga Spaces – Devices will read and write from the tuple space without consuming large amounts of network bandwidth Demonstrate the technology

Solutions Communication with M2MP is directly between source and destination. – Change direct communication to indirect communication with a middleware – Anhinga Spaces – in between. Data are stored in packets in M2MP – Data can be stored in tuples

Review of M2MP Network protocol for many-to-many communication in an ad-hoc network of proximal mobile wireless devices. No device addresses Messages are broadcast to all devices Allows filtering Message delivery is mostly reliable

Review of LIME Lime is a middleware which provides a coordination layer that can be exploited for designing applications which exhibit either logical or physical mobility---or both. Coordination is achieved through a tuple space globally shared among components. Tuples in the tuple space are physically stored across multiple hosts in the system.

LIME Infrastructure Lime distribution contains 4 packages: – Provides coordination among processes (Lime agents) via a shared memory mechanism LighTS includes 4 packages: – Java implementation of the tuple space concept uCode includes 3 packages: – Provides a minimal set of primitives to support mobility of code & state

uCode ClassSpace- Defines a name space for classes loaded by a µServer. ClassSpace Group- The group is the unit of mobility provided by µCode. Group MuClassLoader- Redefines class loading according to the policy of µCode. MuClassLoader MuServer- Provides an abstraction of the run-time support needed to receive and/or execute mobile code. MuServer

uCode.abstractions MuAgent- Provides a "mobile agent" abstraction. MuAgent Relocator- This class provides some abstractions to deal with the relocation of classes and threads at a higher level than the one enabled by the primitives provided in the core mucode package. Relocatormucode RelocationHandler- The group handler for all the operations provided by the Relocator class. RelocationHandlerRelocator

lights Field- Represents a single typed field of a tuple. Field Tuple- The definition of a tuple, i.e., an ordered sequence of typed fields. Tuple TupleSpace- Embodies the concept of a Linda-like tuple space. TupleSpace

lime ILimeAgent- Any Lime agent must implement this interface. ILimeAgent StationaryAgent- In Lime, a Lime tuple space is always permanently associated with an ILimeAgent object. StationaryAgent MobileAgentThis class provides a Lime- enabled mobile agent, on top of µCode mobile agents. MobileAgent

lime Location- The superclass of all locations, i.e., of both host and agent locations. Location LimeServer- The runtime support needed to run Lime on a given host. LimeServer

lime LimeTupleSpace- provides an implementation for the Interface Tuple Space (ITS), the most basic component of a Lime-based application. LimeTupleSpace LimeSystemTupleSpace (LSTS)- gives the Lime Application Programmer the ability to access the system context information including which hosts are present, which agents are present, and which tuple spaces are at the agents. LimeSystemTupleSpace

lime Reaction- The superclass of all reactions. Reaction LocalizedReaction- concerned only with a localized projection of the shared tuple space. LocalizedReaction LimeSystemReaction- concerned only with the Lime System Tuple Space. LimeSystemReaction UbiquitousReaction- Specifies reactions that are location-independent and get installed on the whole shared tuple space. UbiquitousReaction RegisteredReaction- Objects of this class represent a sort of a "receipt" for the registration of a reaction. RegisteredReaction

M2MI

Anhinga Spaces