第 9 章 使用服务质量(QoS)策略来管理数据流量

您可以使用服务质量(QoS)策略为虚拟机实例提供不同的服务级别,以将速率限值应用到 Red Hat OpenStack Platform (RHOSP)网络上的出口和入口流量。

您可以将 QoS 策略应用到各个端口,或将 QoS 策略应用到项目网络,其中没有附加特定策略的端口会继承策略。

注意

网络策略应用程序中排除内部网络拥有的端口,如 DHCP 和内部路由器端口。

您可以动态应用、修改或删除 QoS 策略。但是,对于保证最小带宽 QoS 策略,您只能仅在不使用策略分配到的任何端口时应用修改。

9.1. QoS 规则

您可以配置以下规则类型,以便在 Red Hat OpenStack Platform (RHOSP)网络服务(neutron)中定义服务质量(QoS)策略:

Minimum bandwidth (minimum_bandwidth)
对特定类型的流量提供最低带宽限制。如果实施,则尽力提供比应用该规则的每个端口的指定带宽不少于指定带宽。
带宽限制(bandwidth_limit)
提供网络、端口、浮动 IP 和路由器网关 IP 的带宽限制。如果实现,任何超过指定率的流量都会被丢弃。
DSCP marking (dscp_marking)
使用不同的服务代码点(DSCP)值标记网络流量。

可以在各种上下文中强制实施 QoS 策略,包括虚拟机实例放置、浮动 IP 分配和网关 IP 分配。

根据强制上下文和您使用的机制驱动程序,QoS 规则会影响出口流量(从实例上传)、入口流量(下载至实例),或两者。

表 9.1. 按驱动程序支持流量方向(所有 QoS 规则类型)

规则

按机制驱动程序支持流量方向

ML2/OVS

ML2/SR-IOV

ML2/OVN

最小带宽

出口只 [4][5]

仅限出口

目前,不支持 [6]

带宽限制

Egress [1][2] 和 ingress

仅限出口 [3]

出口和入口

DSCP 标记

仅限出口

N/A

出口只 [7]

[1] OVS 出站带宽限制在 TAP 接口中执行,它是流量策略,而不是流量控制。

[2] 在 RHOSP 16.2.2 及更高版本中,使用 ip link 命令在网络接口中应用 QoS 策略,在硬件卸载端口上支持 OVS 出站带宽限制。

[3] 机制驱动程序忽略 max-burst-kbits 参数,因为它们不支持它。

[4] 规则仅适用于非隧道网络:扁平和 VLAN。

[5] 使用 ip link 命令在网络接口中应用 QoS 策略,在硬件卸载端口上支持 OVS 出口最小带宽。

[6] https://bugzilla.redhat.com/show_bug.cgi?id=2060310

[7] ML2/OVN 不支持在隧道协议上标记 DSCP。

表 9.2. 根据驱动程序支持流量方向进行放置报告和调度(仅最小带宽)

强制类型

根据方向机制驱动程序支持流量

ML2/OVS

ML2/SR-IOV

ML2/OVN

Placement

出口和入口

出口和入口

目前,不支持

表 9.3. 按驱动程序支持流量方向(仅限带宽限制)

强制类型

按机制驱动程序支持流量方向

ML2/OVS

ML2/OVN

浮动 IP

出口和入口

出口和入口

网关 IP

出口和入口

目前,不支持 [1]

[1] https://bugzilla.redhat.com/show_bug.cgi?id=2064185