私はUbuntu上で動作するApacheサーバーを持っています。クライアントは画像を接続してダウンロードします。基礎となるTCP接続のRTT推定値を抽出する必要があります。これを行う方法はありますか?多分、私のtcpスタックをデバッグモードで実行して、どこかにこの情報を記録するようなものでしょうか?LinuxでTCPラウンドトリップ時間(RTT)を抽出する
私はtcpdumpを実行し、記録されたトレースからRTTを抽出したくないことに注意してください。 TCPスタックのRTT見積もりが必要です(明らかに、これはTCP_INFOソケットオプションで取得できる情報の一部です)。フックを挿入し、すべての着信パケット(またはすべての変更)にTCP接続の推定RTTを記録するには、基本的にtcpprob(kprobe)のようなものが必要です。
UPDATE:
私は解決策を見つけました。 rtt、輻輳ウィンドウなどはtcpprobeを使用してログに記録できます。私は以下の答えを掲示した。
http://stackoverflow.com/questions/16231600/fetching:
output.outのフォーマットが(ライン198でsourceに係る):停止するには、単にこのプロセスを殺します-the-tcp-rtt-in-linux – indiv
ありがとう!うん、私は "ss"に精通していますが、RTTの非常に粗いサンプリングを私に与えるので、私が必要とするものではありません。フックを挿入し、すべての着信パケット(またはすべての変更)にTCP接続の推定RTTを記録するには、tcpprob(kprobe)のようなものが必要です。 – kakhkAtion
Hmm。まあ、Linuxの輻輳制御アルゴリズムは、 'net/ipv4 /'ディレクトリのプラグイン可能なモジュールです。それぞれrttを別々に計算します(そして、[reno](http://lxr.free-electrons.com/source/net/ipv4/tcp_cong.c)はそれをまったく計算しません)!特定の実装にフックする必要があります。私はあなたに立方体のタグが付いているので、それは[tcp_cubic.c](http://lxr.free-electrons.com/source/net/ipv4/tcp_cubic.c)です。私はrttを得るための一般的な方法はないと思っていますが、確かに間違っている可能性があります... – indiv