chap4 Middleware for Locationbased Services

Shared by: k3pv2RLb
Categories
Tags
-
Stats
views:
0
posted:
11/8/2012
language:
English
pages:
38
Document Sample
scope of work template
							Chapter 4.
   Middleware for Location-Based Services
                    Hans-Arno Jacobsen, University of Toronto




                        Kim Min Jeong
                    cara2847@dreamwiz.com
                       http://mobide.korea.ac.kr
                    Mobile Data Engineering Lab.
      Dept. of Computer Science and Engineering, Korea University




                                                                    1
    Contents

   Introduction
   Applications
   LBS Characteristics
   Requirements imposed on Middleware
   System architecture
   Middleware Models
   Conclusion



                                         2
    Introduction
   Location based service (LBS)
      Information service is a network-accessible system to collect, filter,
       transmit, process, disseminate data
      The additional integration of position location information as a part of the
       data processed by the information service
      Provide and deliver information to users in a highly selective manner, by
       taking users’ past, present or future location


   LBS Applications
      Route-planning applications, pushed-based targeted advertisement, friend
       finder system, location-based games
      Have different characteristics and impose a wide spectrum of
       requirements on the underlying middleware platform


                                                                                      3
    Introduction

   Focus on
     Location application services
     The middleware technology required for supporting these services



   Objective
     Identify LBS application categories
     Requirements imposing on underlying middleware platforms
     Survey several middleware models




                                                                         4
    Applications
   Classification and characterization of LBS applications




                                                              5
        LBS Characteristics
       Conceptual characterization of LBS
Pull vs. Push based           In push based : infrastructure autonomously pushes information to mobile terminals
applications                  In pull based : requests are initiated by the mobile terminal (user)

Direct vs. indirect profile   Profile information 1. may be gathered directly from the user or 2. may be obtained indirectly by
                              observing user’s interaction patterns or by obtaining from third parties

Availability of profile       Profile information can be available at request time or be already available to the LBS
information

Interaction scenarios         Correlation between interacting entities (service requester and service provider).
                              1. Both of them are stationary 2. Either is a mobile/stationary 3. Both of them are mobile

Source of location            1. Be provided voluntarily by the user : location information is part of the service request
information                   2. Be made by the network infrastructure or by a third party

Accuracy of location          The degree of accuracy of location information is various factors as kind of applications
information

Statefulness of               If the LBS maintains state multiple service request, the interaction is stateful (ex. tracking
interaction                   application) and if no such state is maintained, the interaction is a stateless

Kind of information           1.Static information source : refer to databases about geographic environments (building)
sources                       2.Dynamic information source : offer information about road, traffic, weather conditions
                                                                and the location of mobile terminals                              6
LBS Characteristics




                      7
      Requirements imposed on middleware
   Recently, there are millions of mobile wireless telecommunication
    service subscribers who may take advantage of LBS

   All of these users could easily become clients to widely available
    location-based services

   To fully support LBS, requirements emerge for location-based
    service middleware technology




                                                                         8
    Requirements imposed on middleware

   LBS middleware platforms must do the following
        Manage the mobility to all LBS applications by supporting disconnected operations
        Manage changes in the network topology that occurs in dynamic settings,
          such as ad-hoc location-based services
        Manage millions of information consumers and information providers
        Propagate notifications for thousands of information consumer simultaneously
        Manage high volatility of users’ interests
        Support heterogeneous notification channels (e.g. email, Internet protocols, fax, SMS..)
        Perform security functions, subscriber and publisher authentication
        Support different content formats (e.g. XML, HTML, WML…)




                                                                                             9
    System Architecture

   Middleware system
     The set of services that facilitates the development and deployment of
      distributed applications in heterogeneous environments
     The objectives are to abstract the details of the underlying OS, network
      substrate and protocols, mask failures, and mask the distribution of
      interacting subsystems
   LBS Middleware
     Facilitate the development and deployment of LBS applications in
      heterogeneous network environments
     To offer one single location-based application portal, LBS middleware
      connects customers on mobile terminals and Internet, ASP
     Integrates with the network infrastructure, location servers, billing systems,
      subscriber portal services

                                                                                       10
    System Architecture

   End-to-end system architecture




                                     11
System Architecture




                      12
    System Architecture

   LBS Middleware
     Differ in the kind of services offered to the subscriber, network
      operator, the application provider
         Subscriber : fine grained control over their profiles and location, context are
                       considered
         Network operator or third-party ASP : supported with real-time billing,
          subscriber information access


     So, LBS Middleware are distinguished by the features they offer
      their users (mobile user, network operator, application provider)
     Many different architectures exist in the marketplace, without one
      dominant player

                                                                                            13
    Middleware Models

   Survey different middleware models
   The various models exhibit a wide spectrum of different
    characteristics
     Publish/Subscribe
     Subject Spaces
     Tuple Spaces
     DBMS-Based Model




                                                              14
        Middleware Models

      Publish / Subscribe
                                                                                           Consumers (Subscriber)
       Producers (Publisher)
                                                     Notification Service
                                                                                                      S1
                    P1
                                                                                 Subscribe (p)

                             Publish (e)
                                                         B1
                                                                     B2
                                                                                                      S2
                    P2

                                                                                     Notify (e)
                                                    B3         …                                     …
                  …
                                                Event broker       Bn
                                                                                                      Sn
                    Pn
                                            Manage subscriptions and forward event
                                                   to interested subscribers
           Generate a message                                                                     Subscribe the events
