配置静态BFD for CR-LSP
配置静态BFD for CR-LSP,快速检测到CR-LSP的故障,并及时通知转发层面,从而保证流量的快速切换。
配置入节点BFD参数
背景信息
可以在入节点上配置的BFD参数包括本地标识符、远端标识符、本地发送BFD报文的时间间隔、本地允许接收BFD报文的时间间隔和本地BFD检测倍数等,这些将会影响会话的建立。
请在MPLS TE隧道入节点进行如下配置。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令bfd cfg-name bind mpls-te interface tunnel interface-number te-lsp [ backup ],配置BFD会话绑定指定Tunnel的主用或备用CR-LSP。
指定参数backup表示BFD会话绑定备用CR-LSP。
- 执行命令discriminator local discr-value,配置本地标识符。
- 执行命令discriminator remote discr-value,配置远端标识符。
- (可选)执行命令min-tx-interval interval,调整本地发送BFD报文的时间间隔。
缺省值为1000毫秒。
- (可选)执行命令min-rx-interval interval,调整本地允许接收BFD报文的时间间隔。
缺省值为1000毫秒。
- (可选)执行命令detect-multiplier multiplier,调整本地BFD检测倍数。
缺省情况下,本地检测倍数为3。
本地BFD报文实际发送时间间隔=MAX { 本地配置的发送时间间隔,对端配置的接收时间间隔 };本地实际接收时间间隔=MAX { 对端配置的发送时间间隔,本地配置的接收时间间隔 };本地实际检测时间=本地实际接收时间间隔×对端配置的BFD检测倍数。
例如,
本地配置的发送时间间隔为200ms,配置的接收时间间隔为300ms,检测倍数为4
对端配置的发送时间间隔为100ms,配置的接收时间间隔为600ms,检测倍数为5
则:
本地实际的发送时间间隔为MAX { 200ms,600ms }=600ms,实际接收时间间隔为MAX { 100ms,300ms }=300ms,实际检测时间间隔为300ms×5=1500ms
对端实际的发送时间间隔为MAX { 100ms,300ms }=300ms,实际接收时间间隔为MAX { 200ms,600ms }=600ms,实际检测时间间隔为600ms×4=2400ms
- 执行命令process-pst,使能系统在BFD会话状态变化时修改端口状态表功能。
该命令的功能是BFD会话状态变化时通知应用协议进行主备CR-LSP之间的快速切换。
- 执行命令notify neighbor-down,配置BFD会话检测到故障时通知上层协议的方式。
当采用BFD检测链路故障时,通常出现以下任何一种情况均会通知上层协议链路故障:
- BFD会话在检测时间超时后通知上层协议:BFD会话需要在两端配置,如果一端的BFD会话没有收到对端发来的BFD报文,则会认为链路发生了故障,此时BFD会话将此故障信息通知给上层协议。
- BFD会话在检测到邻居Down后通知上层协议:配置BFD会话一端检测到了邻居Down,则此时无需等到检测超时,而是直接将邻居Down的故障信息通知上层协议。
而对于BFD检测LSP链路,用户只关心本端到对端链路是否故障,无需关注对端到本端的链路状态。这时只需通过命令notify neighbor-down设置BFD会话检测到的邻居Down故障通知上层协议,从而防止由于BFD会话在检测时间超时通知上层协议导致的业务切换,影响正常业务。
- 执行命令commit,提交配置。
配置出节点BFD参数
背景信息
可以在出节点上配置的BFD参数包括本地标识符、远端标识符、本地发送BFD报文的时间间隔、本地允许接收BFD报文的时间间隔和本地BFD检测倍数等,这些将会影响会话的建立。
请在MPLS TE隧道出节点进行如下配置。
操作步骤
- 执行命令system-view,进入系统视图。
- 配置向入节点通告故障的反向通道,反向通道可以是IP链路、LSP或者TE隧道。为了保证BFD报文往返路径一致,一般情况下反向通道优先选用CR-LSP。根据实际需要选择如下配置之一:
IP链路:执行命令bfd session-name bind peer-ip ip-address [ vpn-instance vpn-name ] [ interface interface-type interface-number] [ source-ip ip-address ]
LDP LSP:执行命令bfd session-name bind ldp-lsp peer-ip ip-address nexthop ip-address [ interface interface-type interface-number ]
静态LSP:执行命令bfd session-name bind static-lsp lsp-name
CR-LSP:执行命令bfd session-name bind mpls-te interface tunnel interface-number te-lsp [ backup ]
TE隧道:执行命令bfd session-name bind mpls-te interface tunnel interface-number
- 执行命令discriminator local discr-value,配置本地标识符。
- 执行命令discriminator remote discr-value,配置远端标识符。
- (可选)执行命令min-tx-interval interval,调整本地发送BFD报文的时间间隔。
缺省值为1000毫秒。
- (可选)执行命令min-rx-interval interval,调整本地允许接收BFD报文的时间间隔。
缺省值为1000毫秒。
- (可选)执行命令detect-multiplier multiplier,调整本地BFD检测倍数。
缺省情况下,本地检测倍数为3。
本地BFD报文实际发送时间间隔=MAX { 本地配置的发送时间间隔,对端配置的接收时间间隔 };本地实际接收时间间隔=MAX { 对端配置的发送时间间隔,本地配置的接收时间间隔 };本地实际检测时间=本地实际接收时间间隔×对端配置的BFD检测倍数。
例如,
本地配置的发送时间间隔为200ms,配置的接收时间间隔为300ms,检测倍数为4
对端配置的发送时间间隔为100ms,配置的接收时间间隔为600ms,检测倍数为5
则:
本地实际的发送时间间隔为MAX { 200ms,600ms }=600ms,实际接收时间间隔为MAX { 100ms,300ms }=300ms,实际检测时间间隔为300ms×5=1500ms
对端实际的发送时间间隔为MAX { 100ms,300ms }=300ms,实际接收时间间隔为MAX { 200ms,600ms }=600ms,实际检测时间间隔为600ms×4=2400ms
- (可选)执行命令process-pst,使能系统在BFD会话状态变化时修改端口状态表功能。
对于采用LSP或TE隧道作为反向通道的情况,可选择执行本步骤,使反向通道在当前BFD会话Down时也进行主备切换;对于采用IP链路作为反向通道的情况,只有当IP链路为单跳时,才能配置process-pst命令,因为该命令只能在BFD单跳检测的情况下配置。
- 执行命令notify neighbor-down,配置BFD会话检测到故障时通知上层协议的方式。
当采用BFD检测链路故障时,通常出现以下任何一种情况均会通知上层协议链路故障:
- BFD会话在检测时间超时后通知上层协议:BFD会话需要在两端配置,如果一端的BFD会话没有收到对端发来的BFD报文,则会认为链路发生了故障,此时BFD会话将此故障信息通知给上层协议。
- BFD会话在检测到邻居Down后通知上层协议:配置BFD会话一端检测到了邻居Down,则此时无需等到检测超时,而是直接将邻居Down的故障信息通知上层协议。
而对于BFD检测LSP链路,用户只关心本端到对端链路是否故障,无需关注对端到本端的链路状态。这时只需通过命令notify neighbor-down设置BFD会话检测到的邻居Down故障通知上层协议,从而防止由于BFD会话在检测时间超时通知上层协议导致的业务切换,影响正常业务。
- 执行命令commit,提交配置。
检查静态BFD for CR-LSP的配置结果
操作步骤
- 执行命令display bfd configuration mpls-te interface tunnel interface-number te-lsp [ verbose ],查看隧道入节点查看BFD配置信息。
- 执行以下命令查看隧道出节点查看BFD配置信息:
- 查看所有BFD相关配置信息:display bfd configuration all [ for-ip | for-lsp | for-te ] [ verbose ]
- 查看静态BFD相关配置信息:display bfd configuration static [ for-ip | for-lsp | for-te | name cfg-name ] [ verbose ]
- 查看反向通道为IP的BFD配置信息:display bfd configuration peer-ip peer-ip [ vpn-instance vpn-instance-name ] [ verbose ]
- 查看反向通道为静态LSP的BFD配置信息:display bfd configuration static-lsp lsp-name [ verbose ]
- 查看反向通道为LDP LSP的BFD配置信息:display bfd configuration ldp-lsp peer-ip peer-ip nexthop nexthop-address [ interface interface-type interface-number ] [ verbose ]
- 查看反向通道为CR-LSP的BFD配置信息:display bfd configuration mpls-te interface tunnel interface-number te-lsp [ verbose ]
- 查看反向通道为TE隧道的BFD配置信息:display bfd configuration mpls-te interface tunnel interface-number [ verbose ]
- 执行命令display bfd session mpls-te interface tunnel interface-number te-lsp [ verbose ],查看隧道入节点查看BFD会话信息。
- 执行以下命令查看隧道出节点查看BFD会话信息:
- 查看所有BFD相关配置信息:display bfd session all [ for-ip | for-lsp | for-te ] [ verbose ]
- 查看静态BFD相关配置信息:display bfd session static [ for-ip | for-lsp | for-te ] [ verbose ]
- 查看反向通道为IP的BFD配置信息:display bfd session peer-ip peer-ip [ vpn-instance vpn-instance-name ] [ verbose ]
- 查看反向通道为静态LSP的BFD配置信息:display bfd session static-lsp lsp-name [ verbose ]
- 查看反向通道为LDP LSP的BFD配置信息:display bfd session ldp-lsp peer-ip peer-ip nexthop nexthop-address [ interface interface-type interface-number ] [ verbose ]
- 查看反向通道为CR-LSP的BFD配置信息:display bfd session mpls-te interface tunnel interface-number te-lsp [ verbose ]
- 查看反向通道为TE隧道的BFD配置信息:display bfd session mpls-te interface tunnel interface-number [ verbose ]
- 执行以下命令查看BFD统计信息:
- 查看所有BFD会话的统计信息:display bfd statistics session all [ for-ip | for-lsp | for-te ]
- 查看检测IP链路的BFD会话统计信息:display bfd statistics session peer-ip peer-ip [ vpn-instance vpn-instance-name ]
- 查看检测静态LSP的BFD会话统计信息:display bfd statistics session static-lsp lsp-name
- 查看检测LDP LSP的BFD会话统计信息:display bfd statistics session ldp-lsp peer-ip peer-ip nexthop nexthop-address [ interface interface-type interface-number ]
- 查看检测CR-LSP的BFD会话统计信息:display bfd statistics session mpls-te interface tunnel interface-number te-lsp
- 查看检测TE隧道的BFD会话统计信息:display bfd statistics session mpls-te interface tunnel interface-number