並べ替えや重複、TCPの再送をトラブルシューティングするには?

データ再送

  • TCP再送信は、一つは、高速再送フィードバック・メッセージの受信側に基づいており、一つは再送タイムアウト時間に基づいて、2つのメカニズムを提供します。これとは対照的に、元の用途少ないネットワーク帯域幅が、非効率的。後者は反対されています。これら二つのメカニズムの具体的な実装を見てみましょう。

  • 再送タイムアウト
    ACKを送信側が待機受信機によって送信された場合、名前は、RTO TCPセットを超え、その後時間が終了を送信することだけ送信されるデータパケットを再送、示唆しています。この問題が発生した際に一般的に、TCPはタイムアウトパケットの再送非常に真剣に、TCPは、イベントへの迅速な対応を実現するためにデータを送信する送信者の現在のレートが低下しますします。例で見てみましょう:

    送信側は、数3の着信パケット123としてマークされていることを前提としていますが、この時点で受信端末は、この時間は岐路に行って、端末13の受信パケットのみを受信すると、ACKを送信しないことを選択し、死んだようなこと2パケット。しかし、おそらくの運命に直面してタイムアウトパケット3の再送信されています。

  • 高速再送信
    、それがためか、失われたデータパケットのうち発見された場合、高速再送待ちタイマがタイムアウトではないでしょう行くことを除いて、再送タイムアウトが、すぐにACK、ACK番号は、より多くの送信者が重複ACKを受信するとより繰り返されますしきい値(一般的に3)、それは、高速再送メカニズムを誘導します。例で見てみましょう:

    、直ちにACK 2 ** 1234 ** 4つのパケットをマーク送信端は、シリアル番号に送信されると仮定するが、この時点で、受信端末は、パケット13を受信し、このときのパケットが順序から外れて現れ、受信側送信者は、パケット4はまた、受信側に到達したときに、要求パケット2を送信し、受信側になる、まだすぐにACK2。パケットとパケット2に達する34がタイムアウトしていない場合は、その後、受信側はACK 5を対応させていただきます、または他のデータパケットが到着したが、パケット2に達しないときは、常に受信側のACK 2を持っています。

II。スクランブルと重複パケット

  • TCPは、データグラムがIP層に渡される所有する、IP層は、ソリューションが、パケット重複、機能と障害の問題の損失を提供していません。これは、ホスト間の特定のIPパスを計画する責任があります。TCPは信頼性の高いバイトストリームプロトコルであり、上位層アプリケーション、TCPの実装にも決して-の順序データセグメントは、さまざまな詳細情報を検討します。

  • スクランブルされ
    、データパケットを受信した送信順序の計画順序でIPレイヤ結果のリンクをルーティングするために異なるパケットの、言及したフロントは異なるであろう。また、TCPは、全二重プロトコルであるため、障害はまた、逆方向リンクで発生することがあり、順方向リンクにおいて生じ得る、TCPにもたらさこれら二つの異なる場合の影響はわずかに異なるであろう。

    オーダーのうちフォワードリンク:
    この時点では、TCPパケットが最後に空の受信データを引き起こし、順不同でパケットを受信失われたり、順不同で、順不同でパケットロスへと受信機につながることができているかを決定しません。障害は時間の問題(おそらく後半パケット)であり、パケットロスが再送を意味するので、この場合は、オーダーパケット外となりますためTCPが暫定的に予定されています。状況の認識順序のうちTCPパケットは、即時ACKが発生した場合に、含まれるACK値のTSEV TSER部分は、受信機の現在時刻が注文したセグメントを受信し記録します。これはさらに延長RTO、その結果、サンプル値RTTパケットを増大させます。TCP十分な時間が、パケットが故障しているか、不要なデータの再送を防ぐために、最終的に失われたかを決定するため、このTCPは間違いなく有益です。もちろん、深刻な障害は、送信者が、一度それが重複ACKパケット損失がTCPの再送タイムアウトのしきい値を超えたと思ってみましょうトリガされ、この問題を解決しています。

    スクランブルリバースリンク(ACK):
    名前が示すように、この問題が発生した場合、それはリードが送信側の不要なトラフィックバースト、ネットワークの帯域幅に戻り早送り送信側窓、につながります。

  • パケットを繰り返し
    繰り返しには、TCPパケットのアプローチは、いくつかの簡単な、粗製のことは避けられません。まず、我々は、各データパケットは、データトランスポート層を介して対応するヘッドが付いていることを知っているであろう、一般的に、固定された20バイトのTCPのヘッドは、バイト単位でデータセグメントを表すために4バイトシーケンス番号があります端子収容のためにオフセットストリームは、このフィールドは直接破棄重複パケット又は再組立データパケットの自身を助け、その後、上位層に送信してもよいです。

公開された70元の記事 ウォンの賞賛4 ビュー6337

おすすめ

転載: blog.csdn.net/qq_44837912/article/details/104778916