質問
せているとした場合、あなたはクライアントが多くの生活で接続できるサーバーです。
すでにクライアントを閉じる接続に多くポート TIME_WAIT
状態をクライアント側で行われます。以来、お客様の地域のポートできなくなり新しい接続を試みます。
場合はサーバーを閉じる接続について,多くの TIME_WAIT
sサーバー側となります。しかしなharm?のクライアント(またはその他のクライアント)で接続を試みかんのローカルのポート数 TIME_WAIT
状態の増加、サーバ側です。うが?は悪い失業が生まれるのでしょうか。(減速、衝突を落とした接続など)
ご質問などの目的であ TIME_WAIT
?"が"何があった場合どうなるので多くの TIME_WAIT
国のサーバー?" いいとも何度もひっくり返したくなる接続が閉じTCP/IP、なぜ TIME_WAIT
状態が必要です。うとしたわけじゃないトラブルシュートをまず知りたいの可能性の問題です。
を一言で言えば、ということか netstat -nat | grep :8080 | grep TIME_WAIT | wc -l
版画 100000
.どうなりますか?なO/Sネットワークスタックが遅いのは、下記のうちどれですか。"あまりにも多くのファイルを開く"。やかに公正な報道というものは皆無ですか?
解決
各ソケット TIME_WAIT
消費メモリにカーネルは、通常少未満 ESTABLISHED
ソケットだきます。十分な量が排カーネルメモリ、または少なくとも劣化しないものであるため、このメモリが利用する。 TIME_WAIT
ソケットを持たないようにしてくださいオープンしたファイル記述子を想定して適切に閉じる必要はありません。べきではない心配する必要約には"あまりにも多くのファイルを開く"エラーになります。
ソケットにも関係る特 src
/dst
IPアドレスとポートすることはできませんの再利用のための持続時間 TIME_WAIT
間隔で出ています。この目的の TIME_WAIT
の状態です。) のみでのポートは通常問題ない限り、必要に一時停止する場合は、同じポートペアです。多くの片側を使用し一時的なポートは、片側の固定付けられていることで、それをポートです。しかし、非常に大きな数 TIME_WAIT
ソケットでは排気の一時的なポートスペースの場合は繰り返し頻度を接続することで同一のIPアドレスを使います。注このみに影響するこの特定のIPアドレスのペアに与える影響はありません立つその他。
他のヒント
成果これまで:
場合でも、サーバのソケット用システム呼び出し、そのファイル記述子に出されることはありませんもし入ってしまった場合はTIME_WAITます。ファイル記述子の発売時以降のTIME_WAIT状態がなくなった(2*MSL秒)があります。そのため、多くのTIME_WAITsする可能性のある鉛をも多くのファイルを開く'エラーのサーバーです。
と思いO/S TCP/IPスタックを実施して適切なデータ構造などハッシュテーブル)で、総数TIME_WAITsには影響ありませんのでそのままの性能のO/S TCP/IPスタックです。のプロセス(サーバ)を所有してのソケットTIME_WAIT状態にすることは容易ではありません。
それぞれの接続によって識別されるタプル(サーバIP、サーバーのポート、クライアントIP、クライアント港)を行います。重要なのは TIME_WAIT
接続について次のようなサーバ側では、クライアント側)を占めるこれらのタプル.
の TIME_WAIT
sクライアント側で見やすいのはなぜできないますの接続きをしていない地域のポートがあります。しかし、同じ問題に適用のサーバ側では64kの接続 TIME_WAIT
状態 のための単一のクライアン, では承ることができません以上の接続 からお客様, のではなく、その味の違いがわかるものだの接続の新しい接続の接続によって識別される同一のタプル.サーバーと同じように送り返 RST
sから新しい接続を試みからクライアントです。
いくつから多くの異なるお客様のIPsサーバへのIPsが入制限の接続を追跡する。
チェック:
sysctl net.ipv4.netfilter.ip_conntrack_count
sysctl net.ipv4.netfilter.ip_conntrack_max
すべてsrc ip/ポートdest ipポートタプルできています。ipv4.netfilter.ip_conntrack_maxを追跡する。この制限はヒットするメッセージにログ"nf_conntrack:テーブルのフル、パケット"、そしてサーバが受け入れていない新しい着信接続でスペースがありますトラッキングテーブルです。
この制限がヒットする前に一時的なポートせていただきます。
私のシナリオで行ったスクリプトを書ファイルを繰り返し、製品のいくつかの計算に送への対応お客様の家クライアントが作を繰り返http電話での対応のファイルです。時には約150のファイルを予定ソケットのポートで私のサーバーがありますので、time_wait状態および例外がスローされるクライアントを開設http接続の家
Error : [Errno 10048] Only one usage of each socket address (protocol/network address/port) is normally permitted
しかしこの多様性を持った自分は処刑されました。わからない場合がthreadshaveいに待ち状態では何が起こったのか思いつを殺しにすべての工程を再起動し自分はそれを動作させるために。
また低待ち時間は30秒ですので240秒のデフォルトでなかった。
なので基本的には全体的影響が重要であったとしても自分不応答性
うにサーバーでのポートに割り当てのための着信接続までの間の既存のTIMED_WAITs)の場合、DOS攻撃ができます。