xenhost上的qos
来源:互联网 发布:rk算法 编辑:程序博客网 时间:2024/04/29 00:54
XEN : Network : QoS : 帯域制御 : xenbr1 → Dom0
- 構成詳細確認
まずは、お約束チックな確認をする
xen domainの確認から
# xm listName ID Mem(MiB) VCPUs State Time(s)Domain-0 0 200 1 r----- 2178.6test2 2 32 1 -b---- 1637.8
次に仮想スイッチの確認
# brctl showbridge name bridge id STP enabled interfacesxenbr0 8000.feffffffffff no vif0.0 peth0xenbr1 8000.feffffffffff no vif0.1 vif2.0
仮想スイッチからDom0向けのIFの確認
# ip link show vif0.16: vif0.1: <BROADCAST,NOARP,UP,10000> mtu 1500 qdisc noqueue link/ether fe:ff:ff:ff:ff:ff brd ff:ff:ff:ff:ff:ffsv2:#
ついでに、帯域制御の対象となるDomUのip
# ifconfig eth0eth0 Link encap:Ethernet HWaddr 00:16:3E:28:FC:BA inet addr:192.168.3.2 Bcast:192.168.3.255 Mask:255.255.255.0 inet6 addr: fe80::216:3eff:fe28:fcba/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:580955 errors:0 dropped:0 overruns:0 frame:0 TX packets:390100 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:733333329 (699.3 MiB) TX bytes:402026984 (383.4 MiB)
図として書くと今回のターゲットは下記の通り
こんかいは、クラスフルなqdiscのHTBを使う。帯域制限だけが目的なので、2層構造でいく
- 設定
サンプルとして、上記の図にも記載している通り
デフォルトでclass 3:ff0に流れる。ここでは、10Mbit/secで帯域制御。
あとは、filterを使ってソースIPにマッチしたのか、それぞれのclassに入っていく。1Mbit/secだtc qdisc add dev vif0.1 root handle 3: htb default ff0tc class add dev vif0.1 parent 3: classid 3:ff0 htb rate 10Mbit ceil 10Mbittc class add dev vif0.1 parent 3: classid 3:ff1 htb rate 1Mbit ceil 1Mbittc class add dev vif0.1 parent 3: classid 3:ff2 htb rate 1Mbit ceil 1Mbittc class add dev vif0.1 parent 3: classid 3:ff3 htb rate 1Mbit ceil 1Mbittc filter add dev vif0.1 protocol ip parent 3: u32 match ip src 192.168.3.1 flowid 3:ff1tc filter add dev vif0.1 protocol ip parent 3: u32 match ip src 192.168.3.2 flowid 3:ff2tc filter add dev vif0.1 protocol ip parent 3: u32 match ip src 192.168.3.3 flowid 3:ff3
- 設定を確認
ip コマンドで確認。qdiscがhtbになっている
# ip link show vif0.16: vif0.1: mtu 1500 qdisc htb link/ether fe:ff:ff:ff:ff:ff brd ff:ff:ff:ff:ff:ff
tc コマンドでqdiscを確認。それっぽくなっている。
# tc -s -d qdisc lsqdisc htb 3: dev vif0.1 r2q 10 default ff0 direct_packets_stat 0 ver 3.17 Sent 54 bytes 1 pkt (dropped 0, overlimits 0 requeues 0) rate 0bit 0pps backlog 0b 0p requeues 0
tcコマンドでclassを確認。それっぽくなっている。
# tc class show dev vif0.1class htb 3:ff0 root prio 0 rate 10000Kbit ceil 10000Kbit burst 6598b cburst 6598bclass htb 3:ff1 root prio 0 rate 1000Kbit ceil 1000Kbit burst 2099b cburst 2099bclass htb 3:ff2 root prio 0 rate 1000Kbit ceil 1000Kbit burst 2099b cburst 2099bclass htb 3:ff3 root prio 0 rate 1000Kbit ceil 1000Kbit burst 2099b cburst 2099b
tc コマンドでfilterを確認。ずらずらと出てくる。ipが16進数で表現されているっぽい
# tc filter show dev vif0.1filter parent 3: protocol ip pref 49151 u32filter parent 3: protocol ip pref 49151 u32 fh 802: ht divisor 1filter parent 3: protocol ip pref 49151 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid 3:ff3 match c0a80303/ffffffff at 12filter parent 3: protocol ip pref 49151 u32filter parent 3: protocol ip pref 49151 u32 fh 801: ht divisor 1filter parent 3: protocol ip pref 49151 u32 fh 801::800 order 2048 key ht 801 bkt 0 flowid 3:ff2 match c0a80302/ffffffff at 12filter parent 3: protocol ip pref 49152 u32filter parent 3: protocol ip pref 49152 u32 fh 800: ht divisor 1filter parent 3: protocol ip pref 49152 u32 fh 800::800 order 2048 key ht 800 bkt 0 flowid 3:ff1 match c0a80301/ffffffff at 12
- 疎通確認
今回は、DomUが1つしかないので、帯域制限されていることだけ確認。他のホストからFTPでダウンロードしてみる。
ちょっとオーバー気味な気がするが、まぁいいだろう。ftp< mget 1MBmget 1MB? y200 PORT command successful150 Opening BINARY mode data connection for 1MB (1000000 bytes)226 Transfer complete.1000000 bytes received in 7.46 secs (130.9 kB/s)ftp< mget 1MBmget 1MB? y200 PORT command successful150 Opening BINARY mode data connection for 1MB (1000000 bytes)226 Transfer complete.1000000 bytes received in 7.46 secs (130.9 kB/s)ftp< mget 1MBmget 1MB? y200 PORT command successful150 Opening BINARY mode data connection for 1MB (1000000 bytes)226 Transfer complete.1000000 bytes received in 7.46 secs (131.0 kB/s)
引自:
http://yorunoseikatsu.com/archives/2007/11/xen-network-qos-xenbr1-dom0.html
- xenhost上的qos
- Cisco ASA上QoS的配置
- 网络传输上的一种QoS方案
- switch芯片上的QoS,VLAN介绍
- ixp425上QoS开发
- kernel dev 上qos
- xen上做qos限制
- qos的作用
- QoS的基本原理
- 路由器的qos功能
- neutron的QOS
- LTE的QoS
- RabbitMQ的Qos
- QoS的基本原理
- QoS
- QoS
- QoS
- qos
- 冒泡法排序
- 在Linux利用pthread库进行多线程编程
- 写程序遵守的原则
- 职业生涯不能有的致命想法
- 调试Windows Service 程序的一些心得
- xenhost上的qos
- Linux pthread详解
- Eclipse自动生成junit测试类
- 最锋利的Visual Studio Web开发工具扩展:Web Essentials详解
- 十步完成windows服务的安装
- android.os包中一些类的使用
- (轉)DataGridView 控件结构(Windows 窗体)
- 标准的 SQL 的解析顺序
- C#中DataGridView多層表頭的制作(1)