bfd分析与故障定位-许吉东剖析

上传人:今*** 文档编号:108333911 上传时间:2019-10-23 格式:PPT 页数:94 大小:2.20MB
返回 下载 相关 举报
bfd分析与故障定位-许吉东剖析_第1页
第1页 / 共94页
bfd分析与故障定位-许吉东剖析_第2页
第2页 / 共94页
bfd分析与故障定位-许吉东剖析_第3页
第3页 / 共94页
bfd分析与故障定位-许吉东剖析_第4页
第4页 / 共94页
bfd分析与故障定位-许吉东剖析_第5页
第5页 / 共94页
点击查看更多>>
资源描述

《bfd分析与故障定位-许吉东剖析》由会员分享,可在线阅读,更多相关《bfd分析与故障定位-许吉东剖析(94页珍藏版)》请在金锄头文库上搜索。

1、BFD分析与故障定位,软件三部 许吉东 烽火通信科技股份有限公司 2013年2月,培训内容:,BFD协议诞生背景,BFD检测原理,BFD问题分析定位,典型故障案例分析,BFD协议诞生背景,为了保护关键应用,网络中会设计有一定的冗余备份链路,网络发生故障时就要求网络设备能够快速检测出故障并将流量切换至备份链路以加快网络收敛速度。 目前,一些硬件如SDH等可以提供这个功能,但是对于很多硬件或者软件无法提供这个功能,比如以太网。还有一些无法实现路径检测,比如转发引擎或者接口等,无法实现端到端的检测。目前的网络一般采用慢Hello机制,尤其在路由协议中,在没有硬件帮助下,检测时间会很长(例如:OSPF

2、需要2秒的检测时间,ISIS需要1秒的检测时间)。这对某些应用来说时间过长。当数据速率到吉比特(Gbps),故障感应时间长代表着大量数据的丢失,并且对于不允许路由协议的节点没有办法检测链路的状态。,同时,在现有的IP网络中并不具备秒以下的间歇性故障修复功能,而传统路由架构在对实时应用(如语音)进行准确故障检测方面能力有限。伴随着VoIP应用的激增,实现快速网络故障检测和修复越发显得必要。,技术优点,BFD协议提供了一个通用的标准化的介质无关和协议无关的快速故障检测机制。具有以下优点: 1.对网络设备间任意类型的双向转发路径进行故障检测,包括直连物理链路、虚电路、隧道、MPLS LSP、多跳路由

3、路径以及单向链路等。 2.可以为不同的上层应用服务,提供一致的快速故障检测时间。 3.提供毫秒级的检测时间,从而加快网络收敛速度,减少应用中断时间,提高网络的可靠性。,培训内容:,BFD协议诞生背景,BFD检测原理,BFD问题分析定位,典型故障案例分析,BFD检测原理,BFD(Bidirectional Forwarding Detection ): 双向转发检测; BFD实施在系统的业务层上,使检测更专注于业务报文转发的连通性; BFD可以运行在任何数据协议的顶层,对不同层次的网络提供检测; BFD能够在系统之间的任何类型通道上进行故障检测;,BFD在两台网络设备上建立会话,用来检测网络设备

4、间的双向转发路径,为上层应用服务。BFD本身并没有邻居发现机制,而是靠被服务的上层应用通知其邻居信息以建立会话。会话建立后会周期性地快速发送BFD报文,如果在检测时间内没有收到BFD报文则认为该双向转发路径发生了故障,通知被服务的上层应用进行相应的处理。,BFD报文格式,BFD 报文分为BFD控制报文和BFD Echo报文。 一. BFD控制报文格式如下:,必选,可选,BFD控制报文各字段含义,二. BFD Echo报文,BFD Echo报文提供了一种不依赖于BFD控制报文的故障检测方法。本端发送本端接收,远端不对报文进行处理,而只是将此报文在反向通道上返回。因此BFD协议并没有对BFD Ec

