450 likes | 574 Views
Spontaneous Social-Networking on Smartphones using Delay-Tolerant Networks. CP4101 B.COMP DISSERTATION (H101850 ). CHEN JUNCHENG. SUPERVISOR: PROF CHAN MUN CHOON. Agenda. Motivation Application Description Challenges Faced (and Solutions) Evaluation Testing Demo.
E N D
Spontaneous Social-Networkingon Smartphones using Delay-Tolerant Networks CP4101 B.COMP DISSERTATION (H101850) CHEN JUNCHENG SUPERVISOR: PROF CHAN MUN CHOON
Agenda • Motivation • Application Description • Challenges Faced (and Solutions) • Evaluation • Testing • Demo
Rise in Smartphone Sales • Sale of smartphones has overtaken personal computers in the year 2010 Source: International Data Corporation
Rise Of Social Proximity apps • Applications where users discover others nearby and interact with them As of: 2nd November 2013
Rise of Social Proximity Apps Market for social proximity apps Projected Growth: $1.9 billion Millions of dollars
Social Proximity AppsImplementation • Location (typically GPS) datauploaded to a central server • Server determines who/what is nearby • Client downloads the list of neighbors • Client displays the neighbors to the user
Problems • Battery consumption: Use of 3G + GPS is heavy on battery • Server-Reliance: Fails to function in absence of internet connectivity • Bandwidth consumption: 3G consume user’s data bandwidth • Network congestion: Cell towers are overloaded with small packets in network
The FLITBY Application • Build a Facebook-like application that is server-less • Works without internet connectivity • Use peer-to-peer communication in order to exchange social data • Saves battery by eliminating 3G and GPS usage • Vision: people flit by one another and spontaneously sharing social data using the application, therefore it is called Flitby
P2P Communication • Phone-to-phone communications such as Wifi-Directand Bluetooth • Proximity is inherent – if I can contact you, you must be nearby • Shortcoming: only support one-hop transfers which is very limited • Solution: Use Mobile Delay-Tolerant Network (DTN)
MOBILE DELAY-TOlerant Network • Network of all mobile users • Topology changes rapidly because of high user mobility • Users exchange data when they are within range of one another • These connections are intermittent and short-lived in nature • No direct paths may exist between any two nodes • Messages are stored and forwarded opportunistically for multi-hop communication A B C
Example OF HOW FLITBY WORKS Functionality #2: Propagate social data Functionality #1: Post a status Guys! Free ice cream sandwich here at the Ice Cream Store!
Example OF HOW FLITBY WORKS Functionality #4: View status post associated with encounter Functionality #3: Log encounters with other users Functionality #5: Make comments and like them! Oh my god! Really?
Challenge #1 • State Inconsistencies • In a decentralized network, it takes time for social data to propagate through the network • Therefore, it is usually the case that clients have a subset of the global state and this can be inconsistent. • Merging of subsets during chance encounters can warp the meaning of messages
Challenge #1 Most recent first B T D J
Challenge #1 B T D J
Challenge #1 B T D J
Challenge #1 B T D J
Challenge #1 B T D J
Challenge #1 B T D J
Challenge #1 B T D J
Challenge #1 The problem is that we did not capture the context of the comments!
Challenge #1 • Solution • Present information in a coherent manner to the user • Tapping on a particular comment should show the context in which that comment was made
Challenge #2 • Communication Challenges • Exchange of information relies upon often brief contacts with other users • Not enough time to exchange all data • Social network data is monotonically increasing • Infeasible to exchange all data with users
Challenge #2 • Solution • Given that connection time is short-lived • Exchange of information should be prioritized based on one’s interest (friends or otherwise) • Reduce redundancy and only send new informationin form of deltas • Any connection/encounters with any other clients is purely opportunistic • Spread other non-priority data once priority data is exchanged • Mobility patterns of users may also be used to prioritize exchanges but this topic itself is its own research topic
Challenge #2 Priority Data Non-priority Data
Challenge #3 • Facebook Synchronization • Good idea to synchronize social networking data back to Facebook periodically • However, Facebook doesn’t allow arbitrary timestamps on status/comment posts. • It is difficult to coordinate the clients to preserve the order of comments
Challenge #3 Solution: Use a proxy server to store social networking data from clients and commit to Facebook periodically. (Unimplemented)
Challenge #4 • Privacy • Flitbyuses opportunistic routing through intermediate nodes • Intermediate nodes can access other people’s data • Negotiating cryptographic keys is difficult due to large delay. • Solution • Use a server to negotiate/distribute cryptographic keys. (Unimplemented)
Database • User Table • Group Table • Status Table • Comment Table • Encounter Table
Evaluation • Devices used: • Samsung Galaxy SII (v4.3.1) • Samsung Galaxy SIII (v4.1.2) • Nexus 4 (v4.3) • Wi-Fi used: • IEEE 802.11g • Development Environment: • Android Developer Tools v22.0.5-757759
Evaluation • Time taken for DTN messages of varying sizes to be sent from node to node. (Using TCP over Wi-Fi)
Evaluation • Throughput of DTN based on previous data • For comparison: In the US, 3G has a data bandwidth of 3.84Mbps/1.44Mbps (practical download/upload rate)
Evaluation • Using Samsung Galaxy S2 and 3G network • 10 trials were conducted • Time recorded was time taken for the first screen to completely load
Testing • Android Strict Mode • option in the application that would detect & log undesirable practices • Manual Testing • 1 phone test case • 2 phones test case • Systems Testing
What Flitby Looks Like This is your profile information These are the people you have encountered with
What Flitby Looks Like This is your profile information Type in a new status here
What Flitby Looks Like Status Post Owner Status Post Write a response here Comments
Conclusion • We were able to develop Flitby as a decentralized social application that functions with DTN • We tackled 2 of the problems presented in this presentation • Communication Challenges (Application Routing Protocol) • State Inconsistencies (View Hierarchy) • Future work could involve: • Expanding the social network feature sets • Improving Privacy • Synchronization of social data back to Facebook
End • Thank you for your attention! • Questions?