On Wed, Apr 09, 2014 at 04:57:12PM +0200, Slavica Tomovic wrote: > I am facing problem with bandwidth slicing when I use TCP traffic. I > use OVS v 1.10 as OpenFlow switch, and today I connected three hosts > on it in order to test OVS qos mechanisms. This is topology I have > used: > > iperf client 1 ---- OVS---- iperf server > I > iperf client 2 > > On the port towards iperf server I defined QoS policy like this: > > sudo ovs-vsctl -- set port eth4 qos=@newqos -- --id=@newqos create qos > type=linux-htb other-config:max-rate=10000000 queues=1=@q1,2=@q2 -- > --id=@q1 create queue other-config:min-rate=7000000 > other-config:max-rate=10000000 -- --id=@q2 create queue > other-config:min-rate=3000000 other-config:max-rate=10000000 > > When I generate UDP traffic with iperf clients everything works fine. > However, when I generate TCP traffic average measured bandwidth is ok > ,if I generate traffic for some longer period (30 s or more) , but the > way how this is achieved is disaster. I adjusted iperf to report me > state every second and for few consecutive seconds reported value for > one of the clients was 0 Mb/s, then after some time 10 (I wanted > 3Mbit/s) and so on... I expected that with TCP would be bandwidth > fluctuations but not like these.
Did you read the FAQ? Q: I configured QoS, correctly, but my measurements show that it isn't working as well as I expect. A: With the Linux kernel, the Open vSwitch implementation of QoS has two aspects: - Open vSwitch configures a subset of Linux kernel QoS features, according to what is in OVSDB. It is possible that this code has bugs. If you believe that this is so, then you can configure the Linux traffic control (QoS) stack directly with the "tc" program. If you get better results that way, you can send a detailed bug report to b...@openvswitch.org. It is certain that Open vSwitch cannot configure every Linux kernel QoS feature. If you need some feature that OVS cannot configure, then you can also use "tc" directly (or add that feature to OVS). - The Open vSwitch implementation of OpenFlow allows flows to be directed to particular queues. This is pretty simple and unlikely to have serious bugs at this point. However, most problems with QoS on Linux are not bugs in Open vSwitch at all. They tend to be either configuration errors (please see the earlier questions in this section) or issues with the traffic control (QoS) stack in Linux. The Open vSwitch developers are not experts on Linux traffic control. We suggest that, if you believe you are encountering a problem with Linux traffic control, that you consult the tc manpages (e.g. tc(8), tc-htb(8), tc-hfsc(8)), web resources (e.g. http://lartc.org/), or mailing lists (e.g. http://vger.kernel.org/vger-lists.html#netdev). Also: Q: I configured Quality of Service (QoS) in my OpenFlow network by adding records to the QoS and Queue table, but the results aren't what I expect. A: Did you install OpenFlow flows that use your queues? This is the primary way to tell Open vSwitch which queues you want to use. If you don't do this, then the default queue will be used, which will probably not have the effect you want. Refer to the previous question for an example. _______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss