MSR tech talk

Download Report

Transcript MSR tech talk

Location Based Services
Lenin Ravindranath, Microsoft Research India
Motivation


Location is a key element of user context
Mobile devices a natural conduit for location based
services



Location -> GPS



They are ubiquitous
Have many sensors sensors
GPS based devices are not common
GPS is power hungry
Many apps care about relative location


relative to landmarks
relative to people
Scenario
Demo!
Aspects

Location Determination


Neighborhood Discovery


spatial and temporal
Communication



need relative location
push vs. pull
with or without Internet access
Service model

stateful vs. stateless
Overview

Beacon-Stuffing


Neighborcast



WiFiAds
People Near Me
Neighborhood GPS
Landmark based Services




Post-its in the air
Ads, comments and reviews
Location and Neighborhood based reminders, profiles
Social networking
Beacon-Stuffing
WiFi Beaconing Protocol
Access Point
Network Name
SSID: NYCWireless
Beacon Packets
Network Name
SSID: T-Mobile
Connected
Networks Found
Connected
Beacon-Stuffing

Stuff beacon packets with information





Unused fields in beacons (Beacon Information Element)
Stripe across multiple beacons, if needed
Clients receive beacons even when they are not
connected to any network
Clients receive beacons from other networks even when
they are connected to a particular network
Send dynamic information
WiFiAds – Location sensitive Ads
CoffeeDay
close to me..
Hmm!
WiFi Beacon
Coffee Day
Drink of the day is Hot Chocolate
Client running our software
I love Hot
Choc! Go to
CoffeeDay 
AdCenter AP
at CoffeeDay
Within 250 m of CoffeeDay
Beacon-Stuffing Summary

No absolute location required

Clients near the broadcasting AP gets the information

Push model of information delivery
No connectivity required
Stateless

Published in HotMobile 2007




Joint work with Ranveer Chandra, Jitu Padhye, Alec Wolman
Techfest 2007 Demo
Overview

Beacon-Stuffing


Neighborcast



WiFiAds
Buddies Near Me
Neighborhood GPS
Landmark based Services




Post-its in the air
Ads, comments and reviews
Location and Neighborhood based reminders, profiles
Social networking
Neighborcast

Goal: communication among nearby nodes


2 nodes are nearby if they hear a common AP
Nearby nodes can be on different frequency channels
LAN/Internet
Neighborcast

Solution: Leverage multicast techniques

Mapping from AP BSSID to multicast group address


Client joins group of every AP around it


BSSIDs correspond to AP’s MAC ID, and is globally unique
APs it hears as part of its scanning process
Clients frequently publish info on group of associated AP

Infrequently publishes info on other groups it is subscribed to
Neighborcast
LAN/Internet
00:0A:80:12:34:55
00:0B:80:12:34:56
00:0C:80:12:34:57
Multicast group for BSSID 00:0B:80:12:24:56
Implementing Neighborcast

3 approaches:




IP Multicast
Application Level Multicast (ALM)
Pub-sub using RSS feeds
Tradeoffs: overhead, scalability, ease of deployment
Neighborcast using IP Multicast

Map AP’s BSSID to IP multicast group address



BSSID (6 bytes): <Manufacturer’s prefix>:XX:XX:XX:XX
IP multicast address (4 bytes): <224 – 239>:XX:XX:XX
Our mapping approach:


228.XX.XX.XX, where XX:XX:XX is last 3 bytes of BSSID
Example: 00:17:95:81:CA:30 will be 228.129.202.48


Since 0x81 = 129, 0xCA = 202, 0x30 = 48
Might have collisions! Probably not in same subnet…
Neighborcast using IP Multicast

Neighborcast using IP multicast:




Pros:



Every client maps AP’s BSSID to IP multicast address
Joins multicast group of all BSSIDs it hears
Publishes info of multicast group of AP it is associated with
No need for special infrastructure/server
Approach is scalable since all traffic is local
Cons:

