[ovs-discuss] Issues in "meter" action in OpenFlow

Ramzah Rehman ramzahrehman at gmail.com
Fri Dec 14 11:50:12 UTC 2018


I guess in OVS-DPDK egress policer does not provide any queuing or traffic
shaping, I installed simple OVS without DPDK, performed all steps mentioned
earlier and it started to work.

Best Regards,
Ramzah Rehman


On Thu, Dec 13, 2018 at 7:02 PM Ramzah Rehman <ramzahrehman at gmail.com>
wrote:

> As I mentioned, I have 2 servers connected via 1Gig cable. I have
> installed OVS with DPDK on server one. I have a switch OVS_BR_LEAF_1 on it
> which runs in user-space. I tried doing QoS traffic shaping as done in the
> link you mentioned.
>
> I have following flow entries in my switch
> #vs-ofctl add-flow OVS_BR_LEAF_1
> priority=6000,in_port=LOCAL,actions=set_queue:1,normal
> #ovs-ofctl add-flow OVS_BR_LEAF_1 priority=6000,in_port=2,actions=normal
>
> I have connected eth3 to ovs on port 2. I want traffic going from server
> one to server two to observer 20Mbps traffic rate.
>
> To  deconfigure  any old QoS record from eth3 and then delete the QoS
> record, I did:
> #ovs-vsctl clear Port eth3 qos
>
> Then, I added following configuration:
>
> #ovs-vsctl -- set port eth3 qos=@newqos -- --id=@newqos create qos
> type=linux-htb other-config:max-rate=500000000 queues:1=@q1 -- --id=@q1
> create queue other-config:max-rate=20000000
>
> Then I checked rate via iperf and got around 478Mbps, which is closer to
> the max rate of the default queue i.e. 500000000. I have checked it
> multiple times with different values of default queue's max-rate,
> I just get whatever max-rate of default queue I specify, the queue q1
> never works.
>
> Please help.
>
>
> On Thu, Dec 13, 2018 at 5:47 AM Justin Pettit <jpettit at ovn.org> wrote:
>
>>
>> > On Dec 12, 2018, at 12:32 AM, Ramzah Rehman <ramzahrehman at gmail.com>
>> wrote:
>> >
>> > I have tested meter action in OpenFLow. I have drawn following
>> conclusions:
>> >
>> >       • TCP
>> >               • Conclusion: meter works fine for low rate-limiting
>> values (till ~100Mbps). However, for higher values, the expected bandwidth
>> is relatively very low.
>> >       • UDP:
>> >               • Conclusion: meter action not supported for UDP
>> >
>> > Please let me know Why I am seeing this behavior with TCP traffic? Is
>> it expected? If so, How can I get expected bandwidth equal to the rate I
>> specify in OpenFlow meter?
>>
>> TCP throughput has a tendency to act erratically to packets dropping, so
>> it can be hard to exactly tune throughput.  You might try configuring
>> different burst sizes at different rates to see if that helps.  However, if
>> you need to rate-limit TCP, you're probably better off using the QoS
>> configuration with traffic shaping, since that will delay packets instead
>> of dropping them.  Some of this is discussed in the FAQ:
>>
>>         http://docs.openvswitch.org/en/latest/faq/qos/
>>
>> I would recommend using HTB for less than 100Mbps and HFSC for less than
>> 1Gbps.  Anything above that will likely have poor performance due to the
>> overhead of performing QoS in software.
>>
>> > Also, does meter action work for UDP traffic?
>>
>> Yes, I would expect it to work.  It should perform more predictably than
>> TCP.
>>
>> How did you configure the flows?  Are you using the kernel or userspace
>> datapath?  If you're using the kernel, what kernel version are you using?
>> There are a few kernel versions that have issues due to a bug in the
>> upstream kernel.
>>
>> --Justin
>>
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20181214/4e97623c/attachment.html>


More information about the discuss mailing list