Usually, packets cannot be transferred from a server to client(in a client server architecture) unless the server's router is configured to forward ports or the client and server may be is a same network.

So how does in P2P architecture, each person who is downloading the file is capable of sending the parts of the file to some-one located in somewhere(seeders). There are various problems like Routers are initially not configured to act as a server. So how does a peer sends a part of file to another peer without configuring the router and modifying the firewall permissions?

Sorry for my bad English! I hope you understand my question


How does P2P/Bittorrent do it? The simple answer is that it does not. Clients without open ports can only connect to others who have open ports. This of course creates an imbalance that may make things slow for everyone.

Theoretically, a third party could be used to negotiate a reverse connection, but I’m not sure Bittorrent does that.

Many clients support NAT-PMP (Port Mapping Protocol), PCP (Port Control Protocol) and/or the Internet Gateway Device Protocol (based on UPnP) to automatically forward ports on routers that support it.

They may also support Hole Punching to establish a connection between firewalled peers.

These additional features are not part of the Bittorrent protocol. Even today you’ll probably face a huge speed drop without port forwarding.

  • Why do you answer a question how bittorrent works, if you don't actually know and only speculates?! – Encombe May 7 '17 at 20:22
  • @Encombe If you think something is wrong with my answer, do point it out. I cannot fix it if you don't. – Daniel B May 7 '17 at 21:22
  • if it does not, then most of the downloads will take almost forever, since there will be only less end systems with open ports, so there will be no seeders for many of the file hosted in torrent network? – VISWESWARAN NAGASIVAM May 8 '17 at 18:25

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.