本页内容
 

示例:跨 L3 接口配置 PFC

基于优先级的流控制 (PFC) 可在输出队列缓冲区充满到特定阈值时暂停传入流量,从而帮助确保跨 DCB 接口的无损传输。除了在 L2(桥接)接口上配置 PFC 之外,您还可以在遍历 L3 接口的 VLAN 标记流量上配置 PFC。这样,即使流量经过连接两个 L2 网络的 L3 接口,也可以保留 PFC 对 VLAN 标记流量提供的无损特性。

注意:

本主题仅适用于带有 VLAN 标记的流量。在支持的平台上,您还可以为 L3 接口和 L2 接入接口上的 未标记 流量配置基于 DSCP 的 PFC。基于 DSCP 的 PFC 根据映射到 3 位 PFC 优先级值的 6 位 DSCP 值使用 DSCP 分类器对流量进行分类。有关在支持交换机上配置基于 DSCP 的 PFC 的详细信息,请参阅 为第 3 层未标记流量配置基于 DSCP 的 PFC。

要求

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

  • 两台交换机

  • 任何受支持的 Junos 版本

  • 两台以太网主机

概述

如果网络中使用两台 QFX 系列交换机连接 L3 网络中两个不同以太网网络上的主机,要在 L2 和 L3 接口上配置 PFC,您必须:

  • 配置交换机上的 L2 和 L3 接口

  • 配置 VLAN 以在 L2 和 L3 网络之间传输流量

  • 在 L2 接口上配置集成路由和桥接 (IRB) 接口,以便将 L2 VLAN 流量移动到 L3

  • 配置适当的分类器并将其应用于接口

  • 在接口上配置并应用 CNP,以在要实现无损的流量上启用 PFC

    注意:

    在接口上配置或更改 PFC 会阻塞整个端口,直到 PFC 更改完成。PFC 更改完成后,端口将解除阻塞,流量将恢复。阻止端口将停止入口和出口流量,并导致端口上所有队列上的数据包丢失,直到端口解除阻塞。

  • 在接口上配置无损转发类以及分层端口调度(也称为增强型传输选择)或直接端口调度(具体取决于您的交换机)

注意:

PFC 根据以太网帧标头优先级代码点 (PCP) 字段中的 IEEE 802.1p 代码点(有时称为 CoS 位)在队列级别运行。因此,要启用 PFC 的 L3 接口上的 VLAN 标记流量必须使用 IEEE 802.1p 分类器来将传入流量映射到转发类和丢失优先级。如果您希望对带有 VLAN 标记的流量启用 PFC,则不能使用 DSCP 或 DSCP IPv6 分类器对 L3 流量进行分类。

拓扑结构

图 1 显示了此示例的拓扑结构。

图 1:跨第 3 层接口跃点 Enabling PFC Across Layer 3 Interface Hops启用 PFC

表 1 显示了此示例的配置组件。在两台交换机上,面向以太网主机的接口使用相同的接口名称和配置,而面向网络的第 3 层接口使用相同的接口名称和配置。

表 1:跨第 3 层接口拓扑的 PFC 组件

组件

设置

硬件

两台交换机,交换机 SW1 和交换机 SW2。两台以太网主机

L3 接口(xe-0/0/40 和 xe-0/0/41)和 VLAN

接口 xe-0/0/40:

  • 接口系列—inet

  • 接口 IP 地址 — 100.103.1.2/24

  • VLAN 标记 - 已启用

  • 接口 VLAN ID—103

接口 xe-0/0/41:

  • 接口系列—inet

  • 接口 IP 地址 - 100.104.1.2/24

  • VLAN 标记 - 已启用

  • 接口 VLAN ID — 104

L2 接口(xe-0/0/20 和 xe-0/0/21)和 VLAN 成员资格

系列: 以太网交换接口模式 - 中继接口 xe-0/0/20 VLAN 成员资格 - vlan105接口 xe-0/0/21 VLAN 成员资格 - vlan106

用于 IRB 接口的 VLAN

VLAN 单元 105 - 系列 inet,IP 地址 100.105.1.1/24VLAN 单元 106 - 系列 inet,IP 地址 100.106.1.1/24

L2 IRB 接口

接口 xe-0/0/20:

  • IRB 接口单元 - 105

  • IRB 接口家族—inet

  • IRB 接口 IP 地址 — 100.105.1.1/24

  • IRB 接口 VLAN ID — 105

  • L3 接口名称 — IRB.105

接口 xe-0/0/21:

  • IRB 接口单元—106

  • IRB 接口家族—inet

  • IRB 接口 IP 地址 - 100.106.1.1/24

  • IRB 接口 VLAN ID—106

  • L3 接口名称 — IRB.106

转发等级(两台交换机)

名称 - 无损 3队列映射 - 队列 3数据包丢弃属性 - 无丢失

名称 - 无损 4队列映射 - 队列 4数据包丢弃属性 - 无丢失

注意:

将转发类名称(无损和3 无损)4与队列号和分类的 IEEE 802.1p 代码点(优先级)匹配,可创建合乎逻辑且易于映射的配置,因为转发类、队列和优先级都使用相同的编号。

名称 - 所有其他队列映射 - 队列 0数据包丢弃属性 - 无

注意:

所有其他 转发 类用于遍历接口的尽力而为流量。

L2 接口 BA 分类器

名称 - 无损 3-4-ieee转发类 无损 - 映射到代码点 011(IEEE 802.1p 优先级 3)和低转发类 无损 4 的 PLP - 映射到代码点 100(IEEE 802.1p 优先级 4),PLP 为低

将 L2 IEEE 802.1p 分类器应用于 L2 和 L3 接口(xe-0/0/20、xe-0/0/21、xe-0/0/040 和 xe-0/0/41)。

CNP(PFC,两台交换机)

名称 - 在 IEEE 802.1p 代码点上启用的无损 cnpPFC - 011(无损 3 转发类和优先级)、100(无损 4 转发类和优先级)

将 CNP 应用于 L2 和 L3 接口(xe-0/0/20、xe-0/0/21、xe-0/0/040 和 xe-0/0/41),以便在 IEEE 802.1p 代码点 011 和 100 上启用 PFC。

增强型传输选择 (ETS) 分层端口调度(仅当使用 ETS 时)

分层端口调度 (ETS) 包括配置:

  • 用于为流量分配带宽的调度程序

  • 调度器映射到转发类

  • 转发类集中转发类(优先级)的分组(优先级组)

  • 用于为转发类集分配带宽并将转发类集与调度器映射相关联的 TCP

分层端口调度还包括将分层调度器(在 TCP 中定义)应用于接口。

此示例重点介绍如何跨 L2 和 L3 接口配置 PFC。为了保持这一点重点,此示例包含配置分层端口调度所需的 CLI 语句,但不包括配置的描述性说明。 “相关文档” 部分提供了示例文档的链接,这些文档介绍了如何配置分层端口调度。

将调度配置应用于 L2 和 L3 接口(xe-0/0/20、xe-0/0/21、xe-0/040 和 xe-0/0/41)。

直接端口调度(仅当使用端口调度而非 ETS 时)

直接端口调度包括配置:

  • 用于为流量分配带宽的调度程序

  • 调度器映射到转发类

端口调度还包括将调度器图应用于接口。

此示例重点介绍如何跨 L2 和 L3 接口配置 PFC。为了保持这一点重点,此示例包含配置直接端口调度所需的 CLI 语句,但不包括配置的描述性说明。 “相关文档” 部分提供了指向示例文档的链接,这些文档显示了如何配置端口调度。

将调度配置应用于 L2 和 L3 接口(xe-0/0/20、xe-0/0/21、xe-0/040 和 xe-0/0/41)。

配置

CLI 快速配置

要跨 L3 接口配置 PFC,请复制以下命令,将其粘贴到文本文件中,移除换行符,更改变量和详细信息以匹配您的网络配置,然后将命令复制粘贴到 [edit] 层次结构级别的 CLI 中。相同的配置适用于交换机 SW1 和交换机 SW2。该配置分为 ETS 和直接端口调度通用的配置,以及仅适用于 ETS 和仅适用于端口调度的配置部分。

通用配置(适用于 ETS 分层调度和端口调度)

ETS 分层调度配置

