1 chapter 4. middleware for location-based services hans-arno jacobsen, university of toronto kim...

38
1 Chapter 4. Middleware for Location- Based Services Hans-Arno Jacobsen, Univ ersity of Toronto Kim Min Jeong [email protected] http:// mobide.korea.ac.kr Mobile Data Engineering Lab. Dept. of Computer Science and Engineering, Korea University

Post on 21-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

1

Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto

Kim Min Jeong

[email protected]://mobide.korea.ac.kr

Mobile Data Engineering Lab.Dept. of Computer Science and Engineering, Korea University

Page 2: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

2

Contents

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

Page 3: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

3

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

Page 4: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

4

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

Page 5: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

5

Applications Classification and characterization of LBS applications

Page 6: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

6

LBS Characteristics

Conceptual characterization of LBSPull vs. Push based applications

In push based : infrastructure autonomously pushes information to mobile terminalsIn 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 information

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

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 information

1. Be provided voluntarily by the user : location information is part of the service request

2. Be made by the network infrastructure or by a third party

Accuracy of location information

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

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

Kind of information sources

1.Static information source : refer to databases about geographic environments (building)

2.Dynamic information source : offer information about road, traffic, weather conditions

and the location of mobile terminals

Page 7: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

7

LBS Characteristics

Page 8: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

8

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

Page 9: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

9

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…)

Page 10: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

10

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

Page 11: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

11

System Architecture

End-to-end system architecture

Page 12: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

12

System Architecture

Page 13: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

13

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

Page 14: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

14

Middleware Models

Survey different middleware models The various models exhibit a wide spectrum of different cha

racteristics Publish/Subscribe Subject Spaces Tuple Spaces DBMS-Based Model

Page 15: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

15

Middleware Models

Publish / Subscribe

Generate a message when it wants the external world to know that

a certain event has occurred

P1

P2

Pn

Producers (Publisher)

S1

S2

Sn

Consumers (Subscriber)

Subscribe the events they are interested in

Publish (e)

Subscribe (p)

Notify (e)

Notification Service

Manage subscriptions and forward event to interested subscribers

B1B2

B3

Bn

…Event broker

Page 16: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

16

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

Page 17: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

17

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

Example)Subscription specification : Book/*/Canada

Notifications of events : Book/Travel/Canada Book/History/Canada

Topic

Topic

By topic Hierarchy :

Event is published to the History topic,

All subscriptions subscribing to topics Book, History, Canada and England will be notified

Page 18: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

18

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

Content-based subscription : (type=news)∧(Province=Ontario)∧(City=Toronto)

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

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

Page 19: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

19

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

Page 20: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

20

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 pu

blications and subscriptions The system is periodically receiving location information about its users

as coordinates (latitude, longitude, altitude) Main component : Publish / Subscribe Filtering engine

Page 21: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

21

Middleware Models

Apply publish / subscribe for modeling LBS L-ToPSS

Publications Subscriptions

Expressed as a list of attribute-value pairs { (a1,val1), (a2,val2),…..(an,valn) }

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

Represented as conjunctions of simple predicates (attribute-name relational-operator value)

Ex) for the book example : (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

Page 22: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

22

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)

Page 23: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

23

Middleware Models

Apply publish / subscribe for modeling LBS

How to system works for Stationary publisher-mobile subscriber Mobile publisher-stationary subscriber Mobile publisher-mobile subscriber

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

Page 24: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

24

Middleware Models

Apply publish / subscribe for modeling LBS1. Stationary publisher-mobile subscriber

Publish/SubscribeFilter engine

publication subscription

If a subscription is matched by a publication …

LocationConstraint

Matching engine Location constraints

• Location Constraints :

MIN of the subscriber +

(latitude, longitude, altitude) coordinates of the publisher

LocationStaging

arealocation update

•User location information (user_MIN, current_latitude, current_longitude, current_latutude)

Notification

Page 25: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

25

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

Page 26: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

26

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

Page 27: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

27

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

Page 28: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

28

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 :

Set of dimension of subject space :

Set of values allowed in this space:

d = (name, type)

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

Page 29: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

29

Middleware Models

Subject Spaces Model Relationship between Subject Spaces

Define as a relation on the set ⊏ ∑ of subject spacesGiven 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

Page 30: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

30

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

Page 31: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

31

Middleware Models

Subject Spaces Model Two types of regions

Object regions Interest regions

represent values a publisher provides O denotes a set of object regions o : a particular object region in O

represent the set of values within the subject spaces a

subscriber is interested in I denotes a set of interest regions I : particular interest region in I

Page 32: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

32

Middleware Models

Subject Spaces Model Matching Relations between Regions

r1

r3

r2

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

Page 33: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

33

Middleware Models

Subject Spaces Model Subscription and Publication

Subscription Publication

Is : set of interest regions

fs : expression that represents the sets of

object regions

Op : set of object regionsfp : expression that represents the sets of

interest regions

Page 34: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

34

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

Page 35: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

35

Middleware Models

Tuple Spaces Tuple space can coordinate many concurrent activities, including the statef

ul 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

Page 36: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

36

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

Page 37: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

37

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

Page 38: 1 Chapter 4. Middleware for Location-Based Services Hans-Arno Jacobsen, University of Toronto Kim Min Jeong cara2847@dreamwiz.com

38

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