关闭

ASIC:万兆路由的基石

663人阅读 评论(0) 收藏 举报
分类:

ZZ : http://blog.csdn.net/jincm13/article/details/7818854


面临数据的海量递增和业务日益复杂的现状,路由器硬件平台已经成为制约整个互联网业务发展的瓶颈。从路由器诞生之日起,应用需求一直在推动着路由器硬件结构的发展。路由器的转发核心器件随着应用的发展,也经历了很大的变化。骨干网核心路由器的核心转发硬件平台主要经历了以下几个发展阶段: 

  通用CPU阶段
  采用通用CPU作为硬件转发平台具备高度灵活性优势,上个世纪90年代以前,几乎网络上所有的路由器都是用CPU作为核心转发硬件。高端和低端路由器之间的差别仅仅在于采用的CPU性能以及数量不同。因为一个通用的CPU的极限转发性能也就在400kpps以内,还做不到两个155POS接口线速转发,所以采用CPU作为转发硬件平台比较适合提供155M以下的接口的路由器产品。市场上也有很多通过多个CPU同时分布式转发来实现较高的转发速率,使路由器整体性能达到1~2Mpps。
  NP处理器阶段
  NP——网络处理器的出现在一定程度上很好地解决了网络业务提供丰富性和性能矛盾的问题,由于NP的本质是多种专用CPU的组合,通过微码开发即可指定各个CPU的工作行为,这样NP可以很好地在保证一定性能的情况下,通过软件升级提供各种各样的业务。同时由于对业务作了相应的微码优化,所以其对特定业务的处理能力比传统的CPU有了很大的提升,单片NP可以实现1~6Mpps的转发性能。目前成熟的NP已可实现2.5G端口的线速转发能力。近年来也出现了采用多个NP分布式转发来实现较高密度2.5G、1G端口的数据交换。但NP虽然实现了这些高速端口的接入,却无法解决内部多个高速接口内部的高速数据转发问题,所以核心网的高速业务需求驱动着路由器厂商寻找新的技术来解决性能和灵活性的矛盾。
  ASIC芯片阶段
  众所周知的是,对于特定的业务,能够同时提供极高转发性能和较低的成本的只有ASIC芯片了。但由于ASIC的固定特性一直无法解决路由器对多业务支持的需求,ASIC芯片一旦产出后,其原有的功能无法添加,所以ASIC芯片一直没有被路由器采用。而如今核心网对核心路由器性能几乎无止境的需求,迫使路由器的厂商和研究机构把目光投向了ASIC。况且现在10G的ASIC芯片早已成熟,并已规模商用,这也是网络设备厂商能够青睐ASIC的一个重要原因。上个世纪末,一些厂商和科研机构就开始完全用ASIC搭建核心路由器平台的研究,至今已经实现了一个比较完善的技术体系。 

  对于ASIC平台来说,最大的问题就是对多业务的灵活支持。灵活性支持主要体现在两个方面:一方面是查表技术,另一方面是对多业务报文的识别、处理能力。近几年出现的TCAM(三重内容可编址存储器)很好地解决了多业务中各种表项的高速查找问题,其查找性能可以达到每秒100M次,也就是说可以支持一个10G端口每秒钟查找4次以上。而对各种路由表、ACL安全策略、QoS策略等表项的查找是多业务支持的核心内容。同时现在的硬件技术制造出的高速可编程硬件FPGA能够实现40G数据流的报文头的处理,从而提供了对多业务支持的可能性。港湾网络有限公司正是看到了这种可能性,经过三年的潜心研究,终于实现了ASIC+FPGA+TCAM协同实现高密度千兆、2.5G、10G接口多业务数据的大容量处理、转发,FPGA硬件实现对业务报文头的处理并控制查找形成业务流,TCAM实现对各种高速业务流表项的查找,ASIC仅仅负责对业务流大容量转发,从而实现了多业务应用下高速接口的大容量接入。同时在路由器内部,通过专用ASIC把高速接口板之间的海量数据切割成特定长度的信元,从而实现高效、低延时、T比特级别的大容量数据交换。这标志着我国在高速核心路由器的研发方面已经迈入了国际先进行列。尤其值得一提的是,PowerHammer系列核心路由 器的接口板处理ASIC芯片——RACATA是完全自主研发的400万门逻辑芯片,也标志着我国的芯片设计水平已经迈上了一个新的高度。目前几乎业界所有的主流高端核心路由器设备供给商都推出了基于ASIC的路由器产品,代表着采用ASIC已经成为核心路由器技术发展的一个必然方向。



