web-dev-qa-db-ja.com

一時停止フレームはホストに渡されますか?

私は最近、一時停止フレームはMAC層によって破棄されるべきであり、そうでない場合はドライバーがそれらを破棄すべきであると述べたDebianフォーラムを見ました。これは本当ですか?ホストがスイッチから一時停止フレームを受信した場合、ホストは実際にどのようにトラフィックを抑制しますか?

イーサネットフロー制御について理解を深めようとしています。上記のステートメントが当てはまる場合、ホストに渡されるのは実際にはどういう意味ですか?

3
user_ABCD

フロー制御を処理する方法は3つあります。

  1. 過負荷になると、データを床に落とします。
  2. 通常、ローカルキューがいっぱいであるために、上位層からの要求にサービスを提供できない場合は、その上位層にエラーが返されます。
  3. 速度を落とす必要があることを上位層に事前に通知します。

イーサネット層では、方法3は一時停止フレームを通じてサポートされます。多くの場合、上位レイヤーはメソッド3をサポートしませんが、代わりにメソッド2をサポートします。レイヤーの下位にメソッド3をサポートするレイヤーがあり、その上位のレイヤーがメソッド2のみをサポートする場合、下位レイヤーへのデータの受け渡しを一時的に停止して、メソッドを引き起こす可能性があります。 2上位層に適用します。

または、より具体的には、一時停止フレームを受信したら、送信エンジンを停止し、適切な時間に送信エンジンを再起動するようにタイマーを設定します。送信エンジンが停止している間、ローカルキューは上位層からのデータでいっぱいになります。それらがいっぱいになると、上位層に「ビジー」エラーが返され、適切に処理されます。

3
David Schwartz