- The TCP IP Suite of protocols actually covers a significant number of familiar and unfamilar protocols within it, including:
- TCP
- IP
- UDP
- ARP
- FTP
- POP3
- IMAP
- SMTP
- BitTorrent
- DNS
- HTTP
- ICMP
FTP
- File Transfer Protocol allows files to be uploaded or downloaded from a server. Therefore, it uses client-server principles rather than peer-to-peer
- One end needs an FTP server (where files reside), the other an FTP client
- The FTP connection is established, sometimes with credentials
- Anonymous connections can be established without the user having to identify themselves first
- The FTP server can have commands sent to the server
- e.g. change directory, get file, put file, etc.
- Issues & P2P
- As the files are between only two computers, the server’s connections speed is a limiting factor
- Should the server go down, the file is unreachable
BitTorrent
-
BitTorrent is a peer-to-peer torrent file sharing protocol. There are different protocols (BitTorrent is just one) and many clients written to utilise these protocols
-
The advantages of BitTorrent are:
- Multiple files shared on the network means you can retrieve files even when one of the nodes goes down
- FTP is limited to the one server’s connection, especially if its busy serving many people
- Should a node go offline, others can still provide the file
- Beneficial for large files
- Multiple files shared on the network means you can retrieve files even when one of the nodes goes down
-
The BitTorrent protocol offloads some of the file tracking work to a central server (called a tracker)
- This only saves each peer having to search the file, it doesn’t contain the files themselves
-
With P2P, some people downloading files and immediately disconnect without allowing others to obtain files from their system, which is called leeching
- BitTorrent uses a principle called tit-for-tat
- Meaning that to get files you have to give
- The more you share, the faster the downloads are
- BitTorrent uses a principle called tit-for-tat
-
To make better use of the available Internet bandwidth (data transmission pipeline), BitTorrent downloads different pieces of the file you want to simultaneously from multiple computers
-
Because P2P communicates with regular computer users, their connections commonly upload much slower than download
- Therefore, simultaneous downloading is often much faster
- However, BitTorrent downloads random pieces, which is not suitable for streaming, where the “random access” method does not work
-
You open a web page and click on a link for the file you want
-
BitTorrent client software communicates with a tracker to find other computers running BitTorrent that have the complete file (seed computers) and those with a portion of the file (peers that may be downloading the file)
- The tracker identifies the swarm, which is the connected computers that have all of or a portion of the file
-
The tracker helps the client software trade random pieces of the file you want with other computers in the swarm. Your computers receive multiple pieces of the file simultaneously
-
If you continue to run the BitTorrent client software after your download is complete, others can receive .torrent files from your computer; your future download rates improve because you are ranked higher in the “tit-for-tat” system
-
Key Terms
- Leeches
- People who download files but do not share files on their own computer with others
- Seed or seeder
- A computer with a complete copy of a BitTorrent file (At least one seed computer is necessary for a BitTorrent download to operate)
- Swarm
- A group of computers simultaneously sending (uploading) or receving (downloading) the same file
- .torrent
- A pointer file that directs your computer to the file your want to download
- Tracker
- A server that manages the BitTorrent file-transfer process
- Leeches
How Client-Server Transfers Work
To understand how BitTorrent works and why it is different from other file-server methods
When you download a file from a Website, it works like this:
- You open a Web page and click a link to download a file to your computer
- The Web browser software on your computer (the client) tells the server (a central computer that holds the Web page and the file you want to download) to transfer a copy of the file to your computer
- The transfer is handled by a protocol such as FTP or HTTP (HyperText Transfer Protocol)
- The transfer speed is affected by a number of variables including
- the type of protocol
- amount of traffic on the server
- the number of other computers that are downloading the file
- If the file is both large and popular, the demands on the server are great, and the download will be slow
How P2P Transfer Works
- Peer-to-peer file sharing is different. You use the software program to locate computers that have the file you want
- because these are ordinary computers like yours, as opposed to server, they are called peers
- The process works like this:
- You run peer-to-peer file-sharing software (for example, a Gnutella program) on your computer and send out a request for the file you want to download
- To locate the file, the software queries other computers that are connected to the Internet and running the file-sharing software
- When the software finds a computer that has the file you want on its hard drive, the download begins
- Others using the file-sharing software can obtain files they want from your computers storage
HTTP
-
Hypertext Transfer Protocol is the dominant protocol for file transfer on the World Wide Web
-
Hypertext is the structured text that uses links (hyperlinks) between nodes