有人能告诉我一些关于如何实现Bittorrent UDP应用程序的文档吗?
我正在开发一个Bittorrent应用程序,我可以使用TCP成功地下载,但是我想实现UDP,但是我找不到关于它的任何信息。我正在使用UDP跟踪器检索对等程序,但这种方法似乎与下载文件不同。如果我嗅到UDP握手的味道,我会在Wireshark中看到以下内容:
172.16.49.213 5.31.44.30 UDP 62 35507→18318→
5.31.44.30 172.16.49.213 UDP 62 18318→35507 Len=20
这是在握手之前完成的。而且,握手前似乎有20个字节(与上面的20个字节不同)。
所以我需要一些信息来帮助我了解这一切的意义。
发布于 2018-05-09 20:14:31
UDP上的BitTorrent对等线协议(称为uTP )指定如下:
BitTorrentInc还将uTP作为IETF发布,如果他们称之为LEDBAT的话:
但是,我不建议任何人做自己的实现(除了作为一个学习经验),因为它涉及大量的时间关键,低级别的网络IO,是非常棘手的得到正确的。
相反,我建议使用库:https://github.com/bittorrent/libutp
几乎所有实现uTP的客户端都使用这个库。AFAIK,唯一的例外是水流/栅格 (由qBittorrent和洪流使用),它的工作效果不如利博普。
https://stackoverflow.com/questions/50260463
复制相似问题