网络处理器概述

如果你问Intel和AMD宣布的1GHz以上的PC处理器会用到哪里,那就让我告诉你最热的领域是
网络和通信。5年以来,网络的传输速度每年翻一番,再快的处理器都不愁没地方用。

由于有了光纤,传输媒介的速度已不成问题。但是,信息包(packet,在ATM中称为信元,即
cell) 通过路由器和交换机时,对包处理的最低要求是确定每一个包的下一个目的地,在庞
大的路由表中找到它的IP(Internet Protocol)地址,然后转发出去,而这一切必须在下一个
包到达之前做完。障碍就出现在这里。

为了应付日益繁忙的信息流,网络的速度在几年前是155Mb/s(SONET的OC-3标准),而现在
已经到10Gb/s(OC-192),2~3年内又会提高到40Gb/s(OC-768)。

当速度比较慢时,通用的处理器完全赶得上数据流,因此并不需要专门的网络处理器(netwo
rk processor)。后来,通用处理器不够快了,设计者就转向ASIC(专用集成电路)。

ASIC在完成规定的处理工作方面是非常卓越的,但它有两个缺点:一是开发的周期太长,复
杂的ASIC要18个月到2年时间。路由器或交换机要增加新的功能,制造商需要等待的时间太长
;第二,ASIC不是可编程的,要修改就必须经历一个设计和制造的周期,适应不了当今越来
越短的产品开发周期。

直到1999年,还很少有人知道一种专门处理包的处理器,即网络处理器。它同通用的处理器
的不同之处在于:网络处理器是为优化包处理而设计的,它将包以其到达的速度(即线速)送
到下一个节点;而通用处理器则要处理范围很大的各种指令。另外,如果需要新的功能或新的
标准,网络处理器可通过编程来实现,以满足各种各样的网络应用。

对于网络处理器的计算能力的需求,不单取决于数据速率,还同如何处理这些数据有关。其
中最简单的工作是根据包头部的信息确定将包送到哪里,按照ISO(国际标准组织)的OSI(
互连开放系统)的7层协议模型,以上所说的地址解析和路由属于第2层到第4层。

更复杂的处理,例如按用途的计费和负荷平衡等,要求处理器分析包负荷的内容,涉及同应
用程序有关的数据管理和处理。例如,按用途的计费需要收集用户的信息,以处理帐单和对
网络进行分析,处理器的工作包括监视登录以识别用户,检出登录信息,然后匹配用户的文
件和收费政策表,并在负荷中找出关键字,这就属于OSI的第5到第7层协议了。

网络处理器还刚刚在市场上露头,只有Intel的IXP1200和MMC(www.mmcnet.com)的用于1Gb/s
以太网的nP7120建立了生产线。另有两种用于OC-48(2.5Gb/s)的网络处理器,即Vitesse(w
ww.vitesse.com)的1Gb/s以太网处理器IQ2000和IBM的PowerNP NP4GS3,以及Agere System
s(www.agere.com)的Payload Plus在2000年第四季度投产,因此去年只有少量的网络处理器
产品在市场出售。

有三家公司正在设计和开发用于10Gb/s和全部7层协议的网络处理器,即Xstream Logic(www
.xstreamlogic.com)的动态多线程(DMS)处理器核,一家以色列的公司Ezchip(www.ezchip.c
om)的NP-1,和Lexra(www.lexra.com)公司的NetVortex。

Lexra公司既不生产也不销售以NetVortex为基础的片子,而是将NetVortex的知识产权出售给
客户,让他们把NetVortex同他们自己的电路集成到更大的网络处理系统中,以适应性能和价
格的目标。

NetVortex结构的基础是Lexra公司的LX8000包处理核,这是一种32-bit的MIPS3000精减指令
处理器(RISC)。16个LX8000可以通过高速总线相连接,形成一个多处理器系统,用这样的结
构组成的原型系统可在10Gb/s速率下执行全部的7层网络协议,有的用户甚至用到OC-768(4
0Gb/s)。

