未知的 Bittorrent 消息
Unknown Bittorrent Message
我在尝试与一些 bittorrent 对等点通信时收到 odd/unknown 消息。在这种特殊情况下,我正在下载片段,突然这条 new/odd 消息弹出在片段前面 response.The 消息很奇怪,因为它似乎没有遵循协议,所有消息都应该看起来像这样
'<length prefix><message ID><payload>
'
长度前缀为 4 个字节,消息 ID 为 1 个字节和有效负载。我包括一个捕获以显示我的意思,在捕获的第 509 行你会
看到对一块的请求,在第 510 行,您将看到响应的开头。
响应的前 4 个字节是 00 00 00 00,即 0 长度的消息(这是我的问题),接下来的 4 个字节是消息的实际长度,即 30。实际响应piece 请求从第 513 行开始,所以我得到了我请求的 piece,但是这个 new/odd 消息让我很困惑。我确定我可以找到解决方法,但我真的很想了解这意味着什么。
此外,我不知道消息的实际含义,也无法在任何地方找到任何相关信息。
这里是 Wireshark 抓包。
来自数据包 510 的数据:
0000 00 00 00 00 00 00 00 1e 14 01 64 35 3a 61 64 64 ..........d5:add
0010 65 64 36 3a 63 f2 7a 48 17 f4 37 3a 64 72 6f 70 ed6:c.zH..7:drop
0020 70 65 64 30 3a 65 ped0:e
00 00 00 00
4 字节 keep-alive 消息
00 00 00 1e
消息长度 30 字节
14
消息类型 扩展 消息 (BEP10)
01
扩展消息 ID = 1 由先前的扩展握手指定:ut_pex
64 35 3a 61 64 64 65 64 36 3a 63 f2 7a 48 17 f4 37 3a 64 72 6f 70 70 65 64 30 3a 65
d5:added6:c.zH..7:dropped0:e
ut_pex 消息数据(编码)
d
5:added
6:c.zH..
7:dropped
0:
e
ut_pex 消息数据(加白 space 编码)
The first 4 bytes of the response are 00 00 00 00, ie 0 length message (Which is causing me issues)
Messages of length zero are keepalives, and ignored.
我在尝试与一些 bittorrent 对等点通信时收到 odd/unknown 消息。在这种特殊情况下,我正在下载片段,突然这条 new/odd 消息弹出在片段前面 response.The 消息很奇怪,因为它似乎没有遵循协议,所有消息都应该看起来像这样
'<length prefix><message ID><payload>
'
长度前缀为 4 个字节,消息 ID 为 1 个字节和有效负载。我包括一个捕获以显示我的意思,在捕获的第 509 行你会 看到对一块的请求,在第 510 行,您将看到响应的开头。
响应的前 4 个字节是 00 00 00 00,即 0 长度的消息(这是我的问题),接下来的 4 个字节是消息的实际长度,即 30。实际响应piece 请求从第 513 行开始,所以我得到了我请求的 piece,但是这个 new/odd 消息让我很困惑。我确定我可以找到解决方法,但我真的很想了解这意味着什么。
此外,我不知道消息的实际含义,也无法在任何地方找到任何相关信息。
这里是 Wireshark 抓包。
来自数据包 510 的数据:
0000 00 00 00 00 00 00 00 1e 14 01 64 35 3a 61 64 64 ..........d5:add
0010 65 64 36 3a 63 f2 7a 48 17 f4 37 3a 64 72 6f 70 ed6:c.zH..7:drop
0020 70 65 64 30 3a 65 ped0:e
00 00 00 00
4 字节 keep-alive 消息
00 00 00 1e
消息长度 30 字节
14
消息类型 扩展 消息 (BEP10)
01
扩展消息 ID = 1 由先前的扩展握手指定:ut_pex
64 35 3a 61 64 64 65 64 36 3a 63 f2 7a 48 17 f4 37 3a 64 72 6f 70 70 65 64 30 3a 65
d5:added6:c.zH..7:dropped0:e
ut_pex 消息数据(编码)
d
5:added
6:c.zH..
7:dropped
0:
e
ut_pex 消息数据(加白 space 编码)
The first 4 bytes of the response are 00 00 00 00, ie 0 length message (Which is causing me issues)
Messages of length zero are keepalives, and ignored.