[ovs-git] [openvswitch/ovs] e7f6ba: lib/tc: add ingress ratelimiting support for tc-of...

pjvuuren noreply at github.com
Mon Mar 4 16:24:20 UTC 2019


  Branch: refs/heads/master
  Home:   https://github.com/openvswitch/ovs
  Commit: e7f6ba220e10c0b560da097185514b6e33e2dc71
      https://github.com/openvswitch/ovs/commit/e7f6ba220e10c0b560da097185514b6e33e2dc71
  Author: Pieter Jansen van Vuuren <pieter.jansenvanvuuren at netronome.com>
  Date:   2019-03-04 (Mon, 04 Mar 2019)

  Changed paths:
    M include/linux/pkt_cls.h
    M lib/netdev-linux.c
    M lib/netdev-tc-offloads.c
    M lib/tc.c
    M lib/tc.h

  Log Message:
  -----------
  lib/tc: add ingress ratelimiting support for tc-offload

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>
Signed-off-by: Simon Horman <simon.horman at netronome.com>




More information about the git mailing list