解析BEP9(ut_metadata)数据消息

时间:2014-11-25 09:36:56

标签: bittorrent

BEP9(ut_metadata)数据讯息有一个total_size字段,我很难看清楚它的含义。

消息采用以下格式:

<4-byte length prefix><20><1-byte extended msg id><bencode part><piece data>

我对两件事情感到困惑:

  1. 长度前缀是否包含<piece data>部分?
  2. total_size中的bencode_part字段指定了哪些内容?
  3. 在我看来,除非我误解了某些内容,否则我们不需要total_size

    目前我正在解析它:

    • 长度前缀包括<piece data>,所以我确切知道此消息的大小。我读了很多字节。
    • 解析<bencode_part>后,我只是消耗其余的字节并将其视为数据。

    任何人都可以帮我理解这种格式吗?

    感谢。

1 个答案:

答案 0 :(得分:1)

  1. .torrent文件的信息部分的总长度。如果元数据对于单个消息而言太大,则可以在多个块中传输元数据。