Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What extensions are important/mandatory for a modern bittorrent client? #22

Closed
feross opened this issue Feb 2, 2014 · 6 comments
Closed
Labels

Comments

@feross
Copy link
Member

@feross feross commented Feb 2, 2014

The bittorrent extension protocol (BEP10) allows clients to innovate and come up with their own extensions to the protocol. A few extensions, like torrent metadata (BEP9), DHT (BEP5), and the PORT message are widely supported. WebTorrent already has basic support for these.

However, there are probably other extensions that are de facto mandatory in modern clients. Once nearly all clients support a feature, I'd guess that clients without the feature are at risk of being ignored, or at a speed disadvantage. Which extensions fit this description?

If you're familiar with bittorrent, please feel free to chime in. I'd love more help from people who know about bittorrent!

@feross

This comment has been minimized.

Copy link
Member Author

@feross feross commented Feb 6, 2014

Looking at what other clients support, I think we should support:

  • encryption
  • peer exchange protocol (PEX)
  • µTP
  • UPnP and NAT-PMP port forwarding
  • webseed support
@gauravsaini

This comment has been minimized.

Copy link

@gauravsaini gauravsaini commented Feb 7, 2014

By encryption you mean the data encryption , if yes then it will be great.

I think anonymising the user is heavily required looking at how the snooping is being done everywhere.
I'm really looking forward to an elegant way of hiding the user identity , which I think nobody has provided in the torrent client till now .

@feross

This comment has been minimized.

Copy link
Member Author

@feross feross commented Feb 8, 2014

Yes, I'm referring to BitTorrent protocol encryption. Anonymizing the user is another issue completely, and much harder.

@gauravsaini

This comment has been minimized.

Copy link

@gauravsaini gauravsaini commented Feb 11, 2014

And then I thought people at Stanford can do anything..Must be harder..;)

@cagedwisdom

This comment has been minimized.

Copy link

@cagedwisdom cagedwisdom commented Mar 5, 2014

Mutable torrent support would be really good. Here's a BEP39, although I'd prefer an implementation that let torrent clients push a new torrent file iff it's an updated version.

@transitive-bullshit

This comment has been minimized.

Copy link
Member

@transitive-bullshit transitive-bullshit commented May 29, 2014

I added individual issues tracking each of these extensions.

  • PEX #65
  • Web (HTTP) seeding #67
  • µTP #68
  • Encryption (PE/MSE) #69

Note that I couldn't find any substantive background info on bittorrent UPnP, so I left that one off for now. @feross I think this issue should be closed as answered and further progress should be tracked in these sub issues.

@feross feross closed this Jun 2, 2014
@lock lock bot locked as resolved and limited conversation to collaborators May 7, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
4 participants
You can’t perform that action at this time.