ODCC项目经理、百度资深系统工程师 程传胜:25G网络测试与应用

2017/8/23 10:05:22 来源:DTDATA 作者: 分类:会议活动

各位嘉宾下午好,正式开始前我先做下自我介绍,我叫程传胜,来自百度系统部,在百度负责交换机和光模块的硬件,同时在ODCC testbed项目组担任项目经理,今天我分享25G网络和测试运用。


首先我们看为什么选择25G作为百度下一代主流速率,一句话总结:25G更高效,扩展性更强,性价比更高。虽然从速率来看40G比25G更快,但我们知道目前的40G是通过4×10G实现的,比25G落后一代。假设某个交换芯片有128个设备是lan的话,25G速率下整个交换带宽和交换能力是最大的,同时25G速率下连接服务器的数量和交换能力也是最优的。第二,25G可以更方便的升级到50G和100G,25G技术出现之前,100G是通过10×10G实现和应用,现在对于25G技术来讲,4×25G就能实现100G。如果使用PAM4电平,单25G Lan就能实现50Gb/s的数据传输。

 


第三是单Gbit的Consumption和Cost相对10G都有下降。先说Consumption功耗,我们有做过对比,交换机都插满AOC和光模块,蛇形打流满载情况下,25G交换机的功耗大约是10G交换的1.5倍。这样看25G的Consumption/Gbit是10G的0.6倍。再看Cost成本,我们拿预计今年末交换机加AOC和光模块的成本对比,25G系统的成本大约是10G系统成本的2倍。所以25G的Cost/Gibt是10G的0.8倍,我们相信随着明年25G的大量应用,这个数字还会降低。


Consump功耗,满负载情况下25G交换机的功耗大约是10G交换机功耗的1.5倍。


第二个因素是25G生态的成熟。25G交换机在数据中心的应用是实实在在的工程实践应用,所以我们需要25G生态的上下游各个环节都成熟,产品量产,2015年下半年百度决定做25G交换机的时候我们了解到25G相关的工程技术已经成熟应用或者即将成熟应用,当时有比较好的外界条件。以上两个是选择25G的外在条件,下面看用户需求这个内在条件,对百度来讲,百度为什么把现在的网络主流速率从10G升级到25G,第一和第二原因都有。去年开始线上某些Hadoop集群的数据流量都有达到万兆情况,百度云和百度AI的快速发展,对网络延时和带宽的要求越来越高,升级到25G也有为带宽做准备的意义。


基于以上原因,百度选择25G作为这一代的主流速率。ODCC对25G的研究开展始于2015年,2015年10月成立网络组,同时提出若干项目,其中一个项目是25G交换机项目,我担任项目经理。2016年9月ODCC峰会发布25G TOR交换机规格书V1.0版本。这个规格书详细给出了ODCC推荐的25G TOR交换机的硬件架构和核心设计。值得一提的是这个规格书给出两种不同的规格,供开发者参考。2017年是25G在ODCC爆发的一年,2017年4月份我们发布了25G AOC和100G开放光模块技术规范。同年5月成立25G TestBed测试项目组,8月发布25G系列测试规范。线下多次举办了沙龙沟通和工作组会议,在座的会员单位有的参加过。


百度25G TOR设计原则。首先是解决10G交换机痛点,第一个痛点是软件硬件没有归一化处理。现在百度线上万兆交换机有三个厂家,在CPU使用上,有的厂家使用MIPS架构CPU,有的使用PowerPC架构CPU,同时硬件系统驱动也没有管控。CPU架构和硬件系统不统一造成研发百度OS的时候要分别适配,出现一个现象,三款万兆交换机是用三款百度OS的image(音),这给我们的人力和软件版本的管理造成了一定的困扰。第二个是I2C问题。I2C总线在交换机系统中有广泛的应用,AOC、光模块、PSU、FAN的管理,大都是使用I2C总线。对于可插拔的模块来讲,插拔模块时,一定概率会出现I2C总线锁死,如果没有对此路I2C总线做隔离,进而会影响到整个I2C总线。导致I2C总线不可用,给运维带来一定的不便。第三个痛点是诊断手段不够丰富,问题记录上报比较少,线上的交换机如果发生死机故障,我们不能进行远程诊断,也不能进行远程恢复,我们必须通知现场的外包手动下店进行恢复,对我们人力资源也是一个浪费。交换机如果发生重启故障的话,我们对重启类型和重启原因的记录也比较少,问题的故障预警也没有实现。


针对以上痛点,我们制定25G TOR的时候采取了全程参与、深度定制的方法,首先百度会制定详细的硬件规格和核心设计方案,百度依靠我们自己的软件设计能力和硬件设计能力,给出一个详细的百度想要的交换机的规格,通过我们的设计解决和避免万兆交换机存在的痛点,也能实现我们自己的一些想法。第二,对关键器件我们统一管控,我们选定厂家和型号,必须使用我们选定的关键器件,这样做的目的一是有利于软件的归一化,二是有利于硬件质量的控制。TOR交换机在研发过程中我们全程参与,这样做的目的是了解我们研发的过程,同时确保我们的规格书能执行到位。


