Suppose I am downloading a file from a server.
Now does downloading the file from the server mean, that the server is also simultaneously uploading the file to my computer. That is, apart from me using my bandwidth to download the file, the server is also using some of its bandwidth to upload the same file to my computer.
If not, then why do in bit torrent protocol we say that the seeders upload the file and leechers download the file.
This suggests me that upload and download for a file happens at the same time. Also, where do seeders upload the full file. Kindly help.


You should not confuse BitTorrent with regular downloads.

Yes, when you download a file from a server, there are two parties involved and they must cooperate. In the "real world" you could come and take something from me without my cooperation, but if you wanted me to give you an object across the room then I must pick it up, throw it to you, and you must reach out and grab it.

I throw, you catch; server uploads, client downloads.

BitTorrent is different because it is all about sharing. There may not be one "server". All the clients are peers, and everybody downloads the file from everybody else. So, once you have downloaded a piece of a file from the torrent, somebody else might download it from you. Hence, your computer does both download and upload simultaneously.

"Seeders" are merely client computers (people) who already have the whole file. They have therefore stopped downloading anything, but they continue to share which is, of course, an upload.

"Leechers" are clients that don't have the whole file yet, and are actively downloading data from the torrent (i.e. from the other clients). A "leecher" that has part of the file already may also be uploading ("seeding") the file at the same time (or the user may have disabled upload, but not usually) but we don't call them a "seeder" until they're only uploading.

So, seeders do not upload the file to anywhere in particular; they share sections of the data when a leecher asks for it, and otherwise merely sit idle.

When a file (or a video stream, or game data, or whatever) is transferred from user A to user B, that data usage will count against both users' data allowances. So, if, for example, you transfer 2MB between two of your own devices (via an external carrier) then you'll end up getting charged for 4MB of data usage (2MB for each device).

  • So while downloading a normal file from a server apart from my download bandwidth the server's upload bandwidth is also being used? That means downloading a file just doesn't mean myself downloading it but also the server uploading it to each and every client. For a file of 2MB a total of 4MB data is involved. Mar 30 '16 at 10:37
  • Yes, both parties will have to pay their local ISP for 2MB of data, so if they have the same ISP then that company gets paid for 4MB of data (assuming some kind of pay-as-you go scheme, for the sake of example).
    – ams
    Mar 30 '16 at 10:40
  • So suppose I download a 100MB file from torrent. Then I will be definitely charged for the 100MB I downloaded. But I might be charged for 200MB if I decide to seed the file(100MB for uploading). Correct? Mar 30 '16 at 11:00
  • It could upload less than 100MB, it could upload a lot more. It depends how many leechers there are, how long you allow BitTorrent to run, and how many other seeders taking the load. If data usage costs you money you can usually set upload limits in your BitTorrent client, or even disable upload completely. If you set it to stop when the "ratio" hits 1.0 and then let it run for a longish while then yes, you would use 100MB download and 100MB upload.
    – ams
    Mar 30 '16 at 11:06
  • Okay. Now whenever I seed a file I see a progress bar that goes until 100% i.e until the file is completely uploaded. But what if there are no leechers for this file? Where will it be uploaded then? Mar 30 '16 at 11:09

For BitTorrent Seeders will Upload the File Either from there System or a Seedbox.

And Yes the uploader and the Seeder are using the same bandwidth.

Now Seeding usually is from multiple People or their computers.

Each Person that downloads a file is Seeding it unless they stop it.

Now Each person that downloads the Torrent will Download Pieces off of each person.

So Yes Downloading From your computer means the Host is Uploading to you Bandwidth is being used both ways.

As For Downloading From a Site.

The site is uploading the file to you and you are downloading the file from them.

Some sites have Multiple sites the upload the downloads to that way you can select the best download for your region.

  • So while downloading a normal file from a server apart from my download bandwidth the server's upload bandwidth is also being used? That means downloading a file just doesn't mean myself downloading it but also the server uploading it to each and every client active. For a file of 2MB a total of 4MB data is involved. Am I correct? Mar 30 '16 at 10:38
  • Yes 4MB of Total data is being used. But you are only using 2MB from your ISP and whoever you are downloading from is using 2MB from their ISP. Mar 30 '16 at 10:39
  • Thankyou soo much for a clear answer :D. So I assume that the server's upload speed must be fairly high to server multiple clients. Can you please give me in numbers the appropriate upload speed of the server. Mar 30 '16 at 10:41
  • I cant give you exactly the Amount coming from a Sever is all Depends on what the ISP allows. A lot of Severs you download from are Throttled per connection to allow Multiple users to download at once. Mar 30 '16 at 10:43
  • So if a server has very slow upload speeds then it should also affect my download speed, no matter how fast my connection is. My maximum download speed will always be the maximum upload speed of the server? Mar 30 '16 at 10:45

What you download from your side (as a client) is automatically viewed as upload from the server side.

To take a very trivial example: Consider it like a two way road between two points (your house and your grandma's house): an observer from your house will see your car roll away to your grandma's, while your grandma's will see your car approaching.

So you are completely right when you are saying that seeders are uploading what leechers are downloading.

  • Does that mean twice of internet traffic is used? Mar 30 '16 at 10:39
  • Not exactly. Each "side" has its own Internet traffic. For residential Internet access, providers often only talk about downloading speed in their commercials, which is often far superior. You should ask them how much do you have in upload speed to know exactly. If you have 100 Mbit/s download / 10 Mbit/s upload on your side, this means that someone downloading a file from you will not be able to retrieve it at above 10 Mbit/s (which means approximately 1 Mbyte/s). Mar 30 '16 at 10:41
  • But in total twice is used, right?. Also if server's upload speed is slow then can it also limit my download speed no matter how fast my connection is? Mar 30 '16 at 10:43
  • You can consider it twice if you say that the bytes exchanged are counted as upload from one side and as download from the other side. To answer your second question above, if the server's upload speed is low, you won't be able to retrieve the file faster, how fast your own connection is. Mar 30 '16 at 10:45
  • Each side is responsible of its Internet access. So if you are charged according to a data plan, for example with roaming mobile access, your provider will only count the data once. Mar 30 '16 at 10:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.