Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

了解 CoS 分层端口调度 (ETS)

调度定义了输出队列的服务等级 (CoS) 属性。输出队列映射到转发类。CoS 调度器属性包括分配给队列的接口带宽量、队列优先级以及与队列关联的丢弃配置文件。

分层端口调度是一个两层流程,可提供更好的端口带宽利用率和更大的灵活性,以将资源分配给队列(转发类)和队列组(转发类集)。分层调度包括增强型传输选择 (ETS) 的 Junos OS 实施,如 IEEE 802.1Qaz 所述。

本主题将介绍:

分层计划层

分层调度中使用的两个层级是优先级和优先级组,如 表 1 所示。

表 1:分层计划层

Junos OS 配置结构

等效 ETS 构造

描述

转发类

优先

将优先级(转发类)视为输出队列。您可以将转发类映射到队列,因此每个转发类都表示一个输出队列。

使用分类器将转发类映射到 IEEE 802.1p 代码点时,代码点将识别该流量对基于优先级的流控制 (PFC) 的优先级。因此,转发类、映射到转发类的队列和映射到转发类的优先级(代码点)都标识相同的流量。

转发类集

优先级组

优先级组(转发类集)是优先级组(转发类)。转发类集中的转发类成员身份定义每个优先级所属的优先级组。

最多可配置三个单播优先级组和一个组播优先级组。

您可将计划属性应用于下一节中说明的每个分层计划层。

注意:

如果在某个接口上显式配置一个或多个优先级组,则未分配给该接口上优先级组(转发类集)的任何优先级(转发类)将被分配给自动生成的默认优先级组,并且 不接收任何带宽。这意味着,如果在某个接口上配置层次调度,则您希望该接口上转发流量的每个转发类都必须属于一个转发类集。

分层调度和 ETS

两层分层调度允许您为每个优先级组和每个优先级定义 CoS 属性,从而高效管理带宽。分层调度器的第一层将端口带宽分配给优先级组。分层调度器的第二层用于确定优先级组带宽(队列)可以使用的部分。

一个优先级组的 CoS 属性定义了该优先级组中队列可用的端口带宽资源量。您为每个队列配置的 CoS 属性指定分配给优先级组的带宽中队列可用的带宽量。 图 1 显示了端口资源分配与优先级组的关系,以及优先级组资源分配与队列(优先级)的关系。

图 1:分层计划层 Hierarchical Scheduling Tiers

如果队列(优先级)未使用其分配的带宽,则 ETS 将未使用的带宽共享至该优先级组中的其他队列,其比例与为每个队列安排的最小保证速率(传输速率)成比例。如果某个优先级组未使用其分配的带宽,则 ETS 按照为每个优先级组安排的最低保证速率(保证速率)的比例在端口上的优先级组之间共享未使用的带宽。

通过这种方式,ETS 提高了链路带宽利用率,并为每个队列和每个优先级组提供最大可用带宽。例如,由突发流量组成的优先级可以在低流量传输期间共享带宽,而不是在流量负载较轻时保留其整个带宽分配。

注意:

可用链路带宽是处理优先级流后剩余的 strict-high 带宽。严格高优先级优先于所有其他流量。建议配置 整形速率 (QFX10000 交换机上的传输速率 ),以限制严格高优先级转发类可用于防止其他队列资源匮乏的最大带宽量。

DCBX 中的 ETS 广告

在端口上配置分层计划时,数据中心桥接功能交换协议 (DCBX) 播发:

  • 每个优先级组

  • 每个优先级组中的优先级

  • 每个优先级组和优先级的带宽属性

在端口上配置分层调度时,属于显式配置的优先级组之外的任何优先级都会分配给自动生成的默认优先级组,并且不会接收任何带宽。默认优先级组透明。它不会显示在配置中。

分层调度流程