5、ho报文的格式进行定义,唯一的要求是发送方能够通过报文内容区分会话。 BFD Echo报文采用UDP封装,目的端口号为3785,目的IP地址为发送接口的地址,源IP地址由配置产生。,Discriminator 字段,由于两个系统之间可能存在多个BFD会话,因此当收到BFD控制报文时,需要一个机制来将其分离到对应的会话上。 每个系统都必须选择唯一的标识符(Discriminator)确定每个会话(Session)。本地标识符封装在BFD控制报文的My Discriminator字段中,与远端系统BFD报文Your Discriminator对应。 一旦远端系统返回它的本地标识符,后续收到的BFD

6、报文都将唯一地通过Your Discriminator字段分离到各个会话上。也就是说,源地址、接口等都可能发生变化,但BFD报文仍然能够对应到相应的会话上去。,BFD检测原理,BFD有两种操作模式: 异步模式/查询模式,BFD的主要操作模式称为异步模式。在这种模式,系统之间相互周期性地发送BFD控制包,如果某个系统连续几个周期没有收到对端发送的报文,就认为会话为“Down”了。,BFD的第二种操作模式称为查询模式。查询模式下,会话两端通过3次握手建立起连接,一旦一个BFD会话建立并UP,系统停止发送BFD控制包,除非某个系统需要显式地验证连接性。在需要显式验证连接性的情况下,系统发送一个短系列

7、的BFD控制包(由P和F比特控制“握手”的实现),然后,协议再次保持沉默。,动态BFD,自学习远端标识符1,A:My Discriminator 100 B:My Discriminator 200 Your Discriminator 0 Your Discriminator 0 Sip 10.0.0.1 Sip 10.0.0.2 Dip 10.0.0.2 Dip 10.0.0.1 A端收到B端发来的My Discriminator为200、Your Discriminator为0的包。FPGA收到这种报文后,解析报文,将报文中的Vlan、Sip、Dip、My Discriminator存放

8、于FIFO中。A端从FIFO中读取解析出来的信息,根据Dip查找A端已建立的bfd会话的Sip。若存在bfd会话的Sip与FIFO中读出的Dip相等,则FIFO中的My Discriminator即为A端该会话的Your Discriminator。,自学习远端标识符2,A:My Discriminator 100 B:My Discriminator 200 Your Discriminator 200 Your Discriminator 0 Sip 10.0.0.1 Sip 10.0.0.2 Dip 10.0.0.2 Dip 10.0.0.1 此后,A端不再发出My Discrimina

9、tor 100,Your Discriminator 0的报文。在这之前若B尚未学习到Your Discriminator。B将永远学不到Your Discriminator。为解决该问题,增加了从FPGA寄存器中学习功能。 B端收到A端发来的My Discriminator为100、Your Discriminator为200的报文。FPGA收到这种报文后,解析报文中的My Discriminator、Your Discriminator。根据解析出来的Your Discriminator确定该报文所属系统中的bfd会话,并将解析出来的My Discriminator写入相应条目的FPGA中

10、,供本端该条目学习Your Discriminator。,BFD检测原理,BFD会话建立前有主动与被动两种模式。如果一台设备为主动模式,那么在会话建立前不管有没有收到对端发来的BFD控制报文,都会主动发送BFD控制报文。如果一台设备为被动模式,那么在会话建立前就不会主动发送BFD控制报文,直到收到对端发来的BFD控制报文才发送。 我们现在做的是主动模式。下面对两端都为主动模式的会话建立过程进行说明。,BFD检测原理,三次握手-建立连接,状态机迁移过程,BFD使用三次握手的机制来建立会话,发送方在发送BFD控制报文时会在Sta字段填入本地当前的会话状态,接收方根据收到的BFD控制报文的Sta字段

