思科核心路由器CRS-1的研究(中)–转发平面(1)

Sina WeiboBaiduLinkedInQQGoogle+RedditEvernote分享




思科核心路由器CRS-1的研究(上)一文中,笔者首先介绍了CRS-1产品家族和组成的各子系统,然后着重试图分析了CRS-1的交换平面(Switch Plane)。交换平面是一个枢纽,将各种软硬件有机的,无缝的整合在一起,形成一个通信系统。

思科核心路由器CRS-1的研究(中)将主要关注 CRS-1系统的转发平面(Forwarding Plane),或者数据平面(Data Plane)。在本文中,笔者可能将转发平面和数据平面这两个术语混用。控制平面(Control Plane)将会在思科核心路由器CRS-1的研究(下)阐述。

本文将会针对CRS-1 16LCC的转发平面 作为例子展开讨论。对于8LCC和4LCC 的细微差别,不会做特别的强调。

对于一个路由器或者交换机而言,转发平面包括了其重要的逻辑或者智能–(1)接收一个数据报文从各种各样的物理介质端口;(2)转发平面做出决定;(3)根据决定,把该数据报文通过交换平面送往另外一个端口。

路由器做得再花哨,性能再强,上述的三个要点是不变的。

交换平面是为转发平面 提供交换服务的,例如从一个物理端口跨越系统抵达另外一个端口。

控制平面也是为转发平面提供服务的,例如路由和各种设置与管理服务。例如,定时的产生最新的路由数据RIB(Routing Information Base),并把数据传送到转发平面,从而产生转发数据FIB(Forwarding Infromation Base)。FIB可以简单的认为就是RIB在转发平面的一个变种,例如如何组织从而使得可以做非常迅速的查询,例如,在边缘路由器中,因为需要转载的FIB的空间不需要特别大,常使用TCAM的方式。

FIB就是所谓的“转发平面做出决定”时的依据,从而知道一个数据报文要往哪里去。。。

与交换平面一样,转发平面也是一个概念或逻辑实体,而非一个具体的物理实体。

不同的通信设备的转发平面,在具体实现时,映射到不同的物理器件或者子系统中。

从笔者曾经撰写的思科ASR1000和QuantumFlow的战略研究的分析文章里,读者可以发现,ASR1000采用了集中式处理的体系结构。所以数据报文都从线卡,在经过一些初步处理后,送到ESP卡上的QFP芯片去做处理和任何转发的决定。线卡(SIPs)基本上不参与任何决定。换言之,线卡上没有FIB数据库。在ASR1000的QFP芯片体系结构中,赫然的设计了TCAM的接口。接在这个TCAM接口上的TCAM就是存放边缘路由器(Edge Router)的FIB的。

在CRS-1核心路由器上,转发平面是什么?下面是一个从平面角度来观察CRS-1的结构图。

CRS-1逻辑上的转发平面在物理子系统的层面上,就是一系列的40Gbps的线卡(Line Card)所组成的。

如果以16LCC为例,就是16个线卡。8LCC就是8个线卡;4LCC就是4个线卡。

因此,我们说16个线卡组成了16LCC的转发平面。

要强调的是,这16个线卡是并列的,没有依赖关系的。换言之,CRS-1的转发平面是由16个独立的小转发平面共同构造成的这个整体的转发平面。

每个线卡都能单独的做出转发的决定,不需要另外其他线卡的协调。

这与CRS-1的交换平面是一致的。在交换平面中,是8个独立,并行的交换平面构成了整个CRS-1的交换空间。

这与思科的ASR1000基于QFP的集中式处理的转发平面是一个巨大的区别。换言之,路由器的FIB和相应的对FIB做查询的高级处理都在各个线卡部分完成。这16个线卡中的每个线卡都具备相等的,足够的路由信息,从而可以做出转发仲裁。

数据报文在离开线卡之前,系统已经完全知道应该将此报文,通过交换平面,送到哪里去(另外的线卡,或者管理平面的端口)。

(5个打分, 平均:5.00 / 5)

雁过留声