分层计划包含多个配置步骤,用于创建优先级和优先级组、计划其资源以及将其分配给接口。以下步骤对应 图 2 所示数据包流图中的六个块:

  1. 数据包分类:

    • 将传入流量的分类配置为转发类别(优先级)。这包括使用默认分类器或配置分类器,以将代码点和丢失优先级映射到转发类。

    • 将分类器应用于入口接口或使用默认分类器。通过将分类器代码点映射应用于传入流量,将分类器应用于接口上传入流量的接口组,以转换为转发类和丢失优先级。

  2. 为转发类(优先级)配置输出队列。其中包括使用默认转发类和转发类到队列的映射,或者创建您自己的转发类并将其映射到输出队列。

  3. 为转发类分配资源:

    • 为优先级定义资源。其中包括对调度程序进行配置,以设置适用于转发类的最小保证带宽、最大带宽、加权随机早期检测 (WRED) 的丢弃配置文件和带宽优先级。按每个队列的最低保证带宽(传输速率)的比例在队列之间共享额外带宽。

    • 将资源映射到优先事项。其中包括使用调度器图将转发类映射到调度器。

  4. 配置优先级组。这包括将转发类(优先级)映射到转发类集(优先级组),以定义属于每个优先级组的优先级。

  5. 为优先级组定义资源。其中包括配置流量控制配置文件,以便为一个优先级组设置最小保证带宽(保证速率)和最大带宽(QFX10000 交换机以外的交换机上的整形 速率,QFX10000 交换机上的 传输速率 )。流量控制配置文件还指定了调度器图,用于定义映射到优先级组中优先级的资源(调度器)。额外端口带宽按照每个优先级组的最低保证带宽比例在优先级组之间共享。

    流量控制配置文件带宽设置决定了优先级组可用的端口资源。调度器图中指定的调度器决定了每个优先级接收的优先级组资源数量。

    注意:

    QFX10000 交换机不支持为优先级组定义整形速率。相反,通过定义传输速率为优先级组设置最大带宽。请参阅 传输速率

  6. 将分层调度应用于端口。它包括将一个或多个优先级组(转发类集)连接到一个接口。对于每个优先级组,您还可以附加一个流量控制配置文件,其中包含该优先级组的计划属性和该优先级组中的优先级。同一端口上的不同优先级组可以使用不同的流量控制配置文件,从而为每个接口上的每个队列提供经过微调的调度控制。

图 2:层次化调度数据包流 Hierarchical Scheduling Packet Flow

严格高优先级队列和层次化调度

如果配置严格高优先级队列,则必须遵守以下规则:

  • 您必须为严格高优先级队列创建单独的转发类集(优先级组)。

  • 只有一个转发类集可以包含严格的高优先级队列。

  • 严格高优先级队列不能属于与不严格高优先级的队列相同的转发类集。

  • 严格高优先级的队列不能属于多摄取转发类集。

  • 我们建议始终将 整形速率 (QFX10000 交换机上的传输速率 )应用于严格高优先级队列,以限制严格高优先级队列可以使用的带宽量。如果不限制严格高优先级队列可以使用的带宽量,则严格高优先级队列可以使用所有可用端口带宽,使端口上的其他队列匮乏。

注意:

在 QFabric 系统上,如果交换矩阵 (fte) 接口处理严格高优先级流量,则必须为严格高优先级流量定义单独的转发类集(优先级组)。严格高优先级流量不能与转发类集中其他优先级的流量混合。例如,您可以选择创建不同的转发类集,以实现尽力而为、无损、严格高优先级和多摄取流量。

默认分层调度

注意:

QFX10000 交换机上没有默认的分层调度。QFX10000 交换机默认使用端口计划,您必须显式配置分层计划以启用 ETS。此外,在 QFX10000 交换机上,从端口计划程序更改为 ETS,或从 ETS 更改为端口计划程序需要重新启动。

如果未显式配置分层计划,交换机将使用默认设置:

  • 交换机会自动创建一个默认转发类集,其中包含交换机上的所有转发类。交换机将 100% 的端口输出带宽分配给默认转发类集。默认的转发类集是透明的。它不会显示在配置中,用于数据中心桥接功能交换协议 (DCBX) 通告。

  • 入口流量根据默认分类器设置进行分类。

  • 默认转发类集中的转发类(队列)会基于默认调度器设置接收带宽。