BGP BFD测试案例

时间:2022-11-03 14:11:51

一、BFD原理

1.1 BFD技术简介

一种全网统一、检测迅速、监控网络中链路或者IP路由的双向转发连通状况,并未上层应用提供服务的技术。

BGP BFD测试案例

 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。

BGP BFD测试案例

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的控制报文。

BGP BFD测试案例

 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邻居关系

BGP BFD测试案例

1.5 联动功能简介

●监测模块负责对链路状态、网络性能等进行监测,并将探测结果通知给Track模块 。

●Track模块收到监测模块的探测结果后,及时改变Track项的状态,并通知应用模块。

●应用模块根据Track项的状态,进行相应的处理,从而实现联动。

BGP BFD测试案例

1.6 BFD与BGP联动场景

场景描述:

●两台路由器经过中间网络通道建立BGP的邻居关系;

●已知RA、RA都支持BFD功能,要求使用BGP与BFD联动技术,采用BFD控制报文方式实现当RA或RB与中间网络设备以及中间网络通道内部链路出现故障时,BFD能够快速感知并通告BGP协议。

BGP BFD测试案例

二、测试案例

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配置

BGP BFD测试案例

三、测试步骤

3.1预约测试资源

预约测试资源:添加机箱、预约端口

BGP BFD测试案例

3.2 创建接口

P1/P2端口下,创建IPv4接口

BGP BFD测试案例

3.3 修改接口参数

修改接口IPv4地址和IPv4网关地址;点击“所有接口发送ARP/ND”学习ARP

BGP BFD测试案例

3.4 配置BGP协议

“2-3层协议”中选择BGP,点击菜单栏的“添加BGP”,选择P1和P2端口

BGP BFD测试案例

3.5关联接口,调整协议参数

(1)将创建的IPv4接口与BGP协议关联,根据实际情况调整BGP协议参数

BGP BFD测试案例

 (2)P1端口下的BGP协议使能BFD;

BGP BFD测试案例

3.6配置BFD协议

BGP BFD测试案例

(1)“2-3层协议”中选择BFD,点击菜单栏的“添加BFD”,选择P1端口

BGP BFD测试案例

(2)将IPv4接口与BFD协议关联

BGP BFD测试案例

3.7启动协议

点击菜单栏的“全部开始”,启动BGP和BFD协议;

BGP BFD测试案例

3.8查看测试仪上协议状态

●BFD协议状态变为“running”;

●P1/P2端口的BGP协议状态均变”Established”.

BGP BFD测试案例

3.9查看统计结果

●查看BGP BFD Session Result

●IPv4源地址为测试仪接口IP,IPv4目的地址为DUT接口地址,BFD会话状态为UP。

BGP BFD测试案例

3.10查看DUT 信息

通过dis bgp peer查看BGP邻居

BGP BFD测试案例

通过dis bgp  bfd  session  all查看BFD会话

BGP BFD测试案例

3.11断开测试仪和DUT之间连接

SW1和SW2的G0/0/1口分别使用shutdown命令down端口

BGP BFD测试案例

3.12观察测试仪和DUT的BGP状态变化

测试仪上P1端口的BGP状态因为存在BFD会话很快变为Idle,P2端口的状态依旧是Established

BGP BFD测试案例

DUT上10.1.1.2的邻居状态立刻变为Idle,20.1.1.2的邻居状态依旧是Established,需要等待一定时间才会变为Idle

BGP BFD测试案例