11、以及本地当前会话状态来进行状态机的迁移,建立会话。 Router A 和Router B 的BFD 收到上层应用的通知后,发送状态为DOWN 的BFD 控制报文。Router B 的BFD 状态变化同Router A。 Router B 收到对端状态为DOWN 的BFD 控制报文后,本地会话状态由DOWN 迁移到INIT,随后发送的BFD 控制报文中将Sta 字段填为2 表明会话状态为INIT。Router A 的BFD 状态变化同Router B。,Router A 收到对端状态为INIT 的BFD 控制报文后,本地会话状态由INIT 迁移到UP,随后发送的BFD 控制报文中将Sta 字段填

12、为3 表明会话状态为UP。Router B 的BFD 状态变化同Router A。 BFD 双方状态都为UP,会话成功建立并开始检测链路状态。,定时器协商,BFD会话建立前BFD控制报文以1秒的时间间隔周期发送以减小报文流量。在会话建立后则以协商的时间间隔发送BFD控制报文以实现快速检测。在BFD会话建立的同时,BFD控制报文发送时间间隔以及检测时间也会通过报文交互协商确定。在BFD会话有效期间,这些定时器可以随时协商修改而不影响会话状态。BFD会话不同方向的定时器协商是分别独立进行的,双向定时器时间可以不同。 BFD控制报文发送时间间隔为本端Desired Min TX Interval与对

13、端Required Min RX Interval之中的最大值,也就是说比较慢的一方决定了发送频率。 检测时间为对端BFD控制报文中的Detect Mult乘以经过协商的对端BFD控制报文发送时间间隔。,发送/接收报文能力的协商(Tx/Rx) - 实际报文发送周期 = max(本端min-tx-interval,对端min-rx-interval) - 实际报文接收周期 = max(对端min-tx-interval,本端min-rx-interval) 检测周期的协商 异步模式下: 检测周期 =对端检测倍数DM(检测倍数) * max (对端min-tx-interval,本端min-rx-

14、interval) 查询模式下: 检测周期 =本端检测倍数DM(检测倍数) * max (对端min-tx-interval,本端min-rx-interval).,BFD故障检测,培训内容:,BFD协议诞生背景,BFD检测原理,BFD问题分析定位,典型故障案例分析,首先可以在网管上面点击主用交叉盘SCUR1(R860)/ SCUO1(R865),在状态里面查看BFD状态,就可以看到配置的BFD的状态,包括MYID 、yourid、BFD State、收发BFD包计数、BFD报文收发时间间隔(可知BFD的包速率)。,BFD问题分析处理,在协议盘里面查看BFD状态,30,在交叉盘里面查看BFD状

15、态,-wpstate WPSTATE=0,主用 value = 15 = 0xf 需要确认登陆的是主用交叉盘。,一. IP MPLSLSP BFD,应用场景: 用于IPRAN之间的LSP链路故障检测,IP MPLSLSP BFD 配置举例,应用实例: R860之间配置LSP1:1保护,如右图: LSP主用路径是4号站12/16号站3/1 LSP备用路径是4号站12/25号站4/1 ,5号站4/26号站3/2 R860之间配置IP MPLS- LSP BFD检测 主备链路状态。 业务和 BFD规划如下表所示:,BFD会话状态(4号站) 1.查看交叉盘已建立的bfd会话,两条bfd会话,状态为do

16、wn,2.查看已建立bfd会话详细配置信息,查看主用LSP对应的bfdid为10的信息。 输入print_bfd_info bfdno,后面参数是9(即bfdid值减1),主要查看protocol=0 ,bfdtype=1,slot=12,port=1,lsplable=0x136,dmac、smac, ;bfdtype:012 bfd for iplsppw。 通过上面查看BFD配置,可知此条LSP BFD的MYID是10,yourid是10,bfdno为9出端口是12槽1号端口,dmac最后一位是0x11。,LSP标签是0x136=310,Dmac最后一位是0x11,查看备用LSP对应的bfdid为11的信息。 输入print_bfd_info bfdno,后面参数是10(即bfdid值减1),主要查看protocol=0 ,bfdtype=1,slot=12,p

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号