Download presentation
Presentation is loading. Please wait.
Published byMaud Reed Modified over 9 years ago
1
LIME Team Adam Bazinet Hau San Si Tou
2
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
3
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
4
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
5
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.
6
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
7
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
8
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
9
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
10
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
11
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
12
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
13
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
14
M2MI
15
Anhinga Spaces
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.