メインコンテンツまでスキップ

NetApp_Insight_2020.png 

パケット損失がパフォーマンスに影響を与えるのはなぜですか。

Views:
63
Visibility:
Public
Votes:
0
Category:
ontap-9
Specialty:
network
Last Updated:

すべてのとおり  

に適用されます

  • すべてのネットアップ製品
  • TCP 通信
  • CIFS 、 NFS 、 iSCSI に対応しています

回答

パケット損失がパフォーマンスに影響する理由は多数あります。  この資料の目的は、パケット損失がパフォーマンスの問題を引き起こす一般的な原因であり、損失が発生する理由ではないことを説明することです。 

  • パケット損失が検出されると、輻輳アルゴリズムによってネットワーク上の TCP データの量が制限され、それ以上の損失が防止されます。
  • このアルゴリズムで設定される制限は輻輳ウィンドウであり、非損失ネットワークでは、平均的な輻輳ウィンドウを使用して、パケット損失前に送信されるデータ量を確認します。
  • BDP は、この輻輳ウィンドウをラウンドトリップ時間に関連付けて、予想される平均スループットを提供します。
  • パケットが失われると、受信側は、再送信されるまで新しいパケットへの応答を停止し、その結果、半分の時間が経過するまで遅延が発生します。

 

: Wireshark でパケットトレースを検査する場合、失われたパケットは重複確認応答として認識され、その後に再転送の形式が続きます。

  • Wireshark の「 Information 」列。パケット損失と次のフィルタを含むトレースから取得されます。
  • tcp.analysis.duplicate_ack || tcp.analysis.retransmission || tcp.analysis.fast_retransmission || tcp.analysis.out_of_order

Wireshark1.png

追加情報

  • 用語の意味

    • Bandwidth Delay Product :データリンクの容量(ビット / 秒)とそのラウンドトリップ遅延時間(秒単位)の積。その結果、ビット(またはバイト)単位で測定されるデータ量は、任意の時点でのネットワーク回線上のデータの最大量に相当します。つまり、送信されたがまだ確認されていないデータです。

      • 帯域幅遅延製品は、ポートのリンク速度(ビット / 秒)を 10 で割って、スイッチ全体の負荷におけるラウンドトリップ時間(通常、 1 ミリ秒程度)を掛けて推定できます。 40 Gbps/ 10 ~ = 4 GB/ 秒 * 0.001 秒 = 4.2 MB のバッファメモリ。ラウンドトリップ時間には、ワイヤの伝播遅延だけでなく、スイッチの遅延だけでなく、トラフィック交換時にスイッチ、ホスト、またはストレージシステム内でバッファリングされる時間も含まれます。異なるリンク速度を切り替えるスイッチは、参加ポートでこの範囲のバッファメモリを提供する必要があります。

    • Receive Window通信のスループットは、輻輳ウィンドウと受信ウィンドウの 2 つのウィンドウによって制限されます。輻輳ウィンドウは、ネットワークの容量を超えないようにします(輻輳制御)。受信ウィンドウは、データを処理する受信側の容量を超えないようにします(フロー制御)。受信者が非常にビジー状態の場合( Web サーバなど)、データに圧倒されることがあります。各 TCP セグメントには、受信ウィンドウの現在の値が含まれます。たとえば、送信側がバイト 4000 を確認し、受信ウィンドウを 10000 (バイト)に指定する ACK を受信した場合、輻輳ウィンドウで許可されていても、送信側はバイト 14000 の後にパケットを送信しません。

    • 輻輳ウィンドウ TCP では、輻輳ウィンドウはいつでも送信できるバイト数を決定する要因の 1 つです。輻輳ウィンドウは送信者によって維持されます。これは、受信側で維持されるスライド式ウィンドウのサイズと混同しないでください。輻輳ウィンドウは、送信側と受信側の間のリンクが過剰なトラフィックで過負荷になるのを防ぐ手段です。この値は、リンク上に存在する輻輳の量を推定することによって算出されます。

    • ラウンドトリップ時間( RTT ):送信者が送信するバイト数、受信者がバイトを確認し、送信者が確認応答を受信するまでに必要な時間です。通常はミリ秒( ms )単位で記述されます。