Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
P2P Applications and MobileMAN Jon Crowcroft, Ziran Sun, (UCAM) Elgan Huang&Wenjun Hu (UCAM) Marcel Dischinger&Jan Hoeft (Karlsruhe) Application & Cross Layer outlook for review 2 • First step will build on experience with bamboo (java p2p middleware - tutorial) and multicast Multicast is reverse path of forward p2p route - if p2p route is hash of node location from wifi layer, should work well! (by Dischinger). problem for OLSR/HSLS using reverse path Distance (coord triangle) service (Hoeft) • Possible use of fuzzy logic controllers to avoid interference between nested control laws acting on NeST data (worked in past) - e.g. MAC->HSLS/OLSR cong indication -> TCP->App • Could also look at synch/many-to-many Fileshare 2 Economics & Mobility outlook for review 2 • Have simulation results for taxi Using realistic mobility model • But: for Different routing layer (not HSLS) takes advantage of restricted waypoint and knowledge of velocity distribution of taxis and intersections (road topology and traffic matrix) • No integration of incentive or cross layer yet in simulation… • Future: move to more radical cross layer: 3 Ad-Hoc google Haggle Opportunistic networking in a disconnected age. Currently internal Cambridge project only Christophe Diot, Gianluca Iannaconne, Marc Liberatore, James Scott, Eben Upton Intel Research Cambridge Jon Crowcroft, Ziran Sun, Wenjun Hu Cambridge University Collaborating institutions and Pis for possible EU proj. • • • • Intel Research, UK (Christophe Diot) Cambridge University, UK (Jon Crowcroft) EPFL, Switzerland (Jean-Yves LeBoudec) University of Uppsala, Sweden (Per Gunningberg) • University of Massachusetts, USA (Brian Levine) 5 The world is not connected! • Users move between heterogeneous connectivity islands • End-to-end is not always possible One or both ends or middle may be disconnected • Device should make network decisions Shall I send by Bluetooth, WiFi, GPRS, email later:)? • => No IP route => No TCP => New Stack Not MobileMAN! 6 Challenges with periodic and local connectivity • • • • • Distributed subject-based naming Nodes need to locate themselves Neighbours discovery Security, trust and reputation Exploit massive aggregate bandwidth Identify devices with local connectivity Make use of MBs of local storage 7 Haggle goals • • • • Ad Hoc google Cross platform Cross network technologies Provide a useful set of services in the absence of a fixed infrastructure and e2e connectivity opportunistic connection “smart” message forwarding distributed naming authentication and trust information 8 Haggle goals (cont.) • Exploit features of the problem space node mobility for message delivery Build communities distributed, intuitive authentication • Integration with legacy systems email delivery web requests 9 Some Haggle Applications • • • • • Asynchronous messaging Automatic address book or calendar updates File sharing Commercial transactions Tracking or finding users 10 Haggle Assumptions • Users carry devices with connectivity Bluetooth, 802.11, Ethernet, cradle, etc. • Storage is not a problem storage density doubling every year • Battery is more of a problem heuristics to determine how scarce battery is scale Haggle operations appropriately allow user control 11 Illustration: Ad-hoc messaging 1. Forwarding within communities 12 Illustration: Ad-hoc messaging 2. Taking advantage of mobility 13 Illustration: Ad-hoc messaging 3. Use the Internet if (and only if) its sensible AP AP 14 Haggle is VERY ad-hoc • • • • Ad-hoc life is often disconnected Dynamic communities, dynamic trust Mobility and opportunistic networking Heterogeneous network types with different bandwidth/cost/coverage/naming • Internet is a technology of the past 15 Principle components of Haggle • Communities instead of ASs • “Small world” forwarding the Internet is a networking technology among others • Localization for networking and for apps • Trust and security built-in • Attention: paid to user acceptance, usability, and privacy 16 Community networks • Recently, many applications have relied on communities sharing a common interest/goal: Overlay networks, VPNs, etc. File sharing P2P networks Ad-hoc networks • Communities may be transient (concert attendees) or long-lived (interest groups) • Users may be in multiple communities at any time, and change communities over time • Issues with naming, trustability, security, incentive to cooperate 17 Small world forwarding • Bootstrap State information are flooded tau-persistent multicast (tau dynamic) Used to populate initial “forwarding” tables, No routes, no routing, yes congestion control Find the next hop that has the highest probability to deliver based on google-style “relevant” to contentquery Dual control algorithm for resource management • Application forwarding based on neighbourhood status and history+interest by including in proactive crawl/index Avoid flooding -I.e. interest directed OLSR Data aging - but very large “forwarding” “cache” 18 Localization • Node localization is important Neighbourhood discovery/community creation Location-aware applications Trust and security • Various options Relative to other nodes Absolute (e.g. GPS) Based on some external service (c.f. PlaceLab use of base stations) 19 Trust and Security • Human in the loop for bootstrapping trust User 1 + PDA 1 <-> PDA 2 + User 2 User recognize each other and auth PDAs simultaneously - PDAs use localization and biometric to check each other and their humans • Trust is partially transitive (c.f. PGP) Encryption and signing can then provide secure, authenticated transmissions Reputation systems may be used to provide incentives to play nice • How do we preserve privacy? Community based 20 Usability and User Involvement • Usability will require informing the user about network state issues – but how? Spinning globe, signal strength bars, greyed-out names, instant messaging presence indications • When is user involvement required? Most decisions must be made by devices Some decisions may have to be left to user • What incentive to cooperate? Kazaa…? 21 Research Plan • Proof-of-concept demo runs on Bluetooth capable Java mobile phones address book + other small file synchronization • Implement base Haggle modules link layer interface, neighbor discovery, message forwarding, local store, monitoring Asynchronous messaging, people localization • Build other simple applications 22 Research Plan (Cont.) • Small-scale deployment measure usage patterns, bug test prototype • Model large deployment in simulation examine system performance under simple models, find bottlenecks iterate with less forgiving models • Improve performance e.g., forward on the basis of likelihood of meeting, trust, community membership 23 Research Plan (Cont.) • Implement additional modules Community, trust, localization, legacy system interaction, filesystem interaction • Implement additional applications file sharing, web queries, e-mail, ims • Deploy at large meeting (e.g. 500 users at INFOCOM), measure usage patterns 24 Suggestions & Questions • If you had haggle, you would have these slides • If you had haggle, you could contribute new application patterns and code to us now • We would trust that it came from you, and you that our slides or code were from us • You could pass it on to colleagues and collaborators without even knowing it, safely! • You could even throw away your USB dongle (note painful latency, and poor security even with biometric e.g. usb fingerprint) • Wouldn’t Haggle be useful? 25