Implicit group messaging in peer-to-peer networks Daniel Cutting, 30th November 2005.

Slides:



Advertisements
Similar presentations
Peer-to-Peer Infrastructure and Applications Andrew Herbert Microsoft Research, Cambridge
Advertisements

CAN 1.Distributed Hash Tables a)DHT recap b)Uses c)Example – CAN.
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Peer to Peer and Distributed Hash Tables
Pastry Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK Some slides are borrowed from the original presentation by the authors.
Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK
Digital Library Service – An overview Introduction System Architecture Components and their functionalities Experimental Results.
Massively Distributed Database Systems Distributed Hash Spring 2014 Ki-Joune Li Pusan National University.
SCRIBE A large-scale and decentralized application-level multicast infrastructure.
Pastry Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK Some slides are borrowed from the original presentation by the authors.
Scribe: A Large-Scale and Decentralized Application-Level Multicast Infrastructure Miguel Castro, Peter Druschel, Anne-Marie Kermarrec, and Antony L. T.
Applications over P2P Structured Overlays Antonino Virgillito.
Peer to Peer File Sharing Huseyin Ozgur TAN. What is Peer-to-Peer?  Every node is designed to(but may not by user choice) provide some service that helps.
Pastry: Scalable, decentralized object location and routing for large-scale peer-to-peer systems Antony Rowstron and Peter Druschel Proc. of the 18th IFIP/ACM.
M ERCURY : A Scalable Publish-Subscribe System for Internet Games Ashwin R. Bharambe, Sanjay Rao & Srinivasan Seshan Carnegie Mellon University.
Cis e-commerce -- lecture #6: Content Distribution Networks and P2P (based on notes from Dr Peter McBurney © )
Carnegie Mellon University Complex queries in distributed publish- subscribe systems Ashwin R. Bharambe, Justin Weisz and Srinivasan Seshan.
1 AINA 2006 Wien, April th 2006 DiVES: A DISTRIBUTED SUPPORT FOR NETWORKED VIRTUAL ENVIRONMENTS The IEEE 20th International Conference on Advanced.
Spring 2003CS 4611 Peer-to-Peer Networks Outline Survey Self-organizing overlay network File system on top of P2P network Contributions from Peter Druschel.
Efficient Content Location Using Interest-based Locality in Peer-to-Peer Systems Presented by: Lin Wing Kai.
A Scalable Content-Addressable Network Authors: S. Ratnasamy, P. Francis, M. Handley, R. Karp, S. Shenker University of California, Berkeley Presenter:
Chord-over-Chord Overlay Sudhindra Rao Ph.D Qualifier Exam Department of ECECS.
Topics in Reliable Distributed Systems Fall Dr. Idit Keidar.
1 CS 194: Distributed Systems Distributed Hash Tables Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer.
1 Peer-to-Peer Networks Outline Survey Self-organizing overlay network File system on top of P2P network Contributions from Peter Druschel.
ICDE A Peer-to-peer Framework for Caching Range Queries Ozgur D. Sahin Abhishek Gupta Divyakant Agrawal Amr El Abbadi Department of Computer Science.
Peer-to-peer file-sharing over mobile ad hoc networks Gang Ding and Bharat Bhargava Department of Computer Sciences Purdue University Pervasive Computing.
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
Mobile Ad-hoc Pastry (MADPastry) Niloy Ganguly. Problem of normal DHT in MANET No co-relation between overlay logical hop and physical hop – Low bandwidth,
INTRODUCTION TO PEER TO PEER NETWORKS Z.M. Joseph CSE 6392 – DB Exploration Spring 2006 CSE, UT Arlington.
1 A scalable Content- Addressable Network Sylvia Rathnasamy, Paul Francis, Mark Handley, Richard Karp, Scott Shenker Pirammanayagam Manickavasagam.
Roger ZimmermannCOMPSAC 2004, September 30 Spatial Data Query Support in Peer-to-Peer Systems Roger Zimmermann, Wei-Shinn Ku, and Haojun Wang Computer.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Multicast routing.
PIC: Practical Internet Coordinates for Distance Estimation Manuel Costa joint work with Miguel Castro, Ant Rowstron, Peter Key Microsoft Research Cambridge.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Connecting to the Network Networking for Home and Small Businesses.
Jonathan Walpole CSE515 - Distributed Computing Systems 1 Teaching Assistant for CSE515 Rahul Dubey.
Higashino Lab. Maximizing User Gain in Multi-flow Multicast Streaming on Overlay Networks Y.Nakamura, H.Yamaguchi and T.Higashino Graduate School of Information.
Using the Small-World Model to Improve Freenet Performance Hui Zhang Ashish Goel Ramesh Govindan USC.
Data Distribution Dynamic Data Distribution. Outline Introductory Comments Dynamic (Value based) Data Distribution: HLA Data Distribution Management –Routing.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing Part 5 Multicasting protocol.
Content Addressable Network CAN. The CAN is essentially a distributed Internet-scale hash table that maps file names to their location in the network.
Implicit group messaging in peer-to-peer networks Daniel Cutting, 28th April 2006 Advanced Networks Research Group.
An IP Address Based Caching Scheme for Peer-to-Peer Networks Ronaldo Alves Ferreira Joint work with Ananth Grama and Suresh Jagannathan Department of Computer.
1 Peer-to-Peer Technologies Seminar by: Kunal Goswami (05IT6006) School of Information Technology Guided by: Prof. C.R.Mandal, School of Information Technology.
Pastry: Scalable, decentralized object location and routing for large-scale peer-to-peer systems Antony Rowstron and Peter Druschel, Middleware 2001.
DHT-based unicast for mobile ad hoc networks Thomas Zahn, Jochen Schiller Institute of Computer Science Freie Universitat Berlin 報告 : 羅世豪.
SocialVoD: a Social Feature-based P2P System Wei Chang, and Jie Wu Presenter: En Wang Temple University, PA, USA IEEE ICPP, September, Beijing, China1.
ICS362 – Distributed Systems Dr. Ken Cosh Week 2.
Information-Centric Networks10b-1 Week 10 / Paper 2 Hermes: a distributed event-based middleware architecture –P.R. Pietzuch, J.M. Bacon –ICDCS 2002 Workshops.
Peer to Peer Network Design Discovery and Routing algorithms
Data Distribution. Outline Fundamental concepts –Name space –Description expressions –Interest expressions Static Data Distribution: HLA Declaration Management.
Algorithms and Techniques in Structured Scalable Peer-to-Peer Networks
LOOKING UP DATA IN P2P SYSTEMS Hari Balakrishnan M. Frans Kaashoek David Karger Robert Morris Ion Stoica MIT LCS.
Parallel and Distributed Simulation Data Distribution II.
Two Peer-to-Peer Networking Approaches Ken Calvert Net Seminar, 23 October 2001 Note: Many slides “borrowed” from S. Ratnasamy’s Qualifying Exam talk.
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
P2P Search COP6731 Advanced Database Systems. P2P Computing  Powerful personal computer Share computing resources P2P Computing  Advantages: Shared.
P2P Search COP P2P Search Techniques Centralized P2P systems  e.g. Napster, Decentralized & unstructured P2P systems  e.g. Gnutella.
The long, interesting tail of Indie TV Daniel Cutting, Aaron Quigley, Björn Landfeldt CTSB Workshop, Pervasive 2006, 7th May 2006.
Multicasting EECS June Multicast One-to-many, many-to-many communications Applications: – Teleconferencing – Database – Distributed computing.
Peer-to-Peer Networks 10 Fast Download Christian Schindelhauer Technical Faculty Computer-Networks and Telematics University of Freiburg.
Network Topologies for Scalable Multi-User Virtual Environments Lingrui Liang.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 24 – Introduction to Peer-to-Peer (P2P) Systems Klara Nahrstedt (presented by Long Vu)
1 Group Communications: Host Group and IGMP Dr. Rocky K. C. Chang 19 March, 2002.
Net 323: NETWORK Protocols
Indirect Communication Paradigms (or Messaging Methods)
Indirect Communication Paradigms (or Messaging Methods)
Ch 17 - Binding Protocol Addresses
Other Routing Protocols
IP Multicast COSC /5/2019.
Presentation transcript:

