[ovs-dev] [RFC v1] lib/tc: add ingress ratelimiting support for tc-offload
Simon Horman
simon.horman at netronome.com
Mon Mar 4 16:25:57 UTC 2019
On Fri, Feb 01, 2019 at 03:58:31PM +0000, Pieter Jansen van Vuuren wrote:
> Firstly this patch introduces the notion of reserved priority, as the
> filter implementing ingress policing would require the highest priority.
> Secondly it allows setting rate limiters while tc-offloads has been
> enabled. Lastly it installs a matchall filter that matches all traffic
> and then applies a police action, when configuring an ingress rate
> limiter.
>
> An example of what to expect:
>
> OvS CLI:
> ovs-vsctl set interface <netdev_name> ingress_policing_rate=5000
> ovs-vsctl set interface <netdev_name> ingress_policing_burst=100
>
> Resulting TC filter:
> filter protocol ip pref 1 matchall chain 0
> filter protocol ip pref 1 matchall chain 0 handle 0x1
> not_in_hw
> action order 1: police 0x1 rate 5Mbit burst 125Kb mtu 64Kb
> action drop/continue overhead 0b
> ref 1 bind 1 installed 3 sec used 3 sec
> Action statistics:
> Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
> backlog 0b 0p requeues 0
>
> MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to
> 10.0.0.200 () port 0 AF_INET : demo
> Recv Send Send
> Socket Socket Message Elapsed
> Size Size Size Time Throughput
> bytes bytes bytes secs. 10^6bits/sec
>
> 131072 16384 16384 60.13 4.49
>
> ovs-vsctl list interface <netdev_name>
> _uuid : 2ca774e8-8b95-430f-a2c2-f8f742613ab1
> admin_state : up
> ...
> ingress_policing_burst: 100
> ingress_policing_rate: 5000
> ...
> type : ""
>
> Signed-off-by: Pieter Jansen van Vuuren <pieter.jansenvanvuuren at netronome.com>
> Reviewed-by: Simon Horman <simon.horman at netronome.com>
Thanks Pieter,
after some discussion with Or Gerlitz and others on the Switchdev community
call I have pushed this change to master.
Kind regards,
Simon
More information about the dev
mailing list