Rework OVN QoS implementation in order to configure it through OVS QoS table instead of running tc command directly bypassing OVS. This series allows to apply QoS rules on the localnet port related to logical switch ports running on the same datapath. Considering the following netowrk configuration:
LSP{0,1} -- LogicalSwitch -- Localnet0 It is possible to apply the following QoS rules on Localnet0 on egress traffic entering the cluster from LSP{0,1}: - LSP0: min-rate r0, max_rate R0 - LSP1: min-rate r1, max_rate R1 https://bugzilla.redhat.com/show_bug.cgi?id=2129742 Changes since v8: - fix typo in add_ovs_qos_table_entry() checking for ovn_qos in qos->external_ids column - fix possible double-free in configure_qos() Changes since v7: - make queue_id allocation in norhd global - update QoS configuration in binding_handle_ovs_interface_changes() - fix "ovn-controller incremental processing" test - fix possible NULL pointer dereference - add new ovn-northd unit test - get rid of ovs port lookup by name - rebase on top of ovn main branch Changes since v6: - run add_ovs_qos_table_entry() and remove_stale_qos_entry() in setup_qos() - rename setup_qos() in configure_qos() - add some new unit-tests in ovn.at - erase QoS configuration if related port_binding is removed Changes since v5: - add IP for qos_map map - add some new unit-tests in ovn.at Changes since v4: - do not remove ovn-egress-iface parameter - rebase on top of ovn main branch Lorenzo Bianconi (10): controller: remove tunnel interfaces from egress_ifaces sset controller: add incremental processing for ovn-controller qos_map northd: add qos_physical_network in port_binding config column controller: configure qos through ovs qos table and do not run tc directly controller: improve ovs port lookup by qos controller: use unsigned long long int for qos_max_rate/qos_min_rate/qos_burst northd: make queue_id allocation global for the ovn cluster northd: apply QoS rules on the localnet port related to LSP ports controller: get rid of egress_ifaces sset update NEWS with new QoS info NEWS | 6 + controller/binding.c | 620 +++++++++++++++++------------------- controller/binding.h | 6 +- controller/ovn-controller.c | 35 +- controller/ovsport.c | 16 + controller/ovsport.h | 3 + northd/northd.c | 163 +++------- northd/ovn-northd.8.xml | 12 + ovn-sb.xml | 5 + tests/ovn-northd.at | 24 ++ tests/ovn-performance.at | 5 - tests/ovn.at | 185 +++++++++++ tests/system-ovn.at | 151 ++++++++- 13 files changed, 770 insertions(+), 461 deletions(-) -- 2.40.1 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev