Your SlideShare is downloading. ×
Peer-to-Peer (P2P) networks
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Peer-to-Peer (P2P) networks


Published on

  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide
  • -Peers communicate without passing through some special server, hence the architecture is called P2P -No single point of failure
  • In P2P, none of the peer nodes need to be always on, and can change IP address each time It’s switched on.
  • The partnership and data transmission directions are not fixed
  • Transcript

    • 1. ECE6160: Advanced Computer Networks Peer-to-Peer (P2P) Networks Student: Dina Machuve Instructor: Dr. Xubin He Term: Fall 2007
    • 2. Outline  Introduction  P2P File-Sharing  P2P Media Streaming  Real-Time Streaming Protocol  IP Multicast  DONet  Analysis of DONet P2P scheme  Conclusion 7/15/2010 2
    • 3. Overview of P2P Networks  Peer-to-Peer Networks consist of multiple clients forming a network where peer nodes function as both „clients‟ and „servers‟ to other nodes in the network  Used for connecting nodes via largely ad hoc connections  All clients provide resources that include bandwidth, storage and computing power  Highly scalable. Total capacity of system increases with increasing demand  Robust in case of network failure 7/15/2010 3
    • 4. P2P Classes  Pure P2P System  Peers share data without a centralized coordination  Hybrid P2P system  Some operations are intentionally centralized, such as indexing of peers’ files. 7/15/2010 4
    • 5. Network Application Architectures 7/15/2010 5
    • 6. P2P Network Applications  P2P File-Sharing  Media Streaming (audio and video)  Instant messaging  Voice over IP (VOIP) 7/15/2010 6
    • 7. Outline  Introduction  P2P File-Sharing  P2P Media Streaming  Real-Time Streaming Protocol  IP Multicast  DONet  Analysis of DONet P2P scheme  Conclusion 7/15/2010 7
    • 8. P2P Network File-Sharing  P2P file-sharing is a popular Internet application  Sharing of MP3 files (3-8Mb), Videos (10- 1000Mb), software, documents and images.  Accounts for a major fraction of all internet traffic (in 2004)  File-sharing applications include Napster, KaZaA, eDonkey and Gnutella.  BitTorrent is a P2P protocol essentially used for downloading files, it doesn’t provide search mechanism. 7/15/2010 8
    • 9. Content Location Methods  A large number of peers are connected in a P2P file-sharing system and continuously disconnect  content location is essential to determine the IP addresses of connected peers that have copies of desired object.  Three architectures for content location  Centralized Directory  Query Flooding  Exploiting heterogeneity 7/15/2010 9
    • 10. Centralized Directory  Used by the defunct Napster  Centralized directory server keeps an updated database of IP address, names of objects available for sharing of connected peers  The file transfer between peers is decentralized  The process of locating content is highly centralized 7/15/2010 10
    • 11. The P2P paradigm with a centralized directory 7/15/2010 11
    • 12. Query Flooding  Used by Gnutella, public domain file-sharing application  Uses a fully distributed architecture  File-sharing and content search is decentralized  Unstructured P2P system where all peers are involved in query flooding  Peers forward query messages to each other on the overlay network, referred to as query flooding.  When a requesting peer receives query hit messages, a direct TCP connection is established and file-sharing begins 7/15/2010 12
    • 13. Content search and file transfer in Gnutella 7/15/2010 13
    • 14. Exploiting Heterogeneity  Used by KaZaA  In April 2004, KaZaA had more than 3million users sharing over 5,000 terabytes of content  A small fraction of the more powerful peers are designated as group leaders  Higher bandwidth and Internet connections and have greater responsibilities  Group leader has up to a few hundred children peers  Peers form direct TCP connections with one of the group leaders that serves the peers 7/15/2010 14
    • 15. Hierarchical overlay network for P2P file sharing 7/15/2010 15
    • 16. Message Duplications  The mechanism of a peer randomly joining and leaving a P2P network has negative impact  Mismatch problem between a P2P overlay network and the underlying physical network topology  Query flooding causes unnecessary traffic  Only 2-5% of Gnutella traffic link peers, and more than 40% of all Gnutella peers are located within the top 10ASs.  Same message traverse the same physical link multiple times causing a large amount of unnecessary traffic 7/15/2010 16
    • 17. Topology Mismatch Problem Scenario a. Mismatching overlay b. Matching overlay c. Underlying physical topology 7/15/2010 17
    • 18. Adaptive Connection Establishment (ACE)  ACE is an algorithm proposed by L. Xiao et al. to minimize the effect due to topology mismatch  Builds an overlay multicast tree among each source node and the peers within a certain diameter from the source peer  Involves three phases, namely neighbor cost table construction and exchanging, selective flooding and overlay optimization  Optimizes the neighbor connections that are not on the tree while retaining the search scope  The approach effectively solves the mismatch problem and reduce P2P traffic noted by reduced cost of query reaching peer nodes (65%) and reduced query response time (35%). 7/15/2010 18
    • 19. Outline  Introduction  P2P File-Sharing  P2P Media Streaming  Real-Time Streaming Protocol  IP Multicast  DONet  Analysis of DONet P2P scheme  Conclusion 7/15/2010 19
    • 20. Peer-to-Peer Media Streaming Media Streaming applications:  Internet Television (IPTV)  Video conferencing  Video streaming  Video-on-demand  Audio streaming  Voice and Video over IP - Skype 7/15/2010 20
    • 21. Motivation of Media streaming  Growth of the Internet and multimedia communications  Media streaming uses P2P Technology:  Bandwidth scalability  Cost-effective networks  Distributed storage  Increased computing resources 7/15/2010 21
    • 22. Large scale P2P media streaming schemes  PPLive  Very popular and free P2P-based IPTV application  Provides service to over 400,000 users daily  GridMedia  Large-scale deployment of P2P live-video streaming application  Streaming achieved at a constant rate of 300-500 kbps and 600 kbps for high definition [2]  Adopted by CCTV in 2005 and 2006, broadcasted live Chinese Spring festival show supporting more than 500,000 and 1,800,000 respectively [2] 7/15/2010 22
    • 23. Media streaming schemes  SopCast  IPTV application that supported more than 100,000 simultaneous users after its initial deployment  Provides services to consumers and service providers  Coolstreaming  The earliest large-scale P2P live-streaming system  Developed in 2004, concurrent users reach over 80,000 with an average rate of 400 kb/s  On the consumer domain:  Mobile communicators, and networked consumer electronics 7/15/2010 23
    • 24. Normalized search volume for popular P2P schemes source: 7/15/2010 24
    • 25. Outline  Introduction  P2P File-Sharing  P2P Media Streaming  Real-Time Streaming Protocol  IP Multicast  DONet  Analysis of DONet P2P scheme  Conclusion 7/15/2010 25
    • 26. Real-Time Streaming Protocol (RTSP)  RTSP is an application-level protocol for control over the delivery of data with real-time properties (RFC 2326) such as audio and video. o allows a media player to control the transmission of a media stream  RTSP messages are sent over either TCP or UDP.  RTSP Control commands sent by client to the server include SETUP, PLAY, PAUSE and TEARDOWN. 7/15/2010 26
    • 27. Video streaming server and client [1, 3]  The server will use the RTP to packetize the video for transport over UDP  Client is setup to use RTSP to control actions on the server 7/15/2010 27
    • 28. RTSP: Video streaming  In playing state  Server periodically grabs a stored JPEG frame, packetizes the frame with RTP, and sends the RTP packet into a UDP socket  The client receives the RTP packets, removes the JPEG frames, decompresses the frames, and renders the frames on the client‟s monitor 7/15/2010 28
    • 29. Interaction between Server and Client 7/15/2010 29
    • 30. Outline  Introduction  P2P File-Sharing  P2P Media Streaming  Real-Time Streaming Protocol  IP Multicast  DONet  Analysis of DONet P2P scheme  Conclusion 7/15/2010 30
    • 31. IP Multicast  The earlier P2P streaming applications were largely built on IP multicast framework:  Extension of the traditional best-effort unicast model to multi-point packet transmissions  Dissemination of packets to destinations achieved through the construction of a spanning tree across routers in networks  IP Multicast operates at the network level of the IP Stack 7/15/2010 31
    • 32. Drawbacks of IP Multicast  Scalability in that there are potentially a large number of multicast groups that must be managed in a large network  Complexity in coordination of dynamic spanning tree (s) at routers across different autonomous subnets  Routers must maintain the state, which violates the [stateless] principles and creates difficulty in the design of high-level functions such as error, flow and congestion control 7/15/2010 32
    • 33. Overlay network  Application-level or end-system multicast addressed the classical IP multicast problems:  Used overlay network, a virtual topology over the unicast Internet  Greater flexibility, all the nodes have strong buffering capabilities and can adaptively determine the data forwarding directions 7/15/2010 33
    • 34. Outline  Introduction  P2P File-Sharing  P2P Media Streaming  Real-Time Streaming Protocol  IP Multicast  DONet  Analysis of DONet P2P scheme  Conclusion 7/15/2010 34
    • 35. Data-Driven Overlay Network- DONet  A data-centric design of a streaming overlay, in which every peer node periodically exchanges data availability information with a set of peers, and retrieves unavailable data from one or more peers, or supplies available data to peers.  It eliminates the requirement for constructing and maintaining any specific overlay network.  A public Internet-based DONet implementation is Coolstreaming v0.9 7/15/2010 35
    • 36. Advantages of DONet  Easy to deploy  There is no need to maintain any global structure  Efficient  Data forwarding is not determined prior to, but instead on, availability  Robust and resilient  The peer nodes and data availability information are dynamically and periodically updated, so the system can be self-evolving 7/15/2010 36
    • 37. DONet Node Architecture  Membership Manager:  Helps the node maintain a partial view of other overlay nodes  It consists of a membership cache (mCache) that has a partial list of the identifiers for the current active nodes in the system  Partnership Manager  Establishes and maintains the partnership with other nodes  Buffer Map (BM) represents availability of segments in the buffer and BM are exchanged among the peers periodically  Scheduler  Schedules the transmission of video data segments. 7/15/2010 37
    • 38. Node Joining Algorithm  A new node first establishes connection to the origin node (A)  The origin node randomly selects another node (deputy node) from its mCache and redirects the new node to the deputy node  The new peer node obtains a list of peers from the deputy node and contacts these peers and establishes its own peers on the overlay  The mCache is then updated using membership messages 7/15/2010 38
    • 39. Partnership issues in DONet  The initial node joining process takes an excessive amount of time (10-20seconds)  The random peer selection causes a new node to connect multiple times before it can successfully establish stable connection 7/15/2010 39
    • 40. Live Media Streaming over DONet nodes  A video stream is divided into segments of uniform length  The availability of the segments in the buffer is represented by a Buffer Map (BM)  Each node exchanges its BM with the peers continuously, and then a schedule is generated for fetching segments from partners accordingly 7/15/2010 40
    • 41. Outline  Introduction  P2P File-Sharing  P2P Media Streaming  Real-Time Streaming Protocol  IP Multicast  DONet  Analysis of DONet P2P scheme  Conclusion 7/15/2010 41
    • 42. Architecture module of DONet experiment system  DONet system:  Implemented in Python programming language  Concurrent operations are implemented using event queue with non-blocking sockets  Console and Automaton module:  Console is the interactive command interface for the whole system  Automaton in the console is used to launch experiments and execute commands predefined in a queue  Command Dispatcher and Report Collector:  Each command message has unique sequence number 7/15/2010 42
    • 43. Experiment Setup  The origin node is located in PlanetLab, USA. The monitoring node is located in Hong Kong. Access to PlanetLab is achieved through remote logins  Experiments involve a total number of PlanetLab active nodes ranging from 200 to 300  The distributed testbed is highly scalable and extensible to add new nodes or new features due to the design of module architecture, tools provided by PlanetLab.  Under stable environment, all nodes join in an initialization period (around 1min) and then persist for 120min (streaming lifetime)  Default streaming rate is 500Kbps. Each segment contains 1 sec of the stream and DONet node maintains a sliding window of 60 segments. 7/15/2010 43
    • 44. Control Overhead  Control overhead = Control traffic volume/Video traffic volume at each node  Control messages in DONet are for exchanging data availability information. Hence the number of partners becomes a key factor to the control  The overhead increases with an increase of the number of partners.  Control overhead at each node is almost independent of the overlay size because BM are only locally exchanged. 7/15/2010 44
    • 45. Playback Continuity  Continuous playback is a primary objective for streaming applications.  Continuity index is the measure for continuity evaluated as the number of segments that arrive before or on playback deadlines over the total number segments.  The continuity improves with increasing number of partners, since each node has more number of suppliers. 7/15/2010 45
    • 46. Playback Continuity  Continuity index as a function of different streaming rates for an overlay size of 200 nodes.  DONet is scalable in terms of both overlay size and streaming rate  Practical number of partners is 4 7/15/2010 46
    • 47. Performance under Dynamic Environment  DONet with dynamic node joining, leaving and failing  ON period: node actively participates the overlay  OFF period: node leaves (or fails) the overlay  DONet remains acceptable even under highly dynamic networks  Control overhead is slightly higher with a shorter ON/OFF period (more dynamic node behavior)  A shorter ON/OFF period leads to poor continuity 7/15/2010 47
    • 48. Comparison with Tree-based overlay  The degree of both DONet node and tree-based overlay used is 4.  The end-to-end delays for delivering each segment are measured using overlay hop-count  Under both stable and dynamic environments, the delay measures of the tree-based overlay are higher than DONet.  This is due to out-bound bandwidth constraints that increase the height of the tree 7/15/2010 48
    • 49. DONet vs. Tree-based Overlay  The continuity index of the tree topology is very low compared to DONet  Tree topology is vulnerable to internal node failures 7/15/2010 49
    • 50. Playback discontinuity  The tree is full and balanced  Playback discontinuity is caused by node departures and failures  DONet achieves much better playback continuity 7/15/2010 50
    • 51. Outline  Introduction  P2P File-Sharing  P2P Media Streaming  Real-Time Streaming Protocol  IP Multicast  DONet  Analysis of DONet P2P scheme  Conclusion 7/15/2010 51
    • 52. Conclusions  DONet‟s control overhead is reasonably low, around 1% of the video traffic and this remains unchanged with an increase of the overlay size.  This makes DONet acceptable for live media streaming.  DONet system is scalable. The automatic command dispatching and report collecting system allows for launching the DONet program to more nodes.  DONet delivers better playback quality as compared with tree-based overlay in terms of more continuous streaming with comparable delay.  The PlanetLab has offered stable network condition that the reproducibility problems were not very severe. 7/15/2010 52
    • 53. References 1. J. Kurose and K. Ross, “Computer Networking: A Top-Down Approach Featuring the Internet 3rd Edition,” Pearson Education Inc., 2005 2. Y. Tang, J.G. Luo, Q. Zhang, M. Zhang and S.Q. Yang, “Deploying P2P Networks for Large-Scale Live Video- Streaming Service,” IEEE Communications Magazine, Vol. 45, No.6, June 2007, pp. 100-106 3. streaming.php#features 4. X.Zhang, J. Liu, B. Li and T.P. Yum, “CoolStreaming/DONet: A Data-Driven Overlay Network for Efficient Live Media Streaming,” IEEE INFOCOM, 2005 5. B. Li and H. Yin, “Peer-to-Peer Live Video Streaming on the Internet: Issues, Existing Approaches and Challenges,” IEEE Communications Magazine, Vol. 45, No.6, June 2007, pp. 94-99 6. L. Xiao, Y. Liu, and L.M. Ni, “Improving Unstructured Peer-to-Peer Systems by Adaptive Connection Establishment,” IEEE Transactions on Computers, Vol.54, No.9, 2005, pp.1091-1103. 7/15/2010 53
    • 54. Thank You