Pervasive Computing Middleware by jennyyingdi


									  Ubiquitous Service Architecture
Mobile Ad-hoc Network Environments

    Dongman Lee (

            Feb 19, 2008

 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

 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
 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

                                                Peer decoupling
Plain old computing                                                    awareness

                                                                                  No dependable
        service discovery
                                Infrastructure based
                               pervasive environment
Spontaneous                                                 Infrastructure-less
interoperation                                                   operation
                                                                  Ad hoc pervasive
                                Ad hoc networking
  Characteristics of Ad hoc Pervasive Env.
                                                                                Blog server

 Spontaneous interoperation               Users in remote

   – We do not know which services will                                           IP Network

     be provided by what nodes in
                                                             Cellular Network
                                                                                               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
 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
 Service discovery
   – Spontaneously finds available services
 Publish and subscribe
   – Spontaneously starts to communicate and flexibly changes peers if
 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

 New performance criteria may be used
   – route stability despite mobility
   – energy consumption
               Ad hoc Routing Protocols

(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
       Ad hoc Routing Protocols (cont.)

                 Ad hoc routing protocols

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
   – 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
               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
         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 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

 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]
 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

                      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
Dynamic Interoperation

 Publisher / Subscriber / Dispatcher (Event Broker)
 Classification
   – Expressiveness of subscription language
       • Subject (Topic)-based
       • Content-based
   – Architecture of dispatcher
       • Centralized
           – EMMA [1]
       • Distributed
           – Structured : Content-based Publish-Subscribe in a Mobile Environment [2]
           – Semi-structured : Semi-probabilistic Content-Based Publish-Subscribe [3]
           – Unstructured : Content-Based Routing in Highly Dynamic Mobile Ad Hoc
             Networks [4], STEAM [5], GREEN [6]
   – 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.
    Event            Centralized                                    Distributed
                                             Structured          Semi-structured         Unstructured
     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)

 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
   – A personal smart space consists of only resource limited mobile devices
   – Devices are unavailable intermittently due to out of range and lack of battery
 Requirements on context management in personal smart
   – Context gathering should not incur frequent network transmission
   – Context aggregation should not incur centralized processing overhead of a
     coordinator leading to its resource consumption

  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 -

                                            Mobile Gaia facilitates the
                                             integration of resources of a
                                             cluster of personal devices and
                                             provides an application
                                             framework to develop
                                             applications for the device
                                           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

                                 provide a software platform
                                  consisting of a set of open
                                  source C++ libraries for smart

                                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
               (University of Bologna -

 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
                             Personal Server
     (INTEL - )

                                          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

                       MP3 Player

                                          MP3 Player                                          Mobile
            Service Reconfiguration                                                          Blogging
                                                                       Mobile Blogging
          Ad-hoc Group Management                                                           Service Reconfiguration
           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?

To top