Implicit group messaging in peer-to-peer networks Daniel Cutting, 30th November 2005

Implicit group messaging November 30, 2005 Slide 2 Outline. Explicit and implicit groups P2P networks Implicit group messaging My approach Addressing Grouping Routing Evaluation

Implicit group messaging November 30, 2005 Slide 3 Explicit groups. Group “Griffin” Lois Peter Stewie Brian Group “A-Team” Homer Peter

Implicit group messaging November 30, 2005 Slide 4 Implicit groups. Implicit groups Soccer Soccer AND Argentina Australia OR Argentina (Soccer OR Football) AND Argentina

Implicit group messaging November 30, 2005 Slide 5 Explicit and implicit groups. Explicit groups: members are named Membership managed as a central list or a distributed structure (e.g. multicast group trees) Members explicitly join (individually or by a coordinator) Implicit groups: members are described E.g. “Everyone interested in soccer” Members don’t join, they just match the description

Implicit group messaging November 30, 2005 Slide 6 P2P networks. Overlay networks of hosts (“peers”) on the Internet Structured (CAN, Pastry ) : peers reside in a logical space and are connected in some ordered and consistent way Unstructured (Gnutella, KaZaA): more ad hoc P2P commonly used to swap files, but also good for: Distributed data storage, academic collaboration tools, large multiplayer games, message forums Want support for messaging groups within these networks (for searches, requests, events, etc.) Implicit groups are good for these!