此示例的特定于 ETS 的部分配置转发类集(优先级组)成员资格和优先级组 CoS 设置 (TCP),并将优先级组及其 CoS 配置分配给接口。

端口调度配置

此示例的特定于端口调度的部分将调度器图(用于设置调度器图中转发类的 CoS 处理)分配给接口。

通用配置(适用于 ETS 分层调度和端口调度)

分步程序

以下过程显示如何配置 VLAN、IRB 接口、无损转发类、分类器、PFC 设置以跨 L3 接口启用 PFC,以及 ETS 和直接端口调度通用的队列调度配置。为完整起见,以下过程中单独包含 ETS 分层端口调度和直接端口调度配置,但没有解释性文本。有关配置的调度元素的详细示例,请参阅 相关文档 链接。

  1. 配置 L3 接口 VLAN 和 IP 地址:

  2. 配置 L2 接口 VLAN 成员资格和接口模式:

  3. 配置 IRB 接口和 VLAN,以便跨 L3 传输分配给 VLAN vlan105(接口 xe-0/0/20 是其成员)和 vlan106(接口 xe-0/0/21 是其成员)的传入 L2 流量:

  4. 为可能使用接口的任何其他流量配置无损转发类和 BE 转发类:

  5. 为 L2 和 L3 接口配置 IEEE 分类器,以便根据流量的 IEEE 802.1p 代码点将传入流量分类为无损转发类:

  6. 配置 CNP 以在无损优先级(映射到 IEEE 802.1p 代码点 3 和 4 的无损转发类)上启用 PFC:

  7. 将 L2 IEEE 802.1p 分类器和 CNP 应用于 L3 接口:

  8. 将 L2 IEEE 802.1p 分类器和 CNP 应用于 L2 接口:

  9. 配置队列调度以支持无损配置,并将调度器映射到转发类:

ETS 分层调度配置

分步程序

  1. 配置分层调度以支持无损配置,并将其应用于 L2 和 L3 接口:

端口调度配置

分步程序

  1. 应用端口调度以支持接口上的无损配置:

结果

显示接口、VLAN 和 CoS 配置的结果。系统仅显示显式配置的参数;它不显示默认参数。结果对交换机 SW1 和交换机 SW2 都有效,因为两台交换机上使用的配置相同。结果来自 ETS 分层调度配置,该配置显示了更复杂的配置。直接端口调度结果不会显示配置的 TCP 或转发类集部分,但会在每个接口下显示调度器图的名称。除此之外,结果是一样的。

显示接口配置的结果:

显示 VLAN 配置的结果:

显示 CoS 配置的结果:

提示:

要快速配置交换机,请发出 load merge terminal 命令,然后复制层次结构并将其粘贴到交换机终端窗口中。

验证

要验证是否已创建跨 L3 接口的 PFC 配置以及是否可以正常运行,请执行以下任务:

验证接口配置

目的

验证是否已在交换机上创建 L2 以太网接口、L3 IP 接口、IRB 接口和 VLAN 接口,并且配置正确。

行动

使用以下 show configuration interfaces 命令显示交换机接口配置:

意义

命令 show configuration interfaces 将显示交换机上配置的所有接口。命令输出显示:

  • 接口 xe-0/0/20 和 xe-0/0/21 是中继接口模式下的以太网接口(以太网交换家族)。接口 xe-0/0/20 是 VLAN vlan105 的成员,接口 xe-0/0/21 是 VLAN vlan106 的成员。

  • 接口 xe-0/0/40 和 xe-0/0/41 是启用了 VLAN 标记的 IP 接口(族式 inet)。接口 xe-0/0/40 的 IP 地址为 100.103.1.2/24,VLAN ID 为 103。接口 xe-0/0/41 的 IP 地址为 100.104.1.2/24,VLAN ID 为 104。

  • 配置了两个 IRB 接口,IP 地址为 100.105.1.1/24 的 IRB 单元 105 和 IP 地址为 100.106.1.1/24 的 IRB 单元 106。

  • 配置了两个 VLAN 接口:IP 地址为 100.105.1.1/24 的 VLAN 单元 105(用于 IRB 接口单元 105)和 IP 地址为 100.106.1.1/24 的 VLAN 单元 106(用于 IRB 接口单元 106)。

