1、最新网络收敛时间测试技术介绍2010-10-3摘要介绍了实现网络快速收敛的相关协议以及引起收敛的原因,IXIA 正在申请专利的集成在 IxNetwork 产品中 TrueView 网络收敛时间测试技术和传统技术的差异。1 引言收敛(Convergence)描述了网络从故障恢复以及网络变更的方式。现代网络通过提供冗余或备用路径来应对预期的网络故障。故障倒换是指网络自动检测服务中断和调整并切换到备用路径的过程。重路由的信息流重新归并到无故障路径某点时,传输网络即发生了收敛。与之相反,故障倒回则是指修复服务中断后网络恢复至初始链路的过程。图 1 描述了一个“客户端”计算机请求从“服务器”获得信息所经
2、过的大型网络的很小部分。这些信息正常情况下由路由器 R1,R2,主链接和路由器 R3 转发。想像一下,如果主链接可能因物理切断,路由器 R3 故障,网络过载或其他原因而中断的情况。路由器R2 将首先发送连接中断通知,由于和“客户端”没有其他连接,连接中断将会反馈到路由器 R1。路由器 R1 查找到“客户端”的备用路径,并找到通过路由器 R4,R6,备用链接和路由器 R3 连接的路径。网络信息流在下面这条路径上转发。路径收敛于路由器 R3,首次服务中断到路由器 R3 重新恢复全部流量转发之间的间隔时间就是收敛时间。图 1 故障恢复过程示意图从技术上而言,所有受影响路由从主路径切换到备用路径后网络
3、路由收敛才会视为完成。2 网络收敛时间测试方案2.1 实现快速收敛的协议介绍在 OSI 模型的第 2 层,如果出现链接故障或网络变更,STP,RSTP,MSTP 和 LDP/RSVP-TE 等交换协议便会提供流量重定向机制。如果出现链接或网络故障,第 3 层的RIP,OSPF,ISIS 和 BGP 等路由协议有能力重路由 IP 流量。这些传统技术需要数秒方可完成,实际时间取决于其所处理网络的规模和复杂性。下一代网络要求快得多的恢复时间,以满足其高可用性要求。为实现快速故障倒换时间,众多扩展协议和新协议已被使用。这些协议包括:(1)平滑无中断重启:路由器向邻近路由器发送其正在重启路由过程的消息,
4、并要求邻近路由器在其重启期间继续转发数据包。(2)虚拟路由器冗余协议(VRRP):定义并宣告一个“虚拟的”路由器为网关,两个或更多路由器为该网关提供服务。(3)MPLS 快速重路由:本地网络保护恢复机制。每条 LSP 均受备用路径保护。此机制满足实时应用要求,可以达到 SONET 环路不到 50ms 的恢复时间。(4)双向转发检测:一种简单、高速的 HELLO 协议,可提供低开销、短期(低至1ms)的路径故障检测。(5)OAM/CFM 链接:提供以太网链接和服务故障检测和隔离。CFM 可以完成低至 10ms的服务中断检测的时间。(6)协议计时器设置:网络通常使用路由协议的相对低速的 HELLO
5、 机制,在硬件没有发送求助信号时检测故障。许多计时器均可以调低以减少反应时间。服务提供商在服务等级协议(SLA)中向企业客户保证其服务的可靠性级别,通常为99.999%。这听起来毫无价值,但 99.999%可靠性保证意味着一年中断累计时间超过 5min。此项极富挑战性的要求导致网络服务提供商实施多项功能,最大限度地缩短故障时间,加快收敛时间。受故障倒换影响的不仅仅是路由协议。路由器还需要转发大量流量,同时执行服务质量(QoS)和其他策略。信息服务器和负载均衡设备必须对付丢弃的包文和连接的冲击。因此,收敛测试必须在网络流量模仿用户真实负载的环境中进行。2.2 网络中断的原因网络连接中断的原因有很
6、多,从明显的电源故障或线路切断到设备配置错误,或软件错误和升级导致的故障。以下的讨论旨在调查不同网络堆栈等级造成或发生的故障。(1)第 1 层物理层中断导致物理层网络中断的故障范例包括:断电。即使是短暂的停电也会导致故障发生。线路切断。瞬时故障可视为线路切断所致。设备故障。可能是电源故障,损坏的内存,CPU 插件故障或接口插件故障所致。SONET 网络包括此类故障的内置保护部件,但以太网没有此类内置保护部件。虽然物理网络连接拥有许多可行的选择,但以太网将作为下一代网络选择的要素显而易见。无论以太网链接使用的是铜线还是光纤,物理层设备(PHY)的管理界面只提供最低的链接故障可见度。至于网络接口方
7、面,链接要么接上,要么没有接上。有效监测链接状况必须用到如 OAM 链接等更高级别的协议。(2)第 2 层数据连接层中断交换机是第 2 层最常见的设备。导致第 2 层故障的原因可归类如下:容量。MAC 地址数目达到容量极限。环境。环境过热可导致设备无法正常运行。硬件/软件故障。如果没有妥善规划并测试,IT 网络操作人员移动、添加和更改软、硬件均会诱导硬件或软件故障。事件。认证问题(例如 802.1x) 、互操作性或配置错误。故障发生的方式各种各样,包括流量泛滥或突降、流量受损、连接中断、高延时以及低性能、导致性能下降的间歇性流量突降、网络连接受限。数据链接层使用的大多数协议均没有提供连接故障检
8、测机制。举例来说,ARP 协议被用于映射主机 MAC 地址到第 3 层 IP 地址,但是如果 ARP 失效,便没有任何恢复机制了。有几种协议可解决第 2 层的故障,其中包括生成树,链接 OAM,服务 OAM,MPLS/RSVP-TE和 BFD。STP,RSTP 和 MSTP 等以太网生成树协议用于为交换网络提供冗余。这要求网络管理员仔细配置,以取得最佳性能,但仍然不会迅速收敛。目前,有许多新协议正在加以标准化,以实现 50ms 或用时更少的收敛时间。目前,可用的快速故障检测和恢复的协议包括第 2 层(链接 OAM,服务 OAM,RSVP-TE 快速重路由)和第3 层(OSPF 快速发送 HEL
9、LO,双向转发检测 BFD,虚拟路由器冗余协议 VRRP) 。这些协议旨在检测故障,但通常需要与其他路由协议搭配使用,才能完成故障恢复。(3)第 3 层网络层中断路由器是第 3 层最常见的设备,尽管许多其他设备也拥有路由功能。导致第 3 层故障的问题可划分为以下类别:容量。超出 ARP 或 IP 转发地址表的大小。环境。导致 CPU 过热或电源故障的温度问题可导致运行中断。硬/软件故障。IT 网络操作人员移动、添加和更改软、硬件会诱导硬件或软件故障。事件。链接中断等网络故障会诱发其他问题,如配置错误备份或过滤/重新分配路由问题。故障发生的方式各种各样,包括导致间歇性连接或受影响网络连接中断的路
10、由问题、导致连接中断的邻接中断、导致服务退化的路由拍打。在网络层,互联网协议(IP)是主导技术。IP 取决于第 1 层和第 2 层是否“正常”运行。IP本身无连接,也就是说,它不存在端对端连接的概念。每个路由器均拥有路由/转发地址表,并依据此表以及数据包内的 IP 地址确定其接受的数据包将发往何处。路由/转发信息由一种或多种路由协议提供(如 RIP,OSPF,ISIS 和 BGP) 。网络发生故障时,距离故障最近的路由器上运行的路由协议将会发出故障通知,并通知其他路由器。这会导致流量重路由至备用路径(如果可用的话) 。发现有故障存在需要时间。举例来说,如果路由器上的 OSPF 停止运行,它的邻
11、近路由器需要花费 4 次“HELLO”时间,典型是 40s 才能意识到邻近路由器停止了运行。数秒中断恢复时间对于纯数据网络是可以接受的,但依照现在的标准衡量则太长了。虽然计时器可以调整,但它们仍无法达到所要求的低于 100ms 时间的标准。即使及时通知中断发生的地点(取决于中断实际发生的地点以及网络内拥有的跳数) ,传播网络变化仍需要时间。在这段时间内,流量会被转发至所谓的“黑洞” 。当路由器试图传输在路由/转发地址表中不存在条目的数据包时,数据包会被丢弃。2.3 收敛时间测试收敛时间会直接影响用户对质量的体验。服务中断会很快被注意到,尤其是服务中断重复出现时。消费者在选择服务提供商时拥有相当
12、大的自由度;他们会在数据包丢失时更换服务提供商。测量服务中断发生之时到服务完全恢复之间的收敛时间是衡量服务提供商工作的关键指标。几秒钟的收敛时间可使用秒表进行测量。数百毫秒的收敛时间可使用容易操作的技术进行测量。新协议要求关注特别关注细节。(1)收敛时间测试的传统方法最常用的确定收敛时间测试方法如图 2 所示。图 2 传统的收敛时间测量方法被测试系统(SUT)由位于“云”下的一个或多个路由器组成。这些路由器被假定配置为“主链接”不可用时会立即使用“备用连接” 。三个测试端口用于测试 SUT。测试时,数据会以恒定速率进行传输,同时统计测试端口 2 和测试端口 3 接收的数据包数量。在无故障状态下
13、,流量会从测试端口 1 流向测试端口 2。模拟的线路断开地点位于测试端口 2。SUT 会及时通知线路断开故障,流量会被重路由至测试端口 3。转换期间丢失的数据包数量可用于测量收敛时间。举例来说,如果测试端口 1 的固定传输速率为每秒 1,000 帧,丢失的数据包数量为2,500,则收敛时间为 2.5s。此类测试很容易编程;它仅需要其运行的时间超过预计的收敛时间即可。此种测量方法非常简单,图 3 详细说明了此类测量方法的理想流量速率。这有可能是最简单的网络范例,即仅需要撤消并重新宣告一条路由即可。图 3 简单的收敛特性(2)收敛时间测试的更好方法在许多路由不得不从测试端口 2 转移到测试端口 3
14、 的情况下,实际流量切换会逐步完成(见图 4) 。图 4 更实际的收敛特性当每条路由切换完成后,该路由对应的流量便开始出现在“备用链接”上。直到最后一条路由完成转换后,收敛方才算完成。某些时段一些流量变化明显,在较大规模的网络内,这些流量可能对应承担大部分网络流量传输的一条路由。很显然,测试端口 1 发送的测试流量必须使用 SUT 支持的所有地址范围。为说明收敛逐步完成的特性,必须采用一些采样方法。最常用的两种方法有:高速采样。测试端口 2 的接收速率必须尽可能快的测量,直到其达到传输速率为止。测量速率通常由计算机控制,测量的精度由测试应用程序决定,通常为 510ms。捕获缓冲区。测试端口 2
15、 接收的数据捕获放在缓冲区内。时间戳记数据会再次进行后置处理,以显示不断变化的接收速率。此法可揭示众多详细信息,但却受捕获缓冲区大小的限制。实际上,此法与高速采样法的精度通常相同。除有限的分辨率和精度之外,上述方法均未能准确与导致故障转移的事件相互关联。(3)IXIA 的 TrueView 收敛测试技术需要更先进的技术来关联链接中断或邻近设备故障等事件发生的时间。下面以更复杂的范例来说明此项要求(见图 5) 。图 5 复杂收敛测试案例提供商出口边缘路由器(PE 路由器)会发送测试端口 2 故障通知。该路由器会删除测试端口 2 后面的仿真网络路由地址表项目,并向邻近路由器发送撤消消息。每个路由器
16、会依次向其邻近路由器发送撤消消息,直至消息到达入口 PE 路由器为止。该路由器会将流量切换到底下的备用路径。为准确测量最初事件到流量恢复之间的收敛时间,IXIA 开发出一项叫做 TrueView 收敛的技术(正在申请专利) ,与 IXIA 网络基础设施旗舰测试应用程序 IxNetwork 完美结合后,TrueView 拥有业内最全面的收敛测试功能。为理解 TrueView 的工作方式,弄清入口 PE 路由器在收到邻近路由器发送的撤消消息时执行的过程至关重要。如图 6 所示,入口 PE 路由器收到邻近路由器发送的一系列“路由撤消”消息。每条撤消消息处理之后,一条新的路由通知会被发送至底层邻近的
17、P 邻居路由器,对应该路由的流量会被立即转发。这表明,故障倒换并非单点事件,而是渐进的过程。图 6 路由收敛过程图 7 详细说明了测试端口 1 和测试端口 2 在收敛时间测量期间的接收流量速率。独特的TrueView 测量方法是 CP/DP 收敛时间。它清晰地说明了 SUT 完全收敛所需的时间,收敛始于启动收敛的事件(tEvent,本例为连接中断) ,终于测试端口 3 通过备用连接上接收指定流量速率(接收阈值) 。表 1 对此和其他关键的收敛时间指标作了详细说明。图 7 TrueView 运行表 1 TrueView 测量方法TrueView 使用快速检测接收速率,并与事件时间戳(测试端口 3
18、 接收最后一个数据包和测试端口 2 接收第一个数据包之时)协作,进行高精度测量。所有 TrueView 测量方法均可精确到 1ms 之内。如前所述,路由器需要在收敛期间同时处理大量的撤消和通告。路由器使用复杂的算法来处理这些操作。举例来说,如果路由器的算法设计偏向/8 网络,非常重要的则只是测量这些路由的收敛时间。TrueView 旨在提供这些测量方法。除了提供对在测试端口 2 和测试端口 3 接收到的汇聚流量进行收敛时间测量之外,TrueView 还提供了单条路由或任意路由组的相同信息。TrueView 可用于验证首选路由范围获得优先处理,从而获得更低的收敛时间。TrueView 具备的强大功能源于其准确关联触发收敛的数据或控制面板事件的能力。TrueView 使用 IxNetwork 内的大量触发事件(见表 2) 。表 2 触发事件的收敛3 结束语收敛时间是传输多重播放流量的现代高可用性网络的关键性能指标之一。测量纯数据网络收敛时间的传统方法不再足以测量现代网络低于 50ms 的极速收敛时间。IXIA 已开发出全新的 TrueView 技术,可提供精确到毫秒的测量方法,在流量切换过程中将网络和路由事件与关键流量阈值相互关联。TrueView 不仅测量汇聚路由收敛时间,还可以测量每条路由,使得验证功能和测量路由协议的性能成为可能。