经过长时间的思考、探索和讨论,基于IP建设下一代电信承载网在固网运营商的网络转型中已经达成了一个共识。IP网络开始主要用于Internet接入和Intranet互连,如果要将IP网络作为下一代承载网,有几个关键技术需要变革,主要体现在可靠性方面。本论文阐述了如何对现有IP技术进行改进,从而使之在可靠性方面满足电信级业务的承载要求。
一、电信级业务对网络可靠性的要求
IP网络的可靠性是影响业务提供的重要因素。未来的3G、IMS/NGN、IPTV等业务都将基于IP统一承载。承载网需要能够同时支持语音、视频、数据、企业互联等多种业务,实现音频、视频、数据三类媒体流的传送,这三类媒体流对承载网的运行指标要求如下。
语音业务:时延和时延抖动小、丢包率小。
视频业务:高带宽、传输时延和时延抖动小。
数据业务:非实时、突发性的业务,对时延、抖动要求低,但要求差错率低。
对于信令和网管,带宽需求与业务流相比是很小的,延时要求比语音要求低,但差错率要求更高,这些可归为高要求的数据业务。
尽管普通IP网络有动态协议、冗余连接等可靠性技术,但是其性能远没有达到电信级要求,从可靠性的指标看,一个普通的IP网络故障将导致业务中断几秒到分钟量级,这种指标可以满足传统Internet数据业务传送要求,但是无法满足实时话音、视频业务的服务质量需求。
二、网络可靠性的设计思路
首先,在网络设计规划中,我们应在单个网元中设计大量的冗余机制。在网络路由器和交换机中应包含可热切换的备份硬件元件。除此之外,还要设计智能的软件机制,使得节点能从故障中快速恢复,对应用体验的影响最小。
其次,提高网络可用度(Availability)的一个关键措施是在网络设计中包含冗余,即创建一个包含了备用节点和候选链路的网络拓扑。
一个节点或者链路故障应该存在一个快速检测到故障的机制,以触发把业务流转移到备用路径上的处理程序。
在PSTN中,一个用户交换机通常连接到两个或更多的汇接交换机(TransitExchanger)。当一个汇接交换机故障或者电路中继(circuittrunk)中断时,正在进行的大量通话会中断。用户一般会尝试重新发起通话,如果存在其他路由可以供交换机使用,那么用户的再次尝试可以成功。
IP网络允许迅速地改变业务流的传输路径,这意味着,只要能足够快地切换话音业务流到一条具有相同带宽的备用路径上,语音通话不会中断。在可用度方面,IP网络有能力超越PSTN。如何设计一个能容忍任何链路和节点故障而不中断业务的低成本的网络,是一个新的挑战。这里我们把站点和站点之间的可靠通讯分解为站点到骨干网的可靠通讯、骨干网内部的可靠通讯两个部分。
三、快速故障检测
对于典型的链路,如以太网、SDH、路由器都可以利用链路层协议快速检测到故障。例如,当和路由器端口连接的以太网线被拔出,路由器可以在10ms内检测到以太网端口处于DOWN状态。
以前,路由器使用IP路由协议里的HELLO报文来判断与之邻接的路由器或基础设施是否正常。不过,路由协议的HELLO检测机制太迟钝,通常需要数十秒才能判定是否存在故障。IETF已经开发了双向转发检测(BFD)协议实现快速检测和邻居节点之间的连通性状态。BFD实际上是一个快速的HELLO协议。支持BFD的2个节点之间相互快速发送数据包,当节点没有接到预先设定数量的数据包时,它推断BFD所监视的基础设施发生故障,基础设施可以是IP网、标记交换路径(LSP)、某种类型的IP隧道或以太网(ethernet)网络。利用BFD,我们可以在更短时间内检测出两个节点间的故障。
四、骨干网内的可靠通信
为预防一条链路中断,一个简单的策略是在每两个路由器之间配置两条一样带宽的链路,并且其中一条链路是备用链路。这个策略不仅使得链路数增加一倍,而且不能很好地适应路由器故障的情况。当一个路由器产生了故障,与这个路由器相连的数个链路都不能被继续使用,网络必须使用不含故障节点的迂回路径。因此,使网络能够发现和利用绕过了故障点的新路径是一个更好的策略。
在网络无变更时,站点之间的流量会在一个确定的路径上持续传送下去。当网络发生变更(如链路故障)时,如果某些流量被重选路由,这会导致某些路由器以及它们之间的链路承受更大的业务流。
图1 网络路由选择示意图
如图1所示,正常情况下,AR1和AR2之间的通讯路径是AR1-CR1-CR2-AR2,AR3和AR4之间的通讯路径是AR3-CR3-CR4-AR4。当CR1和CR2之间的链路故障,AR1和AR2之间的通讯路径将变为AR1-CR1-CR3-CR4-CR2-AR2,在故障期间,CR3和CR4之间的业务量将大幅增长。如果没有采取合适的措施,则不仅AR1和AR2之间业务量的QoS降级,而且AR3和AR4之间业务量的QoS也降级了。
我们采取的基本策略是,路由器使用DiffServ来支持各业务类的QoS。这个策略试图保证发生故障后高优先级业务(如语音)不受影响。然而,如果有太多的高优先级业务类被汇聚到一个路径上,例如,路由器发现需要处理的EF业务量超出了它的能力或输出链路的容量,挽救故障路径业务量的做法仍然可能使得更多其它业务的服务质量恶化。为了能找到合适的新路径,我们可以采取如下几方面的措施。
1.设计先进的网络拓扑,并精心地执行流量工程
我们也可以采用双转发平面方案。在这个方案里,骨干网将具有两个转发平面,分别称为A,B平面。A,B平面的拓扑相同或者相似。每个在A平面的路由器都有一个在B平面上的兄弟路由器,并且这两个路由器被直接连接。如图2,CR1和CR3、CR2和CR4是兄弟。不同的网络解决方案将使用自己的流量工程方法以实现A平面和B平面承载不同的业务类。接入路由器同时连接到两个转发平面。在故障情况下,这两个平面可以相互支援对方。在安装时,兄弟路由器对通常被安装在相同的机房。这意味着,平面之间的链路不是长途链路。
假设A平面承载语音业务,使用的业务类是EF;B平面承载数据业务,使用的业务类包含AF和BE,这时网络的故障处理可以实现如下功能。
(1)对于A/B平面,AR和本平面的核心网之间产生通讯故障时,可以利用平面间的备份机制,即业务流被注入到另一个平面。
(2)对于A平面,CR间链路或CR产生故障时,可以利用平面间的备份机制,即业务流被注入到B平面。如图2,CR1和CR2间链路发生故障后,AR1-CR1-CR2-AR2将被变更为AR1-CR1-CR3-CR4-AR2。
(3)对于B平面,CR间链路或CR故障时,可以利用平面内的备份机制,即在本转发平面内重新选择路径。
图2 路由双转发平面方案
2.把故障路径上的业务量拆分为若干流量中继(TrafficTrunk),然后把这些流量中继分配到不同的新路径上
流量中继的带宽比故障链路小,这使得它易于找到合适的新路径。如果不能为某些流量中继发现可用的新路径,则这些流量中继将被丢弃。这个办法在充分利用网络资源的前提下使得通讯中断损失最小。这个办法产生了以下两个技术需求。
(1)如何定义流量中继并把它作为可路由的对象。一个典型定义是,把两个站点间的一个业务类定义为一个流量中继。一个流量中继将被映射到由一系列链路和节点构成的一个物理路径上。骨干中的一条链路可能承载多个流量中继。
(2)如何发现容量和负荷状态满足要求的新路径。在小型网络里,可以为每个可能的故障点配置备用路径。在大中型网络里,需要一种快速的自动发现合适备用路径的方案。
最后,网络需要果断地把业务量转移到已发现的新路径或规划的备份路径上。结合快速故障检测机制,我们可以将A、B平面的切换时间控制在50ms内。
五、客户站点到骨干网的可靠通信
为使主机(如SS、MSCserver、TG)可靠地接入交换网络,可以使用两个接入路由器(AR,AccessRouter),并启用VRRP(VirtualRouter Redundancy Protocol)。VRRP将局域网中的一组路由器组织成一个备份组,它在功能上相当于一台虚拟路由器。当前被使用的路由器出现故障时,VRRP机制能选择备份组中的其他路由器作为活动(active)路由器来承担传输工作。这个机制对于IP主机而言是透明的。普通VRRP机制的切换时间大概为2~3秒,快速故障检测机制可以将切换时间缩短为50ms以内。
图3 使用虚拟路由器方案
图3展示了一个使用了VRRP的站点,这个站点里部署了两个路由器和两个二层交换机。如果路由器同时支持三层交换,则LAN交换机可以被省略。
通过使用上述技术和方案,我们可以将IP承载网的时延和时延抖动均控制在电信级业务允许范围内,解决了IP承载网的可靠性问题,使之能够正常承载电信级业务,实现了电信业务IP化、IP网络电信化的目标。