Disconnected islands in a sea of connectivity Ciaran Fisher 1 st Year PhD University of Sussex Dan Chalmers Ian Wakeman Steve Naicken Jon Rimmer
Overview • Digital Stadium Project • EPSRC • Produce a working DTN useable in the real world • Engage with the public to make the DTN something they want to use • Stadium scenario chosen
The Solution Our Solution • Pocket Switched Network – Subset of Delay Tolerant Networks – Phones network with phones sharing data producing a distributed cache of common content – Previous attempts have relied on tethering – Overlay network • Based on Android • Other solutions targeted just one android version or required root
The Solution What is Android? • Operating System based on the Linux kernel by Google • Programmed in Java – Every app runs in its own VM – Strict permissions model – Easy App sideloading
The Solution Android Fragmentation Data collected during a 14-day period ending on June 3, 2013. Source: http://developer.android.com/about/dashboards/index.html
The Solution Android Fragmentation Jelly Bean Android Version Ice Cream Sandwich Gingerbread 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 Count SDK: 2.3.3 2.3.4 2.3.5 2.3.6 4.0.3 4.0.4 4.1.1 4.1.2 4.2.2
The Solution Connectivity • Bluetooth – Poor manufacture implementations • Wi-Fi via tethering – Unrestricted internet access for all • Ad Hoc Wi-Fi – Not part of standard API – requires root • Wi-Fi Direct + Legacy Mode – The solution!
The Solution Wifi Direct • API added in Ice Cream Sandwich – Oct 2011 • Allows Ad Hoc Phone to Phone Connection • Unfortunately requires user input
The Solution Wifi Direct Legacy Mode • Creates a “normal” access point visible to all wifi devices • DHCP • No internet connection - Advantage • Random SSID and password • Major differences between ICS, JB 4.1 and JB 4.2 implementation
The Solution Bootstrapping Phone becomes Access point
The Solution Bootstrapping Web Service Sends data to rendezvous server
The Solution Bootstrapping Web Service Client Phone downloads the AP details from rendezvous server AP Client
The Solution Bootstrapping Web Service Client connects to AP with no external prompts needed using a “normal” Wi -Fi connection AP Client
The Solution Bootstrapping Web Service Phones Exchange cache information AP receives client requests and delivers responses AP Client
System Architecture User Interface Asynchronous Response Data Request Background Services
System Architecture • Background Services: – LRU Cache of JSON containing http pages – Asset Request list – Network Service – AP Service • Brings up the Access point for clients to connect to • Switches to client mode after 6 minutes – Client Service • Switches to AP mode (if supported) if it has no connection within 1 minute
System Architecture Example Request: {url : “…/ latestscores ” , modified: 1370553092000} Example Response: {url : “…/ latestscores ”, modified: 1370553092000, content:”<html></html>”}
UI Update User enters view in app, E.g. Twitter
UI Update Asynchronous message sent to backend service with last updated time. Asset Request LRU Cache
UI Update • Cache Hit - Data is broadcast • Received by listener in the UI • Data is type is checked to see if matches current view • If it matches UI is updated Asset Response LRU Cache
UI Update Cache Hit but stale data Data is broadcast and received by listener in the UI Asset request also generated Asset Asset Response Request Asset LRU Cache Request List
The Solution Supporting GET Web Service Request: scores newer than x AP Client Requests scores
The Solution Supporting GET Web Service Request Request Request Request AP AP checks cache, distributes request
The Solution Supporting GET Web Service Response Request Request Request AP Request AP resolves the request Marks request resolved
The Solution Supporting GET Web Service Request Response Response Request Response AP Request Response AP distributes response
The Solution Supporting GET Web Service Request Response Response Request Response AP Request Marks Requests as resolved Response
The Solution Supporting GET Web Service Response Response Response AP Response UI update broadcast
The Solution Supporting POST Web Service User posts Tweet AP
The Solution Supporting POST Web Service AP AP floods POST to other nodes ensuring delivery
The Solution Supporting POST Web Service AP delivers post Unique message ID is logged by server AP
The Solution Supporting POST Web Service Subsequent posts with the same unique ID are ignored AP
The Solution Supporting POST Web Service AP AP distributes message telling any node that connected that the post was successful, removing it from connected nodes
The Solution Data Dissemination • Epidemic routing tried to ensure requests are spread far through the network to increase the likelihood of a node getting a connection • DTN client nodes connect to different AP’s helping to disseminate data
Additional University benefits Results • Successful deployment at the BHAFC vs Wolves • Over the DTN: 40MB between 67 participants
Additional University benefits Results Views Page 1524 LiveScores 608 Twitter 362 LeagueTable 156 Status 81 CurrentMatch 38 Placeholder 31 Preferences 25 Trains 22 About 17 Results 13 Traffic 8 Bus 6 News 6 Fixtures 4 Feedback 1 Store
70 60 Battery Level 50 40 30 11:00 12:00 13:00 14:00 Time (GMT)
Cumulative Distribution Function of RTTs 1.00 0.75 Network P(X ≤ x) dtn 0.50 mob 0.25 0.00 10 5 10 7 10 3 Time (ms)
Additional University benefits Future Work • Drop support for older phones enabling the rendezvous server to be removed as users upgrade • Work on routing requests to nodes likely to have a connection – My PhD • Work on making AP more intelligent – Don ’ t be an AP if many are nearby • Further research latest API changes allowing fixed access point names and passwords
Questions?
Recommend
More recommend