Windows Server 2008でtcp time_wait値を下げることの悪い面


0

広告サーバーを構築しています。テストでは、メモリ内のdb redisを使用しているため、多くのTIME_WAIT状態が表示されます。

フォーラムは、レジストリからの待機時間を減らすことを提案しました。

悪い面はありますか?

回答:


2

TIME_WAIT状態の目的は、信頼性のある接続切断を容易にすることです。信頼性の高い接続の切断により、将来の接続が以前の接続終了セグメント(FINセグメント)から保護されます。そのため、 "time_wait値"(より正確には最大セグメント寿命、下記参照)を下げることで、アクティブなTCP接続が誤って終了される危険があります。

どうしてこんなことに?信頼性の高い接続切断のために、TCPは3者間のハンドシェイクに似た3つのメッセージを交換する必要があります。アクティブに閉じている側は、TIME_WAITに2倍の間留まります。 最大セグメント寿命 (MSL)最後の破棄通知(ACK)を送信した後。これはあなたの最終的なACKが失われた可能性があるためです。 MSL値を低くすると、ネットワーク内のリモートエンドからのFINセグメントがまだあるときに、ソケットペアがすぐに再利用される可能性が高くなります。そのようなセグメントは、その後、新しい接続を終了する要求と間違えられる可能性があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.