APP下载

基于BFD和VRRP 的出口链路冗余设计与实现

2015-04-02王英杰

软件导刊 2015年2期

摘要:通过BFD(Bidirectional Forwarding Detection)和VRRP的联动,实现了出口链路冗余,满足了出口链路高可用性、快速切换的系统建设要求。介绍了BFD和VRRP技术,提出了基于BFD和VRRP技术的联动,出口链路冗余设计方案。

关键词关键词:BFD;VRRP;出口链路冗余

DOIDOI:10.11907/rjdk.143909

中图分类号:TP311

文献标识码:A文章编号

文章编号:16727800(2015)002012402

作者简介作者简介:王英杰(1989—),男,山东邹平人,上海理工大学光电学院硕士研究生,研究方向为计算机网络与信息安全。

0引言

随着信息技术的发展,企业运营与互联网的关系日趋紧密,尤其是多分支机构的企业,各分支机构之间、分支机构与总部之间的协同工作都要依赖互联网,VPN、视频会议、与企业经营有关的各种系统都要依托互联网才能运行,在这个背景下,互联网的稳定性就显得尤为重要。本文将分析探讨出口链路冗余的设计与实现,并提出一种基于BFD和VRRP联动的出口链路冗余设计方案,实现核心设备的双机热备,满足企业出口链路冗余设计。

1VRRP

1.1定义

VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)是由IETF提出的解决局域网中配置网关出现单点失效现象的网络协议,正式的RFC2338协议标准已经在1998年推出\[1\]。VRRP广泛应用在边缘网络中,它的设计目标是通过自动网关选择,提高特定情况下IP网络路由路径的有效性与可靠性,允许主机使用单网关,在第一跳路由器使用失败的情形下仍能维护路由器间的连通性。VRRP协议可交换路由器的信息,但不会处理路由信息。

1.2实现

在VRRP协议工作中,虚拟路由器会使用00005E0001XX作为它的MAC地址,其中最后一个字节“XX”是VRID,网络中每一个虚拟路由器的VRID是不同的。在同一时间,只有一个真实路由器会使用这个虚拟的MAC地址,当路由器收到ARP请求时会回应此MAC地址作为虚拟路由器的目标地址。在VRRP组中的路由器发送“hello”消息时则会使用以太网广播MAC地址01005E000012作为目标MAC地址。

启用VRRP路由器之间通信使用的IP地址为组播地址224.0.0.18,IP协议号为112。VRRP优先级的范围为1-255,被赋予较高优先级的路由器将成为主路由器。

2BFD

2.1概述

BFD(Bidirectional Forwarding Detection)是用来实现快速故障检测的标准协议,可以在某些不支持硬件检测机制的链路如以太网链路、虚电路上实现低开销的故障检测\[23\]。BFD会在链路两端建立一个会话,如果系统之间有多条链路,BFD则需要建立多个会话来检测每条链路。会话的建立与终止都通过“三次握手”来完成,同时会话也支持认证。

2.2优点

作为一种通用的标准化协议无关、介质无关的快速故障检测机制,BFD有着诸多优点:①可以对网络设备间任意类型的双向转发路径进行故障检测,包括直连物理链路、虚电路、隧道、MPLS LSP、多跳路由路径以及单向链路等;②可以为不同的上层应用提供服务,提供一致的快速故障检测时间;③可以提供小于1s的故障检测时间,使得网络可以更快收敛,减少应用的中断时间,提高网络可靠性。

2.3实现

BFD在两台网络设备上建立会话,用来检测设备间的双向转发路径,为上层应用服务\[4\]。 BFD本身并没有邻居发现机制,而是上层应用通知其邻居信息建立会话。会话建立后会周期性地快速发送BFD报文,如果在检测时间内没有收到BFD报文,则认为该双向转发路径发生了故障,通知被服务的上层应用进行相应处理。BFD有两种操作模式:异步模式和查询模式。异步模式下本端按一定的发送周期发送BFD控制报文,在远端检测本端系统发送的BFD控制报文;而在查询模式下,检测发送的BFD控制报文是在本端系统进行的。

3VRRP与BFD联动

VRRP默认的切换时间一般在3、4s,对于关键应用来说这样的切换时间显然过长了,运用BFD技术,就可以很好地解决这个问题:VRRP与BFD联动功能的使用,可以使备份路由器在100ms以内完成到主路由器的转换,极大减少了链路故障检测时间,提高了网络稳定性。

简化后的网络拓扑如图1所示\[5\],核心交换机Core SW分别连接出口路由器R1与R2,在R1与R2启用VRRP,实现出口路由器的冗余,同时启用BFD协议来完成链路故障时的快速切换,满足网络高可用性需求。

图1网络拓扑

PC端设置的网关地址为192.168.1.1 ,R1与R2的G0/1接口配置的IP地址分别为192.168.1.2、192.168.1.3,在R1与R2的G0/1口启用VRRP,配置虚拟IP地址为192.168.1.1,同时启用BFD协议来完成快速故障检测,保证链路可靠性。

通过VRRP优先级的设置使R1成为主路由器,R2成为备份路由器。在R2路由器做相应的BFD配置以及BFD与VRRP联动的配置。以H3C路由器为例,R1与R2的配置过程如表1、表2所示。

4结语

上述配置完成后,可通过在路由器R2上的display bfd session来检查BFD会话的建立情况。至此,就完成了路由器的相关配置,也完成了基于BFD和VRRP 的出口链路冗余,这将减少网络链路故障时系统恢复所需的时间。

表1R1配置清单

R1配置

system-view

\[R1\]interface gigabitEthernet 0/1

\[R1-GigabitEthernet0/0\]ip address 192.168.1.2 24

\[R1-GigabitEthernet0/0\]vrrp vrid 1 virtual-ip 192.168.1.1

\[R1-GigabitEthernet0/0\]vrrp vrid 1 priority 110

\[R1-GigabitEthernet0/0\]quit

在本文所述项目拓扑的基础上,如果二层网络设备较多,结构会更复杂,如果不止一个核心交换机,可以在BFD与VRRP联动的基础上采用MSTP(Multiple Spanning Tree Protocol,多生成树协议),这样既能满足网络稳定性的要求,又可以通过多生成树实例的设置来完成负载均衡。例如将奇数VLAN加入MSTP实例1,将偶数VLAN加入MSTP实例2,通过生成树优先级的设置,使得两个核心交换机分别为两个实例的根桥与备份根桥,在此基础上,可以继续完成VRRP的设置。

参考文献参考文献:

\[1\]IETF RFC 2338 . Virtual router redundancy protocol (VR-RP) \[EB/OL\]. http://www.knowsky.com/382293.html,1998 .

\[2\]IETF RFC 3768 . Virtual router redundancy protocol (VR-RP) \[EB/OL\]. http://www.faqs.org/rfcs/rfc3768.html2004 .

\[3\]IETF RFC 5880 . Bidirectional forwarding detection (BFD)\[ EB/OL\]. http://www.haosou.com/spsid=65df356a326be3dd06a8ffd71b07ca34&q=IETF+RFC+5880+.+Bidirectional+Forwarding+Detection+%28BFD%29&pq=IETF+RFC+2338+.+Virtual+Router+Redundancy+Protocol+%28VR-RP%29+%5BS%5D.&src=srp&fr=hao_search,2010.

\[4\]高峡,陈智罡,袁宗福.网络设备互连学习指南\[M\]. 北京:科学出版社,2009 .

\[5\]谭亮,何绍华.构建中小型企业网络\[M\].北京:电子工业出版社,2012 .

责任编辑(责任编辑:杜能钢)