DCCP Probe もあった!!

正直あるとは思わなかった。すごい嬉しい。

TCPのcwndの表示はweb100でもやってたんだけど、DCCPの状態表示が出来なかったので片手落ちな解析しかやれなかった。

さらっとlinux kernelのdccpのコードを見ていたらdccp probeが存在するらしいことが分かった。検索したらNet:DCCP Testing – The Linux FoundationNet:DCCP Testing – The Linux Foundationが見つかった。特にNet:DCCP Testing – The Linux Foundationには結果をグラフに表示していて分かりやすい。最悪、実装も考えていたのでありがたい。

こいつでCCID3の癖が分かるようになれば、DCCPとTCPの特徴の違いを説明できそうな気がする。

カテゴリー: 無線LAN | コメントする

802.11n の標準化がドラフト 4.0 まで行くことが決定

11n標準化は9カ月遅れて2009年7月制定に

ついでに802.11n Wikiの内容も 1 年ぶりに更新しておいた。

カテゴリー: 無線LAN | コメントする

reno な iperf の cwnd

iperf2.png

ssthresh が上がらない。有線の検証は秋田。後は無線 LAN 環境でやろう。

カテゴリー: 無線LAN | コメントする

iperf で tcpprobe

kernel 入れ替えたうちの 1 台が原因不明で落ちてしまい、手元にないので再起動できない。仕方がないので、tcp probe なもう 1 台と他の Linux とで iperf して確認することにした。

[ 5] 0.0-10.0 sec 1.08 GBytes 927 Mbits/sec

なネットワークで測定した結果が、
iperf
となった。

Net:TcpProbe – The Linux Foundation

に比べると立ち上がりが早く、また cwnd が 1000 程度で落ち着いている。同一セグメントのギガビットイーサネット上で接続されている環境で実験を行ったので、BDP が小さいためかと思われるが、よく調べていないので分からない。

カテゴリー: 無線LAN | コメントする

TCP_PROBE も必要だった

.config で KPROBES を利用可能にするだけでいいと思っていたら tcp_probe というモジュールも必要だったみたいで、またコンパイル。

Networking ->
Networking options ->
Network testing ->
TCP connection probing

に。

カテゴリー: 無線LAN | コメントする

ccache な make-kpkg

コンパイル中、何もすることがないので記録。

# apt-get install ccache

で、

time CONCURRENCY_LEVEL=4 MAKEFLAGS="CC=ccache\ gcc" fakeroot make-kpkg -append_to_version -3-noch-i686 -revision=1 -initrd kernel-image -config menuconfig

ccache な make-kpkg をするために MAKEFLAGS を使う必要があるようだ。詳しいことは調べてないし、 ccache が効いているかどうかも調べていない。

Avoiding make-kpkg clean, redux

カテゴリー: 無線LAN | コメントする

make-kpkg は毎回コンパイルする?

ブロげ » TCPタイムアウトの変更(2)の CPU のクロック粒度を 1000HZ にし忘れてまた 30m 程度のコンパイル。

ccache とかやるべきだろうか。

カテゴリー: 無線LAN | 2件のコメント

Kernel Compile の時間


time CONCURRENCY_LEVEL=4 fakeroot make-kpkg -append_to_version -3-noch-i686 -revision=1 -initrd kernel-image -config menuconfig

の結果

real 34m43.903s
user 61m29.091s
sys 5m9.319s

Intel(R) Pentium(R) 4 CPU 3.20GHz の HTT。

Quad ほしーなー。

カテゴリー: 無線LAN | コメントする

KPROBES

RTO 最小値の変更コードと ipv6 無効化設定の .config で linux kernel をコンパイルするついでに、Kprobes による TCP 状態の測定を試してみようと menuconfig で設定した。

Kprobes は menuconfig の最上位の instrumentation にある。

Net:TCP testing – The Linux Foundation
@IT:全貌を現したLinuxカーネル2.6[第4章](2/2)
Linuxカーネルプローブ機能kprobesの高速化:システム開発研究所:日立
高速Linuxカーネルプローブ機能djprobeの開発:システム開発研究所:日立
Djprobe || OSS iPedia
Branch Tracer for Linux

調べてみると、djprobe という測定も良さそうな感じ。とりあえず、Kprobes でやってみる。

カテゴリー: 無線LAN | コメントする

TcpProbe

Omicron TcpProbe

TCPのcwnd解析の手法として今までWeb100を利用してきたが、2.6.18からはTcpProbeという手法が利用できるみたいだ。

Omicron Web100を見ると、web100ではカーネル領域にバッファを持つわけではないので、取りこぼししてしまうことがありえるらしいが、TcpProbeではACKを受信したときにコールバック関数を仕込むことができるらしい。

カーネルにコールバックをかませられるようになると、なんとなーく、カーネルの性能が落ちてしまいそうな気がするのだが、一度、やってみたい。Debianの.configを見てもデフォルトでコンパイルされないようなので、若干面倒そうだ。

カテゴリー: 無線LAN | コメントする