SlideShare a Scribd company logo
P2P Networks Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
P2P networks A set of technologies that enable the direct exchange of services of data or services between computers S C C C C C C C C Client Server P P P P P P P2P Network  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Network Effects: Promises & Challenges  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Can Have the following advantage…  … however Scalability as there is no central resource to exhaust Has to overcome to challenge of self organization from a collection of unreliable peers with unreliable connections  Aggregating resources can lead to excellent performance  Has to overcome the choking of the network of overhead or organizing messages  Fault resilience as there is no single point of failure  Has to overcome reliability challenges on account of network congestion, isolated networks, unreachable nodes
Types of P2P Networks P2P Systems File Sharing Collaboration Distributed  Computing Napster  Limewire ( www.limewire.com ) Aimster/Madster  Gnutella ( gnutella.com ) Morpheus  ( morpheus.com ) Chord Instant Messaging Groove   Multiplayer Games:  Magi SETI@home ( http://setiathome.berkeley.edu/ ) Grid.org File Sharing is the one we will delve into in this session Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Locating Content in P2P networks Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Centralized Directory Approach  Flooded Request Approach Document routing Approach Peers connect to a central directory where they publish information about the content that they have to share  When the directory receives a request it replies with a peer in the directory that matches the request  Criteria such as proximity, bandwidth, capacity, congestion, health, frequency can guide the decision  Peers broadcast a request to its directly connected peers, each of whom broadcast to their directly connected peers and so on thru the network. This continues  until the request is answered or some broadcast limit is reached.  Each peer has helpful but only partially complete referral information. Each referral moves the requester closer to a peer that can satisfy the query.  The network can scale with a number of central servers  Generates a lot of ineffective network traffic which prevents scaling Can scale effectively as systems can complete a search within a bounded number of steps
Napster – A quick history Jan 1999: Set up in Jan 1999 by Shawn Fanning (then 18) December 1999: sued for copyright infringement  file screening system wpreventing downloads of specified files put in place  July 2001 : shut down file sharing service post court orders May 2002: purchased by German media conglomerate Invested USD 85 million October 2003: Napster 2.0 a client server system goes live Division of Roxio Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Case Studies Napster Gnutella & KaZaA BitTorrent  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Napster Protocol - Introduction Was not documented or published – reverse engineered by OpenNap (opennap.sourceforge.net)  Uses the centralized directory model to locate content Communicates using TCP  Does not use DNS to name peers:  uses nicknames  <nick> (another client) and <mynick> (this client) Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Napster Protocol Session Napster Server Client A Client B Search Request Search Response Download Request Download Ack See next two slides for message structures Establish TCP/IP  connection “ 1” “ GET” Peer response Song data Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Napster message structures: server - client Client announcing to server the files it is willing to share Code 100 – for this type of message  <filename>  <md5> <size> <bitrate> <frequency> <time> The MD 5 algorithm identifies the song and ensures that two files have identical content  Client search request Code 200 – for this type of message  <filename> <artist name> <song>  <max results> <line speed> <bitrate> <frequency> Server  Search Response Code 201 – for this message <filename> <md5> <size> <length> <nick>  <ip> <link type> Download request Code 203 <nick>  <file name> Download ack Code 204 <nick>  <ip> <port> <filename> <md5> <linespeed> Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Napster message structures: peer-peer “ 1” Single ASCII characters  “ GET” Not HTTP GET – this is the Napster application protocol Peer response <mynick>  <file name> <offset> - allows transfer to be resumed at any place in file  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Gnutella  Jan 1998: Justin Frankel developed Winamp, an audio player Then he founded Nullsoft  May 1999: Winamp brand & services acquired by AOL Early 2000: Gnutella was developed in 14 days  March 2000: a protoype was published under a GNU General Public License In  hours  (before AOL could react) the software had been downloaded several times  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Gnutella Protocol - Introduction  Unlike Napster has no centralized service Uses the flooded request approach  Software running in each Gnutella peer is called a  servant   Peers use TCP/IP to communicate with each other  Servant software was developed by several companies: BearShare, LimeWire, ToadNode  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Gnutella Protocol – Finding a Servant  Specialized hosts that cache IP addresses of  servants are run by companies who develop Gnutella software Servant wishing to join the network contacts host cache servers and receive a list of prospective addresses Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Gnutella message structures: descriptors The MD 5 algorithm identifies the song and ensures that two files have identical content  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Descriptor ID Payload Descriptor TTL – Time to Live Hops Payload Length Uniquely identifies this descriptor message in the network Code identifying the type of message Limits the maximum number of hops for this message 0xOO = Connection accept request  0x01 = pong Connect accept OK 0x01 = push  Push file thru firewall 0x80=query  File search request  0x81=queryhit  Search response OK Each servant receiving a message decrements TTL count and increments the Hop count before the message is forwarded.  The maximum number of hops is 7.
Gnutella Protocol Session  Servant 1 - Joining Servant 2 – On Network Gnutella Connect  Gnutella OK Ping Pong <Ip address>,<port>,<shared data>  Query <filename> Host Cache Server Queryhit <filename> File Download HTTP GET Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Gnutella Network Traffic A B D E C Each peer broadcasts requests to its connected peers and so on. The Pong descriptors may only be sent along the same path that carried the incoming Ping descriptor  .mp3 .mp3 Get .mp3 Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
KazaA Kazaa and FastTrack were created by Niklas Zennström, Janus Friis, and Priit Kasesalu (all of whom were to later invent Skype and later on still Joost). KazaA is owned by Sharman Networks, headquartered in Australia Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
KaZaA Based on Guntella  Uses  SuperNodes  powerful processors with high bandwidth connections  Peers connect to their local SuperNodes to upload information about files that they are sharing and to search  Hybrid system between Napster and Gnutella with similarities to the DNS system Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
BitTorrent April 2001: Developed by  Bram Cohen Become very popular  CBC is first public broadcaster in North America to make a full show available for download by BitTorrent  However, not free from controversy Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
BitTorrent - introduction Peers run the BitTorrent client which implements the BitTorrent protocol  To share, the peer creates a metadata file called the torrent  The torrent file is shared with the  BitTorrent tracker, a server which assists Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
How BitTorrent works For distributing a data file The peer treats the file as a number of identically-sized pieces.  Creates a checksum for each piece (using the SHA1 hashing algorithm) and records it in the torrent file. Peers that provide a complete file are called seeders For sharing files: Users download and open a torrent of interest with a BitTorrent client.  The client connects to the tracker(s) specified in the torrent file and receives a list of peers currently transferring pieces of the file(s)  The client connects to those peers to obtain the various pieces. Such a group of peers connected to each other to share a torrent is called a  swarm .  For efficiency: Download speed is controlled by Torrent tracking servers, who monitor all swarm users. I Swarm users who share are rewarded by increasing the alotted swarm bandwidth  Those who leech and limit sharing, tracking servers are choked To help newcomers, where the client reserves a portion of its available bandwidth for sending pieces to random peers  Check sums ensure non corruption  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
BitTorrent: How it differs from HTTP Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com BitTorrent HTTP Makes many small data requests over different TCP sockets Typically a single HTTP GET request over a single TCP socket.  Downloads in a random or in a &quot;rarest-first&quot; approach Downloads in a sequential manner. Downloads can take time to rise to full speed because it may take time for enough peer connections to be established, and it takes time for a node to receive sufficient data to become an effective uploader Rises to full speed very quickly and maintains this speed throughout.
Summary Fascinating History  Untapped potential The story’s not over yet.  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com

More Related Content

PPTX
Bit torrent a revolution in p2p
PPTX
BGP FlowSpec experience and future developments
PPTX
Onion protocol
PPTX
skype-peer to peer protocol
PPTX
An introduction to denial of service attack
PDF
Protocole OSPF
PPTX
Network standards & protocols
PPTX
Reverse proxy
Bit torrent a revolution in p2p
BGP FlowSpec experience and future developments
Onion protocol
skype-peer to peer protocol
An introduction to denial of service attack
Protocole OSPF
Network standards & protocols
Reverse proxy

What's hot (20)

PDF
Configuration of mail server on cisco packet trace
PDF
Linux Servers
PPTX
What is Network Address Translation (NAT)
PPTX
Bit torrent ppt
PPTX
SDN Architecture & Ecosystem
PPTX
Présentation NAC-NAP PPT HARIFI Madiha
PPTX
Switching concepts Data communication and networks
PPTX
Tcp IP Model
PPTX
Peer To Peer Networking
PPTX
WUG Days 2022 Brno - Networking in .NET 7.0 and YARP -- Karel Zikmund
PDF
Introduction to AMQP Messaging with RabbitMQ
PPTX
Dynamic routing
PDF
gRPC Design and Implementation
PPTX
Routing and switching
PDF
Introduction to SDN
PDF
PPTX
IP Multicasting
PPT
Snmp
PDF
VietTel AntiDDoS Volume Based
PDF
Formation gns3
Configuration of mail server on cisco packet trace
Linux Servers
What is Network Address Translation (NAT)
Bit torrent ppt
SDN Architecture & Ecosystem
Présentation NAC-NAP PPT HARIFI Madiha
Switching concepts Data communication and networks
Tcp IP Model
Peer To Peer Networking
WUG Days 2022 Brno - Networking in .NET 7.0 and YARP -- Karel Zikmund
Introduction to AMQP Messaging with RabbitMQ
Dynamic routing
gRPC Design and Implementation
Routing and switching
Introduction to SDN
IP Multicasting
Snmp
VietTel AntiDDoS Volume Based
Formation gns3
Ad

Similar to Peerto Peer Networks (20)

PPT
P2P Seminar
PPT
P2P: Grid-oriented Distribution Systems
PPTX
Bittorrent final seminar
PPT
BitTorrent Protocol
PPTX
Evolution and working of Torrents
PPTX
Peer-to-Peer Networking Systems and Streaming
PPT
Bit Torrent Protocol
PPTX
UNRAVEILING BIT-TORRENT
PPT
P2P Forensics
PPTX
Bit Torrent technology
PPT
P2P Lecture for better understanding of processed
PPT
Advance Computer Networking bachelor of science in computer engineering
PPTX
Bit torrent protocol seminar by Sanjay R
PDF
Peer-to-Peer Systems
PPTX
Bit Torrent Technology
PDF
Project_report_BitTorrent
PPT
Lecture - Network Technologies: Peer-to-Peer Networks
PDF
CSTalks - Peer-to-peer - 16 Feb
PPT
P2P Lecture.ppt
P2P Seminar
P2P: Grid-oriented Distribution Systems
Bittorrent final seminar
BitTorrent Protocol
Evolution and working of Torrents
Peer-to-Peer Networking Systems and Streaming
Bit Torrent Protocol
UNRAVEILING BIT-TORRENT
P2P Forensics
Bit Torrent technology
P2P Lecture for better understanding of processed
Advance Computer Networking bachelor of science in computer engineering
Bit torrent protocol seminar by Sanjay R
Peer-to-Peer Systems
Bit Torrent Technology
Project_report_BitTorrent
Lecture - Network Technologies: Peer-to-Peer Networks
CSTalks - Peer-to-peer - 16 Feb
P2P Lecture.ppt
Ad

More from sanjoysanyal (20)

PPTX
business
PPTX
PPT
Windindustryin India
PPT
Solar Industryin India
PPT
Bio Fuel Industryin India
PPT
Introduction to Carbon Markets
PPT
Virtualization VMWare technology
PPT
Microsoft Virtualization View
PPT
Introductionto Solar
PPT
Introductionto Solar
PPT
Topic6 Basic Web Services Technology
PPT
Topic6 Basic Web Services Technology
PPT
Topic5 Web Services
PPT
Topic4 Application Servers
PPT
Topic3 Enterprise Application Integration
PPT
Topic2 Understanding Middleware
PPT
Topic1 Understanding Distributed Information Systems
PPT
Content Navigation
PPT
Instantmessagingprotocols
PPT
Caching Techniquesfor Content Delivery
business
Windindustryin India
Solar Industryin India
Bio Fuel Industryin India
Introduction to Carbon Markets
Virtualization VMWare technology
Microsoft Virtualization View
Introductionto Solar
Introductionto Solar
Topic6 Basic Web Services Technology
Topic6 Basic Web Services Technology
Topic5 Web Services
Topic4 Application Servers
Topic3 Enterprise Application Integration
Topic2 Understanding Middleware
Topic1 Understanding Distributed Information Systems
Content Navigation
Instantmessagingprotocols
Caching Techniquesfor Content Delivery

Recently uploaded (20)

PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Encapsulation theory and applications.pdf
PDF
Approach and Philosophy of On baking technology
PPTX
Big Data Technologies - Introduction.pptx
PPTX
A Presentation on Artificial Intelligence
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Empathic Computing: Creating Shared Understanding
PDF
cuic standard and advanced reporting.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
NewMind AI Weekly Chronicles - August'25 Week I
The Rise and Fall of 3GPP – Time for a Sabbatical?
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
MYSQL Presentation for SQL database connectivity
Encapsulation theory and applications.pdf
Approach and Philosophy of On baking technology
Big Data Technologies - Introduction.pptx
A Presentation on Artificial Intelligence
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
20250228 LYD VKU AI Blended-Learning.pptx
Building Integrated photovoltaic BIPV_UPV.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
Understanding_Digital_Forensics_Presentation.pptx
NewMind AI Monthly Chronicles - July 2025
Chapter 3 Spatial Domain Image Processing.pdf
Empathic Computing: Creating Shared Understanding
cuic standard and advanced reporting.pdf

Peerto Peer Networks

  • 1. P2P Networks Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 2. P2P networks A set of technologies that enable the direct exchange of services of data or services between computers S C C C C C C C C Client Server P P P P P P P2P Network Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 3. Network Effects: Promises & Challenges Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Can Have the following advantage… … however Scalability as there is no central resource to exhaust Has to overcome to challenge of self organization from a collection of unreliable peers with unreliable connections Aggregating resources can lead to excellent performance Has to overcome the choking of the network of overhead or organizing messages Fault resilience as there is no single point of failure Has to overcome reliability challenges on account of network congestion, isolated networks, unreachable nodes
  • 4. Types of P2P Networks P2P Systems File Sharing Collaboration Distributed Computing Napster Limewire ( www.limewire.com ) Aimster/Madster Gnutella ( gnutella.com ) Morpheus ( morpheus.com ) Chord Instant Messaging Groove Multiplayer Games: Magi SETI@home ( http://setiathome.berkeley.edu/ ) Grid.org File Sharing is the one we will delve into in this session Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 5. Locating Content in P2P networks Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Centralized Directory Approach Flooded Request Approach Document routing Approach Peers connect to a central directory where they publish information about the content that they have to share When the directory receives a request it replies with a peer in the directory that matches the request Criteria such as proximity, bandwidth, capacity, congestion, health, frequency can guide the decision Peers broadcast a request to its directly connected peers, each of whom broadcast to their directly connected peers and so on thru the network. This continues until the request is answered or some broadcast limit is reached. Each peer has helpful but only partially complete referral information. Each referral moves the requester closer to a peer that can satisfy the query. The network can scale with a number of central servers Generates a lot of ineffective network traffic which prevents scaling Can scale effectively as systems can complete a search within a bounded number of steps
  • 6. Napster – A quick history Jan 1999: Set up in Jan 1999 by Shawn Fanning (then 18) December 1999: sued for copyright infringement file screening system wpreventing downloads of specified files put in place July 2001 : shut down file sharing service post court orders May 2002: purchased by German media conglomerate Invested USD 85 million October 2003: Napster 2.0 a client server system goes live Division of Roxio Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 7. Case Studies Napster Gnutella & KaZaA BitTorrent Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 8. Napster Protocol - Introduction Was not documented or published – reverse engineered by OpenNap (opennap.sourceforge.net) Uses the centralized directory model to locate content Communicates using TCP Does not use DNS to name peers: uses nicknames <nick> (another client) and <mynick> (this client) Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 9. Napster Protocol Session Napster Server Client A Client B Search Request Search Response Download Request Download Ack See next two slides for message structures Establish TCP/IP connection “ 1” “ GET” Peer response Song data Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 10. Napster message structures: server - client Client announcing to server the files it is willing to share Code 100 – for this type of message <filename> <md5> <size> <bitrate> <frequency> <time> The MD 5 algorithm identifies the song and ensures that two files have identical content Client search request Code 200 – for this type of message <filename> <artist name> <song> <max results> <line speed> <bitrate> <frequency> Server Search Response Code 201 – for this message <filename> <md5> <size> <length> <nick> <ip> <link type> Download request Code 203 <nick> <file name> Download ack Code 204 <nick> <ip> <port> <filename> <md5> <linespeed> Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 11. Napster message structures: peer-peer “ 1” Single ASCII characters “ GET” Not HTTP GET – this is the Napster application protocol Peer response <mynick> <file name> <offset> - allows transfer to be resumed at any place in file Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 12. Gnutella Jan 1998: Justin Frankel developed Winamp, an audio player Then he founded Nullsoft May 1999: Winamp brand & services acquired by AOL Early 2000: Gnutella was developed in 14 days March 2000: a protoype was published under a GNU General Public License In hours (before AOL could react) the software had been downloaded several times Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 13. Gnutella Protocol - Introduction Unlike Napster has no centralized service Uses the flooded request approach Software running in each Gnutella peer is called a servant Peers use TCP/IP to communicate with each other Servant software was developed by several companies: BearShare, LimeWire, ToadNode Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 14. Gnutella Protocol – Finding a Servant Specialized hosts that cache IP addresses of servants are run by companies who develop Gnutella software Servant wishing to join the network contacts host cache servers and receive a list of prospective addresses Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 15. Gnutella message structures: descriptors The MD 5 algorithm identifies the song and ensures that two files have identical content Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Descriptor ID Payload Descriptor TTL – Time to Live Hops Payload Length Uniquely identifies this descriptor message in the network Code identifying the type of message Limits the maximum number of hops for this message 0xOO = Connection accept request 0x01 = pong Connect accept OK 0x01 = push Push file thru firewall 0x80=query File search request 0x81=queryhit Search response OK Each servant receiving a message decrements TTL count and increments the Hop count before the message is forwarded. The maximum number of hops is 7.
  • 16. Gnutella Protocol Session Servant 1 - Joining Servant 2 – On Network Gnutella Connect Gnutella OK Ping Pong <Ip address>,<port>,<shared data> Query <filename> Host Cache Server Queryhit <filename> File Download HTTP GET Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 17. Gnutella Network Traffic A B D E C Each peer broadcasts requests to its connected peers and so on. The Pong descriptors may only be sent along the same path that carried the incoming Ping descriptor .mp3 .mp3 Get .mp3 Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 18. KazaA Kazaa and FastTrack were created by Niklas Zennström, Janus Friis, and Priit Kasesalu (all of whom were to later invent Skype and later on still Joost). KazaA is owned by Sharman Networks, headquartered in Australia Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 19. KaZaA Based on Guntella Uses SuperNodes powerful processors with high bandwidth connections Peers connect to their local SuperNodes to upload information about files that they are sharing and to search Hybrid system between Napster and Gnutella with similarities to the DNS system Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 20. BitTorrent April 2001: Developed by Bram Cohen Become very popular CBC is first public broadcaster in North America to make a full show available for download by BitTorrent However, not free from controversy Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 21. BitTorrent - introduction Peers run the BitTorrent client which implements the BitTorrent protocol To share, the peer creates a metadata file called the torrent The torrent file is shared with the BitTorrent tracker, a server which assists Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 22. How BitTorrent works For distributing a data file The peer treats the file as a number of identically-sized pieces. Creates a checksum for each piece (using the SHA1 hashing algorithm) and records it in the torrent file. Peers that provide a complete file are called seeders For sharing files: Users download and open a torrent of interest with a BitTorrent client. The client connects to the tracker(s) specified in the torrent file and receives a list of peers currently transferring pieces of the file(s) The client connects to those peers to obtain the various pieces. Such a group of peers connected to each other to share a torrent is called a swarm . For efficiency: Download speed is controlled by Torrent tracking servers, who monitor all swarm users. I Swarm users who share are rewarded by increasing the alotted swarm bandwidth Those who leech and limit sharing, tracking servers are choked To help newcomers, where the client reserves a portion of its available bandwidth for sending pieces to random peers Check sums ensure non corruption Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 23. BitTorrent: How it differs from HTTP Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com BitTorrent HTTP Makes many small data requests over different TCP sockets Typically a single HTTP GET request over a single TCP socket. Downloads in a random or in a &quot;rarest-first&quot; approach Downloads in a sequential manner. Downloads can take time to rise to full speed because it may take time for enough peer connections to be established, and it takes time for a node to receive sufficient data to become an effective uploader Rises to full speed very quickly and maintains this speed throughout.
  • 24. Summary Fascinating History Untapped potential The story’s not over yet. Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com