What are torrents? Torrents are simply a way to distribute files. Now to understand WTH is seeders and leechers , first let’s take a look at a simpler way of sharing files?-?Hyper Text Transfer Protocol i.e. HTTP. HTTP can be used when you download files from a website utilizing your web browser, or something like Internet Download Manager. (For instance, when you download some Software, or drivers from manufacturer’s website, it’s usually done via HTTP).
How HTTP works is fairly simple. Let’s say Jetbrains wants to distribute a 30-day latest trial version of WebStorm. They purchase a computer, connect it to the net, place a duplicate in the WebStorm image on its hard drive, and configure some software (like Apache web server) to allow individuals to download the image.
Each time a user desires to download the picture, he sends a request to Jetbrains’ web server. The net server starts replying with the WebStorm’s image data as fast as the Internet link between the two of you permits.
If the image is being transferred between the two (server and user), 2 things are happening simultaneously?-?upload from the image from the server, and download of image for the user’s device. (You can consider upload process as being a person speaking on the phone, and download process being a person on the other end taking notes).
It is a quite simple and convenient method of file sharing. Nevertheless it has some drawbacks as:
Someone must set up a server and buy a really fast Web connection. In the event the server’s Web connection is 500 kb/s?-?either one client can download at 500 kb/s, or if perhaps two clients are downloading, the rate is going to be divided among them?-?and each of them will get 250 kb/s.
If one of the clients features a slow Internet- let’s say capped at 50 kb/s, the other client can download at 450 kb/s.
On the other hand, if 15 clients with fast Online connections are downloading, none will receive a speed in excess of 33 kb/s (500/15). Suffice it to say, Jetbrains’ servers have got a fast Web connection.
It’s vulnerable as well as simple to bar. If you don’t want your users to download Webstorm images, you just need to block Jetbrains’ sites. I can’t think of why non-programmers would like to block Webstorm’s image downloads, but in case of censored content (like Government crimes), or illegal content (like pirated movies), or both (NSA leaks), we can discover why the federal government may wish to block it.
Now let’s see how torrents solve these issues: Let’s say you are a person with accessibility evidence of government crime (1GB of files). You attempted to host it on a website, but the government blocked it. You want to share it with the rest around the globe.
Everything you do is? You create a torrent of the file! A torrent is basically an extremely small file containing details of the files (names, file sizes, MD5 hashes etc.) that are shared using that torrent file. You can create it easily utilizing your torrent client (uTorrent, Azureus, Transmission etc). You also have to incorporate tracker details towards the torrent file. A tracker is really a server whose job is to distribute peer lists to new peers.
You host this tiny torrent file on some torrent sharing website. People who would like to download your government crime proofs can visit the torrent website and download the torrent for this.
They then tell their Mactorrent to download the files described in the torrent. As there is no server (like Jetbrains’ server for Webstorm’s image) to download the torrent, off their torrent, client talks to the tracker explained as:
Your torrent client would go to all the folks this list so obtained, and asks them should they be thinking about sharing the files. Let’s say out from the 48 people in a list, 4 say they may have File 1, 3 say they have File 2, and 6 say they have both files. 9 claim that they don’t have files, but would like to download any files you might have. The rest may or may not respond.
So you start downloading File 1 from all those 4 6 people who have it, and File 2 from those 3 6 those who have it. Since you’re downloading the file, they may be uploading it on the opposite end in the internet access. Now since you downloaded it and used other people’s internet (in addition to your very own), it is actually your moral responsibility to allow other people to download it from you.
Thus a torrent is a small group of (100s or 1000s or maybe more) people collaborating and giving one another items of the file until all of us have a copy in the entire file. It begins with the individual who created the torrent simply uploading it until lots of people download, and then they upload it in turn and also the torrent spreads.
In case the file is 1GB in size, the creator needs to upload at least 1GB for it to spread. Ideally, he’d upload about 3-4GB, which will give him 3-4 more friends, who’ll help spread it further.
This is the reason your torrent client is both downloading and uploading the torrent file. Downloading it?-?so that you can use, and uploading it in order that others can also access the file.
Benefits of torrents: Central servers (i.e. the website that you upload the torrent, as well as the tracker) don’t need to share plenty of data. Both torrent files and peer lists are extremely small in size, hence qoflgk servers don’t cost much to set up and maintain. Challenging to block?-?since no central server is working in the actual distribution and sharing of the files, it is difficult to bar given its distributed nature.
Thus you may realize why uploading (seeding) is really essential to the thought of torrents. It is possible to download only because somebody else was uploading it to suit your needs. A torrent dies quickly if people refuse to upload. It may also happen that nobody wants to download the torrent any more, and those that are able to upload don’t find any takers, and as time passes they provide up and prevent uploading that exact torrent.