简介

  无论在中低端路由器还是在高端路由器中,CPU都是路由器的心脏。通常在中低端路由器中,CPU负责交换路由信息、路由表查找以及转发数据包。在路由器中,CPU的能力直接影响路由器的吞吐量(路由表查找时间)和路由计算能力(影响网络路由收敛时间)。在高端路由器中,通常包转发和查表由ASIC芯片完成,CPU只实现路由协议、计算路由以及分发路由表。由于技术的发展,路由器中许多工作都可以由硬件实现(专用芯片)。CPU性能并不完全反映路由器性能。路由器性能由路由器吞吐量、时延和路由计算能力等指标体现。

编辑本段路由器芯片发展历程介绍

路由器

  路由器是互联网络中的节点设备,用来连接多种网络或网段,路由器工作于网络七层协议中的第三层,其主要任务是接收来自一个网络接口的数据包,根据其中所含的目的地址,决定转发到下一个目的地。

CPU

  与计算机一样,路由器也包含有CPU。不同级别的路由器,其中的CPU也不尽相同。无论在中低端路由器还是在高端路由器中,CPU都是路由器的心脏。通常在中低端路由器当中,CPU负责交换路由信息、路由表查找以及转发数据包。在路由器中,CPU的能力直接影响路由器的吞吐量(路由表查找时间)和路由计算能力(影响网络路由收敛时间)。在高端路由器中,通常包转发和查表由ASIC处理器完成,CPU只实现路由协议、计算路由以及分发路由表。随着技术的发展,路由器中许多工作都可以由硬件实现(ASIC专用芯片)。

编辑本段发展阶段

  路由器处理器芯片的发展大致经历如下四个阶段:
  (1) 通用处理器
  (2) 嵌入式处理器
  (3) ASIC处理器
  (4) 网络处理器

通用处理器阶段

  上个世纪60年代,人们曾经使用普通电脑充当路由器的角色,这就是第一代路由器的雏形。用一台计算机插接多块网卡来实现的,多个网卡共用一块处理器,通过内部总线互联,CPU负责了几乎全部的路由计算、数据转发指令,同时还要负责整台机器的设备管理工作,后来才逐渐专门发展出专门的总线、接口及操作系统的路由器。
  作为通用处理器,由于考虑了各种应用的需要,具有一般化的通用体系结构和指令集,以求支持复杂的运算并容易添加新开发的功能,也就是说:不是面向网络通信需要特殊设计的。处理路由转发速度一般相对较慢,可扩展性差,很难满足网络的需求。

嵌入式处理器阶段

  嵌入式微处理器与通用微处理器最大的不同就是嵌入式微处理器多数工作在设备制造商自己设计的系统中,是面向应用的处理器。目前大多是针对专门的应用领域进行专门设计来满足高性能、低成本和低功耗的要求。如:移动通信,PDA,游戏机,网络通信,其它电子产品行业。
  目前,嵌入式处理器主要有Am186/88、386EX、SC-400、Power PC、Motorola 68000、MIPS、ARM系列等。在32位嵌入式处理器市场主要有Motorola,ARM,MIPS,TI,Hitachi等公司, 有些生产通用微处理器的公司,象Intel、Sun和IBM等,也生产嵌入式的微处理器,但不是专业生产,人们更熟悉如INTEL的Pentium 。
  第一代的路由器是基于嵌入式微处理器的嵌入式系统,有专门的电路、接口及操作系统,是一台专门的设备,已经不再是基于通用微处理器、通用接口、通用操作系统的PC了。Cisco2501路由器就是第一代路由器的典型代表,其CPU是MOTOROLA 68030 20MHz处理器,这个处理芯片相当于INTEL早期的80386通用处理器。
  目前,嵌入式微处理器大量应用在各网络设备供应商的中低端路由器产品中,不管是思科的通用路由器系列,还是小企业、家庭中用的宽带路由器产品,都可以见到它们的身影。

