Lesson 9 Applications of DHT: Bittorrent Mainline DHT, the KAD network
|
|
- Egbert Watson
- 6 years ago
- Views:
Transcription
1 Lesson 9 Applications of DHT: Bittorrent Mainline DHT, the KAD network 20/03/2017 1
2 IMPLEMENTATION OF KADEMLIA Kademlia is the protocol used by the largest public DHTs. Vuze ( before known as Azureus), version introduced the DHT for trackerless clients Bittorrent Inc. introduces its own DHT; incompatible with that of Vuze. mainline DHT a recent measurement: by 2013 users of Mainline DHT are from 10 million to 25 million, with a daily churn of at least 10 million emule KAD network 2
3 THE BITTORRENT PROTOCOL (1) the first BitTorrent client was published in July 2001 by Bram Cohen. today, a wide spectrum of compatible clients is available, typically free of charge a user exploiting the BitTorrent protocol, not only download a shared file, but becomes also the distributor of the file each file is divided into parts which are exchanged between the users: each user tries to download the parts it does not own and shares the parts it already downloaded swarm: set of peers that participate in sharing and distributing a specific file at a specific time. 3
4 HOW CAN I FIND A TACKER? file are not indexed within the Bittorrent network (instead they are indexed within emule). cannot find the file descriptor by the file index retrieve the file descriptor (.torrent) by searching in the Internet, often through specialized search sites and engines: Pirate Bay ( Mininova ( contains several information, most important are the file s InfoHash: an identifier which is the SHA of some information regarding the file and uniquely identifies the file the IP addresses of one or more trackers other information (to be seen in next lessons...) 4
5 THE BITTORRENT PROTOCOL (2) a tracker: server that manages a file s swarm replies to HTTP GET request any peer that wants to join a swarm must retrieve the address of at least a tracker managing the swarm downloads the file descriptor (.torrent) and opens it through the BitTorrent client opens a connection to the tracker and informs it of its own existence obtain a list of other swarm peers from the tracker and start to download the file from them. peers exchange information about the parts of the file that they own and each peer asks for the parts of the file it is interested to. if a peer remains online when it has finished the file download, it goes on distributing the file 5
6 THE BITTORRENT PROTOCOL (6) Tracker: a centralized service for the registration and coordination of the peers knows the address of each peer of the swarm and enables the mutual discovery of the peers sends to a requesting peer P a random subset of the peers (IP+port) of the swarm. P builds an initial set of known peers then, other peers contact P because they have obtained its address from the tracker and are added to the initial set. the peers periodically contact the tracker to send statistical information: sent and received data if the number of known peers is under of a given threshold, the tracker is contacted again to find out new peers of the swarm 6
7 THE BITTORRENT PROTOCOL file popeye.mp4.torrent hosted at a (well-known) webserver the.torrent has address of tracker for file the tracker, which runs on a webserver as well, keeps track of all peers downloading file 7
8 THE BITTORRENT PROTOCOL file popeye.mp4.torrent hosted at a (well-known) webserver the.torrent has address of tracker for file the tracker, which runs on a webserver as well, keeps track of all peers downloading file 8
9 THE BITTORRENT PROTOCOL file popeye.mp4.torrent hosted at a (well-known) webserver the.torrent has address of tracker for file the tracker, which runs on a webserver as well, keeps track of all peers downloading file 9
10 EXCHANGE PROTOCOL The green blocks represent fully downloaded chunks (or initially shared), available for upload. The red blocks are the blocks currently being downloaded. Each peer can upload only two blocks at a time. 10
11 EXCHANGE PROTOCOL The green blocks represent fully downloaded chunks (or initially shared), available for upload. The red blocks are the blocks currently being downloaded. Each peer can upload only two blocks at a time. 11
12 EXCHANGE PROTOCOL The green blocks represent fully downloaded chunks (or initially shared), available for upload. The red blocks are the blocks currently being downloaded. Each peer can upload only two blocks at a time. 12
13 EXCHANGE PROTOCOL The green blocks represent fully downloaded chunks (or initially shared), available for upload. The red blocks are the blocks currently being downloaded. Each peer can upload only two blocks at a time. 13
14 EXCHANGE PROTOCOL The green blocks represent fully downloaded chunks (or initially shared), available for upload. The red blocks are the blocks currently being downloaded. Each peer can upload only two blocks at a time. 14
15 EXCHANGE PROTOCOL Several interesting characteristics choice of peers choice of pieces detection of free riders Will be shown in one of the next lessons 15
16 THE MAINLINE DHT First application of a DHT in Bittorrent was introduced by Vuze (previously Azureus) After a little, the standard Bittorrent client introduces its own DHT, the Mainline DHT, not compatible with Vuze both DHTs strongly based on Kademlia Many other clients support the Mainline DHT Torrent, BitComet, BitSpirit Mainline DHT is a BEP (BitTorrent Enhancement Proposal) subject to continous revisions Kademlia improvements routing table management look-up 16
17 THE MAINLINE DHT Now each node in the Bittorrent network implements two functionalities A "peer" is a client/server listening on a TCP port that implements the BitTorrent protocol. A "node" is a client/server listening on a UDP port implementing the distributed hash table protocol. The DHT is composed of nodes, and node store the location of peers belonging to a swarm 17
18 THE MAINLINE DHT DHT introduced to offer a trackerless peer discovery mechanism goal: to avoid the bottleneck of a single tracker for trackerless peer discovery, a DHT plays the role of the tracker and stores the file's infohash (key) the list of the peers in the swarm (value) 18
19 MAINLINE DHT: HIGH LEVEL INTERACTION get the peers currently in the swarm GETPEERS(InfoHash) register itself as a new member of the swarm, PUT(InfoHash, <IP address, port>) 19
20 THE MAINLINE DHT Node 8 wants to share a file with infohash=42 And needs to know if a swarm is active for that file 20
21 THE MAINLINE DHT Node 8 owns in its routing table a reference to node 12 and sends it the request getpeer(42), to find out peers of the swarm 21
22 THE MAINLINE DHT Node 12 does not know any peer in the swarm of the torrent with InfoHash 42, but it knows some nodes whose identifier is closer to the 42 22
23 THE MAINLINE DHT Node 8 retransmit the request GET_PEERS to nodes 48 and 40 23
24 THE MAINLINE DHT Nodes 40 e 48 have no peer in the swarm of the torrent 42, 48 resends the identifier 40 to node 8. Node 8 does not receive information on new peers and stops the search of swarm peers 24
25 THE MAINLINE DHT Node 40 stores the correspondence 42, 8, recording that peer 8 belongs to the swarm of the torrent with InfoHash 42 25
26 THE MAINLINE DHT Now peer wants to download the file identified by InfoHash 42 and has, in its routing table, a reference to 48 26
27 THE MAINLINE DHT Node 48 has no information about the swarm of the torrent 42, but it knows node 40, which ha san identifier which is closer to the InfoHash 42 27
28 THE MAINLINE DHT Node 50 propagates the GETPEER request to 40 28
29 THE MAINLINE DHT Node 40 returns peer , i.e. a peer belonging to the swarm di of the torrent 42 29
30 THE MAINLINE DHT 50 announces it partecipates to the swarm of the torrent with InfoHash 42 30
31 ROUTING TABLE MANAGEMENT buckets in rotuing tables are structured differently from those in Kademlia: instead of a list of 160 buckets, BitTorrent starts with only one bucket when a bucket becomes full, one of two things can happen: the bucket is split old nodes are pinged (like in Kademlia) replace the split bucket by two new buckets each with half the range of the old bucket nodes from the old bucket are distributed among the two new ones. Two benefits to this bucket implementation: less memory is used if there are less than 160 buckets when searching buckets, it is not necessary to retrieve additional nodes from adjacent buckets because it is guaranteed that there are enough in the current bucket 31
32 ROUTING TABLE MANAGEMENT (1) buckets are dynamically splitted (8 contacts for each bucket) initially, two buckets , , ID intervals [ ; ) and [ ; ] red dot= identifier corresponding to the owner of the routing table when the bucket B corresponding to the owner is full and another node has to be inserted, B is split 32
33 ROUTING TABLE MANAGEMENT (2) Each node N in the routing tables is characterized by a state, depending on the activity detected by owner O of the routing table in the last interval of times Three states: GOOD, if O has had a contact with N in the last 15 minutes; QUESTIONABLE, if O if no contact has happened in the last 15 minutes BAD, if the node fail to reply Periodic refresh of the state 33
34 ROUTING TABLE MANAGEMENT ALGORITHM addnode(node nnew) def Bucket bold = bucket where the new node nnew falls if ( bold is not full ) then add nnew to bold ; else if (bold contains myid ) then divide bold, creating two new buckets binf and bsup; distribute nodes in bold and the new node nnew to binf e bsup ; else if ( all nodes in bold are GOOD) then discard nnew; if ( bold includes a node n BAD ) then substitute nnew to n If ( bold includes nodes QUESTIONABLE) then managequestionablenodes(nnew,bold); 34
35 ROUTING TABLE MANAGEMENT ALGORITHM ManageQuestionableNodes (Node ngood, Bucket b) def qlist = node marked QUESTIONABLE in b. for ( Node nquestionable in qlist ) PING(nquestionable ); if (nquestionable reply) then change state of nquestionable to GOOD; remove nquestionable from qlist and examine next node; else PING(nquestionable ); if (nquestionable replies) then set the state of nquestionable to GOOD; remove nquestionable from qlist and examine next node; else remove nquestionable from b and add to ngood; 35
36 EMULE KAD KAD: a DHT based on Kademlia a real production DHT very popular, since part of emule network supported by the emule client (starting from the version 0.40) more than 1.5 millions peers connected introduced to limit the disadvantages of the emule server-based network avoid bottlenecks (30 servers manage the 90% of the network) increase the anonymity of the publishers general characteristics of the KAD protocol a Kademlia-based implementation with several updates with respect to the original proposal to deploy it on a real network 36
37 KAD PUBBLISHING MECHANISM the publication of an entire file or of some parts of a file on the DHT implies a large traffic overhead on the network. for this reason, when a peer shares some content C stores C on the local storage support does not exploit the DHT to publish C or parts of C exploits the DHT for indexing keywords- source files source files- responsible peers this mechanism is called 2-level publishing model in this way, each peer stores a part of the index and this part includes references to some files shared by other users 37
38 2-LEVEL PUBLISHING MODEL an identifier, the KadID is assigned to each peer file keyword for each content (file): First Level Information: FileID: hash of the file Source: logical identifier of the peers (in the identifier space of the DHT) which has published the file FileID and stores it Second Level Information includes meta data Keyword: hash of a keyword identifying the content FileID: content hash of files identified by that keyword 38
39 KAD KEYWORD REQUEST search a file by some keywords look-up only with first keyword in list key is hash function on this keyword query is routed to peer with Kad ID closest to this hash value. 39
40 KAD KEYWORD REQUEST peer responsible for this keyword returns different sources (files identified by that keywords), together with keywords only those files with entries that include remaining keywords of request are returned 40
41 KAD SOURCE REQUEST Peer can use this hash to find peer responsible for the file possibly many peers share the same content (same hahs) 41
42 KAD SOURCE REQUEST Peer provides requester with a list of peers storing a copy of the file 42
43 KAD DOWNLOAD Eventually, the requester can download the data from these peers. 43
44 DIFFERENCES/ADDS ON TO KADEMLIA 2-level publishing method Kademlia k-buckets are modified the binary-tree structure defining the routing table is modified to allow different buckets to have different maximum limits introduces mechanisms to avoid peer overloading management of peers behind a firewall or a NAT firewall check buddy peers high replication of references: each reference R to F is stored on a set of peers of the DHT. This set of nodes defines the tolerance zone of R. 44
45 KAD: THE EMULE INTERFACE 45
46 KAD: THE EMULE INTERFACE On the left: list of contacts contained in the routing table. For each contact: an icon (different colors identify younger/older contacts) contact identifier contact up time (a numerical code corresponds to different up-times) client type (Emule version) distance 46
47 KAD: THE EMULE INTERFACE On the right bootstrap information a chart showing the distribution of the contacts in the routing table x-axis: identifier space y-axis: number of contacts in a specific range of identifiers grey bar: area including the maximum number of contacts the identifier of the node is close to the grey bar 47
48 KAD: THE EMULE INTERFACE For each active look-up, from the first column: search type (the icons have been shown in the preceding slides) target ID file/keyword name which are looked-up search state (active/stopped) stopped: a sufficient number of replies have been received so that the search can be stopped for the moment being 48
49 KAD: THE ACTIVE LOOKS -UP Load: popularity of a published keyword: Look at the sixth column: (only for keywords): in the first field average popularity returned by the searches, if larger than 20, the keyword is popular and is no more published. in the second field (two numbers in parenthesis) number of nodes which have sent a reply sum of the loads of these nodes sent/received packets: useful as statistical values 49
50 KAD: THE INTERFACE Another interface allows to visualize in real-time the active look-ups each circle is a node the downword nodes are close to the target ID an arrow from node A to node B means that A has given information to B the colours of the nodes correspond to the type of reply 50
51 KAD: THE ACTIVE LOOKS -UP 51
52 DHT: OTHER APPLICATIONS File sharing Torrent Mainline DHT KAD network NoSQL databases Amazon Dynamo Cassandra Distributed file systems GlusterFS Content Distribution Coral CDN 52
BitTorrent. Masood Khosroshahy. July Tech. Report. Copyright 2009 Masood Khosroshahy, All rights reserved.
BitTorrent Masood Khosroshahy July 2009 Tech. Report Copyright 2009 Masood Khosroshahy, All rights reserved. www.masoodkh.com Contents Contents 1 Basic Concepts 1 2 Mechanics 3 2.1 Protocols: Tracker and
More informationDepartment of Computer Science Institute for System Architecture, Chair for Computer Networks. File Sharing
Department of Computer Science Institute for System Architecture, Chair for Computer Networks File Sharing What is file sharing? File sharing is the practice of making files available for other users to
More informationExtreme Computing. BitTorrent and incentive-based overlay networks.
Extreme Computing BitTorrent and incentive-based overlay networks BitTorrent Today we will focus on BitTorrent The technology really has three aspects A standard that BitTorrent client systems follow Some
More informationDISTRIBUTED SYSTEMS CSCI 4963/ /4/2015
1 DISTRIBUTED SYSTEMS CSCI 4963/6963 12/4/2015 2 Info Quiz 7 on Tuesday. Project 2 submission URL is posted on the web site Submit your source code and project report (PDF!!!) in a single zip file. If
More informationP2P content distribution
P2P content distribution T-110.7100 Applications and Services in Internet, Fall 2010 Jukka K. Nurminen 1 V1-Filename.ppt / yyyy-mm-dd / Initials Steps of content sharing Share content Find content Transfer
More informationinternet technologies and standards
Institute of Telecommunications Warsaw University of Technology 25 internet technologies and standards Piotr Gajowniczek Andrzej Bąk Michał Jarociński Internet application layer peer-to-peer systems overview
More informationLecture 8: Application Layer P2P Applications and DHTs
Lecture 8: Application Layer P2P Applications and DHTs COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016,
More informationBitTorrent and CoolStreaming
BitTorrent and CoolStreaming Jukka K. Nurminen Data Communications Software (DCS) Lab, Department of Computer Science and Engineering, Aalto University Jukka K. Nurminen Aalto University P2P Networks BitTorrent
More informationContent Distribution and BitTorrent [Based on slides by Cosmin Arad]
ID2210 - Distributed Computing, Peer-to-Peer and GRIDS Content Distribution and BitTorrent [Based on slides by Cosmin Arad] Today The problem of content distribution A popular solution: BitTorrent Underlying
More informationGNUnet Distributed Data Storage
GNUnet Distributed Data Storage DHT and Distance Vector Transport Nathan S. Evans 1 1 Technische Universität München Department of Computer Science Network Architectures and Services July, 24 2010 Overview
More informationLast Lecture SMTP. SUNY at Buffalo; CSE 489/589 Modern Networking Concepts; Fall 2010; Instructor: Hung Q. Ngo 1
Last Lecture SMTP SUNY at Buffalo; CSE 489/589 Modern Networking Concepts; Fall 2010; Instructor: Hung Q. Ngo 1 This Lecture Peer-to-Peer (P2P) Applications SUNY at Buffalo; CSE 489/589 Modern Networking
More informationPeer to Peer Networks
Sungkyunkwan University Peer to Peer Networks Prepared by T. Le-Duc and H. Choo Copyright 2000-2018 Networking Laboratory P2P Applications Traditional P2P applications: for file sharing BitTorrent, Emule
More informationP2P Applications. Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza
P2P Applications Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza Versione originale delle slides fornita da Dora Spenza e Marco Barbera P2P Paradigm Late 80
More informationPeer to Peer Networks
Sungkyunkwan University Peer to Peer Networks Prepared by T. Le-Duc and H. Choo Copyright 2000-2017 Networking Laboratory Presentation Outline 2.1 Introduction 2.2 Client-Server Paradigm 2.3 Peer-To-Peer
More informationTaming the Flood: How I Learned to Stop Worrying and Love the Swarm Yogesh Vedpathak Cleversafe
Taming the Flood: How I Learned to Stop Worrying and Love the Swarm Yogesh Vedpathak Cleversafe Topics Popular data Creating broadcasting storage system Bittorrent protocol Creating swarms and destroying
More informationCooperation in Open Distributed Systems. Stefan Schmid
Cooperation in Open Distributed Systems Stefan Schmid T-Labs, Berlin, July 2, 2009 Distributed Systems 2008/9 Wireless: Many mobile phones today have WLAN (and even Skype) P2P: Olympic games 2008 live-broadcast
More informationP2P content distribution Jukka K. Nurminen
P2P content distribution Jukka K. Nurminen 1 V1-Filename.ppt / yyyy-mm-dd / Initials BitTorrent content downloading Efficient content distribution Bram Cohen, 2001 File divided into pieces Each recipient
More information12/5/16. Peer to Peer Systems. Peer-to-peer - definitions. Client-Server vs. Peer-to-peer. P2P use case file sharing. Topics
// Topics Peer to Peer Systems Introduction Client-server vs peer to peer Peer-to-peer networks Routing Overlays Structured vs unstructured Example PP Systems Skype login server Peer-to-peer - definitions
More informationCS 43: Computer Networks BitTorrent & Content Distribution. Kevin Webb Swarthmore College September 28, 2017
CS 43: Computer Networks BitTorrent & Content Distribution Kevin Webb Swarthmore College September 28, 2017 Agenda BitTorrent Cooperative file transfers Briefly: Distributed Hash Tables Finding things
More informationReti P2P per file distribution: BitTorrent
Reti P2P per file distribution: BitTorrent Corso di Applicazioni Telematiche A.A. 2008-09 Lezione n.22 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria P2p file-sharing
More informationLecture 21 P2P. Napster. Centralized Index. Napster. Gnutella. Peer-to-Peer Model March 16, Overview:
PP Lecture 1 Peer-to-Peer Model March 16, 005 Overview: centralized database: Napster query flooding: Gnutella intelligent query flooding: KaZaA swarming: BitTorrent unstructured overlay routing: Freenet
More informationPeer to Peer Systems and Probabilistic Protocols
Distributed Systems 600.437 Peer to Peer Systems & Probabilistic Protocols Department of Computer Science The Johns Hopkins University 1 Peer to Peer Systems and Probabilistic Protocols Lecture 11 Good
More informationOverview Computer Networking Lecture 16: Delivering Content: Peer to Peer and CDNs Peter Steenkiste
Overview 5-44 5-44 Computer Networking 5-64 Lecture 6: Delivering Content: Peer to Peer and CDNs Peter Steenkiste Web Consistent hashing Peer-to-peer Motivation Architectures Discussion CDN Video Fall
More informationIntroduction to P P Networks
Introduction to P P Networks B Sc Florian Adamsky florianadamsky@iemthmde http://florianadamskyit/ cbd Internet Protocols and Applications SS B Sc Florian Adamsky IPA / Outline Introduction What is P P?
More informationCS5412: TORRENTS AND TIT-FOR-TAT
1 CS5412: TORRENTS AND TIT-FOR-TAT Lecture VII Ken Birman BitTorrent 2 Widely used download technology Implementations specialized for setting Some focus on P2P downloads, e.g. patches Others focus on
More informationPeer-to-Peer Systems and Distributed Hash Tables
Peer-to-Peer Systems and Distributed Hash Tables CS 240: Computing Systems and Concurrency Lecture 8 Marco Canini Credits: Michael Freedman and Kyle Jamieson developed much of the original material. Selected
More informationCS 43: Computer Networks. 14: DHTs and CDNs October 3, 2018
CS 43: Computer Networks 14: DHTs and CDNs October 3, 2018 If Alice wants to stream Mad Men over a highspeed Internet connection her browser may choose a video rate A. in the range of Mbps. B. in the range
More informationPeer-to-Peer Applications Reading: 9.4
Peer-to-Peer Applications Reading: 9.4 Acknowledgments: Lecture slides are from Computer networks course thought by Jennifer Rexford at Princeton University. When slides are obtained from other sources,
More informationCompSci 356: Computer Network Architectures Lecture 21: Overlay Networks Chap 9.4. Xiaowei Yang
CompSci 356: Computer Network Architectures Lecture 21: Overlay Networks Chap 9.4 Xiaowei Yang xwy@cs.duke.edu Overview Problem Evolving solutions IP multicast Proxy caching Content distribution networks
More informationLecture 17: Peer-to-Peer System and BitTorrent
CSCI-351 Data communication and Networks Lecture 17: Peer-to-Peer System and BitTorrent (I swear I only use it for Linux ISOs) The slide is built with the help of Prof. Alan Mislove, Christo Wilson, and
More informationP2P Applications. Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza Canale A-L Prof.ssa Chiara Petrioli
P2P Applications Reti di Elaboratori Corso di Laurea in Informatica Università degli Studi di Roma La Sapienza Canale A-L Prof.ssa Chiara Petrioli Server-based Network Peer-to-peer networks A type of network
More informationKademlia: A P2P Informa2on System Based on the XOR Metric
Kademlia: A P2P Informa2on System Based on the XOR Metric Today! By Petar Mayamounkov and David Mazières, presented at IPTPS 22 Next! Paper presentation and discussion Image from http://www.vs.inf.ethz.ch/about/zeit.jpg
More informationBitTorrent. Internet Technologies and Applications
BitTorrent Internet Technologies and Applications Aims and Contents Aims Show benefits of P2P for file downloads Explain concepts of BitTorrent as a P2P file sharing application Show how BitTorrent protocol
More informationCSE 486/586 Distributed Systems Peer-to-Peer Architectures
CSE 486/586 Distributed Systems eer-to-eer Architectures Steve Ko Computer Sciences and Engineering University at Buffalo CSE 486/586 Last Time Gossiping Multicast Failure detection Today s Question How
More informationPeer-to-peer systems and overlay networks
Complex Adaptive Systems C.d.L. Informatica Università di Bologna Peer-to-peer systems and overlay networks Fabio Picconi Dipartimento di Scienze dell Informazione 1 Outline Introduction to P2P systems
More informationDistributed Systems. 17. Distributed Lookup. Paul Krzyzanowski. Rutgers University. Fall 2016
Distributed Systems 17. Distributed Lookup Paul Krzyzanowski Rutgers University Fall 2016 1 Distributed Lookup Look up (key, value) Cooperating set of nodes Ideally: No central coordinator Some nodes can
More informationLocalhost: A browsable peer-to-peer file sharing system
Localhost: A browsable peer-to-peer file sharing system Aaron Harwood and Thomas Jacobs December 17, 2005 Abstract Peer-to-peer (P2P) file sharing is increasing in use on the Internet. This thesis proposes
More informationSlides for Chapter 10: Peer-to-Peer Systems
Slides for Chapter 10: Peer-to-Peer Systems From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, Addison-Wesley 2012 Overview of Chapter Introduction Napster
More informationAzureus Plugin for Facebook Integration
Azureus Plugin for Facebook Integration Mike House-Vording, 100300955 mhvordin@connect.carleton.ca 1. Introduction This project seeks to integrate two major trends currently taking place on the internet:
More informationOverlay networks. T o do. Overlay networks. P2P evolution DHTs in general, Chord and Kademlia. q q q. Turtles all the way down
Overlay networks T o do q q q Overlay networks P2P evolution DHTs in general, Chord and Kademlia Turtles all the way down Overlay networks virtual networks Different applications with a wide range of needs
More informationPeer-to-Peer (P2P) Systems
Peer-to-Peer (P2P) Systems What Does Peer-to-Peer Mean? A generic name for systems in which peers communicate directly and not through a server Characteristics: decentralized self-organizing distributed
More informationI Know Where You are and What You are Sharing
I Know Where You are and What You are Sharing Exploiting P2P Communications to Invade Users Privacy Stevens Le Blond, Chao Zhang, Arnaud Legout, Keith Ross, Walid Babbous CS558 Presentation Natasa Ntagianta
More informationDistributed Hash Tables
KTH ROYAL INSTITUTE OF TECHNOLOGY Distributed Hash Tables Distributed Hash Tables Vladimir Vlassov Large scale data bases hundreds of servers High churn rate servers will come and go Benefits fault tolerant
More informationCSCI-1680 P2P Rodrigo Fonseca
CSCI-1680 P2P Rodrigo Fonseca Based partly on lecture notes by Ion Stoica, Sco5 Shenker, Joe Hellerstein Today Overlay networks and Peer-to-Peer Motivation Suppose you want to write a routing protocol
More informationOverview Computer Networking Lecture 17: Delivering Content Peer to Peer Examples Peter Steenkiste
Overview 15-441 15-441 Computer Networking 15-641 Lecture 17: Delivering Content Peer to Peer Examples Peter Steenkiste Fall 2014 www.cs.cmu.edu/~prs/15-441-f14 Web Consistent hashing Peer-to-peer Motivation
More informationCS 3516: Advanced Computer Networks
Welcome to CS 3516: Advanced Computer Networks Prof. Yanhua Li Time: 9:00am 9:50am M, T, R, and F Location: Fuller 320 Fall 2017 A-term 1 Some slides are originally from the course materials of the textbook
More informationMiddleware and Distributed Systems. Peer-to-Peer Systems. Peter Tröger
Middleware and Distributed Systems Peer-to-Peer Systems Peter Tröger Peer-to-Peer Systems (P2P) Concept of a decentralized large-scale distributed system Large number of networked computers (peers) Each
More informationToday. Why might P2P be a win? What is a Peer-to-Peer (P2P) system? Peer-to-Peer Systems and Distributed Hash Tables
Peer-to-Peer Systems and Distributed Hash Tables COS 418: Distributed Systems Lecture 7 Today 1. Peer-to-Peer Systems Napster, Gnutella, BitTorrent, challenges 2. Distributed Hash Tables 3. The Chord Lookup
More informationImproving P2P keyword search by combining.torrent metadata and user preference in a semantic overlay. Niels Zeilemaker
Improving P2P keyword search by combining.torrent metadata and user preference in a semantic overlay Niels Zeilemaker Improving P2P keyword search by combining.torrent metadata and user preference in
More informationTampering with Distributed Hash Tables
Distributed Computing Tampering with Distributed Hash Tables Master s Thesis Michael Voser vosermi@student.ethz.ch Distributed Computing Group Computer Engineering and Networks Laboratory ETH Zürich Supervisors:
More informationSecure and Robust Overlay Content Distribution
Secure and Robust Overlay Content Distribution A THESIS SUBMITTED TO THE FACULTY OF THE GRADUATE SCHOOL OF THE UNIVERSITY OF MINNESOTA BY Hun Jeong Kang IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE
More informationOverlay networks. To do. Overlay networks. P2P evolution DHTs in general, Chord and Kademlia. Turtles all the way down. q q q
Overlay networks To do q q q Overlay networks P2P evolution DHTs in general, Chord and Kademlia Turtles all the way down Overlay networks virtual networks Different applications with a wide range of needs
More informationReal-World Sybil Attacks in BitTorrent Mainline DHT
Real-World Attacks in BitTorrent Mainline DHT Liang Wang Dept. of Computer Science University of Helsinki Helsinki, Finland Jussi Kangasharju Helsinki Institute for Information Technology University of
More informationCS 640 Introduction to Computer Networks. Today s lecture. What is P2P? Lecture30. Peer to peer applications
Introduction to Computer Networks Lecture30 Today s lecture Peer to peer applications Napster Gnutella KaZaA Chord What is P2P? Significant autonomy from central servers Exploits resources at the edges
More informationPEER-TO-PEER NETWORKS, DHTS, AND CHORD
PEER-TO-PEER NETWORKS, DHTS, AND CHORD George Porter May 25, 2018 ATTRIBUTION These slides are released under an Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0) Creative Commons license
More informationDISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES
DISTRIBUTED COMPUTER SYSTEMS ARCHITECTURES Dr. Jack Lange Computer Science Department University of Pittsburgh Fall 2015 Outline System Architectural Design Issues Centralized Architectures Application
More information08 Distributed Hash Tables
08 Distributed Hash Tables 2/59 Chord Lookup Algorithm Properties Interface: lookup(key) IP address Efficient: O(log N) messages per lookup N is the total number of servers Scalable: O(log N) state per
More informationR/Kademlia: Recursive and Topology-aware Overlay Routing
R/Kademlia: Recursive and Topology-aware Overlay Routing Bernhard Heep ATNAC 2010, Auckland, New Zealand, 11/02/2010, KIT University of the State of Baden-Wuerttemberg and National Research Center of the
More informationCTracker: a Distributed BitTorrent Tracker Based on Chimera
CTracker: a Distributed BitTorrent Tracker Based on Chimera Raúl JIMÉNEZ, Björn KNUTSSON Kungliga Tekniska högskolan, Isafjordsgatan 39, Stockholm, 164 40, Sweden Tel: +46 8 790 42 85, Fax: +46 8 751 17
More informationIntroduction to P2P Computing
Introduction to P2P Computing Nicola Dragoni Embedded Systems Engineering DTU Compute 1. Introduction A. Peer-to-Peer vs. Client/Server B. Overlay Networks 2. Common Topologies 3. Data Location 4. Gnutella
More informationLECT-01, S-1 IAD99S, Javed I.
A Course on Foundations of Peer-to-Peer Systems & Applications LECT-01, S-1 CS 6/75995 Foundation of Peer-to-Peer Applications & Systems Kent State University Dept. of Computer Science www.cs.kent.edu/~javed/class-p2p08/
More informationOverlay and P2P Networks. Applications. Prof. Sasu Tarkoma and
Overlay and P2P Networks Applications Prof. Sasu Tarkoma 10.2.2015 and 12.2.2015 Contents Monday 9.2. Applications I BitTorrent Mainline DHT Scribe and PAST Thursday 12.2. Applications II P2PSIP Internet
More informationP2P. 1 Introduction. 2 Napster. Alex S. 2.1 Client/Server. 2.2 Problems
P2P Alex S. 1 Introduction The systems we will examine are known as Peer-To-Peer, or P2P systems, meaning that in the network, the primary mode of communication is between equally capable peers. Basically
More informationLatest Peer-to-Peer Technologies II Artjom Lind 1
Latest Peer-to-Peer Technologies II 25.11.2009 Artjom Lind 1 Outline Last presentation Intro Peer-to-Peer SIP TCP Traversal Conclusions 25.11.2009 Artjom Lind 2 Last Presentation P2P Systems Structured
More informationINTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY
INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY A PATH FOR HORIZING YOUR INNOVATIVE WORK PEER-TO-PEER FILE SHARING WITH THE BITTORRENT PROTOCOL APURWA D. PALIWAL 1, PROF.
More information15-744: Computer Networking P2P/DHT
15-744: Computer Networking P2P/DHT Overview P2P Lookup Overview Centralized/Flooded Lookups Routed Lookups Chord Comparison of DHTs 2 Peer-to-Peer Networks Typically each member stores/provides access
More informationIntroduction to Peer-to-Peer Systems
Introduction Introduction to Peer-to-Peer Systems Peer-to-peer (PP) systems have become extremely popular and contribute to vast amounts of Internet traffic PP basic definition: A PP system is a distributed
More informationGame Theory. Presented by Hakim Weatherspoon
Game Theory Presented by Hakim Weatherspoon Game Theory Main Question: Can we cheat (and get away with it)? BitTorrent P2P file distribution tool designed with incentives for contribution Users contribute
More informationPeer-to-Peer Internet Applications: A Review
Peer-to-Peer Internet Applications: A Review Davide Quaglia 01/14/10 Introduction Key points Lookup task Outline Centralized (Napster) Query flooding (Gnutella) Distributed Hash Table (Chord) Simulation
More informationTinyTorrent: Implementing a Kademlia Based DHT for File Sharing
1 TinyTorrent: Implementing a Kademlia Based DHT for File Sharing A CS244B Project Report By Sierra Kaplan-Nelson, Jestin Ma, Jake Rachleff {sierrakn, jestinm, jakerach}@cs.stanford.edu Abstract We implemented
More informationDistributed Systems. peer-to-peer Johan Montelius ID2201. Distributed Systems ID2201
Distributed Systems ID2201 peer-to-peer Johan Montelius 1 Idéa use resources in edge of network computing storage communication 2 Computing 3 seti@home central server millions of clients hundred of thousands
More informationTraffic Localization for DHT-based BitTorrent networks
Traffic Localization for DHT-based BitTorrent networks Matteo Varvello and Moritz Steiner Bell Labs, Alcatel-Lucent, USA {matteo.varvello,moritz.steiner}@alcatel-lucent.com Abstract. BitTorrent is currently
More informationUnit 8 Peer-to-Peer Networking
Unit 8 Peer-to-Peer Networking P2P Systems Use the vast resources of machines at the edge of the Internet to build a network that allows resource sharing without any central authority. Client/Server System
More informationBitTorrent s Mainline DHT Security Assessment
BitTorrent s Mainline DHT Security Assessment Juan Pablo Timpanaro, Thibault Cholez, Isabelle Chrisment, Olivier Festor To cite this version: Juan Pablo Timpanaro, Thibault Cholez, Isabelle Chrisment,
More informationScalable overlay Networks
overlay Networks Dr. Samu Varjonen 1 Contents Course overview Lectures Assignments/Exercises 2 Course Overview Overlay networks and peer-to-peer technologies have become key components for building large
More informationCSCI 466 Midterm Networks Fall 2013
CSCI 466 Midterm Networks Fall 2013 Name: This exam consists of 6 problems on the following 7 pages. You may use your single-sided hand-written 8 ½ x 11 note sheet and a calculator during the exam. No
More informationMotivation for peer-to-peer
Peer-to-peer systems INF 5040 autumn 2015 lecturer: Roman Vitenberg INF5040, Frank Eliassen & Roman Vitenberg 1 Motivation for peer-to-peer Ø Inherent restrictions of the standard client/ server model
More informationCS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University
CS 555: DISTRIBUTED SYSTEMS [P2P SYSTEMS] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey Byzantine failures vs malicious nodes
More informationPeer-to-Peer Architectures and Signaling. Agenda
Peer-to-Peer Architectures and Signaling Juuso Lehtinen Juuso@netlab.hut.fi Slides based on presentation by Marcin Matuszewski in 2005 Introduction P2P architectures Skype Mobile P2P Summary Agenda 1 Introduction
More information3.2 COMMUNICATION AND INTERNET TECHNOLOGIES
3.2 COMMUNICATION AND INTERNET TECHNOLOGIES 3.2.1 PROTOCOLS PROTOCOL Protocol a set of rules governing the way that devices communicate with each other. With networks and the Internet, we need to allow
More informationPeer-to-Peer Systems. Network Science: Introduction. P2P History: P2P History: 1999 today
Network Science: Peer-to-Peer Systems Ozalp Babaoglu Dipartimento di Informatica Scienza e Ingegneria Università di Bologna www.cs.unibo.it/babaoglu/ Introduction Peer-to-peer (PP) systems have become
More informationDistributed Data Management. Christoph Lofi Institut für Informationssysteme Technische Universität Braunschweig
Distributed Data Management Christoph Lofi Institut für Informationssysteme Technische Universität Braunschweig http://www.ifis.cs.tu-bs.de 8.0 Content Provisioning 8.0 Content Distribution 8.1 Swarming
More informationDistributed Systems. 16. Distributed Lookup. Paul Krzyzanowski. Rutgers University. Fall 2017
Distributed Systems 16. Distributed Lookup Paul Krzyzanowski Rutgers University Fall 2017 1 Distributed Lookup Look up (key, value) Cooperating set of nodes Ideally: No central coordinator Some nodes can
More informationPeer-to-Peer and Overlay Networks
The emule 1 ricardo.pereira@inesc-id.pt IST 17-9-2014 1 Images from The emule Specification, Yoram Kulbak and Danny Bickson 1 High level Granularity 2 3 Queue management Part selection emule High level
More informationComputer Networks - Midterm
Computer Networks - Midterm October 30, 2015 Duration: 2h15m This is a closed-book exam Please write your answers on these sheets in a readable way, in English or in French You can use extra sheets if
More informationLecture 6: Overlay Networks. CS 598: Advanced Internetworking Matthew Caesar February 15, 2011
Lecture 6: Overlay Networks CS 598: Advanced Internetworking Matthew Caesar February 15, 2011 1 Overlay networks: Motivations Protocol changes in the network happen very slowly Why? Internet is shared
More informationPeer-to-Peer Networks
Peer-to-Peer Networks 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross Administrivia Quiz #1 is next week
More informationNetwork Coordinates in the Wild
Network Coordinates in the Wild Jonathan Ledlie Margo Seltzer Paul Gardner Harvard University Aelitis / Azureus Hourglass Project http://www.eecs.harvard.edu/~syrah/hourglass Jonathan Ledlie - Harvard
More informationOn Unstructured Distributed Search over BitTorrent
On Unstructured Distributed Search over BitTorrent William Mayor University College London Gower Street, London, UK w.mayor@ucl.ac.uk Ingemar Cox University College London Gower Street, London, UK i.cox@ucl.ac.uk
More informationLIBSWIFT P2P PROTOCOL: AN ANALYSIS AND EXTENSION
Master Thesis - TRITA-ICT-EX-2012-262 LIBSWIFT P2P PROTOCOL: AN ANALYSIS AND EXTENSION Fu Tang Design and Implementation of ICT products and systems Royal Institute of Technology (KTH) fut@kth.se October
More informationEfficient DHT attack mitigation through peers ID distribution
Efficient DHT attack mitigation through peers ID distribution Thibault Cholez, Isabelle Chrisment and Olivier Festor {thibault.cholez, isabelle.chrisment, olivier.festor}@loria.fr LORIA - Campus Scientifique
More informationA Survey of Peer-to-Peer Content Distribution Technologies
A Survey of Peer-to-Peer Content Distribution Technologies Stephanos Androutsellis-Theotokis and Diomidis Spinellis ACM Computing Surveys, December 2004 Presenter: Seung-hwan Baek Ja-eun Choi Outline Overview
More informationCMSC 332 Computer Networks P2P and Sockets
CMSC 332 Computer Networks P2P and Sockets Professor Szajda Announcements Programming Assignment 1 is due Thursday Where are we? What sorts of problems are we having? 2 Recap SMTP is the language that
More informationScalable overlay Networks
overlay Networks Dr. Samu Varjonen 1 Lectures MO 15.01. C122 Introduction. Exercises. Motivation. TH 18.01. DK117 Unstructured networks I MO 22.01. C122 Unstructured networks II TH 25.01. DK117 Bittorrent
More informationWhen KAD meets BitTorrent - Building a Stronger P2P Network
Author manuscript, published in "HotP2P 2011 (2011)" When KAD meets BitTorrent - Building a Stronger P2P Network Juan Pablo Timpanaro, Thibault Cholez, Isabelle Chrisment*, Olivier Festor INRIA Nancy-Grand
More information416 Distributed Systems. Mar 3, Peer-to-Peer Part 2
416 Distributed Systems Mar 3, Peer-to-Peer Part 2 Scaling Problem Millions of clients server and network meltdown 2 P2P System Leverage the resources of client machines (peers) Traditional: Computation,
More informationDistributed System Laboratory. Analysis and Efficient Classification of P2P File Sharing Traffic
Technical Report KN 2010 DiSy 02 Distributed System Laboratory Analysis and Efficient Classification of P2P File Sharing Traffic Thomas Zink Marcel Waldvogel Distributed Systems Laboratory Department of
More informationDistributed Hash Tables
Distributed Hash Tables CS6450: Distributed Systems Lecture 11 Ryan Stutsman Material taken/derived from Princeton COS-418 materials created by Michael Freedman and Kyle Jamieson at Princeton University.
More informationinria , version 1-6 Sep 2006
Rarest First and Choke Algorithms Are Enough Arnaud Legout I.N.R.I.A. Sophia Antipolis France arnaud.legout@sophia.inria.fr G. Urvoy-Keller and P. Michiardi Institut Eurecom Sophia Antipolis France {Guillaume.Urvoy,Pietro.Michiardi}@eurecom.fr
More informationOverlay and P2P Networks. Introduction. Prof. Sasu Tarkoma
Overlay and P2P Networks Introduction Prof. Sasu Tarkoma 13.1.2014 Contents Course Overview Lectures Assignments/Exercises Course Overview Overlay networks and peer-to-peer technologies have become key
More information