You are given a 100 questions homework assignment. You don’t know how to do any of the questions. You ask around, and someone gives you the directions (AKA torrent file) to a homework copying table (AKA swarm). You go to that table and find lots of people (AKA peers) with partially done or completely done homework. You sit down and furiously copy other people’s answer and later on, let other people copy yours.
It’s a peer to peer network so all of the members of the network contribute to the network or take from it seeders and leechers, seeders are uploading the data, leachers are downloading it. When you download a file from a website you are downloading information about the torrent, things like the Tracker (announce), information about the files being shared, including things like the size, and the names of the files. This is why you can download a .torrent file or you can use something like a magnet link like the following.
Trackers are servers that host information about the torrent and the peers. The trackers basically just tell your torrent client “hey these peers are interested in sending the file to you and here is how you connect to them” or “hey these peers are interested in downloading the file to you and here is how to connect to them”. They don’t host the file, they only have information about the torrent and the peers.
Your torrent client (I simp for Deluge, Transmission, and qBitTorrent) is the piece of software in that negotiates the connections between peers and your computer, and facilitates the downloading or uploading the file from/to the network along with keeping track of the trackers available to you.
Imagine the file you’re trying to download is a large poster, but for whatever reason you can’t get the entire poster at once. So instead, you get a jigsaw puzzle of the poster, and you get sent one piece of the puzzle at a time from a bunch of different people who want the same poster, and when you get a piece, you start sending copies of it to other people who want the poster as well.
As for why it fell in popularity, Netflix. Torrents were heavily used to pirate movies and TV shows, when Netflix and streaming came along and was easier to use than torrenting, people just streamed instead.
Lets say you want to download a program and its split into 100 chunks.
One person may have chunk 1 and they give it to you (leeching). Someone else may have chunk 2 and they give it to you.
In turn someone else may want chunk 1 from you so you give it to them (seeding). Eventually you get all the chunks and your download is complete.
The main upside/downside is theres no central computer giving out the whole program at once. This means that no one has control to access to the program alone and that they dont need the host to have a lot of internet bandwidth available (ie. Let a lot of people connect to 1 computer and use up all their upload speed)
However if no one or very few people seed the whole file then download speed can be very slow.
Imagine there is a book, it’s 200 pages and others also want to read it. Because you are still reading and don’t want to give away your whole book, you allow 10 pages to be copied at a time.So 1 person starts making a copy of the book, they copied 10 pages and another person goes hey I want that too, so they get 5 from the first person and 5 from the second person. 4th person comes along and gets the other 5 from the first person and 5 from the 2nd and so forth. So now all these people are all sharing parts of the book with everyone who asks for the pages they are missing.
A more simplified way, the 2nd person gets the first 10 pages, then when they’re done, they copy the next 10 and let’s the 3rd person copy the first 10. Then as they get further in the book, they get the next set of 10 pages, then allow the 3rd person to get the 2nd set of 10, and the 3rd person let’s a 4th person copy the 1st 10 pages. It’s almost like it’s cascading down this way until everyone has made copies
Torrents do this. Instead of a single source where everyone downloads from, it will split the file up into hundreds if not thousands of smaller parts and grabs the parts from whomever has it and is free to give it out.
So this allows people who have parts of the file to share what they have instead of waiting until they get it all. This also means that with many people sharing smaller files, downloads are much faster.
10 years ago, typical highest tier internet speeds were like 100Mbps down and 20Mbps up. So, theoretically, one person sharing a file meant it will be downloaded at 20mbps instead of 100. Now, with 5 people sharing it, it can be downloaded at 100mbps. With hundreds of people sharing one file, they can then upload at 1mbps each while you download at 100mbps
Now, what this all means is that there are now multiple sources to download the file without you having to search for them all. It provided a ton of redundancy and reliability to downloading with minimal work. Torrents would keep track of all the people sharing the same file using a tracker, so get the tracker, and you’ll get access to all these sources.
Prior to this, piracy was single peer to peer at best. You would have to find repositories on your own usually via FTP, IRC or other system like DC++ but it’s one person sharing a bunch of files to a bunch of people which made it very very slow. Files, however, were often broken down into rar’d chunks, which made downloading from multiple people possible but was still very manual. There were also newsgroups that you often had to pay for but worked very differently.
Next came stuff like Napster, Kazaa, limewire, etc, that simplified the process by having people choose what they want to share, and the app would index it. So you search what you want, and it will show you all the results without you having to find the people sharing it yourself. But it’s still more or less 1 person your download from at a time. Torrents then allowed centralized places to find the information to download a file, offered more redundancy, and faster speeds.
These apps and torrents are also much easier to install and use, which means more people knew how to protect themselves and went from being neich to being mainstream. And since it’s all peer to peer, your IP is showing and thus made it possible for companies to track you.
Streaming media, like Netflix, disney+, and the dozens of similar services have made it easy to find most things with little effort and cost (which is debatable but more on that later). Steam and other online game marketplaces, along with many free to play games, made it much easier to find, buy, and play games. With software, lots are moving to cloud based or applications as a service, which also makes it hard to pirate. Going back to movies and TV shows, with these streaming services, I can sit back, find something to watch , and watch it, which is very easy vs having to find a source, download it, hope it finishes quickly, then find a way to show it on my TV. So it’s much much easier for the general public, so they stopped relying so much on torrents. That and some high profiles cases of people getting sued and charged for sharing files.
Tldr: sharing files pre torrents, was difficult to find sources, very slow and tedious as you had to manage the sources and multiple files yourself. Torrents automated most of the process by splitting the file manually and allowing people to share and download these parts as they were available. With the ease of use of streaming services for media, online stores for games and applications moving to the cloud has stopped more of the general public from using torrents
It is an extremely fast way to distribute new (often big) data to many people/computers. It is well thought out and implemented and very efficient.
In a classic server, the more people want a file, the slower it become for everyone, because they have to share the servers capacity. It becomes the bottleneck.
In torrent, everybody downloading a file typically also contributes the already downloaded parts by uploading it to other users. This is rewarded by the algorithm, offering the highest download speed to the fastest uploaders.
In ideal scenarios, the origin of the data only has to uploaded the file *once*, often even split in parts to multiple people, and still soon everyone in the network will have the same file, without overwhelming any server.
In torrent, when you start a download, you are typically happy, when you see many people downloading a file, because it typically means the torrent is healthy and will offer high download speeds.
Also before on demand scaling existed in the cloud, it was a great way for people offering downloads to not be overwhelmed by surprising demand, because in torrent more demand also increases the supply.
You want a puzzle set. In your classroom, some of your classmates have the same puzzle and are willing to make copies of their pieces and give them to you so that you can also have your own puzzle.
Some classmates already have the full puzzle, so they can get to work on making all the pieces for you straight away. Some of your classmates have some of the puzzle pieces and are also making them for you but don’t have the full set yet, so they’re making copies of the puzzle pieces they already have. Some of your classmates can make the puzzle pieces really quickly, while some take a little longer.
You also have classmates who also want the puzzle but don’t have it, so they’re asking your classmates who do have the puzzle to make them pieces as well. Because your classmates who do have the puzzles also have to make puzzle pieces for both you and your other classmates, it’s going to take you a little bit longer to get a full set than if it was just you waiting
One of your classmates who previously didn’t have a puzzle set but now received one has now run away and will not help make puzzle pieces for the other kids who are still waiting for a full puzzle set.
In this metaphor, the puzzle set is a file you want to download using torrenting, also known as peer-to-peer (P2P) file sharing. Your classmates are other peers/users on the network sharing the same file. The puzzle pieces being made represent the bits of data that make up the file you’re downloading. How quickly your classmates can make puzzle pieces and how quickly you can receive them refers to download/upload speed.
Peers that have the full file (full puzzle set) are known as seeders who upload the file to other downloaders for their benefit so they can download it. Peers who are downloading the file but don’t have it yet are known as leechers. Even if peers don’t have the full file, they can still seed the parts of the file they do have (the incomplete puzzle set) to others.
When you’re downloading files, you are yourself a leecher until you download the full file and begin to seed to others. You are also competing with other peers/leechers who also want the file and are downloading it. They’re considered competition because you’re sharing the bandwidth of data (how many people are making puzzle pieces x how quickly they make them) being uploaded from seeders.
Peers/leechers who download a file but do not help seed afterwards do something that is called a hit-and-run. They’ve reaped the benefits of torrenting, but have not given back to the community – this is considered bad etiquette.
Torrenting (puzzle making) works better than traditionally downloading a file from a dedicated server (buying a puzzle set from a toy store) because the speed at which files can be distributed increases the more peers have that complete file as they can give the files to each other. However, it relies on people seeding to each other and having at least one person with the complete file. If not enough people seed a file, it will become harder and harder to download that torrent and be able to seed it to others.
There is one thing that is likely to be miss here, and it could be your question.
You still need someone else to introduce you _to the network_, to peoples.
When you download a torrent (metadata) it is likely there is a _tracker_ into it.
Peoples downloading that file all say hello to that guy, and in return it connect you to some peoples.
From then you can exchange more peoples to grow your network and not rely on the tracker anymore.
Back in the day, one could torrent anything. In fact, if one calculated the cost of movie admissions for a family of five, the savings would more than pay for 65″ plasmas, receivers, amps and more, while building a library of hundreds of gigabytes of 1080 films, software and video.
One could.
Theoretically, of course.
Latest Answers