上回说到,鲑鱼派(CISCO)利用自身修炼的葵花宝典这一独门秘术,在武林开辟了一片天地。葵花宝典虽然被鲑鱼派奉为绝学,然而,部分弟子的改换门庭使得此门秘术部分片段流传江湖。
却说江湖上有一门魔教日月神教,长期驻扎黑木崖,教主任我行向来心狠手辣,打造铁血无情人设,危难之时甚至抛弃亲生骨肉任盈盈于蛮夷,令武林各正统派别谈之色变。
日月神教通过招降纳叛党同伐异,得知了葵花宝典的秘术,经过片段的拼凑,自立一门功夫——辟邪剑谱。
任教主欲启动修炼该门邪术,翻开第一页:
教主一咬牙一跺脚,一道剑光闪过,一缕黑血洒在雪地上……
从此,世间辟邪剑法开始行走江湖——ENP。
ENP在数据中心交换机的代表应用款型,是CE6881和CE6863。
二者的硬件完全相同,CE6863支持48个25G以太网接口+6个100G以太网接口,而CE6881支持48个10G以太网接口和6个100G以太网接口。
CE6863的实现如下图:
它由2颗ENP芯片构成,每颗具有24个25G接口和3个100G接口,两颗芯片之间通过900G的Serdes互联互通。
那么,既然单颗ENP芯片能支持900G (36*25G)Serdes,还可以支持24个25G和3个100G接口,也就是单颗芯片有1.8T的IO能力,为什么还需要使用2颗芯片实现1.8T转发吞吐能力的交换机呢?
让我们打开CE6863的英文版彩页,答案就昭然若揭了。
如图,基于Broadcom TD3芯片的CE6865-48S8CQ-EI的转发能力是2000Mpps,而CE6863用了2颗芯片,整机转发能力仅为940Mpps,也就是说,测试64字节小包转发无法线速。只有测试128字节以上的小包才能线速转发。如果使用单片ENP实现CE6863,那么,整机性能470Mpps,是无法被客户接受的。
但,使用2颗芯片实现盒式交换机,则遇到了更多的限制——
上图来自CE6863生产商的渠道规格查询工具。
可以看出,流量跨芯片的性能又大打折扣,单向只有375Mpps。
这是为什么呢?
让我们回忆一下,冲灵剑法……
两台交换机堆叠时,为了让两片交换ASIC合二为一,二者互通需要经过HiGig总线。HiGig在传输以太网数据包时,需要利用数据包前面的帧间隔插入metadata……
答案就在这里。
冲灵剑法(Broadcom通过Higig堆叠)使用专用硬件电路实现HiGig的metadata插入,无需消耗更多的处理时间。而ENP是通过可编程流水线实现的,任何对数据包的修改,如三层转发、VXLAN封装/解封装都会降低性能。当然,堆叠以及在框式交换机中跨芯片和跨线卡转发,也会使得性能降低。
ENP不仅可以用于实现盒式交换机,在框式交换机CE16800中也采用了这颗芯片。
CE16800的实现架构和基于Jericho的CE12800类似:
CE16800的线卡使用ENP实现,交换网板用自研的SF(Switch Fabric)芯片,每SF芯片容量为1800G。
CE16800有三种线卡。48口万兆线卡的架构如下图:
如图,ENP将48对25G Serdes降速到10G出万兆口,24对Serdes工作在25G,到交换网板。一旦一块交换网板故障,另外5组4口25G Serdes提供500G带宽,保证跨板可以线速。
24口40G和36口40G则使用了2片和3片ENP。它们的结构大同小异:
40G线卡与10G线卡的区别在于,ENP每4对10G Serdes作为一个40G以太网接口使用。
而18口100G和36口100G线卡使用3片和6片ENP实现。
以CE16808为例,它的整机宣称转发率规格为22560Mpps:
8槽位最多可以配置8*6=48片ENP芯片,
可得到单芯片转发能力为22560/48=470Mpps。
可以看出,单颗芯片虽然能支持6个100G以太网接口,但实际上包转发率只有470Mpps,离小包线速要求的6*100*1.5=900Mpps有不小的差距。跨芯片转发和跨板转发时性能还会进一步降低。
看到这里,大家应该明白,辟邪剑谱虽然看起来能短时间修炼成表面上强大的武功,但实际上是荒废了自己的基本功能,是不可取的。
明天,我们还将深入分析辟邪剑谱的本质,教大家破解这一邪术的办法。
今天的遗留问题:
为什么ENP芯片在盒式设备单芯片可以支持48*25G+3*100G=900G的以太网接口,但在框式设备上只能用6个100G以太网接口呢?
昨天问题解答:
思科catalyst 9600线卡没有交换芯片,所有接口通过线卡的phy芯片,按内部背板连线,连到主控上3颗UADP 3.0之一。3颗UADP 3.0芯片环形相连,跨芯片转发无需通过交换网。
而CE12800这种CLOS架构设备,两颗线卡交换ASIC间流量通过多个交换网板分担并互联互通。