路由器是一种连接多个网络或网段的网络设备,它能将不同网络或网段之间的数据信息进行“翻译”,以使它们能够相互“读”懂对方的数据,从而构成一个更大的网络。路由器有两大典型功能,即数据通道功能和控制功能。数据通道功能包括转发决定、背板转发以及输出链路调度等,一般由特定的硬件来完成;控制功能一般用软件来实现,包括与相邻路由器之间的信息交换、系统配置、系统管理等。
路由器在计算机网络中有着举足轻重的地位,是计算机网络的桥梁,通过它不仅可以连通不同的网络,还能选择数据传送的路径,并能阻隔非法的访问。路由器作为IP网的核心设备,其技术已成为当前信息产业的关键技术,其设备本身在数据通信中起到越来越重要的作用。
在路由器技术的发展历程中,性能和业务这两个因素发挥着关键作用。一方面,带宽和网络规模的增长推动着路由器在性能、容量方面断提升;另一方面,业务的发展驱动着路由器更加智能化和具备更强的业务提供能力。在这两项关键因素中,性能因素在路由器发展的前期起到主导作用,随着IP网络和业务的迅猛发展,业务因素或者说是业务性能在网络中的价值将起到越来越重要的作用。
多少年来,路由器的发展有起有伏。90年代中期,传统路由器成为制约因特网发展的瓶颈。ATM交换机取而代之,成为IP骨干网的核心,路由器变成了配角。进入90年代末期,Internet规模进一步扩大,流量每半年翻一番,ATM网又成为瓶颈,路由器东山再起,GBPS路由交换机在1997年面世后,人们又开始以GBPS路由交换机取代ATM交换机,架构以路由器为核心的骨干网。路由器发展到今天已经是第五个时代了。下面让我们来看一看路由器技术应用发展及其典型代表产品。
第一代路由器:集中转发,总线交换
最初的IP网络并不大,其网关所需要连接的设备及其需要处理的负载也很小。这个时候网关(路由器)基本上可以用一台计算机插多块网络接口卡的方式来实现。接口卡与中央处理器(CPU)之间通过内部总线相连,CPU负责所有事务处理,包括路由收集、转发处理、设备管理等。网络接口收到报文后通过内部总线传递给CPU,由CPU完成所有处理后从另一个网络接口传递出去。
第二代路由器:集中+分布转发,接口模块化,总线交换等技术
由于每个报文都要经过总线送交CPU处理,随着网络用户的增多,网络流量不断增大,接口数量、总线带宽和CPU的瓶颈效应越来越突出。于是很自然地想到:如何提高网络接口数量,如何降低CPU、总线的负担?为了解决这个问题,第二代路由器就在网络接口卡上进行一些智能化处理,由于网络用户通常只会访问少数的几个地方,因此可以考虑把少数常用的路由信息采用Cache技术保留在业务接口卡上,这样大多数报文就可以直接通过业务板Cache的路由表进行转发,以减少对总线和CPU的需求。
第三代路由器:分布转发,总线交换
上世纪90年代出现的Web技术使IP网络得到了迅猛发展,用户的访问面获得了极大的拓宽,访问的地方也不再像过去那样固定,于是经常出现无法从Cache找到路由的现象,总线、CPU的瓶颈效应再次出现。另外,由于用户的增加和路由器接口数量不足引发的问题也再次暴露出来了。为了解决这些问题,第三代路由器应运而生。第三代路由器采用全分布式结构—路由与转发分离的技术,主控板负责整个设备的管理和路由的收集、计算功能,并把计算形成的转发表下发到各业务板;各业务板根据保存的路由转发表能够独立进行路由转发。另外总线技术也得到了较大的发展,通过总线、业务板之间的数据转发完全独立于主控板,实现了并行高速处理,使得路由器的处理性能成倍提高。
第四代路由器:ASIC分布转发,网络交换
九十年代中后期,随着IP网络的商业化,Web技术出现以后,Internet技术得到空前的发展,Internet用户迅猛增加。网络流量特别是核心网络的流量以指数级增长,传统的基于软件的IP路由器已经无法满足网络发展的需要。以常见的主干节点2.5G POS端口为例,按照IP最小报文40字节计算,2.5G POS端口线速的流量约为6.5Mpps。而且报文处理中需要包含诸如QoS保证、路由查找、二层帧头的剥离/添加等复杂操作,以传统的做法是不可能实现的。于是一些厂商提出了ASIC实现方式,它把转发过程的所有细节全部采用硬件方式来实现。另外在交换网上采用了Crossbar或共享内存的方式解决了内部交换的问题。这样,路由器的性能达到千兆比特,即早期的千兆交换式路由器(Gigabit Switch Router,GSR)。
第五代路由器技术:网络处理器分布转发,网络交换
在第四代路由器中采用了硬件转发模式,解决了带宽容量和性能不足的瓶颈问题,但是也留下了隐患:基于ASIC的硬件转发在获取高性能的同时,牺牲了业务灵活性。这与ASIC技术实现方式相关,在设计ASIC芯片的时候,对转发流程做了大量优化,使得IP转发以简单而固定的方式来实现,从而固化下来,做到硬件化。如果在IP转发中,还要做一些复杂的额外处理的话,ASIC就无能为力了。而且,ASIC的设计周期很长,通常需要二到三年才能设计出一个稳定运行的ASIC芯片。而在IP互联网领域,业务发展非常迅速,平均每半年就会兴起一项新的业务,而这些业务可能就对转发流程有影响,需要转发程序适度调整来获得高品质支持。近期MPLS VPN技术逐步成为热门,运营商需要在骨干网、城域网中开展MPLS VPN业务,这时发现原来在骨干网应用的第四代路由器无法提供高性能的VPN业务,需要全面升级或另外建设专门的VPN承载网络。在当前带宽已经不是主要矛盾,业务应用为王的运营环境中,ASIC固有的灵活性差、业务支持不足的问题成为了路由器发展的主要矛盾。新的需要,带来新的矛盾,就又会造就新的发展。网络处理器技术兴起,促使第五代路由器出现。
从第一代到今天的第五路由器技术都是不一样的,技术的发展是随着网络技术应用而快速发展。