[ovs-dev] [PATCH net-next v3 1/5] net: openvswitch: expand the meters supported number

Pravin Shelar pravin.ovn at gmail.com
Thu Apr 23 03:54:24 UTC 2020


On Wed, Apr 22, 2020 at 10:10 AM <xiangxia.m.yue at gmail.com> wrote:
>
> From: Tonghao Zhang <xiangxia.m.yue at gmail.com>
>
> In kernel datapath of Open vSwitch, there are only 1024
> buckets of meter in one datapath. If installing more than
> 1024 (e.g. 8192) meters, it may lead to the performance drop.
> But in some case, for example, Open vSwitch used as edge
> gateway, there should be 20K at least, where meters used for
> IP address bandwidth limitation.
>
> [Open vSwitch userspace datapath has this issue too.]
>
> For more scalable meter, this patch use meter array instead of
> hash tables, and expand/shrink the array when necessary. So we
> can install more meters than before in the datapath.
> Introducing the struct *dp_meter_instance, it's easy to
> expand meter though changing the *ti point in the struct
> *dp_meter_table.
>
> Cc: Pravin B Shelar <pshelar at ovn.org>
> Cc: Andy Zhou <azhou at ovn.org>
> Signed-off-by: Tonghao Zhang <xiangxia.m.yue at gmail.com>
> ---
>  net/openvswitch/datapath.h |   2 +-
>  net/openvswitch/meter.c    | 240 ++++++++++++++++++++++++++++---------
>  net/openvswitch/meter.h    |  16 ++-
>  3 files changed, 195 insertions(+), 63 deletions(-)
>
Acked-by: Pravin B Shelar <pshelar at ovn.org>

Thanks.


More information about the dev mailing list