Linux 3.3 の cgroup 関連新機能 - TenForwardの日記 で少し紹介した 3.3 の新機能である Network priority cgroup を簡単に試してみました.
net_prio に関連するのは以下のうち,
$ ls /sys/fs/cgroup/net_prio/ cgroup.clone_children cgroup.procs net_prio.prioidx release_agent cgroup.event_control net_prio.ifpriomap notify_on_release tasks
"net_prio.prioidx" と "net_prio.ifpriomap" で,コントロールに使うのは "net_prio.ifpriomap" です.
ファイルの中身は以下のような感じ.
$ cat /sys/fs/cgroup/net_prio/net_prio.ifpriomap lo 0 eth1 0 eth0 0 br0 0 virbr0 0 virbr1 0 virbr1-nic 0
- cgroupfs にグループを二つ登録します.
# cd /sys/fs/cgroup/net_prio
# mkdir test1 test2 - シェルを二つ起動し,それぞれのグループに登録します.
# echo 5259 > /sys/fs/cgroup/net_prio/test1/tasks
# echo 5273 > /sys/fs/cgroup/net_prio/test2/tasks - それぞれのグループに優先度を設定します.
# echo "eth0 1" > /sys/fs/cgroup/net_prio/test1/net_prio.ifpriomap
# echo "eth0 100" > /sys/fs/cgroup/net_prio/test2/net_prio.ifpriomap
ここでそれぞれのシェルで iperf を実行してみます."server" 上で iperf -s を実行しています.
$ iperf -t 20 -c server
サーバ側で出力された結果は
[ 4] 0.0-20.5 sec 2.17 GBytes 908 Mbits/sec <= priority 100 の方 [ 5] 0.0-20.6 sec 71.2 MBytes 29.1 Mbits/sec <= priority 1 の方 [SUM] 0.0-20.6 sec 2.24 GBytes 936 Mbits/sec
ちょっと雑なテストですがとりあえず ^^;
Linux 3.3 の新機能 Network priority cgroup (2) - TenForwardの日記へ続く