示例:配置 DCBX 应用协议 TLV 交换
数据中心桥接能力交换协议 (DCBX) 通过交换应用程序配置信息,发现连接对等方的数据中心桥接 (DCB) 功能。DCBX 检测到功能配置不当和不匹配,可在对等方上配置 DCB。DCBX 是链路层发现协议 (LLDP) 的扩展。LLDP 必须在您希望使用 DCBX 的每个接口上保持启用。
所有接口均默认启用 LLDP 和 DCBX。
该交换机支持 DCBX 应用程序协议交换,用于第 2 层 和第 4 层 应用程序,例如互联网小型计算机系统接口 (iSCSI)。您可通过 EtherType(适用于第 2 层 应用程序)或目标端口和协议指定应用程序(对于第 4 层 应用程序;协议可以是 TCP 或 UDP)。
在某些情况下,交换机处理以太网光纤通道 (FCoE) 应用程序协议交换的方式不同于其他协议:
如果 FCoE 是唯一要在接口上启用 DCBX 应用协议 TLV 交换的应用程序,则不必显式配置 FCoE 应用程序或应用程序映射。默认情况下,交换机在所有接口上交换 FCoE 应用协议 TLV,这些接口承载 FCoE 流量(流量映射到
fcoe
转发类),并在 FCoE 优先级(FCoE IEEE 802.1p 代码点)上启用基于优先级的流量控制 (PFC)。FCoE 应用程序的默认优先级映射是 IEEE 802.1p 代码点 011(默认fcoe
转发类代码点)。如果您希望接口使用 DCBX 为除 FCoE 以外的任何其他应用程序交换应用程序协议 TLV,则必须配置应用程序(包括 FCoE)、定义应用程序映射(包括 FCoE),并将应用程序映射应用映射应用到接口。如果将应用程序映射应用映射应用于接口,则必须显式配置 FCoE 应用程序,或者接口不会交换 FCoE 应用协议 TLV。
此示例说明如何通过配置一个接口来交换 iSCSI 和 FCoE 应用程序协议信息并配置另一个接口来交换 iSCSI 和精确时间协议 (PTP) 应用程序协议信息,从而配置接口以交换 第 2 层和第 4 层应用程序。
要求
此示例使用以下硬件和软件组件:
瞻博网络 QFX 系列设备
QFX 系列的 Junos OS 12.1 或更高版本
概述
交换机支持 DCBX 应用程序协议交换,以实现:
由 EtherType 定义的 2 层应用程序
第 4 层应用程序,由目标端口和协议定义
DCBX 还通告 PFC 和增强型传输选择 (ETS) 信息。请参阅 配置 DCBX 自动协商 ,了解 DCBX 如何协商和播发这些功能和应用程序的配置信息。
DCBX 按接口配置,以用于每个受支持的功能或应用程序。对于要为 DCBX 应用协议交换启用的应用程序,您必须:
定义应用程序名称并配置应用程序的 EtherType 或应用程序的目标端口和协议(TCP 或 UDP)。将 EtherType 用于第 2 层应用程序,并使用第 4 层协议的目标端口和协议。
将应用程序映射到应用程序映射中的 IEEE 802.1p 代码点。
将应用程序映射添加到 DCBX 接口。
此外,对于所有应用程序(包括 FCoE,即使您不使用应用程序映射),您也必须创建 IEEE 802.1p 分类器并将其应用到相应的入口接口或使用默认分类器。分类器将传入信息流的代码点映射到转发类和丢失优先级,以便将入口流量分配给正确的服务等级 (CoS)。转发类确定出口接口上的输出队列。
如果不创建分类器,中继和标记访问端口将使用单播 IEEE 802.1 默认可信分类器。 表 1 显示 IEEE 802.1 代码点值到中继模式或标记访问模式端口的单播转发类和丢失优先级的默认映射。 表 2 显示接入模式下端口的默认不可信分类器 IEEE 802.1 代码点值到单播转发类映射。
代码点 |
转发类 |
丢失优先级 |
---|---|---|
是 (000) |
尽力服务 |
低 |
be1 (001) |
尽力服务 |
低 |
ef (010) |
尽力服务 |
低 |
ef1 (011) |
fcoe |
低 |
af11 (100) |
无损 |
低 |
af12 (101) |
尽力服务 |
低 |
nc1 (110) |
网络控制 |
低 |
nc2 (111) |
网络控制 |
低 |
代码点 |
转发类 |
丢失优先级 |
---|---|---|
000 |
尽力服务 |
低 |
001 |
尽力服务 |
低 |
010 |
尽力服务 |
低 |
011 |
尽力服务 |
低 |
100 |
尽力服务 |
低 |
101 |
尽力服务 |
低 |
110 |
尽力服务 |
低 |
111 |
尽力服务 |
低 |
拓扑
此示例说明如何在两个接口上为三个协议(iSCSI、PTP 和 FCoE)配置 DCBX 应用协议交换。一个接口交换 iSCSI 和 FCoE 应用程序协议信息,另一个接口交换 iSCSI 和 PTP 应用程序协议信息。
您必须将 FCoE 流量映射到要转发 FCoE 流量的接口。您还必须在 FCoE 接口上启用 PFC,并为 FCoE 流量创建入口分类器,或者使用默认分类器。
表 3 显示了此示例的配置组件。
组件 |
设置 |
---|---|
硬件 |
QFX 系列设备 |
LLDP |
默认启用以太网接口 |
DCBX |
默认启用以太网接口 |
iSCSI 应用(第 4 层) |
应用程序名称 — 协议 — 目标端口 — 代码点 — |
PTP 应用(第 2 层) |
应用程序名称 — 以太类型 — 代码点 — |
FCoE 应用(第 2 层) |
应用程序名称 — 以太类型 — 代码点 —
注意:
您可以显式配置 FCoE 应用程序,因为您正在将应用程序映射应用到接口。将应用程序映射应用映射应用到接口时,必须在应用程序映射中显式配置和包含所有应用程序。 |
应用程序图 |
|
接口 |
|
用于 FCoE 应用程序交换的 PFC 拥塞通知配置文件 |
|
行为聚合分类器(通过数据包的 IEEE 802.1 代码点将转发类映射到传入数据包) |
|
此示例不包括 iSCSI 转发类的调度(带宽分配)配置或无损配置。
配置
CLI 快速配置
要快速配置 DCBX 应用程序协议交换,请复制以下命令,将其粘贴到文本文件中,删除换行符,更改变量和详细信息以匹配您的网络配置,然后将命令复制并粘贴到层次结构级别的 [edit]
CLI 中。
set applications application iSCSI protocol tcp destination-port 3260 set applications application FCoE ether-type 0x8906 set applications application PTP ether-type 0x88F7 set policy-options application-maps dcbx-iscsi-fcoe-app-map application iSCSI code-points 111 set policy-options application-maps dcbx-iscsi-fcoe-app-map application FCoE code-points 011 set policy-options application-maps dcbx-iscsi-ptp-app-map application iSCSI code-points 111 set policy-options application-maps dcbx-iscsi-ptp-app-map application PTP code-points [001 101] set protocols dcbx interface xe-0/0/10 application-map dcbx-iscsi-fcoe-app-map set protocols dcbx interface xe-0/0/11 application-map dcbx-iscsi-ptp-app-map set class-of-service congestion-notification-profile fcoe-cnp input ieee-802.1 code-point 011 pfc set class-of-service interfaces xe-0/0/10 congestion-notification-profile fcoe-cnp set class-of-service classifiers ieee-802.1 fcoe-iscsi-cl1 import default forwarding-class fcoe loss-priority high code-points 011 set class-of-service classifiers ieee-802.1 fcoe-iscsi-cl1 import default forwarding-class network-control loss-priority high code-points 111 set class-of-service classifiers ieee-802.1 iscsi-ptp-cl2 import default forwarding-class network-control loss-priority low code-points 111 set class-of-service classifiers ieee-802.1 iscsi-ptp-cl2 import default forwarding-class best-effort loss-priority low code-points [001 101] set class-of-service interfaces xe-0/0/10 unit 0 classifiers ieee-802.1 fcoe-iscsi-cl1 set class-of-service interfaces xe-0/0/11 unit 0 classifiers ieee-802.1 iscsi-ptp-cl2
配置 DCBX 应用协议 TLV 交换
逐步过程
要定义应用程序,请将应用程序映射到 IEEE 802.1p 代码点,将应用程序应用应用于接口,并创建 DCBX 应用程序协议交换分类器:
通过指定协议和目标端口来定义 iSCSI 应用程序,并通过指定 EtherTypes 来定义 FCoE 和 PTP 应用程序。
[edit applications] user@switch# set application iSCSI protocol tcp destination-port 3260 user@switch# set application FCoE ether-type 0x8906 user@switch# set application PTP ether-type 0x88F7
定义将 iSCSI 和 FCoE 应用程序映射到 IEEE 802.1p 代码点的应用程序映射。
[edit policy-options] user@switch# set application-maps dcbx-iscsi-fcoe-app-map application iSCSI code-points 111 user@switch# set application-maps dcbx-iscsi-fcoe-app-map application FCoE code-points 011
定义将 iSCSI 和 PTP 应用程序映射到 IEEE 802.1p 代码点的应用程序映射。
[edit policy-options] user@switch# set application-maps dcbx-iscsi-ptp-app-map application iSCSI code-points 111 user@switch# set application-maps dcbx-iscsi-ptp-app-map application PTP code-points [001 101]
将 iSCSI 和 FCoE 应用程序映射应用映射应用于接口
xe-0/0/10
,并将 iSCSI 和 PTP 应用程序映射应用于接口xe-0/0/11
。[edit protocols dcbx] user@switch# set interface xe-0/0/10 application-map dcbx-iscsi-fcoe-app-map user@switch# set interface xe-0/0/11 application-map dcbx-iscsi-ptp-app-map
创建拥塞通知配置文件以在 FCoE 代码点 (
011
) 上启用 PFC,并将拥塞通知配置文件应用到接口xe-0/0/10
。[edit class-of-service] user@switch# set congestion-notification-profile fcoe-cnp input ieee-802.1 code-point 011 pfc user@switch# set interfaces xe-0/0/10 congestion-notification-profile fcoe-cnp
配置分类器以应用于交换 iSCSI 和 FCoE 应用程序信息的接口。
[edit class-of-service classifiers] user@switch# set ieee-802.1 fcoe-iscsi-cl1 import default forwarding-class fcoe loss-priority high code-points 011 user@switch# set ieee-802.1 fcoe-iscsi-cl1 import default forwarding-class network-control loss-priority high code-points 111
配置分类器以应用于交换 iSCSI 和 PTP 应用程序信息的接口。
[edit class-of-service classifiers] user@switch# set ieee-802.1 iscsi-ptp-cl2 import default forwarding-class network-control loss-priority low code-points 111 user@switch# set ieee-802.1 iscsi-ptp-cl2 import default forwarding-class best-effort loss-priority low code-points [001 101]
将分类器应用于相应的接口。
[edit class-of-service] user@switch# set interfaces xe-0/0/10 unit 0 classifiers ieee-802.1 fcoe-iscsi-cl1 user@switch# set interfaces xe-0/0/11 unit 0 classifiers ieee-802.1 iscsi-ptp-cl2
验证
要验证 DCBX 应用程序协议交换配置是否已创建并正常运行,请执行以下任务:
验证应用程序配置
目的
验证 DCBX 应用程序是否已配置。
行动
使用配置模式命令 show applications
列出应用程序:
user@switch# show applications application iSCSI { protocol tcp; destination-port 3260; } application fcoe { ether-type 0x8906; } application ptp { ether-type 0x88F7; }
意义
show applications
配置模式命令列出了所有配置的应用程序及其协议和目标端口(第 4 层应用程序)或其 EtherType(第 2 层应用程序)。命令输出显示,iSCSI 应用程序配置了tcp
协议和目标端口3260
,FCoE 应用程序配置了 EtherType0x8906
,并且 PTP 应用程序配置了 EtherType0x88F7
。
验证应用程序地图配置
目的
验证应用程序图是否已配置。
行动
使用配置模式命令 show policy-options application-maps
列出应用程序图:
user@switch# show policy-options application-maps dcbx-iscsi-fcoe-app-map { application iSCSI code-points 111; application FCoE code-points 011; } dcbx-iscsi-ptp-app-map { application iSCSI code-points 111; application PTP code-points [001 101]; }
意义
show policy-options application-maps
配置模式命令列出了所有配置的应用程序图和属于每个应用程序映射的应用程序。命令输出显示有两个应用程序图, dcbx-iscsi-fcoe-app-map
和 dcbx-iscsi-ptp-app-map
。
应用程序映射 dcbx-iscsi-fcoe-app-map
包括映射到 IEEE 802.1p 代码点 111
的 iSCSI 应用程序和映射到 IEEE 802.1p 代码点 011
的 FCoE 应用程序。
应用程序地图dcbx-iscsi-ptp-app-map
由映射到 IEEE 802.1p 代码点的 iSCSI 应用程序和映射到 IEEE 802.1p 代码点111
001
的 101
PTP 应用程序组成。
验证 DCBX 应用程序协议交换接口配置
目的
验证应用程序图是否已应用于正确的接口。
行动
使用配置模式命令 show protocols dcbx
列出应用程序图:
user@switch# show protocols dcbx interface xe-0/0/10.0 { application-map dcbx-iscsi-fcoe-app-map; } interface xe-0/0/11.0 { application-map dcbx-iscsi-ptp-app-map; }
意义
show protocols dcbx
配置模式命令列出了接口是否为 DCBX 启用,并列出了应用于每个接口的应用程序映射。命令输出显示接口xe-0/0/10.0
并为 DCBX 启用,并且该接口xe-0/0/10.0
使用应用程序映射dcbx-iscsi-fcoe-app-map
,并且接口xe-0/0/11.0
使用应用程序映射dcbx-iscsi-ptp-app-map
xe-0/0/11.0
。
验证 PFC 配置
目的
验证 PFC 是否已在 FCoE 代码点上启用并应用于正确的接口。
行动
显示 PFC 配置,以使用配置模式命令show class-of-service congestion-notification-profile
验证拥塞通知配置文件fcoe-cnp
中的 FCoE 代码点 (011
) 是否启用了 PFC:
user@switch# show class-of-service congestion-notification-profile fcoe-cnp { input { ieee-802.1 { code-point 011 { pfc; } } } }
显示服务等级 (CoS) 接口信息,以验证正确接口是否已使用配置模式命令 show class-of-service interfaces
为 FCoE 应用程序启用 PFC:
user@switch# show class-of-service interfaces xe-0/0/10 { congestion-notification-profile fcoe-cnp; }
示例输出不包括此命令可以显示的所有信息。输出缩写为专注于验证 PFC 配置。
意义
show class-of-service congestion-notification-profile
配置模式命令列出了配置的拥塞通知配置文件。命令输出显示拥塞通知配置文件fcoe-cnp
已配置并已在 IEEE 802.1p 代码点(默认 FCoE 代码点011
)上启用 PFC。
配置 show class-of-service interfaces
模式命令显示接口 CoS 配置。命令输出显示,在 FCoE 代码点上启用 PFC 的拥塞通知配置文件 fcoe-cnp
应用于接口 xe-0/0/10
。
验证分类器配置
目的
验证分类器是否已配置并应用于正确的接口。
行动
使用配置模式命令 show class-of-service
显示分类器配置:
user@switch# show class-of-service classifiers { ieee-802.1 fcoe-iscsi-cl1 { import default; forwarding-class network-control { loss-priority high code-points 111; } forwarding-class fcoe { loss-priority high code-points 011; } } ieee-802.1 iscsi-ptp-cl2 { import default; forwarding-class network-control { loss-priority low code-points 111; } forwarding-class best-effort { loss-priority low code-points [ 001 101 ]; } } } interfaces { xe-0/0/10 { congestion-notification-profile fcoe-cnp; unit 0 { classifiers { ieee-802.1 fcoe-iscsi-cl1; } } } xe-0/0/11 { unit 0 { classifiers { ieee-802.1 iscsi-ptp-cl2; } } } }
示例输出不包括此命令可以显示的所有信息。输出缩写为专注于验证分类器配置。
意义
配置 show class-of-service
模式命令列出了分类器和 CoS 接口配置,以及本示例中未显示的其他信息。命令输出显示配置了两个分类器 fcoe-iscsi-cl1
和 iscsi-ptp-cl2
。
分类器 fcoe-iscsi-cl1
使用 default
分类器作为模板,并根据以下内容编辑模板:
转发类
network-control
设置为丢失优先级high
,并映射到代码点111
(映射到 iSCSI 应用程序的代码点)。转发类
fcoe
设置为丢失优先级high
,并映射到代码点011
(默认映射到 FCoE 应用程序的代码点)。
分类器 iscsi-ptp-cl2
使用 default
分类器作为模板,并根据以下内容编辑模板:
转发类
network-control
设置为丢失优先级low
,映射到 IEEE 802.1p 代码点111
(映射到 iSCSI 应用程序的代码点)。转发类
best-effort
设置为丢失优先级low
,映射到 IEEE 802.1p 代码点001
和101
(默认映射到 PTP 应用程序的代码点)。
命令输出还显示,分类器 fcoe-iscsi-cl1
映射到接口 xe-0/0/10.0
,并将分类器 iscsi-ptp-cl2
映射到接口 xe-0/0/11.0
。