An example of peer-to-peer application

Slides:



Advertisements
Similar presentations
The BitTorrent Protocol. What is BitTorrent?  Efficient content distribution system using file swarming. Does not perform all the functions of a typical.
Advertisements

Incentives Build Robustness in BitTorrent Author: Bram Cohen Presenter: Brian Liao.
The BitTorrent protocol A peer-to-peer file sharing protocol.
Incentives Build Robustness in BitTorrent Bram Cohen.
Bit Torrent (Nick Feamster) February 25, BitTorrent Steps for publishing – Peer creates.torrent file and uploads to a web server: contains metadata.
End-to-end Publishing Using Bittorrent. Bittorrent Bittorrent is a widely used peer-to- peer network used to distribute files, especially large ones It.
Clayton Sullivan PEER-TO-PEER NETWORKS. INTRODUCTION What is a Peer-To-Peer Network A Peer Application Overlay Network Network Architecture and System.
Chapter 2 Application Layer Computer Networking: A Top Down Approach, 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April A note on the use.
Project in Computer Security Integrating TOR’s attacks into the I2P darknet Chen Avnery Amihay Vinter.
CompSci 356: Computer Network Architectures Lecture 21: Content Distribution Chapter 9.4 Xiaowei Yang
Peer to Peer (P2P) Networks and File sharing. By: Ryan Farrell.
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture XV: Real P2P Systems.
Spotlighting Decentralized P2P File Sharing Archie Kuo and Ethan Le Department of Computer Science San Jose State University.
Presented by Stephen Kozy. Presentation Outline Definition and explanation Comparison and Examples Advantages and Disadvantages Illegal and Legal uses.
Part 1: Overview of Web Systems Part 2: Peer-to-Peer Systems Internet Computing Workshop Tom Chothia.
A P2P file distribution system ——BitTorrent Fan Bin Sep,25,2004.
Middleware for P2P architecture Jikai Yin, Shuai Zhang, Ziwen Zhang.
Client-Server vs P2P or, HTTP vs Bittorrent. Client-Server Architecture SERVER client.
The Bittorrent Protocol
P2P File Sharing Systems
1 Napster & Gnutella An Overview. 2 About Napster Distributed application allowing users to search and exchange MP3 files. Written by Shawn Fanning in.
Bit Torrent (Nick Feamster) February 25, BitTorrent Steps for publishing – Peer creates.torrent file and uploads to a web server: contains metadata.
BitTorrent Presentation by: NANO Surmi Chatterjee Nagakalyani Padakanti Sajitha Iqbal Reetu Sinha Fatemeh Marashi.
By Shobana Padmanabhan Sep 12, 2007 CSE 473 Class #4: P2P Section 2.6 of textbook (some pictures here are from the book)
Peer to Peer Network Anas Hardan. What is a Network? What is a Network? A network is a group of computers and other devices (such as printers) that are.
BitTorrent.
BitTorrent Internet Technologies and Applications.
PPSP Tracker Protocol draft-gu-ppsp-tracker-protocol PPSP WG IETF 82 Taipei Rui Cruz (presenter) Mário Nunes, Yingjie Gu, Jinwei Xia, David Bryan, João.
Application Layer – Peer-to-peer UIUC CS438: Communication Networks Summer 2014 Fred Douglas Slides: Fred, Kurose&Ross (sometimes edited)
BitTorrent How it applies to networking. What is BitTorrent P2P file sharing protocol Allows users to distribute large amounts of data without placing.
Forensics Investigation of Peer-to- Peer File Sharing Networks Authors: Marc Liberatore, Robert Erdely, Thomas Kerle, Brian Neil Levine & Clay Shields.
1 Telematica di Base Applicazioni P2P. 2 The Peer-to-Peer System Architecture  peer-to-peer is a network architecture where computer resources and services.
File Sharing Prepared By: Mahmud Gabareen Eyal Biber Itamar Arie Lecturer Iris Reinhartz-Berger.
1 BitTorrent System Efrat Oune Bar-Ilan What is BitTorrent? BitTorrent is a peer-to-peer file distribution system (built for intensive daily use.
BitTorrent Dr. Yingwu Zhu. Bittorrent A popular P2P application for file exchange!
A P2P file distribution system ——BitTorrent Pegasus Team CMPE 208.
Chapter 2: Application layer
2: Application Layer1 Chapter 2: Application layer r 2.1 Principles of network applications r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail  SMTP,
Bit Torrent A good or a bad?. Common methods of transferring files in the internet: Client-Server Model Peer-to-Peer Network.
2: Application Layer1 Chapter 2 outline r 2.1 Principles of app layer protocols r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail r 2.5 DNS r 2.6 Socket.
HUAWEI TECHNOLOGIES CO., LTD. Page 1 Survey of P2P Streaming HUAWEI TECHNOLOGIES CO., LTD. Ning Zong, Johnson Jiang.
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
1 Peer-to-Peer Systems r Application-layer architectures r Case study: BitTorrent r P2P Search and Distributed Hash Table (DHT)
2: Application Layer1 Chapter 2: Application layer r 2.1 Principles of network applications  app architectures  app requirements r 2.2 Web and HTTP r.
Peer-to-Peer File Sharing Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101
B IT T ORRENT T ECHNOLOGY Anthony Pervetich. H ISTORY Bram Cohen Designed the BitTorrent protocol in April 2001 Released July 2, 2001 Concept Late 90’s.
2: Application Layer 1 Chapter 2 Application Layer Computer Networking: A Top Down Approach, 5 th edition. Jim Kurose, Keith Ross Addison-Wesley, April.
ADVANCED COMPUTER NETWORKS Peer-Peer (P2P) Networks 1.
Bit Torrent Nirav A. Vasa. Topics What is BitTorrent? Related Terms How BitTorrent works Steps involved in the working Advantages and Disadvantages.
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
PEAR TO PEAR PROTOCOL. Pure P2P architecture no always-on server arbitrary end systems directly communicate peers are intermittently connected and change.
End-to-end Publishing Using Bittorrent. Bittorrent Bittorrent is a widely used peer-to- peer network used to distribute files, especially large ones It.
November 19, 2016 Guide:- Mrs. Kale J. S. Presented By:- Hamand Amol Sambhaji. Hamand Amol Sambhaji. Pardeshi Dhananjay Rajendra. Pardeshi Dhananjay Rajendra.
Lecture XV: Real P2P Systems
05 - P2P applications and Sockets
Introduction to BitTorrent
BitTorrent Vs Gnutella.
Distributed Systems CS
PEER TO PEER BitTorrent.
CPE 401/601 Computer Network Systems
Part 4: Peer to Peer - P2P Applications
The BitTorrent Protocol
Content Distribution Networks + P2P File Sharing
Distributed Systems CS
PEER-TO-PEER SYSTEMS.
Pure P2P architecture no always-on server
Chapter 2 Application Layer
#02 Peer to Peer Networking
Content Distribution Networks + P2P File Sharing
Presentation transcript:

An example of peer-to-peer application Jin Sa

Category of P2P ‘Pure' P2P networks: Hybrid P2P systems: Peers act as equals, merging the roles of clients and server There is no central server managing the network Decentralized, nodes have equal role/capability and peer communication is symmetric. truly dynamic and less vulnerable to downtown time since there is no critical component. Hybrid P2P systems: super nodes keep keeps information on peers, index of the resources or allocating tasks in the system. Peers host resources, letting the super nodes know what resources they want to share Hybrid has better performance than pure, but limited by the availability of the indexing servers.

Advantages of P2P networks Easily scale up or down Total capacity of the system increases as the number of participates increases. not true of a client-server architecture with a fixed set of servers, more clients could mean slower data transfer for all users. Better bandwidth utilization since the peers communicate directly with each other

Advantages of P2P networks The distributed nature of P2P networks also increases robustness in case of failures, in pure P2P systems, no single point of failure in the system. Richness and diversity in services/resource available in the network

Areas of application File sharing (e.g. BitTorrent) Telephony (e.g. Skype) Media (audio/video) streaming (e.g. iPlayer Download Manager)

P2P File distribution Distributing a large file from a single server to a large number of hosts (peers) In client-server, the server sends the file to each peer. Hence enormous amount of server’s bandwidth In P2P, each peer can redistribute any portion of the file, assisting in distributing the file. Hence scalable Example: BitTorrent Popular P2P protocol for file distribution http://www.bittorrent.org/introduction.html

BitTorrent application BitTorrent protocol, designed by Bram Cohen http://en.wikipedia.org/wiki/BitTorrent_(protocol) A BitTorrent client is a program that implements the BitTorrent protocol. Each client can prepare, request, and transmit any type of computer file over a network A peer is any computer running an instance of a client.

BitTorrent overview Peers download files by participating in a file swarm which is an ad-hoc network of peers that are temporarily assembled to distribute a particular resource. Peers in a swarm download equal size chunks of the file from one another.

BitTorrent Overview The protocol works when a file provider makes his file the first seed, which allows others peers, to download their data. Each peer who downloads the data also uploads it to other peers Peers are encouraged to continue making data available after the download has completed, and becoming additional seeds. Peers that provide a complete file are called seeders, and the peer providing the initial copy is called the initial seeder.

BitTorrent Model Referenece: http://www.medianet.kent.edu/surveys/IAD06S-P2PArchitectures-chibuike/P2P%20App.%20Survey%20Paper.htm#_2.2_Bittorrent

BitTorrent Index A BitTorrent index is a list of .torrent files (usually including descriptions of the file and other information) Managed by a website, that is available for searching files to download

Torrent (.torrent) files This refers to the small metadata file that contains information about the data you want to download, not the data itself. Typically, a torrent file specifies the URL of the tracker, and contains names for the files, their lengths, etc. Torrent files are typically published on websites.

BitTorrent Tracker A tracker is a server which assists in the communication between the peers The tracker maintains lists of clients currently participating in the collection of clients uploading and downloading. When you open a torrent file, your machine contacts the tracker and asks for a list of peers to contact. Periodically, throughout the transfer, your machine will inform the tracker about your status: e.g. how much downloaded and uploaded.

Tracker and indexing website Many BitTorrent websites act as both tracker and index. They publish the tracker's URL so that users can embed the tracker's URL in the torrent file. Provide all the features necessary to initiate a download.

BitTorrent Operation To share a file, a peer first creates a small file called a "torrent" (e.g. MyFile.torrent). This file contains metadata about the files to be shared and about the tracker. Peers that want to download the file must first obtain a torrent file for it, and connect to the specified tracker, which tells them from which other peers to download the pieces of the file from.

BitTorrent Operation Trackers is responsible to help downloader locate one another in the system by keeping track of the seeders and downloaders. Each peer polls the tracker for information about other peers to find suitable peers to trade pieces. Tracker responds with a random list of peers that are participating in the transfer.

BitTorrent Operation Peers report to the tracker information about what pieces it has, its download and upload rate, its IP address and port the Bittorrent client application is running on.

BitTorrent Operation Peers continuously trade piece with other peers until they have obtained the complete set of file pieces. The order in which pieces are request from other peers is optimized to improve their download rates. Once a peer has at least one complete piece to trade, it uses a strategy of piece selection by choosing to download rare pieces in the network

BitTorrent Operation For file downloads to be successful, at least one peer (seeder) with the complete file must participate in the transfer As more peers in the system complete their download and remain as seeders in the network, request for file start to complete quickly since each new peer participating in a file swarm adds additional upload bandwidth.

A Scenario of File Distribution Tracker peer Alice Obtain list of peers peer

Alice gets connected Alice joins the swarm Tracker randomly selects a list of peers, sends the IP addresses to Alice Alice attempts to establish TCP connections with the peers Alice successfully connects to some peers (“neighbouring peers”) Neighbouring peers fluctuate over time as some leave and other peers attempt to connect to Alice. Periodically, Alice asks each of her neighbouring peers for the list of chunks they have

Alice’s decisions Which chunk to request first from her neighbours? Rarest first, i.e. the chunk with fewest copies among the neighbours Increase copies of the rarest chunks To which of her neighbours to send requested chunks? Give priority to neighbours supplying her at the highest rate. Every 30 seconds Alice randomly choose a new trading partner Peers uploading at compatible rates tend to find each other. Reduce free-riding.

BitTorrent download vs client server download BitTorrent makes many small data requests over different TCP sockets, while web browsers typically make a single HTTP GET request over a single TCP socket. BitTorrent downloads in a random or in a "rarest-first" approach that ensures high availability, while HTTP downloads in a sequential manner.

Refereneces http://en.wikipedia.org/wiki/BitTorrent_(protocol) A clip by on BitTorrent http://www.youtube.com/watch?v=fWBXhiGGEPk