ASIC(专用集成电路)处理器阶段

  当网络速度比较慢时,嵌入式处理器的路由及转发的处理速度完全赶得上数据流,后来,线路带宽宽了,数据速率快了,嵌入式处理器的处理就不够快了,设计者就转向ASIC。ASIC是被广泛应用于性能敏感平台的一种处理器技术。
  在路由器发明、生产、应用,使网络有了高速发展,但在网络发展初期,网络传输的速率比较低,业务量比较少,这个时期的网络设备一般基于CPU(通用式或嵌入式),即通过在CPU上运行相关网络操作系统来实现各种网络功能。它具有很高的灵活性,可通过更新操作系统,就可以完善原有功能或加入新的功能和服务特性。但其缺点是处理速度慢、吞吐率低。但是这种性能在当时那种低速的网络环境下是可以接受的,因为路由器转发分组的速度完全可以跟上线路的传输速度。然而,随着光纤等传输技术的进步,网络带宽的增长速度逐渐超过了CPU处理能力的增长速度,这使得基于“CPU+操作系统”的路由器逐渐成了网络的瓶颈。因此,需要想办法提高网络设备的性能。在这种情况下,网络设备开始采用ASIC技术。它通过把指令集或计算逻辑固化到芯片中,它把转发过程的所有细节全部采用硬件方式来实现,因而可以获得很高的处理速度,这就能够很好地满足对性能的要求,适应了网络带宽不断增长的发展趋势。
  在高端路由器中,通常包转发和查表由ASIC芯片完成,CPU也还存在,但只是实现路由协议、计算路由以及分发路由表。由于技术的发展,路由器中许多工作都可以由硬件实现了。

网络处理器阶段

  ASIC的优点也是它的缺点,就是缺乏灵活性。一旦指令或计算逻辑固化到芯片硬件中,就很难修改升级,要增加新的功能或提高性能,就得重新设计芯片。另外,设计和制造复杂的ASIC一般需要花费周期长,研发费用较高。除此之外,当前网络的应用范围在不断扩大、新的业务不断涌现,网络的发展也不仅仅是带宽的不断提高,而更多地表现为对“智能化处理”的要求,如服务质量(QoS)、控制安全(Security)等服务都需要分类和深层数据处理(处理到第4层到第7层)。而这些服务功能既要求处理的高速度,又要求实现的灵活性,因此处理器需要能够高速地、灵活地满足各种服务和应用的不同需求,这一点却是ASIC技术也难以满足的,这催生了新的处理器的出现,也就是“网络处理器”。
  网络处理器是为优化包处理而设计的,它将能把数据包以线速送到下一个节点,另外,如果需要新的功能或新的标准,设备制造商能通过给网络处理器编程来实现,以满足各种新的网络应用。
  应该说,网络处理器较之ASIC最大的优势是灵活,开发周期相对较短。网络处理器的性能相对于其它处理器有很大的提升,但是在高速数据包处理方面与ASIC仍有差距。 在路由器领域,处于中型企业网络核心、电信网络边缘的路由器,采用NP已经蔚然成风。而在电信网络核心主干以及国内一些大型行业企业、机构网络中使用的核心路由器,究竟使用ASIC为主的体系结构还是NP为主的体系结构,尚有争论。ASIC的体系结构似乎更占上风,但一切都有变数,也许最好的方式还是ASIC与NP的结合,取两者之长来打造高速灵活的核心主干路由器。
  与计算机一样,路由器也包含了一个中央处理器(CPU)。不同系列和型号的路由器,其中的CPU也不尽相同。Cisco路由器一般采用Motorola 68030和Orion/R4600两种处理器。 无论在中低端路由器还是在高端路由器中,CPU都是路由器的心脏。通常在中低端路由器中,CPU负责交换路由信息、路由表查找以及转发数据包。在路由器中,CPU的能力直接影响路由器的吞吐量(路由表查找时间)

编辑本段总结

  路由器处理器芯片除了通用处理器之外,其它的嵌入式处理器、ASIC处理器、网络处理器都有它们发展和用武之地。嵌入式处理器将更多地出现在低端的路由器产品中,如家用、SOHO级宽带路由器、VPN防火墙网关;ASIC处理器与网络处理器将更多地出现在中端、高端的企业级、电信级的路由路及交换机中。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:213671次
    • 积分:3853
    • 等级:
    • 排名:第8290名
    • 原创:152篇
    • 转载:178篇
    • 译文:5篇
    • 评论:17条
    文章分类