玩转Openvwitch第七站:Port和QoS (2)

叁叁肆2018-11-06 16:47

此文已由作者刘超授权网易云社区发布。

欢迎访问网易云社区,了解更多网易技术产品运营经验。


例如对于如下的这棵树,如果将流量打满,则会出现下面的图。



怎么解释这个图呢?


时间0的时候,0,1,2都以90k的速度发送数据,在时间3的时候,将0的发送停止,红色的线归零,剩余的流量按照比例分给了蓝色的和绿色的线。


在时间6的时候,将0的发送重启为90k,则蓝色和绿色的流量返还给红色的流量。


在时间9的时候,将1的发送停止,绿色的流量为零,剩余的流量按照比例分给了蓝色和红色。


在时间12,将1的发送恢复,红色和蓝色返还流量。


在时间15,将2的发送停止,蓝色流量为零,剩余的流量按照比例分给红色和绿色。


在时间19,将1的发送停止,绿色的流量为零,所有的流量都归了红色。


那Openvswitch如何控制QoS呢?


Openvswitch支持两种:


  • Ingress policy


ovs-vsctl set Interface tap0 ingress_policing_rate=100000

ovs-vsctl set Interface tap0 ingress_policing_burst=10000


  • Egress shaping: Port QoS policy 仅支持HTB

    • 在port上可以创建QoS

    • 一个QoS可以有多个Queue

    • 规则通过Flow设定



接下来,我们根据如下的拓扑图,测试QoS。





在什么都没有配置的时候,测试一下速度,从192.168.100.100 netperf 192.168.100.103



设置 一下first_if


ovs-vsctl set Interface first_if ingress_policing_rate=100000

ovs-vsctl set Interface first_if ingress_policing_burst=10000



清理现场


ovs-vsctl set Interface first_if ingress_policing_burst=0

ovs-vsctl set Interface first_if ingress_policing_rate=0

ovs-vsctl list Interface first_if


添加QoS


ovs-vsctl set port first_br qos=@newqos -- --id=@newqos create qos type=linux-htb other-config:max-rate=10000000 queues=0=@q0,1=@q1,2=@q2 -- --id=@q0 create queue other-config:min-rate=3000000 other-config:max-rate=10000000 -- --id=@q1 create queue other-config:min-rate=1000000 other-config:max-rate=10000000 -- --id=@q2 create queue other-config:min-rate=6000000 other-config:max-rate=10000000


添加Flow(first_br是ubuntu_br上的port 5)


ovs-ofctl add-flow ubuntu_br "in_port=6 nw_src=192.168.100.100 actions=enqueue:5:0"

ovs-ofctl add-flow ubuntu_br "in_port=7 nw_src=192.168.100.101 actions=enqueue:5:1"

ovs-ofctl add-flow ubuntu_br "in_port=8 nw_src=192.168.100.102 actions=enqueue:5:2"



单独测试从192.168.100.100,192.168.100.101,192.168.100.102到192.168.100.103



如果三个一起测试,发现是按照比例3:1:6进行的



如果Instance01和Instance02一起,则3:1



如果Instance01和Instance03一起,则1:2



如果Instance02和Instance03一起,则1:6



清理环境





免费体验云安全(易盾)内容安全、验证码等服务

11.1—11.15云计算基础服务全场5折起

更多网易技术、产品、运营经验分享请点击