Limited deployment of IP multicast, only in edge networks
Buddies Near Me




Each client joins Neighborcast group of all APs around
it
It announces its presence (along with signal strengths)
to its Neighborcast group
Learns of nearby buddies
Can also estimate “nearness”

Signal strength
Neighborhood GPS

Dynamically help neighbors leverage GPS data from
other phones
Cloud/Server
GPS
computed-location
Neighborcast Summary

No absolute location required

Two clients are nearby if they hear a same AP

Neighborcast forms IP overlay among nearby nodes
Client needs to be connected
Stateless

Published in HotMobile 2008




Joint work with Ranveer Chandra, Jitu Padhye
Techfest 2008 Demo
Overview

Beacon-Stuffing


Neighborcast



WiFiAds
People Near Me
Neighborhood GPS
Landmark based Services




Post-its in the air
Ads, comments and reviews
Location and Neighborhood based reminders, profiles
Social networking
Location as Landmarks

For many apps absolute
location (GPS) is not
required

Location as perceived by a
user

Landmarks


Access Points BSSID
GSM Tower ID
GSM Tower
Access Point
Information tagged with Landmarks

Users publish information

Landmark Tagged Information



Automatically tag information published with landmarks
Pictures, Videos, Blogs, Ads
Users search for information

Landmark based Search

Query information based on landmarks
Landmark based services
GSM Tower GSM1
Tower ID: XX1
Server
Search
(query, AP BSSID, GSM ID)
Access Point AP1
BSSID: 00:11:22:33:44:55
Publish
(info, AP BSSID, GSM ID)
Post-its in the air
Post-its in the air





Scan for landmarks
Post (tagged with landmarks)
Search (giving landmarks)
Retrieve post-its in the air
Challenges
 What if a landmark moves?


Move posts to Neighborhood
How to find the neighborhood?

Radio map
Radio Map


Periodically clients report Access Points and GSM towers seen
Build a graph




Nodes are APs/GSM Towers
Edge between two nodes if they are reported together
Node weights and Edge Weights
Delete nodes and edges based on their weights
Wi
Fi
Wi
Fi
Wi
Fi
GSM
Wi
Fi
Wi
Fi
Wi
Fi
Wi
Fi
GSM
Wi
Fi
Wi
Fi
Wi
Fi
Wi
Fi
Wi
Fi
Wi
Fi
Wi
Fi
Buddies Near Me
GSM
GSM
WiFi
WiFi
WiFi
WiFi
WiFi
WiFi
WiFi
Buddies who were here

You are visiting a new place



Need to know information and past experience of people
Find friends who visited this place in the past
Find them online

Ask queries
Location Sensitive Search

Search for Coffee


Gives nearby Coffee shops info
Search results ranked based on nearness
Comments and Reviews


Read others reviews
Post comments
Reminders in the air

Location based reminders


Post reminders in the air
Remind me when I cross this place next time



Remind me to buy milk when I am near the market
Remind me office work only when I am in the office
Neighborhood based reminders

Remind me when one or more friends are nearby at a location

Remind me to give Prashanth Rs 100 when he comes nearby
Other Applications




Location based profiles
Location based games, Game pairing
Dating service
Enhanced presence
Landmark based services Summary

No absolute location required

Leverage Landmarks and Neighborhoods

Client needs to be connected
Stateful
Number of applications

Submitted to Ubicomp 2008




Joint work with Mohit Gupta, Prashanth Mohan
Thinkweek paper (Brooks was here.. So was Red)
Benefits
•
Does not depend on GPS
•
•
•
•
•
Lesser power
Works inside buildings, malls
No regular war driving necessary (as is in the case of
WiFi, GSM triangulation)
Readily deployable
No operator support required
Questions
Code in the air



Post code in the air
Devices crossing that location will execute them
Harnessing other devices

Example


Monitor temperature at a place continuously
Post the following code in the air
use sensor(themometer)
temp = themometer.getTemperature()
send(temp, “http://leninr/tempService”)