我對bittorrent中的位域消息有點混淆。我已經注意到下面問題形式的混亂。Bitfield Torrent周圍的混亂
- 可選VS必需
位字段握手序列 完成
後發送立即我假設這是強制性的,即握手後,必須遵循一個位域消息。正確?
- 何時期望位域?
位域消息可以在 握手序列完成後,僅被立即發送和任何其它消息之前 發送
假設我閱讀此明確雖然是可選的消息。對方仍然可以在任何消息(如請求,扼流器,解焦等)之前廣播位域消息。正確嗎?
- 在第一字節中的高位對應於片索引0
- 備用在端位
- 最重要的是位域的目的是什麼。
如果我正確位字段表示的狀態,即對等體是否具有給定片用它。假設我的位域爲[1,1,1,1,1,1,1,1,1,1 ..]
。我建立了這樣一個事實,即同行有第10件遺失,並且如果該位域看起來像這樣[1,1,0,1,1,1,1,1,1,1 ..]
對方有第三件遺漏。那麼什麼是高位在第一個字節對應的塊索引0的意思。
備用比特被設置爲零
是什麼意思?我的意思是說,如果有一點在最後,因爲0並不意味着同行有這樣的缺失。爲什麼使用備用位。
我對此的預測是,位域可以更容易地找到一個知道可用於同行的片段的正確對等點,但我對此是否正確?
@Encombe
這裏怎麼我的位域有效載荷看起來像
\ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ XFF \ xFE如果
'0xFFFF ... FFFE = 0b1111111111111111 ... 1111111111111110'那個位域有效載荷的意思;有片斷0 - 1126 – Encombe
@Encombe是我現在很清楚,我想我一直在想的是正確的。非常感謝您的幫助。 – Ratatouille