Ubiquitous Service Architecture for Mobile Ad-hoc Network Environments Dongman Lee (firstname.lastname@example.org) ICU Feb 19, 2008 Contents Part-I: Overview Part-II: Key components – Ad-hoc network routing – Service discovery – Dynamic interoperation – Context handling Part-III: Concluding remarks Part-I: Overview What is Ubiquitous Computing? Ubiquitous Computing Vision – The most profound technologies are those that disappear. They weave themselves into the fabric of everyday life until they are indistinguishable from it – Mark Weiser Fixed vs. Ad-hoc Changes Ad-hoc interaction is expected to be more prevalent as the mobile/wireless network and device technologies advance – Beyond PAN -> Personal network – Knowledge sharing – Space/Place-awareness – Acquaintance with unknown strangers – Interaction with smart objects spreading around us – Social relationship – Privacy – Anonymity – Culture collision Mobile Ad-hoc Networks Not using a pre-existing infrastructure – traditional cellular systems (base station infrastructure) May need multiple hops to reach a destination Applications Military environments: was motivation – soldiers, tanks, planes • Need mobility, avoid SPF, rapidly deployable, Multi-hop to reach to person outside of LOS(line of sight), when existing infrastructure is unavailable – Survivable Radio Network(SURAN), Global Mobile(GloMo) Information System Civilian environments – taxi cab network, automobile communications(Cellular + ad hoc+..) – Meetings/conferences – sports stadiums, super market, Hotel… – boats, small aircraft Emergency operations – search-and-rescue – policing and fire fighting Personal area networking – cell phone, laptop, head phone, wrist watch, multimedia devices – Wearable computing Landscape Context Peer decoupling Plain old computing awareness publish-subscribe No dependable service discovery server Infrastructure based pervasive environment Spontaneous Infrastructure-less interoperation operation Cross-layer interoperation Ad hoc pervasive environment Ad hoc networking Characteristics of Ad hoc Pervasive Env. Blog server Spontaneous interoperation Users in remote locations – We do not know which services will IP Network be provided by what nodes in Cellular Network advance. PC-based users No dependable server Ad-hoc Network – Everything should be done through Users in collaboration of participants or by proximity electing some of them as virtual infrastructure. Dynamic context adaptation – Any connection can be re- established so as to connect to “better” peer. Characteristics of Ad hoc Pervasive Env. (cont.) Radical mobility scenario – Dynamic topology of the system and networking infrastructure itself is assumed to be mobile – All the network nodes possess the functionality required to cooperate to enabling routing – In pub/sub point of view, all client hosts are also brokers Expensive multi-hop unicast – It often requires several local broadcasts and corresponding replies to find a route Frequent disconnection – Disconnection is no longer an accident • Due to not only sensitive communication media but also application needs (e.g. to save battery power) – Failures are not guaranteed to be transient • Ex) cars moving on a highway in opposite directions may never meet again Key Technologies Ad hoc networking – Spontaneously builds a virtual network without necessarily having a coordinator Service discovery – Spontaneously finds available services Publish and subscribe – Spontaneously starts to communicate and flexibly changes peers if needed Distributed context handling – Spontaneously collaborates with others for figuring out the current context correctly Part-II: Key Technologies Ad-hoc Network Routing Routing in MANET: difference Host mobility – Ad hoc nodes have both functions. – Both end nodes and routers are mobile • Nemo Rate of link failure/repair may be high when nodes move fast New performance criteria may be used – route stability despite mobility – energy consumption Ad hoc Routing Protocols Wired (table driven) Tables DSDV updates routing Efficiency table through periodic Periodic table DSR floods RREQ should table exchange. only when needed. be built update costs dynamically. Proactive too much. Reactive Spontaneity (table driven) (on demand) Efficiency (locality) We don’t need to try to know Tables get about far nodes. bigger with more nodes. ZRP combines intra zone HSR’s table size is proactive routing and inter Scalability limited by cluster size. zone reactive routing. Hierarchical Hybrid Ad-hoc Routing Protocols (cont.) Proactive protocols – Establish routes in advance – Determine routes independent of traffic pattern – Traditional link-state and distance-vector routing protocols are proactive – Table driven Routing protocol • Destination Sequenced Distance Vector Routing(DSDV) • Clusterhead Gateway Switch Routing(CGSR) Reactive protocols – Establish routes only if needed – Less routing overhead, but higher latency in establishing the path – Source-initiated on-demand • AODV, DSR, LMR, TORA, ABR, SSR Hybrid protocols – Proactive within a restricted geographic area, reactive if a packet must traverse several of these areas – ZRP, LANMAR Ad hoc Routing Protocols (cont.) Ad hoc routing protocols Source-initiated Table-driven On-demand DSDV WRP AODV DSR LMR ABR CGSR TORA SSR Proactive Protocols Proactive schemes based on distance-vector and link- state mechanisms – Distance vector • Finding shortest path to destination using the route information from neighbor nodes – Bellman-ford – Count to infinity problem – Link state • Each node advertise link information using flooding • Each node calculate shortest path Destination-Sequenced Distance-Vector (DSDV) Each node maintains a routing table which stores – next hop towards each destination – a cost metric for the path to each destination – a destination sequence number that is created by the destination itself – Sequence numbers used to avoid formation of loops Each node periodically forwards the routing table to its neighbors – Each node increments and appends its sequence number when sending its local routing table – This sequence number will be attached to route entries created for this node Each route is tagged with a sequence number; routes with greater sequence numbers are preferred: newer one When a node decides that a route is broken, it increments the sequence number of the route and advertises it with infinite metric Node mobility : routing data update period Optimized Link State Routing (OLSR) Routers maintain awareness of current network topology by exchanging beacons(“HELLO messages”) Each nodes tells the entire network about its immediate neighbors – So each node forms a picture of the entire network topology – Each node can then calculate the best route to any destination Flooding the network with HELLO messages incurs too much overhead – OLSR uses multi-point relay(MPR) nodes to decrease the number of unnecessary broadcasts (only selected nodes broadcast HELLO) FSR (Fisheye State Routing) A simple, efficient LS type routing protocol FSR exchanges the entire link state information only with neighbors Link state exchange is periodical Periodical broadcasts of LS info are conducted in different frequencies depending on the hop distances – Bigger hop distance : less frequent – Smaller hop distance : more frequent for fairly large ad-hoc network The bold entries in figure 2 are propagated to the neighbors at the highest frequency, as they have low hop counts. The GST entry shows the neighbors corresponding to each node in the network. Reactive Routing Protocols On demand routing protocol Large, high mobility ad hoc network Source build routes on-demand by “flooding” Maintain only active routes Route discovery cycle Typically, less control overhead, better scaling properties Drawback: route acquisition latency DSR, AODV, LMR, TORA, ABR Dynamic Source Routing (DSR) When node S wants to send a packet to node D, but does not know a route to D, node S initiates a route discovery – Source node S floods Route Request (RREQ) – Each node appends own identifier when forwarding RREQ Destination D on receiving the first RREQ, sends a Route Reply (RREP) – RREP is sent on a route obtained by reversing the route appended to received RREQ – RREP includes the route from S to D on which RREQ was received by node D – Node S on receiving RREP, caches the route included in the RREP – When node S sends a data packet to D, the entire route is included in the packet header • hence the name source routing – Intermediate nodes use the source route included in a packet to determine to whom a packet should be forwarded Ad Hoc On-Demand Distance Vector Routing (AODV) AODV attempts to improve on DSR by maintaining routing tables at the nodes, so that data packets do not have to contain routes When a node re-broadcasts a Route Request, it sets up a reverse path pointing towards the source – AODV assumes symmetric (bi-directional) links When the intended destination receives a Route Request, it replies by sending a Route Reply Route Reply travels along the reverse path set-up when Route Request is forwarded DYMO Same as for AODV, except: – RREQ and RREP share the same message format – Address blocks can be added to indicate path accumulation along route or addresses that need processing at each node Originating node causes dissemination of a Routing Message (RM) throughout the network to find the target node. Each intermediate node creates a route to the originating node. When target node receives the RM it responds with RM unicast toward originating node. During propagation each node creates a route to the target node. When the originating node is reached routes have been established between the originating node and the target node in both directions. Hybrid Protocols Zone Routing Protocol (ZRP) combines – Intra-zone routing: Pro-actively maintain state information for links within a short distance from any given node • Routes to nodes within short distance are thus maintained proactively (using, say, link state or distance vector protocol) – Inter-zone routing: Use a route discovery protocol for determining routes to far away nodes. Route discovery is similar to DSR with the exception that route requests are propagated via peripheral nodes. => Reactive Service Discovery Why service discovery? Human will be surrounded by a various computing devices. – Tiny sensors, PDA, PC, CP, notebook, server… Extreme complexity to manage those devices – Zero-administration, Zero-configuration - Need to facilitate interaction between the computer - => Goal of Service discovery Originally, to lower the burden of system configuration – “Plug and play” or “zero configuration” In more dynamic or ad-hoc environments, service discovery is a necessity. advertise Query Provider Directory / Lookup Server Consumer Service description Service Discovery in Ad hoc Environments Service discovery schemes have been extended – To support P2P/Virtual backbone based operation – To work efficiently with ad hoc routing Service announcement – Flooding: How to reduce flooding traffic? • Periodically, delta announcement (Konark) • Slotted (DEAPSpace uses slotted+periodic) – Cache advertisements – TTL Well-known schemes – P2P cache : E.g. [DEAPspace] – P2P cache + Group : E.g. [Allia] – Virtual backbone with selected nodes : E.g. [ULAS03] – Combined with routing : E.g. [M-ZRP] Issues Still not quite what is needed – Extremely difficult to implement – Trade-off between fewer transmissions and not relying on a directory – can’t have both – Message transmission can be reduced only to a certain limit, but networks can always grow beyond that New approach? – Partition network to subnetworks • Alleviates the multicast problem, but may not solve it – Combining service directory with routing • No extra transmission • Although traditionally implemented in application layer, no reason not to implement in network layer • GSR, ODMRP extensions, AODV, OLSR for SIP applications – Bloom filter based discovery – Fisheye Bloom filter based discovery Comparison Konark DEAPSpace GSD Allia Service Description WSDL, hierarchy Data structures DAML+OIL N/A of services (encoder/decoder) Service Delta gossip Slotted+periodic Broadcast Policy based alliance Announcement protocol broadcast (broadcastID) of nearby nodes Access to Service SOAP/HTTP; Interface N/D N/D path or syntax based query Other Remarks Intelligently Provides a policy routes to the based framework service groups (Advertisement, Cache and Forwarding Managers) Dynamic Interoperation Publish/Subscribe Publisher / Subscriber / Dispatcher (Event Broker) Classification – Expressiveness of subscription language • Subject (Topic)-based • Content-based – Architecture of dispatcher • Centralized – EMMA  • Distributed – Structured : Content-based Publish-Subscribe in a Mobile Environment  – Semi-structured : Semi-probabilistic Content-Based Publish-Subscribe  – Unstructured : Content-Based Routing in Highly Dynamic Mobile Ad Hoc Networks , STEAM , GREEN  – Majority of existing systems on MANET adopt content-based publish/subscribe based on distributed dispatcher architecture Consideration Points about Mobile Ad-hoc Networks Radical mobility scenario – Dynamic topology of the system and networking infrastructure itself is assumed to be mobile – All the network nodes possess the functionality required to cooperate to enabling routing – In pub/sub point of view, all client hosts are also brokers Expensive multi-hop unicast – It often requires several local broadcasts and corresponding replies to find a route Frequent disconnection – Disconnection is no longer an accident • Due to not only sensitive communication media but also application needs (e.g. to save battery power) – Failures are not guaranteed to be transient • Ex) cars moving on a highway in opposite directions may never meet again Consideration Points about Mobile Ad-hoc Networks (cont’) Reliability in application level – To reduce the size of network stack by blurring the distinction among levels – In pub/sub point of view, messages routed on brokers’ overlay network may get lost due to topological reconfiguration caused by mobility Content-awareness – Mobility brings along the necessity of a new way to approach the development of distributed applications – Devising programming abstractions to capture, disseminate and exploit context is required – Content-based publish/subscribe provide a sound foundation • Thanks to their decoupling, reactive paradigm of interaction and expressiveness from content-based subscription Publish-subscribe in Ad hoc Environments Event distribution and replication. – In order to support cases without designated event brokers, an event broker election algorithm is required and the algorithm should be able to resolve load concentration on elected nodes Content-based filtering – Works “like” ad hoc routing algorithms • Building process is “similar” to ad hoc route table build. • Uses limited-hop flood to find recently disconnected peer. – All other traffics require another routing protocol (e.g. dual flooding issue) or use CBR that is less efficient. Overlay that adapts itself to the changing topology by interaction with routing layer. – Overlay construction phase does not exploit routing layer’s control message exchange. Comparison Event Centralized Distributed Brokering Structured Semi-structured Unstructured Architecture Work EMMA Tree Overlay Semi-probabilistic CBR in highly Approaches pub/sub dynamic MANET, STEAM, GREEN Event Brokering A broker holds all Maintaining tree Partially Limited flooding Mechanism subscriptions and structure to routing deterministic, (probability or forwards events events partially proximity based) probabilistic How to deal - Replication and - Repairing tree - A kind of hybrid - All nodes mobility? election of brokers - Reconciling between structured autonomously subscription and unstructured decide forwarding information - Works differently - No additional - Recover message as the degree of burden caused lost mobility is changed from mobility Performance - Depending on - Delivery ratio and - Depending on Depending on underlying routing latency is good mobility mobility protocol - Overhead is from tree maintenance Context Management Why Different? Context management in personal smart spaces is as important as is it in smart home and offices – Highly dynamic context due to user mobility – Personalized services Constraints on context management in personal smart spaces – A personal smart space consists of only resource limited mobile devices – Devices are unavailable intermittently due to out of range and lack of battery life Requirements on context management in personal smart spaces – Context gathering should not incur frequent network transmission – Context aggregation should not incur centralized processing overhead of a coordinator leading to its resource consumption 40 Context Handling in Ad hoc Environments Composite event detection – Provide inference results using composite event detection instead of first-order logic inference engine Context registry – Provide a repository which manages context providers and finds a target context provider via context name and type Decomposition manager – Distribute context handling tasks to nearby context providers as a form of a sub task Mobile Gaia (UIUC - http://gaia.cs.uiuc.edu/) Goal Mobile Gaia facilitates the integration of resources of a cluster of personal devices and provides an application framework to develop applications for the device collection Key features Each personal active space has a coordinator device and zero Target Application or more client devices Smart Office & Home Service-based middleware for ad-hoc pervasive computing – only required components of services are loaded dynamically into the middleware based on the role of each device Concluding Remarks ContextPhone (HIIT - http://www.cs.helsinki.fi/group/context) Goal provide a software platform consisting of a set of open source C++ libraries for smart phone Key features The ContextPhone platform – Sensors – Communications – System Services – Customizable applications Target Applications daily smart-phone applications such as contacts, a logger, and a media player Colomba (University of Bologna - http://www.lia.deis.unibo.it/) Goal Colomba automatically updates mobile client references to needed resources whenever a client moves and dynamically selects and enforces the most suitable binding strategy Key features Shadow proxy – The system provides any portable device with a companion middleware proxy The binder manager dynamically and transparently readjusts the bindings between shadow proxies and needed resources The policy manager triggers binding rearrangement according to the specified policies Personal Server (INTEL - http://www.intel.com/research/exploratory/personal_server.htm ) GOAL A new class of mobile computer device – Links to the existing infrastructure and provides ubiquitous access to personal information and applications carried with it Key features Enable any computer to perform as if it were the user’s own computer with a small additional software update Enable access to other local resources such as printers, the Internet, and processing power as well as keyboards Personal Server Software Architecture and displays Target Application Big Presentations in Your Pocket – what if you were traveling to a client site to give an important and very large multimedia presentation – connect to any device on site through standard protocols and launch the presentation with confidence Mobile Active Surroundings Goal – Explore ways in which surroundings are enabled to socially interact with themselves as well as human beings by embodiment of cognition, learning, emotion, behavior, etc. – Develop a framework by which surroundings can assist and help human beings, exploiting location- or context-aware understanding dynamically and adaptively Jigsaw MP3 Player Puzzle MP3 Player Mobile Service Reconfiguration Blogging Mobile Blogging Framework Ad-hoc Group Management Service Reconfiguration Framework Context Ad-hoc Service Jigsaw puzzle Ad-hoc Group Management Management Discovery Context Ad-hoc Service Ad-hoc Interaction Management Management Discovery Ad-hoc Interaction Management Concluding Remarks Ad-hoc interaction is expected to be more prevalent as the mobile network and device technologies advance – Beyond PAN -> Personal network – Knowledge sharing – Acquaintance with unknown strangers – Interaction with smart objects spreading around us Social/Cultural challenges – Social relationship – Privacy – Anonymity – Culture collision Q &A What would you like to see in future?
Pages to are hidden for
"Pervasive Computing Middleware"Please download to view full document