[ovs-dev] [PATCH ovn 0/5] respin CoPP series

Mark Gray mark.d.gray at redhat.com
Fri May 21 14:14:46 UTC 2021


On 29/04/2021 18:04, Lorenzo Bianconi wrote:
> This series respin CoPP support introduced here [0] by Dumitru rebasing on top
> of ovn master branch and adding some missing meters (e.g. bfd or acl reject).
> The main goal of this series is to continue the discussion about the proposed
> approach and to align on CMS APIs.
> For the moment no ddlog support has been added.
> Related bz:
> https://bugzilla.redhat.com/show_bug.cgi?id=1947913
> https://bugzilla.redhat.com/show_bug.cgi?id=1946610
> 

In a previous revision, I suggested that metering was not the right
approach and perhaps metering in conjunction with scheduling would be
more appropriate. I still believe this to be the case. I also suggested
that we modify the schema to potentially allow for that in the future.
However, I have been unable to think of a way to provide a generic
enough schema to achieve this. Therefore, I suggest we proceed as you
have defined here unless anyone else can come up with a better one. This
may mean a change in the future .. but maybe not!

I do think, at least, it would be good to provide a tutorial describing
a problem and showing how this could be used to fix it.

> Changes since RFC:
> - drop per-port metering
> - add unit/system tests
> - add reject action metering
> 
> [0] https://patchwork.ozlabs.org/project/openvswitch/list/?series=140778&state=*
> 
> Dumitru Ceara (5):
>   ovn-controller: Add support for Logical_Flow control meters
>   ovn-northd: Add support for CoPP.
>   ovn-northd: Add CoPP policies for flows that punt packets to
>     ovn-controller.
>   ovn-northd: Extend metering to Controller-Events
>   NEWS: Add CoPP support.
> 
>  NEWS                      |   1 +
>  controller/lflow.c        |  40 ++-
>  controller/ofctrl.c       |  54 ++--
>  controller/ofctrl.h       |  21 +-
>  controller/physical.c     |   7 +-
>  include/ovn/actions.h     |   3 +-
>  lib/actions.c             | 116 ++++-----
>  lib/automake.mk           |   2 +
>  lib/copp.c                | 145 +++++++++++
>  lib/copp.h                |  61 +++++
>  northd/ovn-northd.c       | 511 ++++++++++++++++++++++++--------------

ddlog needs to be added.

>  ovn-nb.ovsschema          |  18 +-
>  ovn-nb.xml                |  81 ++++++
>  ovn-sb.ovsschema          |   6 +-
>  ovn-sb.xml                |   6 +
>  tests/atlocal.in          |   3 +
>  tests/ovn-northd.at       |  49 ++++
>  tests/ovn.at              |   4 +-
>  tests/system-ovn.at       | 119 +++++++++
>  utilities/ovn-nbctl.8.xml | 117 +++++++++
>  utilities/ovn-nbctl.c     | 167 +++++++++++++
>  21 files changed, 1241 insertions(+), 290 deletions(-)
>  create mode 100644 lib/copp.c
>  create mode 100644 lib/copp.h
> 



More information about the dev mailing list