本帖最后由 teletest 于 2022-11-3 11:36 编辑
一、BFD原理
1.1 BFD技术简介一种全网统一、检测迅速、监控网络中链路或者IP路由的双向转发连通状况,并未上层应用提供服务的技术。
1.2 BFD会话建立方式和监测机制●BFD的标识符: (1)BFD建立会话存在标识符的概念,类似于OSPF建立邻居需要一个路由器的Router ID。 (2)标识符分为本地标识符和远端标识符,本地标识符用于表示本端设备,远端标识符用 于表示对端设备。 (3)静态建立BFD会话是指通过命令行手工配置BFD会话参数,包括配置本地标识符和远 端标识符等,然后手工下发BFD会话建立请求。 (4)动态建立BFD会话是指由应用程序触发创建BFD会话,当应用程序动态触发创建BFD 会话时,系统分配属于动态会话标识符区域的值作为BFD会话的本地标识符。然后向 对端发送Remote Discriminator的值为0的BFD控制报文,进行会话协商。当BFD会 话的一端收到Remote Discriminator的值为0的BFD控制报文时,判断该报文是否与 本地BFD会话匹配,如果匹配,则学习接收到的BFD报文中Local Discriminator的值,获取远端标识符。 ●BFD的检测机制: (1)BFD的检测机制是两个系统建立BFD会话,并沿它们之间的路径周期性发送BFD控制 报文,如果一方在既定的时间内没有收到BFD控制报文,则认为路径上发生了故障,BFD控制报文是UDP报文,端口号3784。 (2)BFD提供异步检测模式。在这种模式下,系统之间相互周期性地发送BFD控制报文, 如果某个系统连续3个报文都没有接收到,就认为此BFD会话的状态是Down。
1.3 BFD会话建立过程●RTA和RTB各自启动BFD状态机,初始状态为Down,发送状态为Down的BFD报文。对于 静态配置BFD会话,报文中的Remote Discriminator的值是用户指定的;对于动态创建 ●BFD会话,Remote Discriminator的值是0。 ●RTB收到状态为Down的BFD报文后,状态切换至Init,并发送状态为Init的BFD报文。 ●RTB本地BFD状态为Init后,不再处理接收到的状态为Down的报文。 ●RTB收到状态为Init的BFD报文后,本地状态切换至Up。 ●RTA的BFD状态变化同RTB。 ●邻居会话建立成功后,RTA和RTB周期性的向对方发送状态为Up的控制报文。
1.4 BFD工作流程●BGP邻居建立àBFD会话建立。 ●链路故障àBFD会话downàBGP邻居关系中断。 ●OSPF的BFD检测故障发现处理流程。 (1)OSPF通过自己的Hello机制发现邻居并建立连接。 (2)OSPF在建立了邻居关系后,将邻居信息(包括目的地址和源地址等)通告给BFD。 (3)BFD根据收到的邻居信息建立会话。 (4)被检测链路出现故障。 (5)BFD快速发送BFD探测报文检测到链路故障,如果在规定时间内无响应,BFD会话状 态变为Down。 (6)BFD通知本地OSPF进程BFD邻居不可达。 (7)本地OSPF进程中断OSPF邻居关系
1.5 联动功能简介●监测模块负责对链路状态、网络性能等进行监测,并将探测结果通知给Track模块 。 ●Track模块收到监测模块的探测结果后,及时改变Track项的状态,并通知应用模块。 ●应用模块根据Track项的状态,进行相应的处理,从而实现联动。
1.6 BFD与BGP联动场景场景描述: ●两台路由器经过中间网络通道建立BGP的邻居关系; ●已知RA、RA都支持BFD功能,要求使用BGP与BFD联动技术,采用BFD控制报文方式实现当RA或RB与中间网络设备以及中间网络通道内部链路出现故障时,BFD能够快速感知并通告BGP协议。
二、测试案例
2.1测试用例(1)测试目的验证BFD与BGP的联动 (2)测试说明DUT的两个端口分别与两台二层交换机连接,通过二层交换机与测试仪两个端口连接并通信 (3)测试步骤 ●按图连接好拓扑 ●DUT的G0/0/1与测试仪P1端口建立IBGP邻居,配置BFD; ●DUT的G0/0/2与测试仪P2端口建立IBGP邻居,不配置BFD; ●测试仪P1端口配置BGP协议和BFD协议,并将BGP与BFD关联; ●测试仪P2端口配置BGP协议; ●测试仪上开启全部协议,查看DUT上BGP邻居和BFD会话,有预期结果1; ●SW1和SW2上同时down掉G0/0/1接口,查看DUT和测试仪上的BGP邻居和BFD会话,有预期结果2. (4)预期结果 ●预期结果1:两个BGP邻居均成功建立,DUT与P1端口成功建立BFD会话 ●预期结果2:有BFD会话的BGP邻居马上断开,每月会话的BGP邻居需要等待一段时间后才会断开。 2.2 DUT配置
三、测试步骤
3.1预约测试资源预约测试资源:添加机箱、预约端口
3.2 创建接口P1/P2端口下,创建IPv4接口
3.3 修改接口参数修改接口IPv4地址和IPv4网关地址;点击“所有接口发送ARP/ND”学习ARP
3.4 配置BGP协议“2-3层协议”中选择BGP,点击菜单栏的“添加BGP”,选择P1和P2端口
3.5关联接口,调整协议参数(1)将创建的IPv4接口与BGP协议关联,根据实际情况调整BGP协议参数
(2)P1端口下的BGP协议使能BFD;
3.6配置BFD协议
(1)“2-3层协议”中选择BFD,点击菜单栏的“添加BFD”,选择P1端口
(2)将IPv4接口与BFD协议关联
3.7启动协议点击菜单栏的“全部开始”,启动BGP和BFD协议;
3.8查看测试仪上协议状态●BFD协议状态变为“running”; ●P1/P2端口的BGP协议状态均变”Established”.
3.9查看统计结果●查看BGP BFD Session Result ●IPv4源地址为测试仪接口IP,IPv4目的地址为DUT接口地址,BFD会话状态为UP。
3.10查看DUT 信息通过dis bgp peer查看BGP邻居
通过dis bgp bfd session all查看BFD会话
3.11断开测试仪和DUT之间连接SW1和SW2的G0/0/1口分别使用shutdown命令down端口
3.12观察测试仪和DUT的BGP状态变化测试仪上P1端口的BGP状态因为存在BFD会话很快变为Idle,P2端口的状态依旧是Established
DUT上10.1.1.2的邻居状态立刻变为Idle,20.1.1.2的邻居状态依旧是Established,需要等待一定时间才会变为Idle
|