Abstract
In both academia and industry, peer-to-peer (P2P) applications have attracted great attentions. P2P applications such as Napster, Gnutella, FastTrack, BitTorrent, Skype and PPLive, have witnessed tremendous success among the end users. Unlike a client-server based system, peers bring with them serving capacity. Therefore, as the demand of a P2P system grows, the capacity of the network grows, too. This enables a P2P application to be cheap to build and superb in scalability. In this paper, we survey the state of the art of the research and the development of P2P content delivery application. Using examples of the deployed P2P applications and research prototypes, we survey the best practices in P2P overlay building and P2P scheduling. We hope that the information may help the readers to build a reliable, robust P2P content delivery application.
Similar content being viewed by others
Notes
Some optimization of Kademlia allows the k-bucket with different prefix to split to a max depth d.
Since Reed-Solomon is a maximum distance separable (MDS) erasure code, only exact k distinctive coded blocks are needed. If fountain code or random linear code is used, we may need (1 + ɛ)k blocks, with ɛ being a very small number for random linear code, and being around 0.03–0.25 for fountain code.
Avalanche 0 uses a push based confirmation process to ensure exact k blocks are needed to decode the original. In Avalanche, the sender first proposes to the receiver the code vector of the transmitted block. The receiver checks whether the code vector is linearly independent to the code vectors of the already received blocks, and accepts or rejects the code vector. This way, no bandwidth is wasted. Nevertheless, it may increase the latency in the delivery.
References
A&M Records, Inc vs. Napster Inc, United States District Court, Northern District of California, Mar. 2001
“Testimony of Mr. Shawn Fanning”, United States Senate Committee on the Judiciary, hearings on the Utah’s digital economy and the future: peer-to-peer and other emerging technologies. Oct. 9, 2000
Report: Napster users lose that sharing feeling,” in CNN news, URL: http://archives.cnn.com/2001/TECH/Internet/06/28/napster.usage/
Ferguson D (2006) Trends and statistics in peer-to-peer. Workshop on technical and legal aspects of peer-to-peer television. Amsterdam, Netherlands, Mar. 17
Winer D. Clary shirky on P2P. URL: http://davenet.scripting.com/2000/11/15/clayShirkyOnP2p
Schollmeier R (2001) A definition of peer-to-peer networking for the classification of peer-to-peer architectures and applications. Proc. of 1st Intern. Conf. on Peer-to-Peer Computing, Linkoping, Sweden, pp. 101–102, Aug
Sundsted T. The practice of peer-to-peer computing: Introduction and history.” URL: http://www-106.ibm.com/developerworks/java/library/j-p2p
Steve Saporta, “Multiple bit rate streams”, Jun. 1, 2002, URL: http://www.midicorp.com/articles.php?section=articles&id=24
Ripeanu M (2002) Peer-to-peer architecture case study: Gnutella network. Internet2 workshop: collaborative computing in higher education: peer-to-peer and beyond. Tempe, Arizona, January 30–31
Ritter J. Why Gnutella can’t scale. No, really. URL: http://www.darkridge.com/~jpr5/doc/gnutella.html
Llie D (2006) Gnutella network traffic measurements and Characteristics. Licentiate Dissertation Series No. 2006:05, ISBN: 91-7295-084-6, April
Liang J, Kumar R, Xi Y, Ross KW (2005) Pollution in P2P file sharing systems. Proc. of INFOCOM 2005. 24th Annual Joint Conference of the IEEE Computer and Communications Societies, 13–17 March, Miami, FL
Hoßfeld T, Leibnitz K, Pries R, Tutschku K, Tran-Gia P, Pawlikowski K (2004) Information diffusion in eDonkey file sharing networks. University of Würzburg, Research Report No. 341, Sept
Comparison of BitTorrent software. From Wikipedia, URL: http://en.wikipedia.org/wiki/Comparison_of_BitTorrent_software
RawFlow Ltd., URL: http://www.rawflow.com/
Abacast Online, URL: http://www.abacast.com/
PPLive.com, URL: http://www.pplive.com/
PPStream, URL: http://www.ppstream.com/
UUSee, URL: http://www.uusee.com/
Roxbeam media network, URL: http://www.roxbeam.com/
Mysee, URL: http://www.mysee.com/
Hei X, Liang C, Liang J, Liu Y, Ross KW (2006) Insights into PPLive: a measurement study of a large-scale P2P IPTV system. In: Workshop on Internet Protocol TV (IPTV) services over World Wide Web in conjunction with WWW2006, Edinburgh, Scotland, May
Liang J, Naoumov N, Ross KW (2006) The index poisoning attack in P2P file-sharing systems. Proc. of INFOCOM 2006. 25th Annual Joint Conference of the IEEE Computer and Communications Societies, Barcelona, Spain, Apr
Daswani N, Garcia-Molina H (2002) Query-flood DoS attacks in Gnutella. 9th ACM Computer and Communications Security Conference (CCS), Washington, Dc, Nov
Naoumov N, Ross KW (2006) Exploiting P2P systems for DDoS attacks. International workshop on peer-to-peer information management (keynote address). Hong Kong, May
Liang J, Kumar R, Ross KW (2005) The Kazaa overlay: a measurement study. Computer networks: special issue on overlays
Guha S, Daswani N, Jain R (2006) An experimental study of the Skype peer-to-peer VoIP system. In: Proceedings of the IPTPS’06. Santa Barbara, CA, Feb
BitComet tracker overview, URL: http://www.bitcomet.com/tracker/index.htm
Padmanabhan VN, Wang HJ, Chou PA, Sripanidkulchai K (2002) Distributing streaming media content using cooperative networking. ACM NOSSDAV, Miami Beach, FL, USA, May
Banerjee S, Bhattacharjee B, Kommareddy C (2002) Scalable application layer multicast. In: Proceedings of ACM SIGCOMM 2002. Pittsburgh, PA, August
Tran D, Hua K, Do T (2003) Zigzag: an efficient peer-to-peer scheme for media streaming. Proc. of INFOCOM 2003, the 22nd Annual Joint Conference of the IEEE Computer and Communications Societies, San Francisco, CA, Apr
Chu Y, Rao SG, Seshan S, Zhang H (2002) A case for end system multicast. IEEE Journal on Selected Areas in Communication (JSAC), Special Issue on Networking Support for Multicast 20(8)
Ratnasamy S, Francis P, Handley M, Karp R, Shenker S (2001) A scalable content-addressable network. In: Proceedings of ACM SIGCOMM 2001. San Diego, CA, Aug
Stoica I, Morris R, Karger D, Frans Kaashoek M, Balakrishnan H (2001) Chord: a scalable peer-to-peer lookup service for internet applications. In: Proceedings of ACM SIGCOMM 2001. San Diego, CA, pp 149–160, August
Rowstron A, Druschel P (2001) Pastry: scalable, distributed object location and routing for large-scale peer-to-peer systems. IFIP/ACM International Conference on Distributed Systems Platforms (Middleware). Heidelberg, Germany, pp 329–350, November
Zhao BY, Huang L, Stribling J, Rhea SC, Joseph AD, Kubiatowcz JD (2004) Tapestry: a resilient global-scale overlay for service deployment. IEEE J Sel Areas Commun 22(1), Jan
Ylä-Jääski A, Kasinskaja N (eds) (2005) Peer-to-peer technologies, networks and systems, Helsinki University of Technology, T-110.551 Seminar on Internetworking in the spring
Maymounkov P, Mazières D (2002) Kademlia: a peer-to-peer information system based on the XOR metric. In: 1st international workshop on peer-to-peer systems (IPTPS 2002). Cambridge, MA, Mar
Castro M, Druschel P, Kermarrec A-M, Nandi A, Rowstron A, Singh A (2003) SplitStream: high-bandwidth multicast in a cooperative environment. SOSP’03, Lake Bolton, New York, October
Ng TSE, Zhang H (2002) Predicting Internet network distance with coordinates-based approaches. Proc. of INFOCOM 2002, the 21st Annual Joint Conference of the IEEE Computer and Communications Societies, New York, NY, June
Costa M, Castro M, Rowstron A, Key P (2004) Practical internet coordinates for distance estimation. Proc. ICDCS 2004, the 24th International Conf. on Distributed Computing Systems, Tokyo, Japan, Mar
Pias M, Crowcroft J, Wilbur S, Bhatti S, Harris T (2003) Lighthouses for scalable distributed location. In 2nd International Workshop on Peer-to-Peer Systems (IPTPS ’03). Berkeley, CA, Feb
Tang L, Crovella M (2003) Virtual landmarks for the internet. Proc. of the ACM/SIGCOMM Internet Measurement Conference 2003. Miami, FL, pp 143–152, Oct
Bindal R, Pei C, Chan W, Medved J, Suwala G, Bates T, Zhang A (2006) Improving traffic locality in BitTorrent via biased neighbor selection. Proc. ICDCS 2006, the 26th IEEE International Conference on the Distributed Computing Systems, Lisboa, Portugal, July
Li J, Sollins K (2004) Exploiting autonomous system information in structured peer-to-peer networks. Proc. ICCCN2004, the 13th IEEE International Conference on Computer Communications and Networks, Chicago, IL, October
Skitter, URL: http://www.caida.org/tools/measurement/skitter/
RouterViews, URL: http://www.routeviews.org/
Dimitropoulos X, Krioukov D, Riley G, Claffy KC (2006) Revealing the autonomous system taxonomy: the machine learning approach. Proc. Passive and active measurements workshop (PAM). Adelaide, Austria, Mar
Hu N, Li LE, Mao ZM, Steenkiste P, Wang J (2004) Locating Internet bottlenecks: algorithms, measurements, and implications. Proc. SIGCOMM 2004. Portland, OR, Sept
Setton E, Noh J, Girod B (2006) Low latency video streaming over peer-to-peer networks. Proc. ICME 2006, IEEE Int. Conf. Multimedia and Expo. Toronto, Canada, July
Internet protocol multicast, ch 43 of Internetworking Technology Handbook, http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/index.htm
Chawathe Y (2000) Scattercast: an architecture for internet broadcast distribution as an infrastructure service. PhD thesis, University of California, Berkeley, August
Jannotti J, Gifford DK, Johnson KL, Kaashoek MF, O’Toole Jr. JW (2000) Overcast: reliable multicasting with an overlay network. In Proc. of the Fourth Symposium on Operating System Design and Implementation (OSDI), October
Li J, Chou PA, Zhang C (2005) Mutualcast: an efficient mechanism for content distribution in a P2P network. Proc. Acm Sigcomm Asia Workshop. Beijing, China, Apr. 10–12
Cherkasova L, Lee J (2003) FastReplica: efficient large file distribution within content delivery networks. In: Proc. of the 4-th USENIX Symposium on Internet Technologies and Systems. Seattle, Washington, March 26–28
Huang C, Li J (2006) DISCOVR: distributed collaborative video recorder. 2006 International Conference on Multimedia & Expo (ICME’2006), Toronto, Canada, Jul. 9–12
Gkantsidis C, Rodriguez P (2005) Network Coding for Large Scale Content Distribution. Proc. of INFOCOM 2005. 24th Annual Joint Conference of the IEEE Computer and Communications Societies, Miami, FL, 13–17 March
Zhang M, Luo JG, Zhao L, Yang SQ ( 2005) A peer-to-peer network for live media streaming using a push-pull approach. Proc. ACM Multimedia 2005, Singapore, pp 287–290, Sept
BitTorrent Specification, URL: http://wiki.theory.org/BitTorrentSpecification
Li J, Cui Y (2007) PeerStreaming: design and implementation of an on-demand distributed streaming system. To be published in ACM Multimedia Systems Journal
Kostic D, Braud R, Killian C, Vandekieft E, Anderson JW, Snoeren AC, Vahdat A (2005) Maintaining high-bandwidth under dynamic network conditions. Proceedings of 2005 USENIX Annual Technical Conference (USENIX 2005). April
Katabi D, Handley M, Rohrs C (2002) Internet congestion control for high bandwidth-delay product networks. In: Proceedings of ACM SIGCOMM, August
Microsoft Research ConfXP, URL: http://www.learningwebservices.com/
Edmonds J (1973) Edge-disjoint branchings. In: Rustin R (ed) Combinatorial Algorithms. Academic Press, NY, pp 91–96
Chou PA, WuY, Jain K (2003) Practical network coding. Proc. 51st Allerton Conf. Communication, Control and Computing, Oct
Byers JW, Luby M, Mitzenmacher M, Rege A (1998) A digital fountain approach to reliable distribution of bulk data. Proc. ACM SIGCOMM. Vancouver, BC, Sept
Li J (2005) The efficient implementation of Reed-Solomon high rate erasure resilient codes. Proc. IEEE International Conference on Acoustics, Speech, and Signal Processing (2005). Philadelphia, PA, Mar. 19–23
Krohn M, Freedman MJ, Mazières D (2004) On-the-fly verification of rateless erasure codes for efficient content distribution Proc. IEEE Symposium on Security and Privacy, Oakland, CA, May
Gkantsidis C, Rodriguez P (2006) Cooperative security for network coding file distribution. IEEE/INFOCOM’06. Barcelona, April
Charles D, Jain K, Lauter K (2006) Signatures for network coding. Conf. on Information Sciences and Systems, Mar
Gummadi K, Gribble S, Ratnasamy S, Shenker S, Stoica I (2003) The impact of DHT routing geometry on resilience and proximity. Proc. Proc. ACM SIGCOMM’03. Karlsruhe, Germany
Castro M, Costa M, Rowstron A. Performance and dependability of structured peer-to-peer overlays. Technical report MSR-TR2003-94
Huang G (2007) PPLive – a practical P2P live system with huge amount of users. keynote speech at P2PTV workshop, Kyoto, Japan
Li J (2007) Locality aware peer assisted delivery: the way to scale Internet video to the world. 16th Packet Video workshop (PV 2007). Lausanne, Switzerland, Nov
Karagiannis T, Rodriguez P, Papagiannaki K (2005) Should Internet service providers fear peer-assisted content distribution? In: Proc. Internet Measurement Conference 2005. Berkeley, CA, Oct
Huang C, Li J, Ross K (2007) Can internet video-on-demand be profitable. Proc. ACM Sigcomm’07. Kyoto, Japan, Aug
Pakkala D, Latvakoski J (2005) Towards a peer-to-peer extended content delivery network. 14th IST Mobile & Wireless Communications Summit, Dresden, June
Xu D, Chai HK, Rosenberg C, Kulkami S (2003) Analysis of a hybrid architecture for cost-effective streaming media distribution. SPIE/ACM Conf. on Multimedia Computing and Networking (MMCN’03). San Jose, CA, Jan
The VeriSign Intelligent CDN, VeriSign, 2007
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Li, J. On peer-to-peer (P2P) content delivery. Peer-to-Peer Netw. Appl. 1, 45–63 (2008). https://doi.org/10.1007/s12083-007-0003-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s12083-007-0003-1