
The ML2/OVN QoS enforcement for physical network ports (flat, VLAN) is done in the localnet port of the physical bridge via TC commands. A physical network will have a physical bridge in each compute node. This physical bridge will have a NIC interface that will provide connectivity. On this interface (localnet port), OVN enforces the QoS mininum and maximum rate rules (**only egress**), using TC commands on the interface. It creates a HTB qdisc and a class per port with QoS rules. Each class, that will match the traffic of the port, will have a "ceil" and "rate" values [1]. OVN uses the information stored in the "Logical_Switch_Port.options" field, stored as a dictionary, with the keys [2]: * qos_min_rate * qos_max_rate * qos_burst This patch is: * Moving the max and min rate configuration from the QoS registers to the "Logical_Switch_Port.options" dictionary. * Logging a warning when a min rate option is defined in a port hosted in a tunnelled network (not supported). This change was documented in [3], in OVN version 23.06.0 [1]https://man7.org/linux/man-pages/man8/tc-htb.8.html [2]1bec9e3ddd/ovn-nb.xml (L1155-L1168)
[3]87514ac042
Closes-Bug: #2015376 Change-Id: I4581d31ba04c0d2f3f45ee6d07bcaba82fb038d4
OpenStack Neutron
Neutron is an OpenStack project to provide "network connectivity as a service" between interface devices (e.g., vNICs) managed by other OpenStack services (e.g., Nova).
To learn more about neutron:
- Documentation: https://docs.openstack.org/neutron/latest/
- Features: https://specs.openstack.org/openstack/neutron-specs
- Defects: https://launchpad.net/neutron
- Release notes: https://docs.openstack.org/releasenotes/neutron/index.html
- Source: https://opendev.org/openstack/neutron
If you would like to contribute to Neutron, please read the file CONTRIBUTING.rst or see the Neutron contributor guide:
https://docs.openstack.org/neutron/latest/contributor/contributing.html
Get in touch via email. Use [Neutron] in your subject.
Description
Languages
Python
99.7%
Shell
0.3%