18-PFC配置
本章节下载: 18-PFC配置 (201.33 KB)
PFC(Priority-based Flow Control,基于优先级的流量控制)功能是一种精细的流量控制机制,可以满足以太网流量传输的无丢包要求,通过以太网提供无损服务。
PFC功能基于802.1p优先级对报文进行流量控制。如图1-1所示,PFC允许在一条以太网链路上创建8个虚拟通道,并为每条虚拟通道指定一个802.1p优先等级。在不影响其他通道流量转发的情况下,任意一条虚拟通道都可以单独暂停和重启。通过此机制可以实现同一接口上多种类型流量共存、多种流量共享链路。
图1-1 PFC工作原理
当本端发生拥塞时,设备会根据本端收到报文的802.1p优先级进行判别,从而确定对报文的处理方式:
· 如果收到报文的802.1p优先级开启了PFC功能,则接收该报文,并向对端发送PFC PAUSE帧,通知对端设备暂时停止发送该类报文。对端设备在接收到PFC PAUSE帧后,将暂时停止向本端发送该类报文。当拥塞仍然存在时,此过程将重复进行,直至拥塞解除。
· 如果收到报文的802.1p优先级未开启PFC功能,则直接将报文丢弃。
用户可以在系统视图和接口视图下配置以太网接口PFC功能,多次在系统视图和接口视图下配置PFC功能,最后一次配置生效。
无论端口是否配置PFC功能,端口都可以接收PFC PAUSE帧。但只有PFC功能处于开启状态时,才对收到的PFC PAUSE进行处理。所以,必须保证本端和对端的PFC功能都处于开启状态,PFC功能才能生效。
为了避免报文在传输过程中因拥塞而发生丢包,请在报文流经的所有端口上都进行相同的PFC功能配置。
在IRF组网环境中配置本功能,需要注意:
· 不建议在802.1p优先级为0、6或7时配置PFC功能,以免影响设备IRF功能及其它协议正常运行。
· 设备处于IRF模式时,IRF物理端口也需要开启PFC功能。
有关IRF相关内容的详细介绍,请参见“虚拟化技术配置指导”中的“IRF”。
在Overlay网络中,需要配置qos trust tunnel-dot1p命令,PFC功能才能生效。有关Overlay网络的详细介绍,请参见“VXLAN配置指导”中的“VXLAN”。有关qos trust tunnel-dot1p命令的详细介绍,请参见“ACL和QoS命令参考”中的“优先级映射”。
system-view
(2) 开启所有接口的PFC功能。
priority-flow-control { auto | enable }
缺省情况下,PFC功能处于关闭状态。
(3) 开启所有接口的指定802.1p优先级的PFC功能。
priority-flow-control no-drop dot1p dot1p-list
缺省情况下,所有接口下802.1p优先级的PFC功能都处于关闭状态。
(4) 进入以太网接口视图。
interface interface-type interface-number
(5) 配置PFC功能的开启模式。
priority-flow-control { auto | enable }
缺省情况下,PFC功能处于关闭状态。
(6) 开启指定802.1p优先级的PFC功能。
priority-flow-control no-drop dot1p dot1p-list
缺省情况下,所有802.1p优先级的PFC功能都处于关闭状态。
当指定优先级的报文形成环路时,会导致数据缓冲区内报文无法转发,此时设备进入PFC死锁状态。
通过配置本功能,可以定期检测设备是否处于PFC死锁状态。在PFC死锁检测周期内,如果接口一直处于PFC XOFF状态,则设备进入PFC死锁状态。此时设备自动恢复时会在延迟周期结束后解除PFC死锁状态,恢复PFC功能和PFC死锁检测功能。在PFC死锁检测自动恢复的延迟周期内,设备将关闭PFC功能和PFC死锁检测功能,以便报文能够正常转发。
PFC死锁状态解除后,用户可采用自动或手工方式来恢复PFC死锁检测功能。恢复PFC死锁检测功能会让PFC功能继续生效。所以,通常情况下,使用自动恢复方式即可。当报文环路无法消除,设备频繁处于PFC死锁状态时,用户可以使用手工恢复方式,并尽快排除故障,再执行priority-flow-control deadlock recover命令,恢复PFC死锁检测功能和PFC功能。
指定的CoS值必须在priority-flow-control no-drop dot1p命令配置的802.1p优先级内。不同的CoS值对应不同的802.1p优先级,可以通过display qos map-table dot1p-lp命令查看。
用户需要在接口下开启PFC功能和指定802.1p优先级的PFC功能。
(1) 进入系统视图。
system-view
(2) 配置PFC死锁检测定时器的精度。
priority-flow-control deadlock precision { high | normal | low }
缺省情况下,PFC死锁检测定时器的精度为普通精度。
(3) 配置PFC死锁检测的周期。
priority-flow-control deadlock cos cos-value interval interval
缺省情况下,未配置PFC死锁检测的周期。
(4) 配置PFC死锁检测自动恢复的延迟周期。
priority-flow-control deadlock auto-recover cos cos-value delay delay-time
缺省情况下,未配置PFC死锁检测的恢复周期。
(5) 配置设备在自动恢复PFC死锁检测的延迟时间内对报文的处理动作。
priority-flow-control deadlock auto-recover action { discard | forwarding }
缺省情况下,设备在自动恢复PFC死锁检测的延迟时间内转发收到的数据报文。
(6) 配置在指定周期内发生PFC死锁的上限次数。
priority-flow-control deadlock threshold cos cos-value period period count count [ error-down ]
缺省情况下,未配置指定周期内发生PFC死锁的上限次数。
(7) 进入以太网接口视图。
interface interface-type interface-number
(8) 配置PFC死锁检测功能的恢复方式。
priority-flow-control deadlock recover-mode { auto | manual }
缺省情况下,PFC死锁检测功能恢复方式为自动恢复方式。
(9) 开启PFC死锁检测功能。
priority-flow-control deadlock enable
缺省情况下,PFC死锁检测功能处于关闭状态。
(10) (可选)手工恢复PFC死锁检测功能。
priority-flow-control deadlock recover
配置PFC死锁检测功能的恢复方式为manual时,只有配置本命令才能恢复PFC死锁检测功能。
用户可根据实际组网情况,配置接口入方向或者出方向PFC报文的预警门限。预警门限用于PFC报文传输速率处于正常范围内,但需要提醒用户提前关注的情况。
当接口接收或发送PFC报文的速率达到预警门限时,系统会生成Trap和日志信息来提醒用户,以提前发现网络中的一些异常问题。例如:
· 对端设备网卡故障,不停地持续高速发送PFC帧,可以配置入方向预警门限进行监控。
· 本设备故障后不停发送PFC帧,可以配置出方向预警门限进行监控。
· 如果有双向监控需求的,可以在入和出方向都配置预警门限进行监控。
仅当PFC功能处于开启状态时,才会统计该接口接收和发送的PFC帧数量,本功能配置的预警门限才能生效。
(1) 进入系统视图。
system-view
(2) 进入以太网接口视图。
interface interface-type interface-number
(3) 配置入方向PFC报文的预警门限。
priority-flow-control early-warning dot1p dot1p-list inpps pps-value缺省情况下,未配置入方向PFC报文的预警门限。
(4) 配置出方向PFC报文的预警门限。
priority-flow-control early-warning dot1p dot1p-list outpps pps-value缺省情况下,未配置出方向PFC报文的预警门限。
在完成上述配置后,在任意视图下执行display命令可以显示接口的PFC信息。
表1-1 以太网接口显示和维护
操作 |
命令 |
显示接口的PFC信息 |
display priority-flow-control interface [ interface-type [ interface-number ] ] |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!