UDP tracker
Jump to navigation
Jump to search
The UDP tracker protocol is a high-performance low-overhead BitTorrent tracker protocol. It uses the stateless User Datagram Protocol (UDP) for data transmission instead of the HTTP protocol (over TCP) regular trackers use. The data is in a custom binary format instead of the standard bencode algorithm BitTorrent uses for most communication.
URLs for this protocol have the following format: udp://example.com:port.
Comparison with the HTTP tracker
[edit | edit source]The UDP tracker is better optimized and puts less strain on the tracking server. Neither tracker has any effect on transfer speeds.
Clients implementing the protocol
[edit | edit source]- BitComet
- BitLord
- BitRocket
- BitSpirit
- Deluge
- FlashGet
- KTorrent
- libbt
- Libtorrent (Rasterbar)
- qBittorrent
- rtorrent (implementing libTorrent (Rakshasa))
- μTorrent[1]
- Turbo Torrent
- Vuze
- XBT Client
- MLDonkey
- Transmission
- Tixati
Criticisms
[edit | edit source]- Limited IPv6 support (the protocol specifies a 32-bit integer for the IP address and supports pseudo-headers for 128-bit IPv6 addresses)
- No mechanism for index sites to scrape an entire tracker
- This can be supported by traditional TCP scrape mechanisms, as it's not a performance issue.
- No mechanism for trackers to enforce client restrictions
- The UDP tracker protocol has no field to represent the user agent, as the HTTP protocol has. However, the convention to encode the user agent and version inside the peer_id field still applies.
- No mechanism for trackers to send warning messages
- No compression, especially problematic for large announce responses.
References
[edit | edit source]- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
External links
[edit | edit source]