パケットが到着すると、NICは割り込みを生成し、カーネルが引き継がれます。特定のTCPフローのパケット到着時間を測定したいと思います。
Linuxでこれを行うにはどうすればよいですか?これがtcpdumpのようなツールの目的です。
ベストアンサー1
tcpdump
すべてのパケットにタイムスタンプを追加します。したがって、tcpdumpを使用できる必要があります。それ以外の場合は、ネットワークトラフィックも監視しますが、素敵で強力なGUIを備えたWiresharkを試すことができます。このプロセスをスクリプトで書く必要がない場合は、この状況ではWiresharkがあなたの友達だと言いたいと思います。
あなたは見ることができますhttp://www.howtogeek.com/104278/how-to-use-wireshark-to-capture-filter-and-inspect-packets/Wiresharkの使い方に関する追加情報。
これを直接測定する方法に興味がある場合は、提案されているようにソースコードを確認またはtcpdump
読んでください。あなたのアプリケーションで利用可能なシステムコールのリストを提供します。ただし、最も簡単な解決策は、タイムスタンプ列をフィルタリングできる他のツールを介して出力を実行してからフィルタリングすることです。strace
strace
tcpdump
awk
tcpdump
また、使用方法に関する詳細情報を確認することができます。http://danielmiessler.com/study/tcpdump/