go-bt
go-bt copied to clipboard
Another pure golang implementation of BitTorrent library.
BT - Another Implementation For Golang

A pure golang implementation of BitTorrent library, which is inspired by dht and torrent.
Install
$ go get -u github.com/xgfone/go-bt
Features
- Support
Go1.11+. - Support IPv4/IPv6.
- Multi-BEPs implementation.
- Pure Go implementation without
CGO. - Only library without any denpendencies. For the command tools, see bttools.
The Implemented Specifications
- [x] BEP 03: The BitTorrent Protocol Specification
- [x] BEP 05: DHT Protocol
- [x] BEP 06: Fast Extension
- [x] BEP 07: IPv6 Tracker Extension
- [x] BEP 09: Extension for Peers to Send Metadata Files
- [x] BEP 10: Extension Protocol
- [ ] BEP 11: Peer Exchange (PEX)
- [x] BEP 12: Multitracker Metadata Extension
- [x] BEP 15: UDP Tracker Protocol for BitTorrent
- [x] BEP 19: WebSeed - HTTP/FTP Seeding (GetRight style) (Only
url-listin metainfo) - [x] BEP 23: Tracker Returns Compact Peer Lists
- [x] BEP 32: IPv6 extension for DHT
- [ ] BEP 33: DHT scrape
- [x] BEP 41: UDP Tracker Protocol Extensions
- [x] BEP 43: Read-only DHT Nodes
- [ ] BEP 44: Storing arbitrary data in the DHT
- [x] BEP 48: Tracker Protocol Extension: Scrape