610 likes | 735 Views
Dipanjan Chakraborty Anupam Joshi CSEE University of Maryland Baltimore County. Anamika: Distributed Service Discovery and Composition Architecture for Pervasive Environments. Printing to the Nearest Printer. Wireless Sync between PDAs. Composition of Multiple Services. Wireless Office.
E N D
Dipanjan ChakrabortyAnupam JoshiCSEEUniversity of Maryland Baltimore County Anamika: Distributed Service Discovery and Composition Architecture for Pervasive Environments
Service • “Service” • Hardware or software entity residing on any device or platform • Has distinct functional description • Can be utilized by other services/clients
Service I am Wireless LAN enabled!! Blender!! I have GPS service!!
Service Discovery Are you a Toaster ?? I am looking for a printer!! Do you have MP3 songs?
MANET MANET
MANET MANET
MANET MANET
MANET MANET
MANET MANET
MANET MANET
MANET MANET
MANET MANET
Issues of Discovery and Composition in Ad hoc Environments • Service Discovery needs to be distributed • Network-wide reachability • Efficient utilization of underlying network bandwidth • Composition needs to be done in a de-centralized manner • Fault tolerance and graceful recovery • Solution should efficiently utilize node/service topology
Application Layer Service Integration Layer Service Execution Layer Broker Arbitration and Delegation Fault Recovery Module Network Layer (DSDV/AODV/CSGR, GSR) General Architecture Planner Service Discovery Layer (GSD)
Group-Based Service Discovery (GSD) • GSD= Group-based Service Discovery • Peer-to-peer caching of service advertisements • No global advertisements • No global request broadcast • Describe services semantically in DARPA Agent Markup Language (DAML) • Enhance service matching mechanism based on semantic description
GSD Protocol Summary • Class/subClass hierarchy of DAML used to classify services to different groups based on functionality • Intelligently forward requests to appropriate nodes • Prevent request flooding • Efficient in terms of bandwidth usage and discovering a service in a MANET
Combining Routing with Discovery • Service Invocation requires data streaming • Usually underlying ad hoc routing protocol (AODV, DSR, TORA etc) used • Disadvantages of using standard routing protocols • Repeats a few steps performed during discovery • Node-address centric packet delivery • Routing Layer is not service-aware
Advantages of Integrating Routing with Discovery • Reduced network load • Steps performed during routing is combined with discovery • Usage of available routes (formed during discovery) to stream service data • Service-based route redirection • Resilience to node failure
Features of Integrated Discovery and Routing Protocol (GSR) • Uses path traversed by a service request and a service advertisement to form a data path • Data path used to stream service data • Service-based route redirection in case of service/node failure • End-to-end state-based session maintenance • Handles node and link failure • Session-based packet buffering and retransmission upon session reconnection
Service Composition Techniques • “Request Processor” uses DAML-S to model Composition Knowledge • Dynamic Broker Selection Technique • No assumption about the platform of the broker/central entity • Broker Arbitration and Delegation • Source of the request starts a process which decides the broker platform • Parameters based on current processor usage, memory capability, longevity, services available in its vicinity etc
Dynamic Broker Selection Technique (contd.) • Broker discovers *all* the required services • Fault tolerance • Source-monitored fault-tolerance • Assumption: Source remains ‘alive’ all the time • Periodic ‘checkpoints’ being sent to the source • Source issues a new composition request in case of failure
Service Composition Techniques • Distributed Brokering Technique • Broker Arbitration and Delegation • Requester is responsible to determine the ‘first’ broker • Parameters to select a broker are similar to the ‘dynamic Broker selection’ mechanism • More emphasis on services that are needed ‘immediately’ • ‘first’ broker not responsible for the whole composition • Composes only ‘as much’ as it can • ‘radius’ of composition is small • ‘first’ broker selects another broker when it has completed the ‘partial’ composition
Distributed Brokering Technique (contd.) • Fault Recovery • Similar to the one used in ‘dynamic entity selection’ mechanism • Each broker keeps the client informed about the partial state of composition and execution • Client issues a new composition request with the subset that is remaining
Practical Implementation • proof-of-concept level implementation using Bluetooth • IBM Bluedrekar driver • Ericsson Development Kits • Laptops (Dell, IBM T series) used for hosting services
Anamika: Network Manager • Communication between Bluetooth peers done over RFCOMM • Connect-transmit-disconnect mode of operation • Segmentation and reassembly of Anamika messages
Anamika: Service Discovery • Peer-to-peer service discovery (Group-based Service Discovery) • Dynamic caching of discovered services in peers • Semantic description based service matching (using DAML-S and DReggie Ontology) • Service Discovery also provides invocation information
Group-based Service Discovery Results • Simulation carried in Glomosim simulator • 25 to 100 nodes • Movement pattern=random way-point • A(b,c) => pause for A seconds and then move to the next location with speed varying from b to c m/s • Radio Range of each node=31 meters
Group-based Service Discovery Results • Simulation carried in Glomosim simulator • 25 to 100 nodes • Movement pattern=random way-point • Radio Range of each node=31 meters
Increase in Nodes Receiving Advertisements with Increase in Adv. Diameter
Explanation • In static topology • Number of nodes receiving advertisements increase quadratically with adv. Radius • In mobile topology increase in number of nodes receiving advertisements is approximately linear • Significantly affects the scalability • Important result for mobile application architecture development
Explanation • Average number of messages exchanged is lower in GSD • Mobility affects the number of messages but GSD in general performs better • Broadcasts are very much reduced in GSD leading to the improvement in the total traffic