文件名称:BitTorrentDHT协议的GO实现DHT.zip
文件大小:5.65MB
文件格式:ZIP
更新时间:2022-08-06 22:24:00
开源项目
DHT 是BitTorrent DHT 协议的实现,采用Go语言。主要包括以下部分:BEP-3 (part)BEP-5BEP-9BEP-10展示截图:安装:go get github.com/shiyanhui/dht使用示例:import ( "fmt" "github.com/shiyanhui/dht" ) func main() { downloader := dht.NewWire() go func() { // once we got the request result for resp := range downloader.Response() { fmt.Println(resp.InfoHash, resp.MetadataInfo) } }() go downloader.Run() config := dht.NewCrawlConfig() config.OnAnnouncePeer = func(infoHash, ip string, port int) { // request to download the metadata info downloader.Request([]byte(infoHash), ip, port) } d := dht.New(config) d.Run() }
【文件预览】:
dht-master
----.gitignore(10B)
----dht.go(7KB)
----sample()
--------getpeers()
--------spider()
----bitmap_xor.go(161B)
----bencode_test.go(3KB)
----util_test.go(2KB)
----peerwire.go(8KB)
----LICENSE(1KB)
----blacklist.go(2KB)
----doc()
--------.DS_Store(6KB)
--------screen-shot.png(695KB)
----blacklist_test.go(853B)
----bitmap_xorfast.go(429B)
----routingtable.go(14KB)
----README.md(2KB)
----util.go(3KB)
----krpc.go(18KB)
----README_CN.md(2KB)
----container.go(6KB)
----container_test.go(2KB)
----bitmap_test.go(932B)
----bencode.go(5KB)
----bitmap.go(3KB)