1 / 40

Peer-to-peer networks

Peer-to-peer networks. Ant Rowstron Microsoft Research. Talk overview. Overview of Overlays/DHTs Overview of Wireless Routing protocols Description of Virtual Ring Routing A routing protocol inspired by DHTs. Underlays (Networks). Provides point-to-point communication. B. A. Overlay.

azuka
Télécharger la présentation

Peer-to-peer networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Peer-to-peer networks Ant Rowstron Microsoft Research

  2. Talk overview • Overview of Overlays/DHTs • Overview of Wireless Routing protocols • Description of Virtual Ring Routing • A routing protocol inspired by DHTs

  3. Underlays (Networks) Provides point-to-point communication B A

  4. Overlay A B

  5. Overlay and underlay

  6. Unstructured overlays • Unstructured overlays • No/weak constraint on neighbors (for correctness) • Algorithmically simple – poor performance • Flood based techniques etc. Example: Gnutella, BitTorrent

  7. Unstructured overlays • Unstructured overlays • No/weak constraint on neighbors (for correctness) • Algorithmically simple – poor performance • Flood based techniques etc. Example: Gnutella, BitTorrent

  8. Structured overlays • Structured overlays • Constraints on neighbors • Algorithmically more complex • DHT API, KBR API • Example: Distributed Hash Table (DHTs) - CAN, Chord, Pastry, Tapestry (2001)

  9. key nodeId Distributed Hash Tables (Pastry) • Large id space • NodeIds picked randomly from space • Keys picked randomly from space • Key is managed by its rootnode: • Live node with id closest to the key id space root node for key

  10. Node routing state 203231 nodeId leaf set • Topology aware routing table • NodeIds and keys in some base 2b (e.g., 4) • Prefix constraints on nodeIds for each slot • Pick closest node satisfying slot constraints

  11. key nodeId Routing • Prefix matching: each hop resolves an extra key digit 323310 323211 route(m, 323310) 203231 322021 313221

  12. key nodeId Using DHTs • Keys picked randomly from space • E.g. SHA1(“www.microsoft.com”) • Generic building block • Application-level multicast • File Systems • Web Caches • File Sharing • Etc id space root node for key

  13. DHT experiences • DHTs are: • Self-organizing • Decentralized • Fault-tolerant/churn tolerant • Scalable • Performance • Question: • Can we apply lessons to underlay routing protocols?

  14. Wireless routing protocols • Large number of wireless routing protocols • Numerous scenarios: • Mesh, Sensor, Mobile, VLAN, etc • Protocols traditionally target a scenario • Protocols use either: • Flooding • Coordinates

  15. Proactive routing Nodes have complete topology map x Example: OLSR, DSDV

  16. Reactive routing Example: DSR, AODV

  17. Coordinate-based routing lookup service y lookup(p) fixed identifier address p at (4,1) q at (2,2) at (4,1) p (x,y) x Example: GPSR, BVR

  18. Previous work on wireless routing • Flooding based algorithms scale poorly • Flood on topology changes or discover routes • Geographical and landmark routing • Scale well butnodes have identifier and address • Some apps (sensor networks) may require just address • DHT-like structure to translate between the two • Route setup delays • Additional maintenance overhead • Another target for attacks

  19. Virtual Ring Routing VRR: Virtual Ring Routing • A fundamentally different approach

  20. 0 FFF VRR: The Virtual Ring Topology-independent node identifiers 910 90E 8F6 8F0 8E2 Each node maintains a virtual neighbor set (vset) Nodes organized into virtual ring by increasing identifier value

  21. VRR: Routing paths 8F6 8F6 physical network topology • Nodes only maintain routing paths to virtual neighbors: • Paths maintained proactively • Paths are bidirectional and typically multi-hop

  22. 14A F42 8F6 10E 140 VRR: Forwarding table endpointA nextA endpointB nextB pathId 31 8F6 90E me F42 910 8F6 me 10E 10 14A 140 F42 10E 2 me F42 F42 8F6 FF forwarding table for node8F6 • Paths recorded in forwarding tables along path • Forwarding table contains • Paths between node and vset members • Paths between other nodes that go through node • Paths to physical neighbors

  23. VRR: Forwarding table state • Physical neighbors • VSet paths • Other VSet paths Physical network topology

  24. VRR: Example routing physical network topology

  25. VRR: Example routing physical network topology

  26. VRR: Example routing physical network topology

  27. VRR: Example routing physical network topology

  28. VRR: Example routing physical network topology

  29. VRR: Routing summary • Paths to virtual neighbors ensure correctness • Stretch empirically small • Many alternate paths to route around failures

  30. VRR: Node joining broadcast hellos to find physical neighbors Send setup request to 16E 164 8F6 19A NetworkTopology 16E

  31. VRR: Node joining 16E sends setup requests to nodes in received vset 164 sends setup to 16E with its vset 16E adds node to vset when it receives setup 164 171 8F6 19A NetworkTopology 16E

  32. VRR: Handling failures • Routing state is hard • No end-to-end heartbeats • Failures detected on missing acks or hellos • Local repair attempted first; • Otherwise, teardowns sent along all affected paths • Two techniques to ensure consistency • Symmetric failure detection and acks on teardowns • If x marks y faulty, y is guaranteed to mark x faulty • Lightweight optimistic transactions • If in doubt abort (teardown)

  33. Evaluation • Evaluated using: • Simulations (ns-2) • Mobility • Testbeds • UCB Sensor Testbed with 68 mica2dot motes • MSRC 111 node 802.11a Wireless Testbed

  34. Sensor Mesh: VRR vs BVR BVR delivery ratio drops Increasing packets

  35. Failures: VRR vs BVR BVR delivery ratio drops Fail 10% nodes

  36. Office Mesh: VRR vs LQSR

  37. Mobility: Simulation • Simulation in ns-2 • 802.11b MAC • Mobility: 0-20 m/s • CBR: 1 packet/sec

  38. Implementing Networking Services • Implement “lookups” using key-based routing? Hash(192.169.0.45) VRR ARP: Flood-based ARP: ARP: 192.169.0.45 192.169.0.45 192.169.0.45 Nodes organized into virtual ring.

  39. Overlay routing at the network layer VRR implements wireless routing Scalable: no flooding Single location-independent identifier per node No translation from identifiers to addresses No route discovery or translation delays VRR implements a DHT Strong consistency No additional overhead Conclusions

  40. Further information • VRR Paper: • M. Caesar, M. Castro, E. Nightingale, G. O'Shea and A. Rowstron, "Virtual Ring Routing: Network routing inspired by DHTs", Sigcomm 2006 http://research.microsoft.com/~antr/

More Related