0

多くの送信者が受信者にパケットを送信する状況について話していると仮定します。
多くの場合、送信者は、送信レートを制限するスライディング ウィンドウを使用して輻輳を制御します。

我々は持っています:

 snd_cwnd = min(cwnd,rwnd) 

ネットワーク (ルーター、スイッチ) からの明示的または暗黙的なフィードバック情報を使用して、送信者はcwnd送信レートを制御します。

通常、rwndは常に送信者のみが気にする十分な大きさですcwnd。しかし、rwndを制限するために を使用すると、snd_cwnd輻輳制御がより効率的になります。

rwnd受信者が受信できるパケット (またはバイト) の数です。私が懸念しているのは、送信者の能力です。

質問:
1. 受信側は、パケットを送信しているフローの数をどうやって知るのでしょうか?
2. 受信者が送信者の snd_cwnd を知っているということはありますか?

4

1 に答える 1

1

これはすべて非常に混乱しています。

  1. レシーバーへのフローの数は、特定のフローの rwnd には関係ありません。rwnd は、そのフローの受信バッファーに残っているスペースの量です。

  2. 受信者は、送信者の cwnd を知る必要はありません。それは発信者の問題です。

「通常、rwnd は常に、送信者が cwnd だけを気にするのに十分な大きさである」というあなたの声明は、単に真実ではありません。受信ウィンドウは受信ごとに変化します。すべての ACK で再通知されます。そしてそれは頻繁にゼロに落ちます。

次のステートメント「rwnd を考慮する場合、それを使用して cwnd を制限する...」は、「snd_cwnd = min(cwnd, rwnd)」に従って、既に起こっていることの単なる説明です。

あるいは、TCP のフロー制御を不必要に変更するというまったく説明のつかない提案を構成する可能性があります。TCP のフロー制御は 25 年間機能しており、その前の数年間は機能していませんでした。1980 年代半ばにいくつかの Arpanet がフリーズしたことを覚えています。

于 2014-04-25T01:31:05.277 に答える