2017-11-27 1 views
1

Pythonで(ソケットとAsyncoreを使って)スクリプトをビルドしてもうまくいく(効率的です)が、バースト時に接続が失われていると思います。ソケットリスナーで接続が見つからないことを追跡できますか?

特定のポートへの接続を追跡する方法があるかどうか、スクリプトによってどれくらい処理されているか、またどれくらい逃しているか(応答しない、他に何か)。

私は関連するPythonコードのためにSOの質問をしていますが、Linux(Debian for the matter)のログやLinuxの実装で直接見つけることもできます。

答えて

2

あなたは、接続障害を監視したい場合は、このような接続の失敗を意味するICMPパケットの盗聴するのtcpdumpを使用することができます。

tcpdump -nni eth0 'port 80' -e icmp[icmptype] == 3 

変更eth0リスニングインターフェイスの名前に、とに'port 80'あなたが聴いているポート。

ICMPタイプ3は、「Connection Refused」と「No Route to Host」をカバーしています。

+0

ありがとうございました。これが入力要求を遅くするかどうか知っていますか? –

+0

ここでは、その研究があります:https://www.percona.com/blog/2015/04/10/measuring-impact-tcpdump-busy-hosts/ –

+0

うわー!よかった。ありがとう。最後の質問が1つあり、私はすべてうまくいくでしょう。特定のポートをフィルタリングする方法はありますか?私は今すぐ実行しており、到達不能なさまざまなポートを持つ多くのUDPを見ています。ありがとう:) –

関連する問題