本页内容
 

示例:配置静态和动态 ECN

此示例说明如何在输出队列上启用显式拥塞通知 (ECN)。

要求

此示例使用以下硬件和软件组件:

  • 一台支持 ECN 的设备。

注意:

使用 功能浏览器 确认对静态和动态 ECN 的平台和版本支持。

概述

ECN 支持在基于 TCP/IP 的网络上的两个端点之间发出端到端拥塞通知。这两个端点是启用 ECN 的发送方和启用 ECN 的接收方。必须在两个端点以及端点之间的所有中间设备上启用 ECN,ECN 才能正常工作。传输路径中不支持 ECN 的任何设备都会破坏端到端 ECN 功能

必须将加权随机早期检测 (WRED) 数据包丢弃配置文件应用于启用了 ECN 的输出队列。当输出队列遇到拥塞时,ECN 使用 WRED 丢弃配置文件阈值来标记数据包。

ECN 可以在网络拥塞期间转发支持 ECN 的数据包,而不是丢弃这些数据包,从而减少数据包丢失。(TCP 通过丢弃数据包来通知网络有关拥塞的情况。)在拥塞期间,ECN 会标记从拥塞队列中退出的支持 ECN 的数据包。当接收方收到标记为经历拥塞的 ECN 数据包时,接收方会将拥塞状态回显给发送方。然后,发送方降低其传输速率以清除拥塞。

默认情况下,ECN 处于禁用状态。您可以对尽力而为流量启用 ECN。无损流量队列使用基于优先级的流量控制 (PFC) 进行拥塞通知,不应在严格高优先级流量队列上启用 ECN。

有两种类型的 ECN 可用:静态 ECN 和动态 ECN。静态 ECN 要求您手动设置触发通知事件的阈值级别。动态 ECN 会根据队列长度和流量模式等实时条件自动调整阈值。

要在输出队列上启用 ECN,您不仅需要在队列调度器中启用 ECN,还需要:

  • 配置 WRED 数据包丢弃配置文件。

  • 配置包含 WRED 丢弃配置文件并启用 ECN 的队列调度器。(此示例仅显示 ECN 和丢包配置文件配置;您还可以在调度器中配置带宽、优先级和缓冲区设置。)

  • 将队列调度器映射到调度器图中的转发类(输出队列)。

  • 如果您使用的是增强型传输选择 (ETS) 分层调度,请将转发类添加到转发类集(优先级组)。

  • 如果您使用的是 ETS,请将队列调度器映射与流量控制配置文件(用于分层调度的优先级组调度器)相关联。

  • 如果您使用的是 ETS,请将流量控制配置文件和转发类集应用于接口。在该接口上,输出队列使用映射到转发类的调度器,如附加到流量控制配置文件的调度器图所指定。这将在队列上启用 ECN,并将 WRED 丢弃配置文件应用于队列。

    如果使用的是端口调度,请将调度器图应用于接口。在该接口上,输出队列使用映射到调度器映射中转发类的调度器,从而在队列上启用 ECN,并将 WRED 丢弃配置文件应用于队列。

表 1 显示了此示例的配置组件。

表 1:ECN 配置示例的组件

组件

设置

跌落曲线(具有两个填充液位/跌落概率对)

名称: be-dp丢弃开始填充级别: 30 百分比丢弃结束填充水平: 75 百分比丢弃开始时的丢弃概率(最小丢弃率): 0 百分比丢弃结束时的丢弃概率(最大丢弃率): 80 百分比

调度程序

名称: be-schedECN:已启用丢弃配置文件: be-dp传输速率: 25%缓冲区大小: 25%优先级: low

调度器图

名称: be-map转发类: best-effort调度器: be-sched

注意:

默认情况下, best-effort 转发类映射到输出队列 0。

转发类集(仅限 ETS)

名称: be-pg转发类: best-effort (队列 0)

流量控制配置文件(仅限 ETS)

名称: be-tcp调度器映射: be-map

接口(仅限 ETS)

名称: xe-0/0/20转发类集: be-pg(输出) 流量控制配置文件: be-tcp

接口(仅限端口调度)

名称: xe-0/0/20调度器映射: be-map

注意:

只有支持 ETS 分层调度的设备才支持转发类集和流量控制配置文件配置。直接端口调度不使用分层调度结构。

配置

CLI 快速配置

要快速配置丢弃配置文件、启用了 ECN 的调度器,以及将调度器映射到接口上的输出队列,请复制以下命令,将其粘贴到文本文件中,删除换行符,更改变量和详细信息以匹配您的网络配置,然后将命令复制粘贴到层次结构级别的 [edit] CLI 中。

ETS 快速配置

端口调度快速配置

配置静态 ECN

分步程序

要配置静态 ECN,请执行以下操作:

  1. 配置 WRED 数据包丢弃配置文件 be-dp。此示例使用丢弃起点 30 百分比、丢弃终点百分比 75 、最小丢弃率 0 百分比和最大丢弃率 80 百分比:

  2. 创建启用了 ECN 的调度程序 be-sched ,并将丢弃配置文件 be-dp 与调度程序相关联:

  3. 使用调度器映射be-map将调度器be-sched映射到best-effort转发类(输出队列 0):

  4. 如果您使用的是 ETS,请将转发类 best-effort 添加到转发类集中 be-pg;如果您使用的是直接端口调度,请跳过此步骤:

  5. 如果您使用的是 ETS,请将调度器图 be-map与流量控制配置文件 be-tcp相关联;如果您使用的是直接端口调度,请跳过此步骤:

  6. 如果您使用的是 ETS,请将流量控制配置文件 be-tcp 和转发类集 be-pg 与您希望在尽力服务队列上启用 ECN 的接口相关联:

    如果您使用的是直接端口调度,请将调度器映射 be-map 与您希望在尽力服务队列上启用 ECN 的接口相关联:

配置动态 ECN

分步程序

要配置动态 ECN:

  1. 请按照步骤配置静态 ECN。

  2. 启用动态 ECN 配置文件:

    下限和偏移值的范围从 0 到 524287。

    无需配置下限和偏移值。如果未选择任何值,则默认情况下将选择524287的最大值。

  3. 将动态 ECN 配置文件分配给接口:

验证

验证是否已启用 ECN

目的

通过显示调度器图be-map的配置,验证调度器be-sched中是否已启用 ECN 。

行动

使用操作模式命令 show class-of-service scheduler-map be-map显示调度器图配置:

意义

show class-of-service scheduler-map操作命令显示与调度器映射关联的调度器的配置以及映射到该调度器的转发类。输出显示:

  • 与调度器映射关联的调度器是 be-sched。

  • 调度器映射适用于转发类 best-effort (输出队列 0)。

  • 调度程序 be-sched 的传输速率为 25 百分比,队列缓冲区大小 25 为百分比,丢弃优先级为 low。

  • 显式拥塞通知状态为 enable。

  • 用于低丢弃优先级流量的 WRED 丢弃配置文件为 be-dp。