End-to-end Publishing Using Bittorrent. Bittorrent Bittorrent is a widely used peer-to- peer network used to distribute files, especially large ones It.

Slides:



Advertisements
Similar presentations
Rarest First and Choke Algorithms are Enough Arnaud LEGOUT INRIA, Sophia Antipolis France G. Urvoy-Keller and P. Michiardi Institut Eurecom France.
Advertisements

The BitTorrent Protocol
The BitTorrent Protocol. What is BitTorrent?  Efficient content distribution system using file swarming. Does not perform all the functions of a typical.
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.
Ln -s /usr/timtimmah /usr/kevinstanonik. TORRENT BASICS  You want to get a file to other people.  BUT you don’t have the bandwidth to have everyone.
Clayton Sullivan PEER-TO-PEER NETWORKS. INTRODUCTION What is a Peer-To-Peer Network A Peer Application Overlay Network Network Architecture and System.
The BitTorrent content distribution system CS217 Advanced Topics in Internet Research Guest Lecture Nikitas Liogkas, 5/11/2006.
BitTorrent Join the swarm! BY: Joe Petruska. What is BitTorrent? a peer-to-peer file sharing protocol used for distributing large amounts of data.
BotTorrent: Misusing BitTorrent to Launch DDoS Attacks Karim El Defrawy, Minas Gjoka, Athina Markopoulou UC Irvine.
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.
Spotlighting Decentralized P2P File Sharing Archie Kuo and Ethan Le Department of Computer Science San Jose State University.
The Internet Useful Definitions and Concepts About the Internet.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
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.
Peer-to-Peer Intro Jani & Sami Peltotalo.
A P2P file distribution system ——BitTorrent Fan Bin Sep,25,2004.
The Bittorrent Protocol
1 Proceeding the Second Exercises on Computer and Systems Engineering Professor OKAMURA Laboratory. Othman Othman M.M.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
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)
University of Bologna, Italy How to cheat BitTorrent and why nobody does Simon Patarin and David Hales University of Bologna ECCS 2006,
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.

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.
Distributed Systems Concepts and Design Chapter 10: Peer-to-Peer Systems Bruce Hammer, Steve Wallis, Raymond Ho.
1 BitTorrent System Efrat Oune Bar-Ilan What is BitTorrent? BitTorrent is a peer-to-peer file distribution system (built for intensive daily use.
ITIS 1210 Introduction to Web-Based Information Systems Chapter 38 How Music Sharing and File Sharing Work.
D iocesan B oys’ S chool L 6 ASL C omputer A pplications R eading S cheme B it T orrent C han C hun H o L 6A (1)
BitTorrent Dr. Yingwu Zhu. Bittorrent A popular P2P application for file exchange!
A P2P file distribution system ——BitTorrent Pegasus Team CMPE 208.
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,
Do incentives build robustness in BitTorrent? Michael Piatek, Tomas Isdal, Thomas Anderson, Arvind Krishnamurthy, Arun Venkataramani.
ITIS 1210 Introduction to Web-Based Information Systems Chapter 23 How Web Host Servers Work.
Bit Torrent A good or a bad?. Common methods of transferring files in the internet: Client-Server Model Peer-to-Peer Network.
David A. Bryan, PPSP Workshop, Beijing, China, June 17th and 18th 2010 PPSP Protocol Considerations.
11/10/20151 A Standalone Content Sharing Application for Spontaneous Communities of Mobile Handhelds Authors: Amir Krifa –
Presentation to France Telecom Ashwin Navin Co-Founder, Chief Operating Officer bittorrent.com.
Bittorrent Protocol Implementation. Bittorrent Bittorrent is a widely used peer-to- peer network used to distribute files, especially large ones It has.
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.
Experience Sharing in Mobile Peer Communities EPI Planete, INRIA International Consortium Meeting (Oulou) 10 June, 2009.
Bit Torrent Nirav A. Vasa. Topics What is BitTorrent? Related Terms How BitTorrent works Steps involved in the working Advantages and Disadvantages.
2-Hop TorrentSmell A distributed tracking algorithm name:Raynor Vliegendhart date:July 10, 2009 event:Tribler Dev Meeting.
T3 data access via BitTorrent Charles G Waldman USATLAS/University of Chicago USATLAS T2/T3 Workshop Aug
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.
Ch 2. Application Layer Myungchul Kim
Chapter 29 Peer-to-Peer Paradigm Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
November 19, 2016 Guide:- Mrs. Kale J. S. Presented By:- Hamand Amol Sambhaji. Hamand Amol Sambhaji. Pardeshi Dhananjay Rajendra. Pardeshi Dhananjay Rajendra.
An example of peer-to-peer application
Introduction to BitTorrent
BitTorrent Vs Gnutella.
Some Common Terms The Internet is a network of computers spanning the globe. It is also called the World Wide Web. World Wide Web It is a collection of.
Economics and Computation Week 7: The economics of P2P file sharing
SCHOOL OF ELECTRICAL ENGINEERING AND TELECOMMUNICATIONS
Angelo Sapello University of Delaware
The BitTorrent Protocol
Content Distribution Networks + P2P File Sharing
Your computer is the client
Chapter 2 Application Layer
Content Distribution Networks + P2P File Sharing
Presentation transcript:

End-to-end Publishing Using Bittorrent

Bittorrent Bittorrent is a widely used peer-to- peer network used to distribute files, especially large ones It has a number of legal uses which separate it from other P2P

Practical Applications Distributing large files Podcasting Vlogging Disk images Legal distribution of movies (see bittorrent.com)‏

Traditional vs. Bittorrent One server provides many clients Many clients provide many clients

Terminology Swarm – clients downloading or uploading a given file through Bittorrent Tracker – centralized server that clients connect to to ask for lists of other clients connected to the swarm Seed – A client that has a complete copy of the file Peer (Leecher) – A client that does not have a complete copy of the file

Problem Torrents that are less popular may eventually “die” when there are no longer any complete copies of the file in the swarm

Everseed Permanent seed running on the same server as the tracker Guarantees that there will always be a complete copy of the file

Related Research The creator of Bittorrent wrote a paper on the process of downloading a file using Bittorrent at Maintainers of various Bittorrent clients wrote which is like the official specification except far more in depth Osprey ( seems to have thought of something similar, but haven't made much progresshttp://osprey.ibiblio.org/

Explanation The.torrent metadata file tells client tracker URL & other data Client connects to tracker Tracker gives client a list of other clients Client downloads file from other clients (not a centralized server)‏ Periodic update with tracker

Goals Complete internet publishing solution using Bittorrent Metadata file generator (.torrent)‏ Tracker “Everseed” Web interface

.torrent File Official docs on bittorrent.org Metadata on the file to be downloaded (tracker URL, filename, size, checksum hashes)‏ Stored as “bencoded” strings, integers, lists, dictionaries

Bencoding Integer: 6 => “i6e” String: “hello” => “5:hello” List: [“hello”,”world”] => “l5:hello5:worlde” Dictionary: {“hello”:”world”} => “d5:hello5:worlde”

Bencoding implementation Python has good string manipulation Structure of a.torrent file is a dictionary containing string keys and integer, string, list, and dictionary values Recursion to encode/decode

Tracker Makes use of the bencoding algorithm Handles two types of requests: “announce” and “scrape” Stores data on peers and torrents in a SQLite database No performance issues

Network performance Peer List Size

Database performance

Announce request “Announces” client's presence to tracker Used to get lists of IP addresses and BT ports of other clients in the swarm

Announce request “Compact” peer list response Recognition of seeding status

Scrape request “Scrapes” data from the tracker Used to get info on the different torrents that the tracker is tracking # peers, # seeds, total downloaded, total uploaded, # completed etc...

Scrape request Client sends an HTTP GET request to tracker's scrape URL Tracker urldecodes request, selects the data the client is interested in Tracker responds with a bencoded text/plain document

Summary Python Benefits of P2P technology “Everseed” concept.torrent files and bencoding Tracker