在10Gb/s速率下执行7层协议的处理可不是一件轻而易举的事,在这种情况下,64Byte的包
的处理时间只有12个时钟周期,这是很紧张的。

Ezchip公司把10Gb/s网络处理器的功能划分为四,对每一种功能优化设计了一种处理器核,
组成四级流水线。 NP-1一共有64个核,每一级流水线都有一些适当的处理器核。

NP-1的数据的宽度256~512bit,而不是通用处理器用的32或64bit。

然而,在OSI的高层处理包时,涉及持续地包存取和查找表搜索,所以即使有这样高度优化的
处理器结构,存储器访问仍然是一个瓶颈。对于10Gb/s的处理器,需要500Gb/s的存储带宽和
至少128MB的容量。因此Ezchip设计了高带宽的几兆字节片内动态RAM,和大容量的片外双倍
速DRAM。Ezchip还有一种专利的高速搜索方法,使得从存储器中取出数据的时间减少约2/3。

Ezchip原定于2001年2月推出它的NP-1,现已延迟到2001年6月,大量生产则要到2002年的上
半年。2000年11月,IBM和Ezchip宣布,IBM将要用其0.18mm的ASIC技术生产NP-1样机,在批
量生产时,改用0.12mm的铜互连技术。

同Ezchip建立一种新的结构的做法不同,Xstream采用类似MIPS的结构。MIPS是在八十年代早
期由斯坦福大学开发的处理器,它的指令集已相当普遍地用于现在的路由器、交换机之中,
人们已经熟悉了MIPS指令,而且有许多开发工具可供采用,Xstream采用MIPS着眼点就在于M
IPS指令已经为通信行业的设计者所普遍地接受这一点。

但是,与通用的微处理器不同,网络处理器要求在OC-192的速率下执行复杂的OSI七层协议。
为此Xstream开发了动态多线程(Dynamic Multi Streaming,DMS) 处理核和智能包管理单元
(intelligent Packet Management Unit,PMU)。

DMS使用户可以在一个时钟周期内安排8个线程,每个线程可以有4个指令。在这32个指令中
,DMS保证在一个时钟周期内有至少6个指令同时执行,即IPC(Instruction Per Clock)>6,
而PowerPC或Pentium的IPC仅稍大于1。PMU的工作则是把包存入存储器,或由存储器取出交给
处理器,以最大限度地减轻处理器的负担。

网络处理器正在得到一些大的半导体公司的注意,它们纷纷收购有专长的小企业。Vitesse在
去年并购了Sitera(www.sitera.com),一家开发了Prisma网络处理器的小公司。Broadcom(w
ww.broadcom. Com)在2000年12月以20亿美元的巨资购买了从事网络处理器合成的公司SiByt
e(www.sibyte.com,其网络处理器产品为Mercurian SB-1250)。Lucent Microelectronic
s 先是在去年春购入了Agere(www.agere.com),开发其Payload Plus,继之将其微电子业务
连同Payload Plus和在一起成立一个新公司,名字仍叫Agere Systems。

Motorola把C-Port 公司(www.cportcorp.com)的C-5处理器(由公司开发)其它通信和数字处理
技术第三方的软件以及开发工具合成为网络系统的设计平台。这样,网络设备的制造公司如
Cisco、Ericsson和Nortel就可以把Motorola的处理器同第三方的软件混合使用在它们的产品
中,而不是样样都由这些公司自己设计。

有人估计,网络处理器的产值将以每年60%的速度急速增长,到2004年达到29亿美元。到那时
,网络处理器将出现在几乎每一台网络设备之中。

This entry was posted in 闲篇. Bookmark the permalink.

One Response to 网络处理器概述

  1. idaho says:

    写得真好,不知道老大对Xelerated是否熟悉,另外请问国内有懂Xelerated编程方面的人才么?我的信箱huxiaocheng@nsn.com,很想和你交个朋友,多谢!

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word