560 likes | 693 Views
Acc : Generic On-Demand Accelerations for Neighbor Discovery in Mobile Applications. Desheng Zhang, Tian He, Yunhuai Liu, Yu Gu , Fan Ye, Raghu k. Ganti , Hui Lei Computer Science and Engineering, University of Minnesota, USA
E N D
Acc: Generic On-Demand Accelerations for Neighbor Discoveryin Mobile Applications Desheng Zhang, TianHe, YunhuaiLiu, Yu Gu, Fan Ye, Raghu k. Ganti, HuiLei Computer Science and Engineering, University of Minnesota, USA Third Research Institute of Ministry of Public Security, China Singapore University of Technology and Design, Singapore IBM T.J. Watson Research Center, USA Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Evaluation • Conclusion Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Evaluation • Conclusion Study Group / Junction
Motivation • For interactive mobile applications • require a fast discovery of neighbor devices in a nearby region • allow applications to effectively collaborate among participating devices Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Evaluation • Conclusion Study Group / Junction
Common interaction patterns in mobile systems • Talking. Two nodes meet, exchange data, and diverge. • Docking. A mobile node discovers a static node situated at a rendezvous point • Flocking. A group of nodes move together as a unit Study Group / Junction
Emerging class of low-power mobile sensing applications Docking Flocking Talking [Liu04] [Wark07] [UP08] [Malinowski07] [Eisenman08] [Choudury04,07] [Borriello04] [Huang05] [Huang05] [Huang05] Study Group / Junction
Challenges • To achieve a bounded discovery latency and energy efficiency • 1. shorter discovery latency • delay tolerant => mobile applications humans are involved • Coordinate duty cycles of all devices in the network => personal devices • 2. mobile applications on personal devices desire a fast discovery only when need • => continuous discovery is need to maintainnetwork connectivity in mobile environments Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Evaluation • Conclusion Study Group / Junction
What is done in this paper? • Propose Acc: • serves as an on-demand generic discovery accelerating middleware • support a wide range of discovery protocols with an arbitrary duty cycle pattern • based on knowledge collected by an existing discovery scheme • Leverages the discovery capabilities of neighbor devices • Supporting both direct and indirect neighbor discoveries Study Group / Junction
achievements • Acc-assisted schemes reduce the discovery latency by a maximum of 51.8% when consuming the same energy. • Based on a 10 GB dataset of more than 15;000 taxis ina metropolitan area, Acc employed by taxi drivers is able to accelerate selection of a direction with fewer competing taxis and more potential passengers. Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Disco • Design Scheme • Evaluation • Conclusion Study Group / Junction
Relative Works • assign different probabilities for sending, receiving, and sleeping in individual slots • offer very good performance in the average discovery latency • a unbounded worst-case discovery latency, which leads to a long tail on discovery probabilities • for stationary networks, instead of mobile networks • probabilistic protocols • Birthday Protocol[1], [1] Birthday protocols for low energy deployment and flexible neighbor discovery in ad hoc wireless networks. M. J. McGlynn and S. A. Borbash. In MobiHoc’01, 2001. Study Group / Junction
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 28 25 26 27 29 30 31 32 33 34 35 36 m Relative Works t T m L • quorum-based discovery protocols[2] R • Listen during a row • Transmit during a column • Global agreement on duty cycle • primarily proposed for stationary networks where energy is the most pressing concern, not mobility [2] Power-saving protocols for ieee 802.11-based multi-hop ad hoc networks. Y.-C. Tseng, C.-S. Hsu, and T.-Y. HsiehIn INFOCOM’02 Study Group / Junction
Relative Works • deterministic protocols • DISCO[3], • Based on the Chinese Remainder Theorem • each device selects two prime numbers and generates its period independently based on these numbers [3] Practical asynchronous neighbor discovery and rendezvous for mobile sensing applications. P. Dutta and D. Culler. In SenSys ’08, 2008. Study Group / Junction
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 28 25 26 27 29 30 31 32 33 34 35 36 Real Implementation in DISCO m • Node i is awake at times: • 5, 10, 15, 20, 25, 30, 25, and • 7, 14, 21, 28, 35 • Node j is awake at times: • 1, 6, 11, 16, 21, 26, 31, and • 1, 8, 15, 22, 29, 36 • Nodes i and j are both awake at 15, 22 • Two primes per node ensures even if both nodes pick same primes, discovery will occur 15 m 21 B/L/B O(11 ms) in Disco t i j R Study Group / Junction
Choice of primes and pairs greatly affects discovery latency Balanced primes in symmetric pairs show average latency (37,43), (37,43) Unbalanced primes in asymmetric pairs show best latency (23,157), (29,67) Birthday Unbalanced primes in symmetric pairs show worst latency (23,157), (23,157) 5% Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Preliminaries • Design Goal • Evaluation • Conclusion Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Preliminaries • Design Goal • Evaluation • Conclusion Study Group / Junction
Preliminaries for Neighbor Discovery • Each device choose one prime number corresponding to its duty cycle. • Assume perfect alignment • In practice, they do not require perfectly aligned and are robust to clock drift. Study Group / Junction
Practical Often Beats Theory Practice Theory Study Group / Junction
A clock skew of ±50 ppm could result in a failure to rendezvous as expected at duty cycles below 1% slots overlap expected rendezvous No clock skew i’s clock is fast failed rendezvous early rendezvous j’s clock is fast failed rendezvous early rendezvous Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Preliminaries • Design Goal • Indirect Discovery: Temporal-Spatial Coverage • Online Activation Scheduling • Evaluation • Conclusion Study Group / Junction
ACC Design Goal • Energy is not the main concern any more • Need fast response Disco:10% duty cycle Acc-Disco: 5% duty cycle allocated to Disco for bounded latency 5% duty cycle allocated to Accfor acceleration purpose • More efficiently utilize the additional energy budget to accelerate the discovery process, compared to current designs with the same amount of energy. Study Group / Junction
ACC DESIGN Energy Efficient Discovery Mode On-demand Accelerating Discovery Mode • Turn on radio during this slot • (1) at the beginning and the end of the slot: • Sends a discovery message including its neighbor table • Its duty cycles, IDs, duty cycles of its current known neighbor • (2) S may receive similar discovery messages from previously unknown or known neighbors if they also become active in the same slots with S • When the known neighbors will become active again in the future slots • Help S to decide how to accelerate the discovery Study Group / Junction
ACC DESIGN Energy Efficient Discovery Mode On-demand Accelerating Discovery Mode • When an on-demand fast discovery is required • S enters this mode to accelerate the discovery process with an additionally provided energy budget • S will also become active during several additional slots to receive discovery messages • Optimal for discovering more potential neighbors: • (1) direct neighbor discovery by S itself • (2) indirect neighbor discovery by S’s known neighboring devices Study Group / Junction
Indirect Discovery • One of the key features of ACC Study Group / Junction
Which slots? • Evaluate the effectiveness of all potential active slots • Select a subset of active slots to maximize the discovery probability and reduce discovery latency • Spatial –temporal coverage • Temporal diversity • how many slots a known neighbor is active even though S is not • Spatial similarity • How likely a neighbor of a known neighbor of S is also S’s neighbor Study Group / Junction
Temporal Diversity • Between a pair of devices S and its know neighbor A • Determined by the difference in active slot schedules between them. • More difference, more likely that via A, S can early indirectly discover new neighbors The total active slot set of i from slot t0 to t Provide more information Provide limit information The common active slot set of i and j from slot t0 to t Study Group / Junction
Spatial Similarity • Between a pair of devices S and A • Determined by the spatial closeness between them • The closer A is to S, the larger the possibility that more common neighbors exist between them • Maximize the possibility that the potential unknown neighbors forwarded by the know neighbors to S • Attempts to activate S at slots where more known neighbors with larger spatial similarities become active The #. Of common known neighbors of i and j The #. Of known neighbors to itself at slot t0 Direct: Indirect: Study Group / Junction
The temporal-spatial coverage that a known neighbor ican provide for S Slot Gain Calculation • Slot gain of slot t • S can calculate slot 6’s slot gain as follow: Provide temporal-spatial coverage for S to discover all its neighbors becoming active from slot t0 to t The neighbor table of S at slot t0 Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Preliminaries • Design Goal • Indirect Discovery: Temporal-Spatial Coverage • Online Activation Scheduling • Evaluation • Conclusion Study Group / Junction
Additional duty cycle for S performing discovery in some additional slots, e.g. 2/11 Neighborhood table in current slot t, updated from latest info collected during this active t Next original active slot tN (S should not select additional active slots after tN(change) Online Activation Scheduling Original duty cycle: 1/11 B = 2/11 (2 additional slots) Study Group / Junction
Competitive Analysis of Scheduling Algorithm • Optimal Oracle version • Have complete neighbor table N(S,S) not nto(S,S) • Appendix proof: Acc is competitive by showing that the performance ratio between it and its Oracle version is • => the online scheduling performance is proportional to the size of nto(S,S) Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Evaluation • Testbed Evaluation • Simulation Evaluation • Crowd-Alert Application • Conclusion Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Evaluation • Testbed Evaluation • Simulation Evaluation • Crowd-Alert Application • Conclusion Study Group / Junction
Testbed Evaluation • Integrate Acc with 2 state-of-the-art discovery protocol: • DISCO and WiFlock • 11 TelosB sensor devices • a 10 KB RAM soze on the TinyOS/Mote platform • One-hop grid network • A mobile toy car attached with another TelosB • as a discovering device circle around the grid Study Group / Junction
Testbed Evaluation • Setting • Time slot length: 25ms • Direct: Smaller slot -> faster discovery Too small (<5ms) -> the jitters introduced by TinyOS timer • Indirect: bigger slot -> reduce collisions of messages more exchanges of neighbor tables • Additional duty cycle budge B for Acc: 5% • Original duty cycle: 5% Study Group / Junction
Comparison & Metrics • Disco • Base-Disco • Use the # of active devices in a slot t as the slot gain • Acc-Disco -------------------------------------------------- • #. of discovered devices in different time interval • Average discovery latency in different duty cycles • Run 40 slots (=1s) • Log the # of neighbors it discovered so far • Repeat 20 times Study Group / Junction
Percentage of Discoveries • 80% • (13s, 22s, 27s) • Acc-Disco finishes the discovery process faster than Disco by 51.8% • Consume the same energy • Base-Disco selects active slots with more known neighbors becoming active Study Group / Junction
Number of Discovered Devices • # of neighbors discovered in every 8s time window • Acc-Disco discover the largest number of neighbor devices during the first 8s. • Other versions discover relatively uniform numbers of devices over time Study Group / Junction
Impact of Duty Cycle • Average Discovery Latency • The performance gain increases as the duty cycle increases • As devices become active more frequently, a discovering device can obtain more information from its known neighbors by considering the temporal diversity or spatial similarity of neighbors Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Evaluation • Testbed Evaluation • Simulation Evaluation • Crowd-Alert Application • Conclusion Study Group / Junction
Percentage of Discoveries • 99% of neighbor • (1000, 1600, 1700) slots • 41.1% gain > Disco • 37.5% gain > Base Study Group / Junction
Impact of Duty Cycle (380, 200, 140) • Duty cycle ↑, • average latency ↓ • the performance gain between Acc and Disco ↑ Study Group / Junction
Impact of Device Density • Device density • Average discovery latency ↑ for all schemes • More neighbors • More collisions • More time to find them Study Group / Junction
Outline • Motivation • Introduction • Contributions • Relative Works • Design Scheme • Evaluation • Testbed Evaluation • Simulation Evaluation • Crowd-Alert Application • Conclusion Study Group / Junction
Crowd-Alert Application • Taxi drivers can quickly navigate optimal directions to travel to maximize the possibility of picking up passengers (faster neighbor discovery) • Smart phone app • Navigate lower density of taxis • High passenger density Study Group / Junction
Dataset entering • 7 days GPS traces from more than 15,000 taxis • Plate Number • Date and time • GPS Coordinates • Availability • Upload 30 sec With passengers Without passengers Location passengers exit Location distribution of served passengers (in 2 hr uploading window 4~6 PM) Location distribution of competing taxis (10s uploading time window at 5PM) Study Group / Junction
Reduction of Discovery Latency • Trace driven simulation • With total duty cycle: 4/30 22% gain Achieve half of discoveries • Assist driver to more quickly drive to the optimal directions Study Group / Junction