360 likes | 650 Views
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 They are ubiquitous Have many sensors sensors Location -> GPS GPS based devices are not common
E N D
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 • They are ubiquitous • Have many sensors sensors • Location -> GPS • 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 • need relative location • Neighborhood Discovery • spatial and temporal • Communication • push vs. pull • with or without Internet access • Service model • stateful vs. stateless
Overview • Beacon-Stuffing • WiFiAds • Neighborcast • 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 • WiFiAds • Neighborcast • 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 • BSSIDs correspond to AP’s MAC ID, and is globally unique • Client joins group of every AP around it • 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:0C:80:12:34:57 00:0B:80:12:34:56 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: • 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 • Pros: • 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 • WiFiAds • Neighborcast • 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 Access Point GSM Tower
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 TowerGSM1 Tower ID: XX1 Server Access Point AP1 BSSID: 00:11:22:33:44:55 Search (query, AP BSSID, GSM ID) Publish (info, AP BSSID, GSM ID)
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 GSM GSM WiFi WiFi WiFi WiFi WiFi WiFi WiFi WiFi WiFi WiFi WiFi WiFi WiFi WiFi
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
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”)