“思科核心路由器CRS-1的研究(中)–转发平面(1)”有33个回复

  1. aaa 于 2009-09-29 7:06 下午

    这16个线卡中的每个线卡都具备相等的,足够的路由信息

    数据报文在离开线卡之前,系统已经完全知道应该将此报文,通过交换平面,送到哪里去(另外的线卡,或者管理平面的端口)。

    做到第二段的效果,不需要每个线卡具备相等的路由信息。怎么实现是一个平衡问题

  2. ASR1k 于 2009-09-30 5:09 上午

    round-robin , then Cell-based Self-routing.

    http://202.194.20.8/proc/GLOBECOM2008/DATA/13-02-02.PDF

  3. 水煮 鱼 于 2009-09-30 5:25 上午

    在边缘路由器中,因为需要转载的FIB的空间不需要特别大,常使用TCAM的方式。
    —————————–
    TCAM很贵,但是查找速度很快,所以一般的高速转发的查表都采用TCAM的方式。

  4. 陈怀临 于 2009-09-30 6:23 上午

    谢谢相关文献。愚兄我11月第一个星期4和星期5非常可能在上海潇洒潇洒,不知在座的贤弟有无在张江欢聚一堂的愿望?大家都不是美女,也不怕见光死。I am serious. Life’s short; let’s have fun. 我的联系地址是huailin@tektalk.cn。

  5. 李克 于 2009-09-30 7:06 上午

    边缘路由器如果指的是branch router或者CE(Customer Edge)router,是可以的,如果指的是PE(Provider Edge router),在做做Layer 3功能时,可能需要的路由可能很多,所以一般不用TCAM,而用专门的查表硬件

  6. 平常心 于 2009-09-30 3:31 下午

    HI,水煮鱼您来了,请教/求证一下:
    1、HW VRPv8 基于Vxworks吗?还是改了?(HW的工程师跟我们讲,VRPv8已经100%模块化了)
    2、NE5000E从芯片到矩阵,完全自己研发的?
    多谢

  7. 潇湘漾水 于 2009-09-30 3:50 下午

    @平常心
    VRPv8确实是一个完全的模块化产品,这应该是华为平台开发的一次飞跃。至于使用的操作系统还不太清楚,查网上好像说是用的linux,不过vxworks用的很熟悉了,切换操作系统来说对商用还是存在很大的挑战。觉得VRPv8从总体上说架构都优秀了很多。不过国人的开发能力,很难保证这个系统在开发中不会走形~~~~我们之后拭目以待哈,呵呵。

  8. 平常心 于 2009-09-30 3:55 下午

    我倒是希望是基于Linux内核开发的
    起码有了新的战略起点

  9. 陈怀临 于 2009-09-30 4:01 下午

    我也听说V8很优秀。。。

  10. 阳光 于 2009-09-30 4:49 下午

    刚看到一新闻:

    10.1,前英国电信首席技术官和创新部门主管MattBross先生将出任华为的全球首席技术官.作为全球首席技术官,MattBross先 生的工作,将是致力于识别全球电信行业和网络架构的发展趋势,指导华为产品及解决方案围绕客户需求持续创新,并支持公司为北美客户提供创新的产品和解决方 案.

    华为执行副总裁胡厚崑表示:“MattBross先生是一位具有丰富行业经验的通信技术专家和创新精神的商业领导者,他的加入将帮助华为更好地理解客户需求,为客户创造更多的商业价值.”

    MattBross表示:“我对加入一个充满活力的公司感到非常荣幸.华为以客户需求为导向的创新产品和解决方案已经赢得全球领先运营商的广泛认可.我期待与华为的技术和管理团队紧密合作,提供满足客户需求的领先解决方案.”

    MattBross先生在电信业界服务多年.在加入华为之前,他曾是英国电信的首席技术官和创新部门主管,负责统筹英国电信各项业务的技术策略、长期规划和创新.Bross是英国电信“21世纪网络转型项目”的推动者,领导英国电信跨越亚太、美国和欧洲的全球技术和研究团队.在此之前,Bross曾在 ConTel,MasterCard,Williams Communication 和他创立的CriticalTechnology等公司中担任重要职位.

  11. 潇湘漾雾 于 2009-09-30 5:03 下午

    VXWORKS的实时性比较好,当然它也是牺牲了一些特性满足的。老实说,路由器不比战斧导弹,对实时性的要求每那么高,呵呵,所以使用linux也是比较经济和实用的考虑。

  12. 横刀 于 2009-09-30 5:07 下午

    据说在线卡上,思科转发处理芯片和控制层面处理芯片是分离的,不知道是不是这样?

  13. 陈怀临 于 2009-10-01 6:12 上午

    Cisco的板子通常都是这么做的。要加一个CPU单独做控制。

  14. 陈怀临 于 2009-10-01 6:13 上午

    潇湘,你没有搞错吧?路由器对实时的要求不然战斧导弹?我觉得恰恰相反。。。

  15. 阿来 于 2009-10-01 6:32 上午

    据说在线卡上,思科转发处理芯片和控制层面处理芯片是分离的,不知道是不是这样?
    ———————————-
    思科采用这种双CPU分离控制层面和转发层面的方式确实很明智。至少保证了两个层面之间互不影响,提高系统本身的可靠性和稳定性。

  16. 阿来 于 2009-10-01 6:37 上午

    潇湘,你没有搞错吧?路由器对实时的要求不然战斧导弹?我觉得恰恰相反。。。
    —————–
    陈老师,确实路由器的实时性不如战斧导弹,当然这里所指的实时性指的是与操作系统支撑相关的特性。尽管路由器要求的延迟特性很小,比如一般的电信级别要求是50ms,但这个参数和操作系统没有丝毫关系。路由收敛,表项刷新的要求都在百毫秒级别,有些应变参数有任务的影响,可能更在秒级别以上,所以这个和战斧这种应用场景复杂,要求决策功能灵敏的系统来说,还是有相当的差距。

  17. wddlsz 于 2009-10-01 8:49 上午

    敢问首席可是参加”CHINA MOBILE WORKSHOP ON IPV6 DEPLOYMENT IN CELLULAR NETWORKS”

  18. 陈怀临 于 2009-10-01 9:44 上午

    我身边一定有间谍。希望是个美女蛇之类的。我这么机密的会议行程你们都知道了。。。

  19. mpc8240 于 2009-10-01 9:48 上午

    VxWorks一直是monolithic的吧。所以如果VRPv8是完全modularized的话,应该不是基于VxWorks了。

  20. 陈怀临 于 2009-10-01 1:37 下午

    我的直接是V8应该还是基于vxWorks的。但有可能是做了一套完整的中间件(middleware)了。从而为将来朝Linux迁移打下了基础。。。

    如果已经是Linux的,华为没有理由不高调宣传这一改变。这是其对IOS的一个PK。是有商业优势的。

  21. 李克 于 2009-10-01 3:05 下午

    vxWorks对多核和modularized支持得太迟了,肯定不是,Linux的嵌入式相比于Wind river不是很成功,所以两者肯定都不是,对于CRS级的大型系统,底层的嵌入式操作系统目前并没有很好的选择,包括IOX用的QNX也不是很好,这确实是个难题,H也解决得难受

  22. droplet 于 2009-10-01 4:56 下午

    modulization 和 monolithic不是同一级别的概念吧,module是概念上的module还是代码级别的module哪?各模块都是受保护的吗?如果kernel还是在同一空间,各模块还是可以直接调用,这个和现在的系统没有多大的区别啊。

  23. 平常心 于 2009-10-02 3:16 下午

    HI,李克:
    为何说:”Linux的嵌入式相比于Wind river不是很成功”

    为何说:“QNX也不是很好”

  24. 平常心 于 2009-10-02 3:21 下午

    VRP8.0: Future-oriented Distributed Network Operation System Platform for all of the Huawei products

  25. 陈怀临 于 2009-10-02 4:16 下午

    》Distributed Network Operation System Platform

    如果是这样的话,直觉是拿CORBA等做了一些中间件。
    如果我的猜测是对的,通常而言,非TAO莫属。TAO-A RealTime CORBA。

  26. 陈怀临 于 2009-10-03 8:00 上午

    (假设我的猜想是对的)从技术上而言,用CORBA在通信系统上,比较少见。CORBA更多的适合于Client/Server的结构。而非通信系统。如果V8在这方面的目的之一是为了向CRS-1的控制平面看齐,也是可以理解。但对于IIOP长期对一个通信系统的影响,我也不知道。如果我做V8,我会试图introduce MPI。为将来迈向并行计算打好基础。CORBA不是为并行计算而生,而是分布式系统的东西。

  27. 平常心 于 2009-10-03 3:19 下午

    找HW的东西太难了,2007年,9月,是这样描述的:

    CMM-5(何物?):
    1、Assured software quality control.
    2、Timely and reliable delivery of software.

    VRP
    1、10+ years sustained development; running on 2,000,000 units.
    2、VRP8.0 for IP/Mobility/Wireline, ready for FMC&IMS
    3、Rich feature and high reliability.

  28. 陈怀临 于 2009-10-03 4:29 下午

    如果思维开阔一点,我们来看自由软件和Open Source,我们会很羞愧的承认:我们,作为中国人,并没有对人类社会信息技术做出过significant的贡献。这里面有技术原因,也有人文情怀的原因。

    我个人不反对,而且是提倡拿来主义。但是,我们确实基本上没有贡献。

  29. 帅云霓 于 2009-10-04 4:03 上午

    To 李克前辈:CMM-5是华为作为吹嘘资本的一个软件流程规范方面的认证。华为各项内部流程的繁杂,几乎规定到了员工上洗手间应该先松裤带,还是先拉拉链的地步。

  30. 李克 于 2009-10-04 5:02 上午

    TO 帅云霓,有点这样,中国公司也都差不多,不过据说H已经在搞敏捷开发了,所以一个公司或者人最可怕的不是犯错误,而是其发现改正错误的速度。其实最善于制定规章制度的不是西方人,而是中国人,所以中国人还因此产生了一项西方人没有的本领,上有政策,下有对策的对付规章制度的绝招,如果做好对中国人的制度,关键是抓住制度执行中几个可以真正有用的监控点,再加上会监控的人
    我是老了,可算不上前辈,因为我没有前辈的资历

  31. HWBIT 于 2009-10-11 7:52 上午

    Cisco在CRS-1上似乎实现了叫做Hierachical FIB的方案,不知道首席后续是否还会对CRS-1的转发做更详细的分析:)

    VRPv8确实是基于LINUX系统的:)

  32. 陈怀临 于 2009-10-11 11:13 上午

    I See。我与张部长吃过一次饭。对张部长谦卑的人品非常佩服。但是,据说张部长在华为最近有点失势。。。他应该是V8的领导人吧。。。。咔咔咔,八卦一下。

  33. 陈怀临 于 2009-10-11 5:50 下午

    另外,不熟悉华为的弟兄不要以为我与大宋的部长吃饭。“部长”是华为的一个职位title。