3

最近、ポートがFIN_WAIT_1状態で 2 日後まで保持されています。ターゲット ポートは 1 つのサーバー プロセスによって使用され、クライアントはこのポートを介してサーバー プロセスに接続します。

状況は、サーバー プロセスを停止したことであり、その時点で一部のクライアントがまだサーバーに接続していることは明らかです。私の理解では、サーバー プロセスは FIN パッケージをクライアントに送信し、ACK パッケージが返されるのを待ちます。残念ながら、その ACK パッケージは 2 日後までサーバー側に来ないようです。

私の質問は、FIN_WAIT_1ステータスへのタイムアウトのような設定があります。インターネットで検索しましたが、何も見つかりませんでした。これについて何か経験があれば教えてください。

ところで、FIN_WAIT_1がポートに発生している間、サーバープロセスはすでに終了しています。

前もって感謝します

4

2 に答える 2

4

状態は、このエンドが送信したばかりの へのFIN_WAIT_1ピアを待機しています。その送信は通常の TCP リトライとタイムアウト処理の対象となるため、相手側が完全に消えて応答がない場合、TCP は当然のことながら接続をタイムアウトしてリセットする必要があります。そのため、特定のタイムアウトを見つけることができませんでした: タイムアウトはなく、通常の TCP 書き込みタイマーだけです。ACKFINFINFIN_WAIT_1

すべてが 10 分以内に発生するはずでした。

状態が持続し、それが他の問題を引き起こす場合、再起動する以外に選択肢はないと思います。

于 2012-06-05T03:48:57.990 に答える
0

同じポートが FIN_WAIT でスタックしていると確信していますか? これは、ロード バランサーまたは NAT デバイスが非アクティブ タイムアウト後に接続をドロップし、それ以降のパケットをサイレントに破棄することが原因である可能性があります。これは、一部のデバイスのデフォルトの動作です。

于 2016-09-30T18:56:26.013 に答える