基于此我们研发了百度下一代25G TOR交换机,这款交换机提供48个25和6个100G,向下兼容10G/40G。这个兼容性我们也实际测试和调试过,确保实际使用的时候,能做到真正的兼容。从外观上看网管口和串口都在右边,且网管口在上,串口在下,这也是百度规格中为了方便运维而做的强制要求。CPU统一到X86平台,必须使用BDE D-1527或者1517,这是我们精选的一款CPU。交换机基础系统采用Debian8,减轻自己维护的负担。对于外设管理,按照标准服务器那套原则去开发,外设属性统一到sysfs文件系统,提供统一的界面。引入了在服务器上成熟应用,而在交换机上较少使用的BMC管理模块。我们定义BMC模块不依赖CPU和交换芯片独立运行,很多有趣有用的远程监控和管理功能都是此BMC实现的。25G 百度OS加入了控制器Agent和BroadView Agent,BroadView提供可视化能力,结合百度自研CLOS网络控制器,为网络运维、故障排查、网络的精细化运营提供方便快捷的解决方案。


所以说,25G TOR有这些新的特点。通过统一关键器件,统一外设接口,我们的硬件做到了基本统一,软件做到了完全统一,现在我们的25G TOR交换机也是三款,但是三款交换机使用同一个百度OS的image。从以上介绍看出,25G TOR在向服务器靠拢,我们可以把25G交换机当成服务器的业务来看待,整机运营数据都要实时收集。BraodView套件提供了对交换机芯片内部流的负载均衡,丢包原因进行检测和可视化的能力。BMC的使用,使得能采集更多有用的信息,作为交换机健康状态数据存储,后续会依据此数据开发故障预警功能。这样,使用25G交换机的网络由被动运维转变为主动运营。


以上是25G的介绍,这页讲一下自研100G交换机,100G是25G技术的延伸和应用。我们的100G核心交换机对外提供128个全线速全互联的接口,电正交无背板互联设计,所有可插拔模块和可插拔单板都支持热插拔,我们根据Spine-Leaf流量特征的不同设计了两款交换矩阵,这两款交换矩阵共享其他硬件达到节约成本的目的。当然这个核心交换机也支持我们自研的控制器系统,统一配置管理,运维效率大幅提升。同时这个交换机还支持远端串口的实时捕获,耐腐蚀设计,我们100G端口支持45度环温下使用55度窄温光模块,这些都体现了百度在硬件设计和工程技术方面在业界领先的能力。这款核心交换机在今天的展台也有展出。


由于我们自研交换机的交换机本体和AOC Cable、光模块是解耦的,且上层OS是自行开发,所以测试是非常重要的一环。对于25G的测试我建议分两阶段,第一阶段是25G AOC光模块的兼容性测试和服务器网卡的兼容性测试分开测,如果这两个都没问题的话再合起来做端到端的测试。这样做的目的是工作界面清晰,问题定位方便。这个图是百度测试交换机、25G AOC和100G光模块的组网图网图,图中是4款25G TOR交换机,通过25G AOC和100G光模块蛇形组网,进行封包测试。连线不同颜色代表不同厂家的AOC,100G光模块包括很多厂家,测试也做到了遍历。此测试在chamber里面经历了高温工作、低温工作、高低温循环、交变湿热等气候类环境测试。发现了几十个兼容性或者软硬件设计问题。


第二步进行25G端到端测试,这个测试是模拟25G TOR在数据中心实际使用做的组网测试。我们实际测试的时候交换机服务器网卡和线缆的厂家不止一种,所以这个时期的主网是这四个因素的排列组合,如果样本不够多的话,要组很多次网。我们测试的时候要把软件和硬件全部覆盖掉,软件的服务支持情况、硬件的兼容性都要测试。所以这个阶段的测试的工作量非常大,我只画了一个图,其实我们有很多图,交换机1、AOC1,不同的结点对应不同的网卡,这四个排列组合,数量非常大。我们采取的办法是尽量拿多的交换机拿多的网卡拿多的节点拿多的AOC,尽量一次把主网全覆盖掉。


25G TestBed,为什么成立?我们发现25G IEEE标准发布比较晚,在正式标准发布之前,各个25G产品厂家根据自己的理解生产了相关产品。所以这些产品应用的时候存在一定的兼容性问题,有必要依照802.3By对25G产品做一个统一的测试。国内有些小的数据中心规模不太大,他们也想用成本比较有优势的白盒交换机,他们苦于没有这么多测试设备也没有这么多测试用例,人力资源没这么丰富。有些AOC和光模块厂家他们在验证自己产品的时候有的没有交换机,和服务器。拿示波器和误码仪来测试,他们手上也没有这么多交换机和服务器样本,并没有做实际的兼容性测试,所以我们25G TestBed就是在这个背景下成立的,确实能切实这些解决这些问题。25G TestBed通过在物理层、2/3层、4/7进行组网测试,在25G相关产品在正式部署之前能发现很多和兼容性相关的或者其他相关的问题,促进我们商用和规模化的进程。对于ODCC的会员单位来讲,TestBed的测试结果是我们认证供应商的重要参考依据。


我的分享就是这些,谢谢大家。

相关资讯

    暂无相关的资讯...

共有访客发表了评论 网友评论

验证码: 看不清楚?