Internet Technology 2/15/2016 Paul Krzyzanowski 1

Total Page:16

File Type:pdf, Size:1020Kb

Internet Technology 2/15/2016 Paul Krzyzanowski 1 Internet Technology 2/15/2016 Peer-to-Peer (P2P) Application Architectures • No reliance on a central server • Machines (peers) communicate with each other Internet Technology • Pools of machines (peers) provide the 04. Peer-to-Peer Applications service • Goals client server – Robustness • Expect that some systems may be down – Self-scalability Paul Krzyzanowski • The system can handle greater workloads as Rutgers University more peers are added Spring 2016 peers February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 1 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 2 Peer-to-Peer networking Peer to Peer applications “If a million people use a web site simultaneously, • P2P targets diverse solutions doesn’t that mean that we must have a heavy-duty – Cooperative computation remote server to keep them all happy? – Communications (e.g., Skype) – Exchanges, digital currency (bitcoin) – DNS (including multicast DNS) No; we could move the site onto a million desktops – Content distribution (e.g., BitTorrent) and use the Internet for coordination. – Storage distribution Could amazon.com be an itinerant horde instead of • P2P can be a distributed server a fixed central command post? Yes.” – Lots of machines spread across multiple datacenters – David Gelernter The Second Coming – A Manifesto Today, we’ll focus on file distribution See http://edge.org/conversation/the-second-coming-a-manifesto February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 3 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 4 Four key primitives Example: Napster • Join/Leave • Background – How do you join a P2P system? – Started in 1999 by 19-year-old college dropout Shawn Fanning – How do you leave it? – Built only for sharing MP3 files – Who can join? – Stirred up legal battles with $15B recording industry • Publish – Before it was shut down in 2001: • 2.2M users/day, 28 TB data, 122 servers – How do you advertise content? Strategies: - Central server • Access to contents could be slow or unreliable - Flood the query • Search - Route the query – How do you find a file? • Big idea: Central directory, distributed contents • Fetch – Users register files in a directory for sharing – How do you download the file? – Search in the directory to find files to copy February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 5 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 6 Paul Krzyzanowski 1 Internet Technology 2/15/2016 Napster: Overview Napster: Discussion Napster is based on a central directory • Pros • Join – Super simple – Search is handled by a single server – On startup, a client contacts the central server – The directory server is a single point of control • Publish • Provides definitive answers to a query – Upload a list of files to the central server – These are the files you are sharing and are on your system • Cons • Search – Server has to maintain state of all peers – Query the sever – Server gets all the queries – Get back one or more peers that have the file – The directory server is a single point of control • Fetch • No directory server, no Napster! – Connect to the peer and download the file February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 7 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 8 Example: Gnutella Gnutella: Overview • Background Gnutella is based on query flooding – Created by Justin Frankel and Tom Pepper (authors of Winamp) • Join – AOL acquired their company, Nullsoft in 1999 – On startup, a node (peer) contacts at least one node – In 2000, accidentally released gnutella • Asks who its friends are – AOL shut down the project but the code was released – These become its “connected nodes” • Publish – No need to publish • Big idea: create fully distributed file sharing • Search – Unlike Napster, you cannot shut down gnutella – Ask connected nodes. If they don’t know, they will ask their connected nodes, and so on… – Once/if the reply is found, it is returned to the sender • Fetch – The reply identifies the peer; connect to the peer via HTTP & download February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 9 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 10 Overlay network Overlay network An overlay network is a virtual network formed by peer connections An overlay network is a virtual network formed by peer connections – Any node might know about a small set of machines – Any node might know about a small set of machines – “Neighbors” might not be physically close to you – they’re just who you know – “Neighbors” might not be physically close to you – they’re just who you know Underlying IP Network Overlay Network February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 11 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 12 Paul Krzyzanowski 2 Internet Technology 2/15/2016 Gnutella: Search Gnutella: Search Initial query sent to neighbors (“connected nodes”) If a node does not have the answer, it forwards the query Query: where is file X? Query: where is file X? Query: Query: Query: where is file X? where is file X? where is file X? Query: where is file X? Query: Query: where is file X? Query: where is file X? Query: where is file X? where is file X? Queries have a hop count (time to live) – so we avoid forwarding loops February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 13 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 14 Gnutella: Search Gnutella: Search If a node has the answer, it replies – replies get forwarded • Original protocol I have X! Query: – Anonymous: you didn’t know if the request you’re getting is from the where is file X? Query: originator or the forwarder where is file X? – Replies went through the same query path Reply Query: Query: where is file X? where is file X? • Downloads Reply Reply – Node connects to the server identified in the reply Query: – If a connection is not possible due to firewalls, the requesting node can where is file X? Reply send a push request for the remote client to send it the file Query: where is file X? Query: where is file X? February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 15 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 16 Peers do not have equal capabilities Gnutella: Enhancements • Network upstream and downstream bandwidth • Optimizations • Connectivity costs (willingness to participate) – Requester’s IP address sent in query to optimize reply – Every node is no longer equal • Availability • Leaf nodes & Ultrapeers • Compute capabilities • Leaf nodes connect to a small number of ultrapeers • Ultrapeers are connected to ≥ 32 other ultrapeers • Route search requests through ultrapeers • Downloads – Node connects to the server identified in the reply – If a connection is not possible due to firewalls, the requesting node can send a push request for the remote client to send it the file February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 17 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 18 Paul Krzyzanowski 3 Internet Technology 2/15/2016 Gnutella: Summary Example: FastTrack/Kazaa • Pros • Background – Fully decentralized design – Kazaa & FastTrack protocol created in 2001 – Team of Estonian programmers – same team that will later create Skype – Searching is distributed – Post-Napster and a year after Gnutella was released – No control node – cannot be shut down – FastTrack: used by others (Grokster, iMesh, Morpheus) – Open protocol • Proprietary protocol; Several incompatible versions • Cons • Big idea: Some nodes are better than others – A subset of client nodes have fast connectivity, lots of storage, and fast – Flooding is inefficient: processors • Searching may require contacting a lot of systems; limit hop count – These will be used as supernodes (similar to gnutella’s ultrapeers) – Well-known nodes can become highly congested – Supernodes: – In the classic design, if nodes leave the service, the system is • Serve as indexing servers for slower clients crippled • Know other supernodes February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 19 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 20 Kazaa: Supernodes Kazaa: publish a file I have X February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 21 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 22 Kazaa: search Kazaa: Discussion Supernodes answer for all their peers (ordinary nodes) Selective flooding of queries • Join – A peer contacts a supernode query • Publish query query Query X – Peer sends a list of files to a supernode query • Search query – Send a query to the supernode – Supernodes flood the query to other supernodes • Fetch – Download the file from the peer with the content Reply February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 23 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 24 Paul Krzyzanowski 4 Internet Technology 2/15/2016 Kazaa: Summary BitTorrent • Pros • Background – Similar to improved Gnutella – Introduced in 2002 by Bram Cohen – Efficient searching via supernodes – Motivation – Flooding restricted to supernodes • Popular content exhibits temporal locality: flash crowds – E.g., slashdot effect, CNN on 9/11, new movies, new OS releases • Cons • Big idea: allow others to download from you while you are – Can still miss files downloading – Well-known supernodes provide opportunity to stop service – Efficient fetching, not searching – Single publisher, many downloaders February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 25 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 26 BitTorrent: Overview BitTorrent: Publishing & Fetching Enable downloads from peers • To distribute a file • Join – Create a .torrent
Recommended publications
  • 04. Peer-To-Peer Applications
    Internet Technology 04. Peer-to-Peer Applications Paul Krzyzanowski Rutgers University Spring 2016 February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 1 Peer-to-Peer (P2P) Application Architectures • No reliance on a central server • Machines (peers) communicate with each other • Pools of machines (peers) provide the service • Goals client server – Robustness • Expect that some systems may be down – Self-scalability • The system can handle greater workloads as more peers are added peers February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 2 Peer-to-Peer networking “If a million people use a web site simultaneously, doesn’t that mean that we must have a heavy-duty remote server to keep them all happy? No; we could move the site onto a million desktops and use the Internet for coordination. Could amazon.com be an itinerant horde instead of a fixed central command post? Yes.” – David Gelernter The Second Coming – A Manifesto See http://edge.org/conversation/the-second-coming-a-manifesto February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 3 Peer to Peer applications • P2P targets diverse solutions – Cooperative computation – Communications (e.g., Skype) – Exchanges, digital currency (bitcoin) – DNS (including multicast DNS) – Content distribution (e.g., BitTorrent) – Storage distribution • P2P can be a distributed server – Lots of machines spread across multiple datacenters Today, we’ll focus on file distribution February 15, 2016 CS 352 © 2013-2016 Paul Krzyzanowski 4 Four key primitives • Join/Leave – How do you join a P2P system?
    [Show full text]
  • Kent State University
    FOUNDATION OF PEERPEER--TOTO--PEERPEER SYSTEMS A Course on Foundations of PeerPeer--toto--PeerPeer Systems & Applications LECT-07, S-1 FP2P08S, [email protected] Javed I. Khan@2008 CS 6/75995 Kent State Foundation of PeerPeer--toto--PeerPeer University Applications & Systems Dept. of Computer Science www.cs.kent.edu/~javed/classwww.cs.kent.edu/~javed/class--P2P08/P2P08/ LECTLECT--77 2 1 FOUNDATION OF PEERPEER--TOTO--PEERPEER SYSTEMS Vibrant Systems: Gnutella Family LECT-07, S-3 FP2P08S, [email protected] Javed I. Khan@2008 Classification [*Eberspacher & Schollmeier 2005] FOUNDATION OF Client-Server Peer-to-Peer PEERPEER--TOTO--PEERPEER SYSTEMS 1. Server is the central 1. Resources are shared between the peers entity and only 2. Resources can be accessed directly from other peers provider of service 3. Peer is provider and requestor (Servent concept) and content. Network managed Unstructured P2P Structured P2P by the Server Centralized P2P Pure P2P Hybrid P2P DHT-Based 2. Server as the higher performance system. 1. All features of Peer-to- 1. All features of Peer-to- 1. All features of Peer-to- 1. All features of Peer-to- Peer included Peer included Peer included Peer included 3. Clients as the lower performance system 2. Central entity is 2. Any terminal entity can 2. Any terminal entity can 2. Any terminal entity can necessary to provide the be removed without loss be removed without loss be removed without loss service of functionality of functionality of functionality Example: WWW 3. Central entity is some 3. No central entities 3. dynamic central 3. No central entities kind of index/group Examples: Gnutella 0.4, entities 4.
    [Show full text]
  • Get Real: Print This
    Get Real: Print This http://www.corante.com/getreal/archives/032237print.html from Get Real by Marc Eisenstadt January 11, 2005 BitTorrent, eXeem, Meta-Torrent, Podcasting: "What? So What?" SUMMARY: The index that facilitates the sharing of files on a large scale is also the Achilles heel of peer-to-peer file-sharing, because it is vulnerable to litigation and closure. So what happens if the index is itself distributed? I try to get my head around the latest in peer-to-peer file sharing, and explain a bit about what I've learned, including the fact that BitTorrent's power rests in its 'swarm' distribution model, but not necessarily in your end-user download speed. What has this got to do with podcasting? (Answer: invisible P2P plumbing helps the podcasting wheel go round). [Warning: lengthy article follows]. First, some history (skip ahead to the next section if you're already bored with the Napster, Gnutella, KaZaa, and BitTorrent saga). Napster opened our eyes to the power of distributed file sharing on a massive scale. But it was closed down by lawsuits to stop it from listing copyrighted works for which the owners would naturally have preferred to collect royalties (there are thousands of commentaries on the pros and cons of such royalties, but that's not the focus of this posting). Successive generations of tools such as Gnutella, KaZaa, and now BitTorrent have created their own buzz, their own massive followings, their own headaches, and their own solutions to others' headaches. Here's my rundown of the 'big ideas' (and the people behind them): Napster (Shawn Fanning): This was the Mother of big-time peer-to-peer (P2P) file transfers, i.e.
    [Show full text]
  • Title: P2P Networks for Content Sharing
    Title: P2P Networks for Content Sharing Authors: Choon Hoong Ding, Sarana Nutanong, and Rajkumar Buyya Grid Computing and Distributed Systems Laboratory, Department of Computer Science and Software Engineering, The University of Melbourne, Australia (chd, sarana, raj)@cs.mu.oz.au ABSTRACT Peer-to-peer (P2P) technologies have been widely used for content sharing, popularly called “file-swapping” networks. This chapter gives a broad overview of content sharing P2P technologies. It starts with the fundamental concept of P2P computing followed by the analysis of network topologies used in peer-to-peer systems. Next, three milestone peer-to-peer technologies: Napster, Gnutella, and Fasttrack are explored in details, and they are finally concluded with the comparison table in the last section. 1. INTRODUCTION Peer-to-peer (P2P) content sharing has been an astonishingly successful P2P application on the Internet. P2P has gained tremendous public attention from Napster, the system supporting music sharing on the Web. It is a new emerging, interesting research technology and a promising product base. Intel P2P working group gave the definition of P2P as "The sharing of computer resources and services by direct exchange between systems". This thus gives P2P systems two main key characteristics: • Scalability: there is no algorithmic, or technical limitation of the size of the system, e.g. the complexity of the system should be somewhat constant regardless of number of nodes in the system. • Reliability: The malfunction on any given node will not effect the whole system (or maybe even any other nodes). File sharing network like Gnutella is a good example of scalability and reliability.
    [Show full text]
  • Shoutcast Audio and Video Streaming Guide
    SHOUTcast Audio And Video Streaming Guide Created By David Childers www.scvi.net Creative Common License This body of work is released under the Attribution-ShareAlike version 3.0, Creative Common License. The work may be freely distributed or modified for commercial or non commercial purposes. If this work is modified, compliance with the Attribution-ShareAlike version 3.0, Creative Common License is required. These requirements include: - Any derivatives of this work must be attributed to David Childers. - Alterations, transforming, or building upon this work requires distributing the resulting work only under the same, similar or a compatible license. For the complete legal code, please refer here: www.creativecommons.org/licenses/by-sa/3.0/legalcode Front cover picture: Series modulator using two tetrodes. This image has been (or is hereby) released into the public domain by its author, Cadmium at the wikipedia project. This applies worldwide. http://en.wikipedia.org/wiki/File:Seriesmod.png About The Author David Childers is the Content Manager and Senior Editor for the International Broadcasting portal www.BroadcastingWorld.net. He is also the webmaster of the SHOUTcast video streaming information resource, www.scvi.net. He is very active in the Internet broadcast industry. Mr. Childers work has been cited in several national and International publications, such as: Five Essays on Copyright In the Digital Era Turrer Publishing Research On High-Profile Digital Video Production Digital Content Association of Japan Video Podcasting in Perspective: The History, Technology, Aesthetics and Instructional Uses of a New Medium Journal of Educational Technology Systems Video Podcasting: When, Where and How it's Currently used for Instruction The National Convention of the Association for Educational Communications and Technology IP Packet Charging Model For Multimedia Services National University of Rwanda Preservation of audiovisual mediums : Problems and challenges.
    [Show full text]
  • Supernodes (Similar to Gnutella’S Ultrapeers) – Supernodes: • Serve As Indexing Servers for Slower Clients • Know Other Supernodes
    Distributed Systems 25. Distributed Caching & Some Peer-to-Peer Systems Paul Krzyzanowski Rutgers University Fall 2017 December 11, 2017 © 2017 Paul Krzyzanowski 1 Caching • Purpose of a cache – Temporary storage to increase data access speeds – Increase effective bandwidth by caching most frequently used data • Store raw data from slow devices – Memory cache on CPUs – Buffer cache in operating system – Chubby file data and metadata – GFS master caches all metadata in memory • Store computed data – Avoid the need to look the same thing up again • Results of database queries or file searches • Spark RDDs in memory December 11, 2017 © 2017 Paul Krzyzanowski 2 Distributed In-Memory Caching • A network memory-based caching service – Shared by many – typically used by front-end services • Stores frequently-used (key, value) data – Old data gets evicted • General purpose – Not tied to a specific back-end service • Not transparent (usually) – Because it’s a general-purpose service, the programmer gets involved User-facing User-facing look here first Cache UserUser-facing-Servicefacing User-ServicefacingService ServiceService if not found then look here Back-end service December 11, 2017 © 2017 Paul Krzyzanowski 3 Deployment Models • Separate caching server – One or more computers whose sole purpose is to provide a caching service User-facing Service Cache server User-facing Service Cache server User-facing Service Cache server • Or share cache memory among servers – Take advantage of free memory from lightly-loaded nodes User-facing Service Cache server User-facing Service Cache server User-facing Service Cache server December 11, 2017 © 2017 Paul Krzyzanowski 4 What would you use it for? • Cache user session state on web application servers – No need to keep user coming back to the same computer • Cache user preferences, shopping carts, etc.
    [Show full text]
  • The RIAA's Troubling Solution to File- Sharing
    Fordham Intellectual Property, Media and Entertainment Law Journal Volume 20 Volume XX Number 2 Volume XX Book 2 Article 4 2009 The RIAA’s Troubling Solution to File- Sharing Genan Zilkha J.D. Candidate, Fordham University School of Law, 2010 Follow this and additional works at: https://ir.lawnet.fordham.edu/iplj Part of the Entertainment, Arts, and Sports Law Commons, and the Intellectual Property Law Commons Recommended Citation Genan Zilkha, The RIAA’s Troubling Solution to File- Sharing , 20 Fordham Intell. Prop. Media & Ent. L.J. 667 (2009). Available at: https://ir.lawnet.fordham.edu/iplj/vol20/iss2/4 This Note is brought to you for free and open access by FLASH: The Fordham Law Archive of Scholarship and History. It has been accepted for inclusion in Fordham Intellectual Property, Media and Entertainment Law Journal by an authorized editor of FLASH: The Fordham Law Archive of Scholarship and History. For more information, please contact [email protected]. The RIAA’s Troubling Solution to File- Sharing Cover Page Footnote I would like to thank my advisor, Professor Willajean McLean, for her patience, guidance and support, and Professor Sonia Katyal for her insight. I would also like to thank my family for their constant encouragement. This note is available in Fordham Intellectual Property, Media and Entertainment Law Journal: https://ir.lawnet.fordham.edu/iplj/vol20/iss2/4 C05_ZILKHA_3-8-10_FINAL (DO NOT DELETE) 3/31/2010 1:09 PM The RIAA’s Troubling Solution to File- Sharing Genan Zilkha INTRODUCTION ............................................................................. 668 I. A HISTORY OF FILE-SHARING ................................................. 669 A. The Internet as a Peer-to-Peer File-Sharing Network ........................................................................
    [Show full text]
  • Distributed Bootstrapping of Peer-To-Peer Networks
    Distributed Bootstrapping of Peer-to-Peer Networks Ryan C. Doyle# Centre of ICT, Box Hill Institute 465 Elgar Road, Box Hill, Melbourne, Victoria, Australia [email protected]# Abstract A completely distributed, fault-tolerant peer-to-peer network also requires a bootstrapping mechanism that is equally distributed and fault-tolerant. This paper aims to investigate alternative bootstrapping mechanisms than those seen in common peer-to-peer networks of the current day. Existing and proposed bootstrapping mechanisms have been studied and compared against five requirements that indicate its suitability. The method proposed is a variation of the Local Random Probing mechanism for bootstrapping called Reverse Local Random Probing. Sampling part of the Internet indicating the potential size of the popular Gnutella network, a mathematical model is proposed showing the normal distribution demonstrating the amount of probes required to connect into the network. This is compared with the Reverse Local Random Probing mechanism, demonstrating the speedup gained. It is shown that there is a generous speedup that is gained from the Reverse Local Random Probing that makes is a possible candidate for bootstrapping of next generation peer-to-peer networks. Motivation I started researching alternative ways for bootstrapping peer-to-peer networks out of personal interest and a perceived lack of depth in research on the topic. I feel bootstrapping implementations used on current peer-to-peer networks are not clean enough to provide long-term solutions to the problem of completely distributing the bootstrapping process. The papers I have read about possible implementations for bootstrapping peer-to-peer networks have been useful resources and are referenced heavily throughout this paper.
    [Show full text]
  • Finding a Winning Strategy Against the MP3 Invasion: Supplemental Measures the Recording Industry Must Take to Curb Online Piracy
    Finding a Winning Strategy Against the MP3 Invasion: Supplemental Measures the Recording Industry Must Take to Curb Online Piracy Robert T. Baker* "For in much wisdom is much grief"and he that increaseth knowledge increasethsorrow. "-Ecclesiastes1:18 I. INTRODUCTION To most scholars of intellectual property law, its fundamental purpose reads like a sacred oath: "to create the most efficient and productive bal- ance between protection (incentive) and dissemination of information, to promote learning, culture and development."' Historically, the United States has achieved this goal by allowing owners of intellectual property to control access to their work for a limited time before releasing it into the public domain.2 Ironically, the very technology this law has sought to encourage and "protect" may prove to be its undoing. Over the last dec- ade, the computer file format known as "MP3" has posed a significant threat to the music industry, violating copyright owners' legally pro- * Robert T. Baker is an alumnus of the University of California at Los Angeles School of Law, Class of 2000. He is currently Director of Rights Management at Pearson Television/RTL Group, an international media company owned in part by Bertelsmann. The majority of this article was written prior to Bertelsmann's partner- ship with music file-sharing service Napster. Twentieth Century Music Corp. v. Aiken, 422 U.S. 151, 156 (1975). 2 U.S. CONST. art. I, § 8, cl. 8. UCLA ENTERTAINMENT LAW REVIEW scribed rights, and transforming anyone with a standard computer into a potential grand-scale pirate. The industry will not survive this new trend by relying exclusively on the law, nor will it recover simply by implementing anti-piracy technology.
    [Show full text]
  • Peer to Peer.Pdf
    Peer to Peer: Harnessing the Power of Disruptive Technologies Andy Oram (editor) First Edition March 2001 ISBN: 0-596-00110-X, 448 pages This book presents the goals that drive the developers of the best-known peer-to-peer systems, the problems they've faced, and the technical solutions they've found. The contributors are leading developers of well-known peer-to-peer systems, such as Gnutella, Freenet, Jabber, Popular Power, SETI@Home, Red Rover, Publius, Free Haven, Groove Networks, and Reputation Technologies. Topics include metadata, performance, trust, resource allocation, reputation, security, and gateways between systems. Table of Contents Preface 1 Andy Oram Part I. Context and Overview 1. A Network of Peers: Models Through the History of the Internet 8 Nelson Minar and Marc Hedlund 2. Listening to Napster 19 Clay Shirky 3. Remaking the Peer-to-Peer Meme 29 Tim O'Reilly 4. The Cornucopia of the Commons 41 Dan Bricklin Part II. Projects 5. SETI@home 45 David Anderson 6. Jabber: Conversational Technologies 51 Jeremie Miller 7. Mixmaster Remailers 59 Adam Langley 8. Gnutella 62 Gene Kan 9. Freenet 80 Adam Langley 10. Red Rover 86 Alan Brown 11. Publius 93 Marc Waldman, Lorrie Faith Cranor, and Avi Rubin 12. Free Haven 102 Roger Dingledine, Michael J. Freedman, and David Molnar Table of Contents (cont...) Part III. Technical Topics 13. Metadata 121 Rael Dornfest and Dan Brickley 14. Performance 128 Theodore Hong 15. Trust 153 Marc Waldman, Lorrie Faith Cranor, and Avi Rubin 16. Accountability 171 Roger Dingledine, Michael J. Freedman, and David Molnar 17. Reputation 214 Richard Lethin 18.
    [Show full text]
  • Analysis of Contributory Infringement and Fair Use
    391 PEER-TO-PEER TECHNOLOGY: ANALYSIS OF CONTRIBUTORY INFRINGEMENT AND FAIR USE GIOVANNA FESSENDEN* The film and music industries (“the Industries”) have a history of prematurely trying to circumscribe new technologies, even though history shows that new technologies help expand their markets.1 For example, in the early twentieth century, music publishers sought to prevent the distribution of a new sheet music format, the piano roll.2 Additionally, they attempted to control the market for phonogram recording equipment and phonograph players.3 Similarly in the early 1980s the music industry lobbied to require manufactures of analog tape recorders and blank audio tapes to pay a royalty fee on each machine and blank tape, and the royalty fee would be added to the price consumers would pay for the product.4 The music industry argued * Giovanna Fessenden, J.D. Candidate, Franklin Pierce Law Center, 2002, B.A. Smith College, Northampton, MA 1999. Special thanks to Professors Thomas Field and Sophie Sparrow for their comments, encouragement and support. 1 See e.g., Sony Corp. of Am. v. Universal City Studios, Inc., 464 U.S. 417, 456, 220 U.S.P.Q. 665, 684 (1984) (refusing to enjoin sale of video tape recorders as violation of Copyright Act); Teleprompter Corp. v. Columbia Broad. Sys., Inc., 415 U.S. 394, 411- 14, 181 U.S.P.Q. 65, 69-72 (1974) (determining that CATV transmissions are not performances within meaning of Copyright Act); White-Smith Music Publ'g Co. v. Apollo Co., 209 U.S. 1, 17-18 (1908) (refusing to restrain production of piano rolls designed to play copyrighted songs); Recording Indus.
    [Show full text]
  • Gnutella, Kazaa) Search (DHT)
    Content Search Unstructured P2P Prof. Jukka K. Nurminen Data Communications Software (DCS) Lab, Department of Computer Science and Engineering, Aalto University *Partly adapted from original slides provided by Rüdiger Schollmeier and Jörg Eberspächer (Technische Universität München) 1 V1-Filename.ppt / 2010-09-21 / Jukka K. Nurminen Schedule Tue 17.9.2013 Introduction to P2P (example Content delivery 14-16 P2P systems, concepts, (BitTorrent and trends) CoolStreaming) Tue 1.10.2013 Unstructured content search Structured content 14-16 (Napster, Gnutella, Kazaa) search (DHT) Tue 8.10.2013 Energy-efficiency & Mobile P2P 14-16 P2P Networks - General 2 History of P2P Networks (Cont.d) 1. (1969–1995) Prehistory: P2P thought burgeoning; 2. (1995–1999) Internet explosion: P2P concept retrogressive; 3. (1999–?) P2P term widely used: P2P-based applications blossom. Steps of content sharing Napster Gnutella DHT Share content Find content Transfer content BitTorrent 1 V1-Filename.ppt / 2010-09-21 / Jukka K. Nurminen X.1 The Architectures of 1st and 2nd Gen. P2P Client-Server Peer-to-Peer 1. Server is the central entity 1. Resources are shared between the peers and only provider of 2. Resources can be accessed directly from other peers service and content. 3. Peer is provider and requestor (Servent concept) à Network managed by the Server 2. Server as the higher performance system. Unstructured P2P Structured P2P 3. Clients as the lower performance system Centralized P2P Pure P2P Hybrid P2P DHT-Based 1. All features of Peer-to-Peer 1. All features of Peer-to-Peer 1. All features of Peer-to-Peer 1. All features of Peer-to-Peer Example: WWW included included included included 2.
    [Show full text]