验证 VLAN 配置

目的

验证是否已在交换机上创建 VLAN 并配置正确。

行动

使用以下 show configuration vlans 命令显示 VLAN 配置:

意义

该 show configuration vlans 命令将显示交换机上配置的所有 VLAN。命令输出显示:

  • VLAN vlan105 已在 IRB 接口 irb.105 上配置了 VLAN ID 105。

  • VLAN vlan106 已在 IRB 接口 irb.106 上配置了 VLAN ID 106。

验证 PFC 配置 (CNP)

目的

验证是否已在 CNP 中的正确 IEEE 802.1p 代码点(优先级)上启用 PFC。

行动

使用以下 show configuration class-of-service congestion-notification-profile 命令显示 PFC 配置:

意义

该 show configuration class-of-service congestion-notification-profile 命令将显示交换机上配置的所有 CNP。命令输出显示:

  • 交换机上配置了指定的 lossless-cnp CNP。

  • CNP lossless-cnp 可在 IEEE 802.1p 代码点 100 和 100 上启用 PFC。

验证转发类配置

目的

验证交换机上是否已配置两个无损转发类和 BE 转发类。

行动

使用以下 show configuration class-of-service forwarding-classes 命令显示转发类配置:

意义

该 show configuration class-of-service forwarding-classes 命令显示交换机上配置的所有转发类。不显示默认转发类。命令输出显示:

  • 转发类 lossless-3 映射到队列 3,并配置为无损转发类( no-loss 应用属性)

  • 转发类 lossless-4 映射到队列 4,并配置为无损转发类( no-loss 应用属性)

  • 转发类 all-others 映射到队列 0。它不是无损转发类( no-loss 不应用该属性)。

验证分类器配置

目的

验证交换机上是否已配置 IEEE 802.1p 分类器。

行动

使用以下 show configuration class-of-service classifiers 命令显示分类器配置:

意义

该show configuration class-of-service classifiers命令显示交换机上配置的所有分类器。命令输出显示,L2 IEEE 802.1p 分类器lossless-3-4-ieee将代码点为 011 的流量分类到丢失优先级为 low的转发类中lossless-3,并将代码点 100 的流量分类到丢失优先级为 low的转发类中lossless-4。

验证接口 CoS 配置(分层调度、PFC 和到接口的分类器映射)

目的

验证接口是否具有正确的分层调度、PFC 和分类器配置。

注意:

结果来自 ETS 分层调度配置,该配置显示了更复杂的配置。直接端口调度结果不会显示接口配置的 TCP 或转发类集部分,而是显示每个接口下的调度器图的名称。

行动

使用以下 show configuration class-of-service interfaces 命令显示接口 CoS 配置:

意义

该 show configuration class-of-service interfaces 命令将显示交换机接口上配置的所有 CoS 组件。命令输出显示:

  • L2 以太网接口 xe-0/0/20 和 xe-0/0/21 上的配置包括:

    • 分层调度 — 将用无损流量的 TCP lossless_tcp 设置lossless_fc_set的转发类和尽力而为流量的 TCP all-others_tcp 设置all-others_fc_set的转发类应用于这两个接口。

    • PFC — lossless-cnp CNP 应用于两个接口。

    • 分类器 — L2 IEEE 802.1p 分类器 lossless-3-4-ieee 应用于两个接口。

  • L3 IP 接口 xe-0/0/40 和 xe-0/0/41 上的配置包括:

    • 分层调度 — 将用无损流量的 TCP lossless_tcp 设置lossless_fc_set的转发类和尽力而为流量的 TCP all-others_tcp 设置all-others_fc_set的转发类应用于这两个接口。

    • PFC — lossless-cnp CNP 应用于两个接口。

    • 分类器 — L2 IEEE 802.1p 分类器 lossless-3-4-ieee 应用于两个接口。如果已配置 DSCP 或 DSCP IPv6 分类器,则使用 IEEE 802.1p 分类器的流量。使用 IEEE 802.1p 分类器允许接口使用 PFC 在拥塞期间暂停流量,以防止数据包丢失。