谈到路由协议,也许很多人的脑海中首先浮现的是实现复杂、功能强大的OSPF、BGP。其实,客户网络在很多应用环境下并没有复杂到要用这些协议的地步。为了维护方便或提高网络运行的稳定性,客户更愿意选择静态路由或RIP路由协议。事实上,静态路由或者RIP都能够很好地完成路由学习任务,那么是什么影响了静态路由和RIP的广泛使用呢?原因主要有两个:协议过于简单,不适合大型复杂网络;收敛速度慢,不适合拓扑经常变化的网络,而大型复杂网络的拓扑通常是经常变化的。
NQA和BFD两类技术都能够快速检测链路状况或连接状况,通过和它们的结合,静态路由和RIP的灵活性以及收敛速度能够得到极大的提高。
RIP和静态路由的适用场合
RIP和静态路由于设计简单,在OSPF曾经一统IGP的阶段,几乎从网络方案中消失了,仅仅成为网络入门的基础读物,很少有人去关注它们。其实,在工程上并不存在最完美的路由协议,只有最合适的。设计网络时,需要考虑网络的规模、网络的特点、网络的运维成本等等,根据这些情况构建网络和选择路由协议。
简单就是美。简单的RIP和静态路由必有其生存的土壤。金融行业是使用网络技术偏于保守的行业,他们更关注网络的稳定性和易维护性。银行营业网点的上联部分要求网络设备和网络链路具备很强的稳定性,在此前提下,RIP和静态路由以其简单够用的特点成为许多银行网络的选择。
图1为比较典型的银行网络结构图。银行营业网点采用单设备双链路上行方式连接到地市网络。网点和地市之间运行RIP或静态路由即可,通过设置静态路由的优先级或RIP路由策略实现路由的负载均衡和备份。这样的网络设计完全满足银行的业务应用。
图1:常见金融行业网络结构图
NQA和BFD
为了提升现有网络性能,网络中邻居之间必须能快速检测到通信故障,从而更快的建立起备用通道恢复通信。NQA和BFD则为通信的快速恢复提供保障。
由H3C自主研发的NQA是Network Quality Analyzer(网络质量分析)的简称。NQA并不是一种协议,它是根据标准的协议或端口发送探测消息,对网络性能、网络提供的服务及服务质量进行分析,为用户提供网络性能和服务质量的参数,如时延抖动、TCP连接时延、FTP连接时延和文件传输速率等。被探测方不需要安装任何特殊组件,只需按照标准进行响应即可。NQA支持10种探测类型:ICMP-echo、DHCP、FTP、HTTP、UDP-jitter、SNMP、TCP、UDP-echo、Voice和DLSw。
BFD(Bidirectional Forwarding Detection,双向转发检测)是一套全网统一的检测机制,用于快速检测网络中链路连通状况。BFD是一种协议,相比NQA,它能够更快速地检测到链路的通信故障。但是BFD探测需要两端设备都支持此协议,而且它不能探测某项服务是否可达。不过从路由收敛的角度考虑,BFD能进行链路检测已经足够。
更重要的是,NQA和BFD可以和一些模块进行联动,根据探测的结果令主备通道进行切换。正是这样的联动,弥补了静态路由和RIP收敛速度慢的不足。可以说,NQA和BFD联动功能的实用性以及使用频度,远远超过了两者本身。NQA和BFD目前支持联动的模块见表1。
|
检测性能 |
链路开销 |
兼容性 |
灵活性 |
联动模块 |
NQA |
理论上可以在20ms内检测链路故障,但考虑应用层处理等因素,实际将可能超过100ms甚至更多 |
较小,可以通过参数调节,性能越高,开销越大 |
被检测方只需要能响应Ping包就能完成检测,无需支持特有协议,基本无兼容性问题,部署方便 |
应用灵活,可以检测应用层端口,指定出接口和下一跳,可以用于IPSec的流量触发和状态保活 |
VRRP 静态路由 策略路由 备份中心 |
BFD |
最快可以达到50ms检测链路故障 |
较大,可以通过参数调节,性能越高,开销越大 |
有特有协议支持,目前仍处于IETF草案阶段,尚未形成RFC,检测方和被检测方都需要支持BFD,不同厂家的设备需要考虑兼容性问题 |
只能根据BFD会话检测通信是否正常,可以基于接口配置,不如NQA灵活 |
VRRP 静态路由 RIP OSPF IS-IS BGP MPLS LDP MPLS RSVP-TE |
表1:NQA与BFD对比
NQA和BFD侧重不同,各有优势。虽然BFD性能高,但开销大,同时需要被检测方支持BFD;而NQA则应用灵活。在方案的选择上,没有最完美的,只有最合适的。
Ÿ 可以说,BFD是专门为链路检测而设计的协议,为了提高其性能,最初通常由专门的芯片实现,因此一般应用于运营商级高端核心设备上,应用面很窄。后来被逐渐移植到由软件层面实现,以牺牲不大的性能获得更大的市场应用。总体而言BFD是性能、专业兼容、协议互通的代表,适合与动态路由协议结合联动。
Ÿ 相比于BFD,NQA的应用较为简单,不需要专门的协议支持,通过类似于ping、tracert等原理实现探测。被检测端甚至只需要支持ping就可运行NQA,这就进一步降低了链路检测的门槛,NQA更适合与静态路由结合联动。
Ÿ 金融行业客户有严格的设备选型流程,设备兼容性问题通常不会存在,他们会更加关注链路路用要原理是快速负载分担和备份,使自身营业户需求的解决方案:检测性能,因此大多(如四大银行)会选择BFD。
Ÿ 其他行业,特别是小型行业,一切以控制成本出发,设备应用非常灵活,采用的设备五花八门,因此采用最成熟、最通用的协议则是互通的基础。对于这类客户而言,NQA会是更好的选择。
Ÿ 与两者联动的模块各有不同,如NQA无法和RIP、OSPF、IS-IS、BGP等动态路由协议以及MPLS信令类协议绑定,而BFD无法和策略路由、备份中心绑定。选择时需考虑这些限制。
结合联动的应用场景
运营商传输技术的变革催生了对静态路由、RIP快速收敛的需求,NQA、BFD和静态路由、RIP的捆绑结合由此在网络中应用起来。以下为两组较为典型的应用场景。
图2:BFD检测成功,主用RIP路由生效
图3:BFD检测失败,备用RIP路由立即生效
如图2和图3所示:
Ÿ 县1网点通过两条链路上联至x市。上联x市1为主用链路,上联x市2为备用链路;
Ÿ E1等SDH传统线路通过时钟和PPP协议,实现了连接状态的探测。一旦线路出现问题,两端设备能迅速感知到接口的状态变化,从而触发路由收敛。但是E1线路的运营成本较高,会导致客户投资的提高。为了减少链路租用投资,客户选择了成熟、相比于SDH更经济的MSTP或更新的EPON等以太网接入方式。
Ÿ 如果主用链路两接入交换机之间的传输线路中断,由于以太网物理电气规程是广播总线方式,没有时钟、会话、握手等概念,因此两端路由器的以太网接口并不会Down;
Ÿ 没有与BFD结合的情况下,RIP路由需要等待180s自然老化之后才会切换到备用链路。180s的收敛时间显然超出了网络应用可以忍受的范围。
Ÿ 与BFD结合后,RIP路由的切换可以在1s~2s内完成,路由切换速度提高了近90倍(180/2=90)。
图4:NQA检测成功,主用静态路由生效
图5:NQA检测失败,主用静态路由失效,备用路由立即生效
如图4和图5所示:
Ÿ 某网吧出口路由器通过两个运营商提供的两条以太网线路连接到互联网,采用静态路由负载均衡的主备方式。(运营商1为主,运营商2为备);
Ÿ 如果运营商1的网关故障,而路由器接口并没有Down,主用的静态路由会一直生效,而实际上业务已完全中断,网吧运营将会受到很大影响;
Ÿ 采用NQA持续探测运营商1的网关地址,一旦NQA检测到网关不可达,就会立刻联动令主用静态路由失效,备用路由生效,不但网吧的业务没有受到影响,同时为网吧赢得协调运营商处理网络故障的时间。
总结
NQA、BFD与静态路由、RIP相结合给用户带来的是性价比更高、更贴合用户需求的解决方案。对于他们的结合应用,有以下建议:
1. 使用比SDH线路更具性价比的以太网线路,可以通过NQA和BFD达到与SDH线路同样连接状态的感知能力;
2. 选择更容易实施和维护的静态路由或RIP路由,对于偏远地区的营业网点的网络运维来说更具实际意义;
3. NQA特性的使用门槛低,中小企业客户只要在网络出口使用H3C MSR接入型路由器便可以实现链路快速负载分担和备份,保证其业务的稳定和持久。
上述对NQA、BFD做了通用性介绍。掀开变化多端的表面,网络技术的本质和原理其实是简单而清晰的。用心观察、持续关注客户需求,使用成熟的、组合的技术,是一定能够设计出最合适、灵活好用的网络的。