Implicit group messaging November 30, 2005 Slide 7 P2P networks. Hand of God (Soccer OR Football) AND Argentina

Implicit group messaging November 30, 2005 Slide 8 Implicit group messaging. AIM: Deliver messages from any peer to any implicit group at any time in a P2P network Assumptions: Each peer describes itself with attributes (strings indicating capabilities, interests, services, …), e.g. “Soccer”, “Argentina” Implicit groups are specified as logical expressions of attributes, e.g. “(Soccer OR Football) AND Argentina” System delivers messages from a source to all peers matching the expression

Implicit group messaging November 30, 2005 Slide 9 My approach. A fully distributed, structured overlay network Peers build and maintain a logical Cartesian surface Each peer resides at a logical address on surface Each peer owns part of the surface and knows its neighbouring peers Key features Addressing: a peer’s address encodes its attributes Grouping: a group’s description encodes all possible addresses of matching peers Routing: source uses group description to reactively construct a multicast tree to all possible addresses

Implicit group messaging November 30, 2005 Slide 10 What does a surface look like?

Implicit group messaging November 30, 2005 Slide 11 But what does it mean?! Lois {Soccer, Australia} Peter {Australia} Brian {Soccer} Homer {Football, Argentina, Donuts} Stewie {Soccer, Argentina}

Implicit group messaging November 30, 2005 Slide 12 JOINing the network. New peer calculates its address Routes a JOIN request to that address from a bootstrap Peer that currently owns the address partitions its part of the surface All neighbours are informed To leave the network give your parts of the surface to your neighbours

Implicit group messaging November 30, 2005 Slide 13 Getting around on the surface. Each peer knows its neighbours When given a message with a destination address, pass it on to geometrically nearest neighbour

Implicit group messaging November 30, 2005 Slide 14 Addressing. How does a peer determine its location on the surface? Each peer has a set of attributes (its interests, say) Encode these into the address of the peer using a Bloom Filter E.g. {Soccer, Argentina}  | Map the address to a part of the surface Location on surface encodes attributes

Implicit group messaging November 30, 2005 Slide 15 Addressing. Map from an address to the surface using a quadtree decomposition Quadrants called extents E.g. {Soccer, Argentina}  Pad with 0s at end (0) = 122

Implicit group messaging November 30, 2005 Slide 16 Grouping. How do we find a group of peers given a description? E.g. all peers with attributes “Soccer AND Argentina” Convert to a Bloom Filter, but wildcards (*) replace 0s {Soccer, Argentina }  *11* | So any peer with both attributes must have (at least) the 2nd, 3rd and 5th bits set in their address The wildcards may match 1s or 0s depending on what other attributes the peer has *11*1 matches addresses 01101, 11101, 01111, 11111

Implicit group messaging November 30, 2005 Slide 17 Grouping. Need to find extents where the 2nd, 3rd and 5th bits are set {Soccer, Argentina}  *1 1* 1(*) **  00, 01, 10, 11 (extents 0, 1, 2, 3) *1  01 and 11 (1, 3) 1*  10 and 11 (2, 3) 11  just 11 (3)

Implicit group messaging November 30, 2005 Slide 18 Grouping. ORs can be treated as a set of ANDs E.g. “(Soccer OR Football) AND Argentina” Equivalent to “(Soccer AND Argentina) OR (Football AND Argentina)” {Soccer, Argentina}  *11* | {Football, Argentina}  11* | All peers with address having 2nd, 3rd and 5th OR 1st, 2nd, 4th and 5th bits set are part of this group

Implicit group messaging November 30, 2005 Slide 19 Grouping. {Soccer, Argentina}  *1 1* 1(*) {Football, Argentina}  11 *1 1(*) **  00, 01, 10, 11 (extents 0, 1, 2, 3) *1  01 and 11 (1, 3) 1*  10 and 11 (2, 3) 11  just 11 (3)

