1 / 36

Salman Abdul Baset salman@cs.columbia Department of Computer Science Columbia University

Peer-to-Peer Communication Systems Protocols and Systems, Reliability, Energy Efficiency and Measurements. Salman Abdul Baset salman@cs.columbia.edu Department of Computer Science Columbia University. Background and Motivation. IP-based communication systems. Client-server. Peer-to-Peer.

oleg-kim
Télécharger la présentation

Salman Abdul Baset salman@cs.columbia Department of Computer Science Columbia University

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 Communication SystemsProtocols and Systems, Reliability, Energy Efficiency and Measurements Salman Abdul Baset salman@cs.columbia.edu Department of Computer Science Columbia University

  2. Background andMotivation

  3. IP-based communication systems Client-server Peer-to-Peer • Basic services • establish voice, video, IM sessions • voicemail • Advanced services • conferencing, telepresence • voicemail to text

  4. Client-server IP communication system SIP registrar / proxy / presence server SIP registrar / proxy server IP-PSTN gateway REGISTER (ip addr) REGISTER (ip addr) (1) signaling (1) signaling (2) media (voice, video, IM) User agent User agent Utopian Internet No NATs or firewalls

  5. SIP registrar / proxy / presence / server media server NAT / firewall NAT / firewall User agent User agent Client-server IP communication system NAT packet packet Src-IP Dst-IP Pub-IP Dst-IP Network Src-IP Pr-IP Pub-IP Dst-IP

  6. Client-server IP communication system SIP registrar / proxy / presence / server media server IP-PSTN gateway Peer-to-Peer distribute to user agents { What is centralized? • directory service • call signaling • media session and conferencing • presence • PSTN connectivity (1) signaling NAT / firewall NAT / firewall (1) signaling (2) media (voice, video, IM) (UDP or TCP) User agents User agents Why is this a problem? • Scaling for millions of users • servers • b/w • management overhead • How many calls need media relaying? • 30% • in practice: all

  7. Peer-to-peer communication system media relay (or relay) node A node E NAT / firewall network address of node B? (3) media (TCP) (2) signaling (2) (4) media (1) (3) signaling P2P / PSTN gateway (1) (1) NAT / firewall network address of node E? (2) (1) node B (2) signaling • nodes form an overlay • share responsibilities for message routing, signaling, media relaying • super nodes, ordinary nodes node C node D node = user agent

  8. media relay (or relay) node A node E NAT / firewall (3) media (TCP) (2) signaling (1) (1) NAT / firewall network address of node E? node B (2) signaling node C node D ChallengesDesigning, building, and analyzing p2p communication systems #1 Protocol and system design #2 Reliability #3 Session quality #4 Energy efficiency #5 Measurement

  9. Why not just use Skype? • Skype works, but • Closed and proprietary solution • Requires Internet access • cannot be used in ad hoc environments • Skype network failure for 2-5 days • August 2007

  10. Motivation • Peer-to-peer communication systems • Why not client-server? • server, b/w, maintenance overhead • Why not just use Skype? • proprietary solution

  11. Outline Background & Motivation How to design protocols and systems for p2p. communication? Other work Protocol and System Design Peer-to-Peer Communication Systems Measurement Reliability What is the reliability of a p2p comm. system? What are the measurement techniques to understand p2p comm. systems as a black box? Energy Efficiency Are p2p VoIP systems more energy efficient than c/s?

  12. Outline Background & Motivation How to design protocols and systems for p2p. communication? Protocol and System Design Peer-to-Peer Communication Systems Reliability

  13. Protocol and System Design • Goal: design open, standardized, and interoperable protocols for building p2p communication systems in ad hoc, office, and Internet environments • High-level Requirements • Scalability • NATs and firewalls • churn • heterogeneous capabilities • overlay routing • Security • trusted and insecure environments • Resources and Services • heterogeneity, discovery, addressing • Interoperability • Reuse existing protocols • where possible Can we meet these requirements?

  14. Yes, we can!  • How? • Identify common aspects of existing p2p protocols and potential deployments and incorporate them in the protocol. • Support pluggable overlay routing. • one overlay protocol may not be suitable for all environments • Make protocol extensible for future-proofing. flexibility vs. complexity tradeoff

  15. Protocol and System Design Common aspects • Connectivity • NAT traversal • bootstrap • Resilience • recovery from node churn • Request routing • recursive vs. iterative • parallel vs. sequential • Heterogeneity of nodes • mobile, desktop • super node vs. ordinary node • Security • identity • message confidentiality • Data model • addressing, storage, integrity • Message reliability • hop-by-hop, e2e Non-common aspects • Next-hop determination • depends on the overlay protocol • Chord, Kademla, Gia, • Methods for implementing the common aspects • Overlay protocol implements specific methods

  16. Peer-to-Peer Protocol (P2PP) • Now part of RELOAD protocol being standardized in the IETF • Not a new DHT! • Geared towards IP telephony but applicable to streaming, VoD etc. • A request / response binary protocol • Common methods • Join, Leave, Publish, Lookup etc • Overlay specific • FindPeer, ExchangeTable • Pluggable overlay routing (Chord, Kademlia etc) • Application-level API • Security • enrollment server, shared-secret, X.509 certificates • TLS, DTLS for message confidentiality SIP API P2PP ICE TLS / SSL protocol stack of a node IETF P2PSIP working group documents

  17. Peer-to-Peer Protocol (P2PP) • Data model • key / value pairs • value: single, array, dictionary • data integrity • Monitoring and diagnostics gathering • Node heterogeneity • peers (super nodes) and clients (ordinary nodes) • use of peers as relays • NAT traversal built-in • a node exchanges its host, NAT, and a relay IP address in requests and responses • then uses ICE (interactive connectivity establishment) for NAT traversal • Message reliability • hop-by-hop, e2e

  18. [ Bootstrap / authentication ] [ monitoring server / Google Maps ] Overlay2 SIP NAT P2PP ICE Overlay1 Transport Protocol stack of a peer alice@domain.com bob@example.com A peer NAT A client OpenVoIP architecture • Proof-of-concept system based on P2PP SIGCOMM (demo) 2008

  19. OpenVoIP: key facts • 1000 node network on ~500 PlanetLab machines • Kademlia, Bamboo, Chord • Windows XP / Vista, Linux • Integrated with Google, flash-based maps • Integrated with open source SIP phone OpenWengo (Qutecom) • Code used and modified by Ericsson Labs, Nokia Labs, Telecom Italia, and many universities

  20. OpenVoIP: geo+logical interface

  21. Outline Background & Motivation Protocol and System Design Peer-to-Peer Communication Systems Reliability What is the reliability of a p2p comm. system?

  22. Reliability of P2P Comm. Systems • Goal: to reason about the reliability of p2p comm. systems • Reliability=Proportion of completed calls • understand reasons for call failure • devise techniques to improve them • Reasons for call failure • (1) distributed search fails to find online callee • (2) distributed search fails to find a suitable relay • (3) relay fails during voice/video session • understand and improve reliability for relayed calls media relay (or relay) NAT / firewall node A node E (3) media (TCP) (2) signaling (1) (1) network address of node E? NAT / firewall node B (2) signaling node C node D IPTCOMM’2010

  23. Understanding reliability of relayed calls For desired reliability, minimum relays k per call? • Model • when ith relay fails, call is switched (i+1)st relay which is instantly selected from the global pool of all relays. • Ri residual lifetime of a relay candidate (i.i.d.) • let D denote the call duration. D Rk-1 Rk R1 k 1 2 k-1 99.9% k depends on the relationship b/w node lifetime and call duration

  24. Understanding reliability of relayed calls Exponential node lifetimes Skype node lifetimes 95% of Skype relay calls last less than 60 mins Mean node lifetime Mean call duration lifetimes approximated as pareto 95% of Skype call durations – minimum of 3 relays to maintain 99.9% success rate What if the system does not have enough relays?

  25. Outline Background & Motivation Protocol and System Design Peer-to-Peer Communication Systems Reliability Energy Efficiency Are p2p VoIP systems energy efficient than c/s?

  26. media relay (or relay) NAT / firewall node A node E (3) media (TCP) (2) signaling SIP registrar / proxy / presence / server media server (1) (1) network address of node E? INVITE NAT / firewall node B (2) signaling NAT / firewall INVITE media (voice, video, IM) (UDP or TCP) node C node D User agents User agents Are p2p comm. systems more energy efficient than c/s? • Two reasons • overheads (e.g., cooling) power utilization efficiency – (PUE) • ratio of data center power draw to IT power draw • idle power consumption • But really? • we tried to answer this question SIGCOMM Green networking workshop 2010

  27. Are p2p comm. systems more energy efficient than c/s? • Issues in comparison • under same load • centralized vs. distributed aspects • do not compare components that are centralized in p2p and c/s • PSTN replacement • Skype vs. Vonage • endpoint energy consumption • negligible 5W per device, • but millions of them … • workload characteristics • impacted by NATs and firewalls • Our approach • gather peak data from VoIP providers • build energy models for c/s and p2p VoIP systems • perform measurements • C/S VoIP provider • 100 K users • mostly business • 15 calls per second (CPS) • ~5K calls in system • NAT keep-alive traffic • all calls are relayed

  28. Energy Models for C/S and P2P • N users or nodes • C/S model • C/S power consumption = servers x watt/server x redundancy factor x PUE • P2P model • S supernodes • ps denotes power consumption by super node functions P2P energy efficient when: # of super nodes (S) x power consump. of a super node (ps) < C/S power consumption • Estimating super node population • one per relayed call • 1 million users • servers (~50% utilization) • 2 kW ps = 0.266W P2P may not be energy efficient than c/s for VoIP

  29. Energy Efficiency of VoIP Systems • End-points dominate energy consumption in c/s systems replacing PSTN • 1 million users • servers 2 kW, endpoints 5000 kW (at 5W) • 0.04% (voice) • NATs are responsible for energy inefficiency of c/s systems • problems will not go away with IPv6: firewalls • VoIP and PSTN? • trying to figure it out

  30. Outline Background & Motivation Protocol and System Design Peer-to-Peer Communication Systems Measurement Reliability What are the measurement techniques to understand p2p comm. systems as a black box? Energy Efficiency

  31. Measurement: Skype • Super node, ordinary node, login server • Actively prevent against reverse engineering • LD_PRELOAD • forcing Skype to use a modified shared library • Voice and video calls • relaying • over TCP • Ports: no default listening port • opens port 80 (HTTP) and 443 (TLS) • Contact list • stored centrally, initially distributed • Video conferencing • using central servers  INFOCOM’06

  32. Is Skype free-riding on universities bandwidth? • Two Skype clients in Columbia University forced to use a relay • 6,000 relay calls • Median latency: ~95ms • 46% calls through relays with a .edu suffix • 8% of calls through Columbia Skype users • Is it deliberate? • probably not • relay selection biased towards high-capacity nodes which happen to be in universities our lab NAT NAT GI’08

  33. Outline Background & Motivation Other work Protocol and System Design Peer-to-Peer Communication Systems Measurement Reliability Energy Efficiency

  34. Other work Research • TCP feasibility for real-time traffic (SIGMETRICS) • Can software routers scale? (PRESTO) Hacking and building • vazool.com

  35. Directions for future research • A holistic framework for reliability, performance, and energy tradeoffs in data centers • virtualization, consolidation • nano data centers? • Preventing data lock-in for social networks and cloud-based services • enabling seamless data migration across different cloud providers • holy grail: ‘one click’ data migration

  36. Conclusions Background & Motivation • Open P2PSIP protocol • OpenVoIP Other work Protocol and System Design Peer-to-Peer Communication Systems Measurement Reliability 3 relays are sufficient to achieve 99.9% call reliability Skype is free-riding on universities bandwidth Energy Efficiency • p2p may not be energy efficient than c/s • endpoints dominate

More Related