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 实施,如 IEEE 802.1Qaz 中所述。

本主题将介绍如下内容:

分层调度层

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

表 1:分层调度层

Junos 配置构造

等效 ETS 构造

描述

转发类

优先级

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

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

转发类集

优先级组

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

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

您可以将计划属性应用于每个分层计划层,如下一节所述。

注意:

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

分层调度和 ETS

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

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

图 1:分层调度层 Network traffic model showing bandwidth allocation for port with unicast and multicast priority groups and queues for traffic management.

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

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

注意:

可用链路带宽是为优先级流提供服务 strict-high 后的剩余带宽。严格高优先级优先于所有其他流量。我们建议配置 整形速率 (QFX10000 交换机上的传输速率 ),以限制严格高优先级转发类可用于防止其他队列耗尽的最大带宽量。

DCBX 中的 ETS 通告

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

  • 每个优先级组

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

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

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

分层调度流程

分层调度由多个配置步骤组成,这些步骤用于创建优先级和优先级组,调度其资源并将其分配给接口。以下步骤对应于 图 2 所示数据包流图中的六个块:

  1. 数据包分类:

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

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

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

  3. 将资源分配给转发类:

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

    • 将资源映射到优先级。这包括使用调度器映射将转发类映射到调度器。

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

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

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

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

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

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

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

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

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

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

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

  • 我们建议始终对严格高优先级队列应用 整形速率 ,以限制严格高优先级队列可以使用的带宽量。如果不限制严格高优先级队列可以使用的带宽量,则严格高优先级队列可能会使用所有可用的端口带宽,并使端口上的其他队列耗尽。

默认分层调度

如果未显式配置分层调度,交换机将使用以下默认设置:

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

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

  • 默认转发类中的转发类(队列)根据默认调度器设置设置接收带宽。

特定于平台的分层调度行为

使用下表查看平台的特定于平台的行为。

表 2:特定于平台的分层调度行为

平台

差异

QFX10000 系列

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

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