中居憲久
n.nak****@sdy*****
2009年 11月 26日 (木) 12:27:09 JST
三浦様 中居と申します。 お世話になっております。 ESTABLISHEDコネクションはACK(だけじゃないのですが)を返して待ちに入ってい るコネクションになります。 l7directoredを再起動すると解消されるのはvirtualserviceがいったん削除され るため、全てのコネクションが一度closeされてOSで問答無用で閉じていると云 う状況かと思います。 つまりESTABLISHEDのコネクションが残っている状況はパケットロスト等の理由 により待ちの状態に入っているかと思います。 (なのでtcpdumpで見ても何も流れていない状況になります) 結果、下の方に記述してあります、RSTがロストしている状況と同じかと思います。 この場合、パケット待ちに入っているソケットはkernelパラメータの tcp_timeoutの値に従い、ガベージされます。 この値が存在するためにultramonkey自体は使用していないソケットのガベージ をしていません。 このあたりは設計思想によりますがTCP/IPのスタックで実現すべき部分ですので… ですから、経路が不安定な状況でmax_eventsに達してしまう状況の解法としては 1) OSでパケットロストした場合のリトライ回数を減らす 具体的には /proc/sys/net/ipv4/tcp_retries2 の値を減らして(デフォルトは15)、早めにあきらめさせる。 今だとkernelに依存しますが2.6系だと都合190秒ほど待つ設定のはずです。 2) max_eventsの値を大きくする src/iomux.cの47行目、 > static int maxevents = 1024; この値を大きくすることでESTABLISHEDになっているソケットが OSに回収される早さと増える速度を調節する。 (ただし、epollに渡されるevent数が増えるので速度は低下します)。 上記の二つが考えられます。 どちらもメリットデメリットが存在しますのでネットワーク環境と その他に動いているサービスへの影響も考慮の上、ご参考までに。 > お世話になります。三浦と申します。 > > 以前にl7vsadmコマンドの件でご質問したものですが、 > この件の続きで再度ご質問があります。 > > Webサーバ2台をl7vsdでバランシングしているのですが、 > クライアントPCとl7vsd間でESTABLISHEDコネクションが残り続けて > しまい、max_eventsの上限まで達してしまう現象が発生しています。 > ESTABLISHEDのままとなってしまったコネクションをtcpdumpで調べ > てみましたがパケットが全く流れていない状態でした。 > > 現象はl7directordを再起動すると一時的に解消されますが、 > また時間がたつにつれコネクションが増えてしまいます。 > そこで一定時間経過後にl7vsd側でこのコネクションを切断する方法等はありま > すでしょうか。 > > 現在の構成としては下記のようにultramonkey-l7とWebを統合した形になります。 > ----------------------------------------------- > web1 (ultramonkey-l7 + Apache) > web2 (Apache) > ----------------------------------------------- > また全く同じ状況は再現できていないのですが、下記の方法で似たような状況は > 再現しております。 > --------------------------------------------------------------------------------------------------------------- > TCPセッションを張る(だけ)のツールを使用して疑似的に300セッションを張り、 > ツールを強制停止すると最大で約10%程度のセッションが残ってしまう。 > (強制停止時にはRSTパケットをサーバに送っているのですがいくつかをロストして > コネクションが残ってしまっている。ちなみにクライアント、サーバ間はプライ > ベートなLAN環境です) > --------------------------------------------------------------------------------------------------------------- > もし解決方などがあればご教授ください。 > よろしくお願いします。 > > -- > miura > > > > _______________________________________________ > Ultramonkey-l7-users mailing list > Ultra****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/ultramonkey-l7-users -- _____________________________________________ 中居 憲久[Norihisa NAKAI] n.nak****@sdy***** 株式会社SDY tel:047-401-7210/fax:047-401-7207