830 likes | 1.04k Views
Design and Implementation of Smartphone-based Systems and Networking. Dong Xuan Department of Computer Science and Engineering The Ohio State University, USA. Outline. Smartphones Basics Mobile Social Networks E-Commerce E-Health Safety Monitoring Future Research Directions.
E N D
Design and Implementation of Smartphone-based Systems and Networking Dong Xuan Department of Computer Science and Engineering The Ohio State University, USA
Outline • Smartphones Basics • Mobile Social Networks • E-Commerce • E-Health • Safety Monitoring • Future Research Directions
Smartphone Basics • A smartphone is a mobile phone offering advanced capabilities, often with PC-like functionality • Hardware (Apple iPhone 3GS as an example) • CPU at 600MHz, 256MB of RAM • 16GB or 32GB of flash ROM • Wireless: 3G/2G, WiFi, Bluetooth • Sensors: camera, acceleration, proximity, light • Functionalities • Communication • News & Information • Socializing • Gaming • Schedule Management etc. 3
Smartphone Popularity Smartphones are popular and will become more popular 4
Smartphone Features • Communication/Sensing/Computation • Inseparable from our human life 6
OurSmartphone Systems • E-SmallTalker [IEEE ICDCS10]: senses information published by Bluetooth to help potential friends find each other (written in Java) • E-Shadow [IEEE ICDCS11]: enables rich local social interactions with local profiles and mobile phone based local social networking tools • P3-Coupon [IEEE Percom11]: automatically distributes electronic coupons based on an probabilistic forwarding algorithm
OurSmartphone Systems Drunk Driving Detection [Per-Health10]: uses smartphone (Google G1) accelerometer and orientation sensor to detect Stealthy Video Capturer [ACM WiSec09]: secretly senses its environment and records video via smartphone camera and sends it to a third party (Windows Mobile application) Download & Run Video sent by Email Captured Video 8
Exemplary System I:E-SmallTaker • Small Talk • A Naïve Approach • Challenges • System Design • Implementation and Experiments • Remarks
Small Talk • People come into contact opportunistically • Face-to-face interaction • Crucial to people's social networking • Immediate non-verbal communication • Helps people get to know each other • Provides the best opportunity to expand social network • Small talk is an important social lubricant • Difficult to identify significant topics • Superficial
A Naive Approach of Smartphone-based Small Talk • Store all user’s information, including each user’s full contact list • User report either his own geo-location or a collection of phone IDs in his physical proximity to the server using internet connection or SMS • Server performs profile matching, finds out small talk topics (mutual contact, common interests, etc.) • Results are pushed to or retrieved by users
However…… • Require costly data services (phone’s internet connection, SMS) • Require report and store sensitive personal information in 3rd party • Trusted server may not exist • Server is a bottleneck, single point of failure, target of attack
E-SmallTalker – A Fully Distributed Approach • No Internet connection required • No trusted 3rd party • No centralized server • Information stored locally on mobile phones • Original personal data never leaves a user’s phone • Communication only happens in physical proximity
Two Challenges • How to exchange information without establishing a Bluetooth connection • Available data communication channels on mobile phones • Cellular network (internet, SMS, MMS), Bluetooth, WiFi, IrDA • Bluetooth is a natural choice • Bluetooth connection needs user’s interaction due to security reasons • How to find out common topics while preserving users privacy • No pre-shared secret for strangers • Bluetooth Service Discovery Protocol can only transfer limited service information
System Architecture • Context exchange • Context encoding and matching • Context data store • User Interface
Context Exchange • Exploit Bluetooth service discovery protocol • No Bluetooth connection needed • Publish encoded contact data (non-service related) as (virtual) service attributes • Limited size and number( e.g. 128 bytes max each attribute)
Context Encoding • Example of Alice’s Bloom filter • Alice has multiple contacts, such as Bob, Tom, etc. • Encode contact strings, Firstname.lastname@phone_number, such as “Bob.Johnson@5555555555” and “Tom.Mattix@6141234567”
Implementation • J2ME • about 40 java classes, 127Kb jar file • On real phones • Sony Ericsson (W810i), Nokia (5610xm, 6650, N70, N75, N82)
Experiments • Settings • 6 phones, n=150, k=7, m=1024 bits, default distance=4m, average of 10 runs • Performance Metrics • Discovery time: the period from the time of starting a search to the time of finding someone with common interest, if there is any • Discovery rate: percentage of successful discoveries among all attempts • Power consumption • Factors • Bluetooth search interval • Number of users • Distance
Experiment Results • Minimum, average and maximum discovery time are 13.39, 20.04 and 59.11 seconds respectively • Always success if repeat searching, 90% overall if only search once • Nokia N82 last 29 hours when discovery interval is 60 seconds
Related Work • Social network applications on mobile phones • Social Serendipity • Centralized, Bluetooth MAC and profile matching, SMS, strangers • PeopleTones, Hummingbird, Just-for-Us, MobiLuck, P3 Systems, Micro-Blog, and Loopt • Centralized, GPS location matching, Internet, existing friends • Nokia Sensor and PeopleNet • Distributed, profile, Bluetooth / Wifi connection, existing friends • Private matching and set intersection protocols • Homomorphic encryption based • Too much computation and message overhead for mobile phone • Limitations • Require costly data services (phone’s internet connection, SMS) • Require report and store sensitive personal information • Bottleneck, single point of failure, target of attack
Remarks • Propose, design, implement and evaluate the E-SmallTalker system which helps strangers initialize a conversation • Leveraged Bluetooth SDP to exchange these topics without establishing a connection • Customized service attributes to publish non-service related information. • Proposed a new iterative commonality discovery protocol based on Bloom filters that encodes topics to fit in SDP attributes to achieve a low false positive rate
Exemplary System II:E-Shadow Concept Application Scenario Goals and Challenges System Design Implementation and Experiments Remarks 23
Concept • Motivation • Importance of Face-to-Face Interaction • Prevalence of mobile phones • Distributed mobile phone-based local social networking system • Local profiles • Mobile phone based local social interaction tools
Goals and Challenges • Design Goals • Far-reaching and Unobtrusive • Privacy and Security • Auxiliary Support for Further Interactions • Broad Adoption • Challenges • Lack of Communication Support • Power and Computation Limitation • Non-pervasive Localization Service
Layered Publishing • Spatial Layering • WiFi SSID • at least 40-50 meters, 32 Bytes • Bluetooth Device (BTD) Name • 20 meters, 2k Bytes • Bluetooth Service (BTS) Name • 10 meters, 1k Bytes • Temporal Layering • For people being together long or repeatedly • Erasure Code
E-Shadow Publishing Procedure Sensor Help Decide Decide User Maual Input Online Data Mining Feedback Valve Generator Filter Information BT Device Database BT Service WiFi
Matching E-Shadow with its Owner Intuitive Approach: Localization However, imprecision beyond 20-25 meters
Human Direction-driven Localization • Direction more important than distance • Human observation • A new range-free localization technique • RSSI comparison: Less prone to errors • Space partitioning: Tailored for direction decision
Walking Route and Localization • We allow users to walk a distance • Triangular route: A->B->C in (a), for illustration purposes • Semi-octogonal route: A->B->C->D->E in (c), more natural • Take measurements on turning points • Calculate the direction through RSSI comparison and space partitioning
Implementation • Information Publishing Module • Database • Generator • Buffers • Control Valve • Broadcasting Interfaces • Retrieval & Matching Module • Receivers • Localization • Decoding & Storage • Sensing Module • User Interface
Evaluations (1)-Time & Energy • E-Shadow Collection Time • WiFi SSID: 2 seconds • BTD: 12-18 seconds • BTS: 25-35 seconds • E-Shadow Power Consumption • 3 hours in full performance operation • >12 hours in typical situation
Evaluations (2)-Localization 3 Outdoor Experiments: Open field campus 2 Indoor Experiments: Large classroom
Evaluation (3)-Simulations Large-Scale Simulations: Angle deviation CDFs 12 times of exemplary direction decisions
Related Work Centralized mobile phones applications Social Serendipity Centralized, Bluetooth MAC and profile matching, SMS, strangers Decentralized mobile phone applications Nokia Sensor Distributed, profile, Bluetooth / Wifi connection, existing friends E-Smalltalker Distributed, no Bluetooth / Wifi connection, strangers Localization techniques for mobile phones applications GPS Virtual Compass peer-based relative positioning system using Wi-Fi and Bluetooth radios Limitations Privacy compromise Unable to capture the dynamics of surroundings No mapping between electronic ID and human face Localization techniques either not pervasive or not accurate for long range 36
Remarks Propose, design, implement and evaluate the E-Shadow system which lubricates local social interactions E-Shadow concept Layered publishing to capture the dynamics of surroundings Human-assisted matching that works for mapping E-Shadow with its owner in a fairly large distance Implementing and evaluating E-Shadow on real world mobile phones 37
Exemplary System III:P3-Coupon Coupon Distribution A Naïve Approach Challenges System Design Implementation and Experiments Remarks 38
Electronic Coupon Distribution Electronic coupons Similar to paper coupons Can be stored on mobile phones Two distribution methods Downloading from Internet websites Need to define target group Limited coverage Hard to maintain dynamic preferences lists on central databases Peer to Peer Distribution No special destination/target group More coverage More flexible user-maintained preferences list 39
A Naive Approach of Peer-to-Peer Coupon Distribution A store periodically broadcast the coupon Users within broadcast range receive the coupon User can decide whether to use, forward or discard the coupon Users forward the coupon to others in physical proximity Forwarder’s IDs are recorded in a dynamically expanding list The coupon is used by some user The store reward all users who have forwarded the coupon 40
However…… Require manually establishing wireless connections Cumbersome Not prompt Not possible for coupon forwarding among strangers Require recording the entire forwarding path Potential privacy leakage Discourage user’s forwarding incentives 41
Challenge • How to design a prompt coupon distribution mechanism that • Incentivize coupon forwarder appropriately for keeping the coupons circulating • Preserve the privacy of coupon forwarders 42
P3-Coupon – A Probabilistic Coupon Forwarding Approach Probabilistic sampling on forwarding path Keep only one forwarder for each coupon: NO privacy leakage Probabilistically flip ownership at each hop Accurate approximation of coupon rewards plenty of chances of interpersonal encounters Accurate bonus distribution with 50 coupons and 5000 people Adaptive to different promotion strategies Flip-once model Always-flip model No manual connection establishment Connectionless information exchange via Bluetooth SDP 43
System Architecture Store Side A central server for broadcasting and redeeming coupons Client side Coupon forwarding manager, coupon exchange, coupon data store, user interface 44
Probabilistic Forwarding Algorithm Always-Flip Model The coupon ownership keeps flipping with certain probability at each hop. Good at assigning relative bonuses affected by the whole path lengths E.g. the parent forwarder receives k times the bonus given to children forwarders The flip probability can be calculated in advance by the store, once k is fixed, using the following formula 45
Probabilistic Forwarding Algorithm Extension: Flip-Once Model Once flipped, a coupon’s ownership remain the same in a forwarding path. Good at assigning absolute bonuses irrelevant of the number of following forwarders E.g. hop 1 user gets 10%, hop 2 user gets 5%, etc. The flip probability can be calculated in advance by the store using the following formula 46
Coupon Format • Coupon description • Product description • Discounts • Coupon issuer • Coupon code • Start/end date • Coupon forwarder information • The current owner • Digital signature • Prevent forging fraud coupons 47
Implementation J2ME about 17 java classes, 1390Kb jar file On real phones Samsung (SGH-i550), Nokia (N82, 6650, N71x) 48
Experiments Experimental evaluations Coupon forwarding time Power consumption Simulation evaluation Number of Coupon holders vs. Time Distribution saturation time vs. Number of Seeds Coupon ownership distribution for probabilistic sampling Deviation between theoretical and actual bonus (Always-Flip, Flip-Once) Factors Number of coupons Number of users Number of initial coupon holders 49
Experiment Results Average coupon forwarding time is 33.52 seconds Nokia N82 last 25 hours with P3-Coupon running in background One coupon could be delivered to 5000 people within 32 hours Very small deviation between theoretical and actual bonus distribution with 50 coupons circulating among 5000 people 50