3

この質問に対する答えはインターネットのどこにも見つかりません。bittorrentプロトコルでキープアライブメッセージを受信するとどうなるのでしょうか。キープアライブメッセージを送り返すことになっていますか?

4

2 に答える 2

3

非公式のBitTorrent仕様から:

生き続ける:<len=0000>

キープアライブメッセージは、長さプレフィックスをゼロに設定して指定されたゼロバイトのメッセージです。メッセージIDとペイロードはありません。ピアは、一定期間メッセージ(キープアライブまたはその他のメッセージ)を受信しない場合に接続を閉じる可能性があるため、一定の量のコマンドが送信されなかった場合に接続を維持するには、キープアライブメッセージを送信する必要があります。時間の。この時間は通常2分です。

私はBitTorrentの専門家ではありませんが、これと私持っているネットワークプロトコルの知識に基づいて、あなたの質問に対する答えのように聞こえます

キープアライブメッセージを送り返すことになっていますか?

いいえです。はどうかと言うと

キープアライブメッセージを受信するとどうなりますか?

ええと、何もありません—重要なのは、言及された「与えられた時間」の後にキープアライブ(または他の)メッセージを受け取らなかったときに何が起こるかです。BitTorrentの実装では、キープアライブメッセージを受信すると、タイマーがリセットされるか、「最後に受信したメッセージ」のタイムスタンプが更新される可能性があります。

于 2012-05-01T02:52:52.870 に答える
0

Bittorrent仕様から:

長さがゼロのメッセージはキープアライブであり、無視されます。キープアライブは通常2分に1回送信されますが、データが予想される場合はタイムアウトをはるかに迅速に実行できることに注意してください。

言い換えれば、キープアライブは事実上ノーオペレーションです。他のすべてのメッセージと同様に、タイムアウトがリセットされるため、さらに2分間「接続を維持する」という正味の効果があります。

于 2012-05-01T02:55:22.837 に答える