when it wants the external world to know that                                                     they are interested in
        a certain event has occurred




                                                                                                                           15
     Middleware Models

   Development of many publish/subscribe middleware systems
     The expressiveness of the data model
         How subscriber express their interest for a certain notification
               Topic-based model
               Content-based model
               Type-based model


     The architecture of the event broker
        Centralized architecture
        Distributed architecture



                                                                             16
    Middleware Models

   Publish / Subscribe
     Topic-based model
             Use a tree-like structure to categorize events

              • Publishers : publish events to one of the nodes of the topic tree
              • Subscribers : subscribe to topics that they are interested in

             Topic



    Topic
                                                               Example)
                                                               Subscription specification : Book/*/Canada
                                                               Notifications of events : Book/Travel/Canada
                                                                                        Book/History/Canada




            By topic Hierarchy :
            Event is published to the History topic,
            All subscriptions subscribing to topics Book, History, Canada and England will be notified
                                                                                                              17
    Middleware Models

   Publish / Subscribe
     Content-based model
        The subscription scheme is based on the actual content of events
        Subscription is expressed as a conjunction of predicates

            Example)
            Topic-based subscription : news/Ontario/Toronto

            Content-based subscription : (type=news)∧(Province=Ontario)∧(City=Toronto)
            In content-based subscription,
            subscription will not notify the event with value (type=news)∧(Province=Ontario)




                                                                                               18
    Middleware Models

   Publish / Subscribe
     Type-based model
         Use features of object oriented programming languages (Java) to model event
          types and subscriptions
         Messages (publications and subscriptions) => Objects
         Event topics : collections of message objects of the same type
         Using object oriented programming paradigms, sub-topics can be formed by
          inheriting another topic object class




                                                                                    19
    Middleware Models

   Apply publish / subscribe for modeling LBS
     L-ToPSS
         The location–aware Toronto Publish/Subscribe System
         Be presented for the processing of location information in addition to
          publications and subscriptions
         The system is periodically receiving location information about its users
          as coordinates (latitude, longitude, altitude)
         Main component : Publish / Subscribe Filtering engine




                                                                                      20
    Middleware Models

   Apply publish / subscribe for modeling LBS
     L-ToPSS
                             Publications                                                Subscriptions
         Expressed as a list of attribute-value pairs                 Represented as conjunctions of simple predicates
          { (a1,val1), (a2,val2),…..(an,valn) }                        (attribute-name relational-operator value)

          Ex) for the book example :                                 Ex) for the book example :
          { (title, “middleware for LBS”), (author,”Jacobsen”) }           (edition >2000)



      Predicate (a rel-op val) is matched by an attribute-value pair (a’, val’)
      if and only if (a=a’) and the (a rel-op val) boolean relation is true




                                                                                                                           21
    Middleware Models

   Apply publish / subscribe for modeling LBS

     If either the publisher or the subscriber is stationary,


         The stationary entity is associated with fixed location
          location information : (latitude, longitude, altitude)

         The mobile entity : Mobile Identification Number (MIN)




                                                                    22
    Middleware Models
   Apply publish / subscribe for modeling LBS




                                                   Figure4.3 Publish/subscribe system model
                                                             to support location-based services




     How to system works for
         Stationary publisher-mobile subscriber
         Mobile publisher-stationary subscriber
         Mobile publisher-mobile subscriber
                                                                                          23
        Middleware Models

      Apply publish / subscribe for modeling LBS
         1. Stationary publisher-mobile subscriber


publication           subscription




                                                           Location                   Location
       Publish/Subscribe                                  Constraint                  Staging
         Filter engine      Location constraints        Matching engine                 area
                                                                                                       location update

                             If a subscription is matched by a publication …
                                                                                 •User location information
                                                                                  (user_MIN, current_latitude,
• Location Constraints :                                                          current_longitude, current_latutude)
 MIN of the subscriber +
                                                                  Notification
(latitude, longitude, altitude) coordinates of the publisher




                                                                                                                         24
    Middleware Models

   Apply publish / subscribe for modeling LBS

    2. Mobile publisher-stationary subscriber
      - Static location is associated with the subscription
      - MIN is contained in the publication
         Process same way as in the previous case
         Stationary subscriber will be notified when the publisher comes nearby




                                                                                   25
    Middleware Models

   Apply publish / subscribe for modeling LBS

    3. Mobile publisher-mobile subscriber
      - Each entity has associated a MIN : MIN_pub and MIN_sub
      - Location constraint : (MIN_pub , MIN_sub)
      - For each MIN, system stores the last location update and the timestamp
      - Location matching :
           When location update (MIN1, latitude, longitude, altitude) enters the system, corresponding
            location information and timestamp are updated.
           For(MIN1, MIN2), system checks if the last location received for MIN2 is close to MIN1and
            also if the timestamps are close in time.
           The appropriate subscriber is notified about the publication associated with the location constraint




                                                                                                                   26
    Middleware Models

   Subject Space Model
     The traditional publish / subscribe model is inherently stateless
     Subject space model is designed for state-persistent publish /
      subscribe systems
     State of subscription
         Whether the subscription is true or false to a given publication


     The relationships of all publications and subscriptions form the state
      of a publish/subscribe systems




                                                                               27
    Middleware Models

   Subject Space Model
     Subject space
        Information is structured by subject spaces
        Multidimensional spaces and, data form regions in the subject spaces


                Subject Space :                                d = (name, type)

                Set of dimension of subject space :

                Set of values allowed in this space:

            Ex) subject space ‘location’ : Dlocation = { (x, double), (y,double),(z, double) }




                                                                                                 28
    Middleware Models

   Subject Spaces Model
     Relationship between Subject Spaces
        Define ⊏ as a relation on the set ∑ of subject spaces
          Given two subject spaces σ1 and σ2,
           1. σ1 fully contains σ2, σ1 ⊏1 σ2
           2. σ1 partially contains σ2, σ1 ⊏p σ2
           3. σ1 and σ2 are unrelated σ1 ⊏0 σ2

          Ex) user profile subject space : σuser_profile
              Duser_profile = {(name,string),(age,integer),(profession,string)}

              Service providers provide about a coffee shop
              supject space : σ product, σcoffee, σcake
              Dproduct={(SKU,string),(price,double),(discount,percentage)}
              Dcoffee={(flavor,string)} U Dproduct
              Dcake={(type,string),(name,string)} U Dproduct

             The relationship among four subject spaces :
               σcoffee ⊏1 σ product ;     σcake ⊏1 σ product ;
               σuser_profile ⊏0 σproduct ; σcake ⊏p σuser_profile
                                                                                  29
    Middleware Models

   Subject Spaces Model
     Region
        Data exist in subject spaces in the form of regions
         Region :
         The set of constraints of r :
         the set of values of region r :

          Ex) Let the position of a mobile user be k :

             Ck = {x=[30,100], y=[50,130]}




                                                               30
    Middleware Models

   Subject Spaces Model
     Two types of regions


                 Object regions                                   Interest regions

      represent values a publisher provides    represent the set of values within the subject spaces a
      O denotes a set of object regions         subscriber is interested in
      o : a particular object region in O      I denotes a set of interest regions

                                                I : particular interest region in I




                                                                                                           31
    Middleware Models

   Subject Spaces Model
     Matching Relations between Regions

                                                            r3

                                     r1                          r2




                                     The relations among regions :
                                     r3 mc r2, r2 me r3, r1 mo r3




                                                                      32
      Middleware Models

    Subject Spaces Model
        Subscription and Publication
                          Subscription                                Publication


    Is : set of interest regions                  Op : set of object regions
    fs : expression that represents the sets of   fp : expression that represents the sets of

         object regions                                  interest regions




                                                                                                 33
    Middleware Models

   Subject Spaces Model
     Matching Relations between Publications and Subscriptions

         In order for publication to match a subscription,
          some object regions of the publication must satisfy the subscription filter,
          the reverse case is the same




                                                                                         34
    Middleware Models

   Tuple Spaces
     Tuple space can coordinate many concurrent activities, including the
        stateful interaction among multiple activities
       Originated in the parallel programming community
       Widely implemented (e.g., JavaSpaces, Tspaces)
       Tuples : typed data elements
       Tuple spaces : collections of tuples
       Dynamically inserted, read and removed from the space




                                                                             35
    Middleware Models

   Tuple Spaces

     In a location based application, information producer and information
      consumer interact via a tuple space by inserting and extracting tuples

     The Tuple space decouples the communication between producer and
      consumer




                                                                               36
    Middleware Models

   DBMS-Based Models
     DBMS-based models as an underlying middleware model do not refer
      to database technology to store and manage data but to database
      technology for enabling the core information service provided
     Location information and request are passed on to a database to retrieve
      the relevant information
     Enables the interaction between one mobile terminal and database




                                                                                 37
    Conclusion
   The characterization of LBS applications
   Discussion of middleware models that supports various
    characterizations
   Several fundamental differences
      Some applications require coordination and interaction of multiple users
      Based on the model of one mobile entity interacting with a service provider
   A middleware system for LBS supports many other functionalities,
    such as management of subscriber information and billing records, and
    enforcement of privacy
   Middleware architecture supports the integration of these
    functionalities
   To date, no stand middleware for LBS exists, but standard
    organizations are defining location positioning protocols

                                                                                     38

						
Related docs
Other docs by k3pv2RLb