Implicit group messaging November 30, 2005 Slide 20 Routing. A peer wants to send a message to an implicit group Creates a message: “Got any Hand of God photos?” Specifies an appropriate implicit group: “Soccer AND Argentina” Chooses the best neighbour(s) to forward the message Knows extents yet to be visited (everything initially) Intersects these with extents matching group description Clusters what’s left and sends a message towards each cluster

Implicit group messaging November 30, 2005 Slide 21 Routing. If many targets in same direction, only route one copy: i.e. cluster based on their direction Message splits as it gets closer to clusters since relative angles increase Clustering threshold angle can be variable Guarantees delivery

Implicit group messaging November 30, 2005 Slide 22 Evaluation. Simulation OMNeT++ implementation simulating campus- and world-scale physical networks Thousands of peers In progress Compare to alternative models IP multicast flooding (optimised physical routing, but all peers receive all messages) Centralised server (unfair to some peers/links but only member peers receive messages)

Implicit group messaging November 30, 2005 Slide 23 Evaluation. Metrics Normalised overall network traffic for messaging Peer fairness (variance of computation and storage) Network link fairness (variance of link stress) Expected results Flood should have good peer and link fairness, poor total traffic for small implicit groups Centralised should have poor peer and link fairness, good total traffic for all groups My approach should have good peer and link fairness, and good total traffic for small groups, poor for large

Implicit group messaging November 30, 2005 Slide 24 Evaluation. Peer fairness Unicast ROUTE cost Evaluation of basic features Peer storage fairness Average cost of unicast routing between two random addresses

Implicit group messaging November 30, 2005 Slide 25 Questions?

Implicit group messaging November 30, 2005 Slide 26 Ancillary slides.

Implicit group messaging November 30, 2005 Slide 27 Related work. Explicit group systems IP multicast, Usenet (consumers explicit join channels) (publisher lists recipients by name) SCRIBE (on Pastry), CAN Multicast, Bayeux (on Tapestry) Implicit group systems Khambatti et al: interest-based communities (but don’t support arbitrary cross-cutting groups) Interest management (virtual environment updates) Content-based publish/subscribe (but different semantics)

Implicit group messaging November 30, 2005 Slide 28 Content-based publish/subscribe. Conceptually similar: messages are delivered to implicit groups based on a match at time of publication Pub/sub: consumers select the type of message they receive. Implicit group messaging: publishers select type of consumer of message Converse semantics lead to differing expressiveness Pub/sub good for consumers who need to be notified of specific types of events from any publisher: e.g. GUI components Implicit group messaging good for publishers who need to reach specific types of consumer: e.g. distributed search engines

Implicit group messaging November 30, 2005 Slide 29 Future work. Very important to get physical network simulations running Testing with various attribute distributions, higher dimensional surfaces Random shortcuts through the surface to reduce routing cost (can be inserted when peers JOIN) Prefixing addresses with bits that place peers on surface with some approximation of underlying network may improve physical network usage

Implicit group messaging November 30, 2005 Slide 30 Attribute distribution. Uniform attribute distributionZipf attribute distribution {Soccer, Argentina, Sport} {Rugby, Australia, Sport} Peers with popular attributes Peers with unpopular attributes {Soccer, Argentina, Beer} {Football, Argentina}

Implicit group messaging November 30, 2005 Slide 31 Research plan. Technical Report awaiting Smart Internet Technology CRC approval Short Letter expressing basic concepts in next week Journal paper with network results by end of year Conference paper with future work early next year Complete around July

Implicit group messaging November 30, 2005 Slide 32 P2P networks. Messaging in P2P networks is often many-to-many E.g. any peer can initiate a multicast query to search for files or services Typically handled by flooding (Gnutella), superpeer registries (KaZaA), plus many other shortcuts. Some structured networks have multicast capabilities Peers can subscribe to multicast channels and receive all messages sent to that channel Need messaging between peers for: Storing/retrieving data or files Searching for particular data Searching for particular kinds of peers

Implicit group messaging November 30, 2005 Slide 33 P2P networks. P2P needs multicast (for searches, requests, events) Allows a peer to send a message to a group of recipients Often will know names of recipients, e.g. when some peers have explicitly requested notification of an event However, there are times when it won’t, e.g. searching for peers matching some criteria Often just flood the network, but may be more targeted Difference is the way multicast groups are defined: explicitly or implicitly

Implicit group messaging November 30, 2005 Slide 34 Implicit group messaging. In an ideal system: All implicit group members should receive messages Non-members shouldn’t receive them Dynamic membership should be supported Minimal total network load Fairness across peers/network links