随着白盒交换机生态系统的发展,硬件,网络操作系统、控制、管理以及数据平面协议软件等逐步成熟,白盒交换机迎来了较大的发展,越来越多的客户投入到白盒交换机的研发和使用中,尤其在互联网行业,随着业务的精细化发展,对网络的特制化的需求越来越多,自主可控的白盒交换机愈发显得重要。
数据中心场景比较单一,需求明确,对软件特性的要求相对简单,非常适合采用白盒交换机
白盒交换机的研发分为以下几个步骤
需求分析->部件选型和供应商选型->ODM代工生产->软件开发->整机验证->部署/上市
需求分析:
确定交换机的定位,应用场景,通过应用场景,确认出产品的软硬件规格,比如,用于高性能计算,那么重点关注高带宽,软件特性非常简单,交换机的规格可能为32个100G的盒式1U交换机。应用场景就是我们的需求,决定了我们的芯片选型,网络操作系统选型。
选型
包含硬件部件选型和供应商选型,网络操作系统选型
CPU选型:CPU主要由嵌入式系统CPU和X86 CPU,在传统的交换机中,CPU主要用于协议的计算,要求不高,通常选用嵌入式系统的CPU,比如Power PC的。在现在的数据中心中,为了更好的和linux以及外部系统兼容,数据中心交换机选择使用X86的也逐步成为一种趋势。
交换芯片选型:交换芯片的供应商有博通,Marvel,擎发科技,barefoot,国内的盛科,有得成熟稳定,有的价格便宜,有的可编程等,每家芯片都有自己的特点以及应用场景,这个就需要根据应用场景进行选择,比如国内有不少公司采用barefoot的可编程特性来开发SD-WAN网关。
ODM厂家选型:国内做ODM相关的厂商很多,不少给国外的互联网公司,如亚马逊,facebook生产白盒,技术也相对比较成熟,比如,天弘,富士康,智邦,DNI等,可以综合多家进行选择,也可以同时有多家供应商。
网络操作系统选型:网络操作系统很多,比如商用的有iCOS,marvel,IP Infusion,Pica 8,metaswitch等,开源的有SONIC,openswitch,这里,应用场景和定位就必须非常清晰,需求决定了网络操作系统。闭源的操作系统基本上是协议丰富,经过大规模的市场检验,但是也存在软件特性臃肿,开发性不够的缺点。如果白盒产品最终客户是企业网客户,那么建议选用闭源操作系统,如果是互联网客户,具备较强的技术实力,可选用SONIC。SONIC虽然距离商用还有一段距离,但是满足简单场景下的使用,是可行的,比如,高性能计算,数据中心TOR设备。个人判断,SONIC将是未来的发展方向,将极大的简化和改造我们的网络。SONIC的安全性,稳定性,可靠性方面还有待加强。
ODM代工生产
定义好硬件规格和选型后,由ODM代工商生产,这里也需要关注主要部件的生产和选择,如PCB板,电源,不同的选材,价格差异较大,比如不同的电源存在不同的输入电压,在电压不稳定的时候,电源的差异就会暴露出来。建议在关键件选择上,都选择通过CCC认证的,这样至少有一定的质量保证。这个时候,最好也有硬件工程师,对产品硬件的设计,生产进行审核,保证产品的生产没有问题
软件开发
硬件样机出来后,需要进行相关的EMC等测试,同时,进行软件的适配,芯片SDK由芯片厂家提供,BSP由ODM厂家提供,需要将网络操作适配到样机上,此项工作由ODM厂家和交换机厂家共同开发完成。现在大部分芯片都支持SAI接口,网络操作系统只要支持SAI接口,那么可以快速的实现交换机的功能。但SAI一个交换机功能的最小集,如果要实现更多的复杂功能,需要网络操作系统进行驱动适配。
整机验证
软件开发完成后,就可以进行整机的系统测试,包括特性功能测试,稳定性,可靠性,性能,规格等方面的测试,同时,将设备部署在真实的业务场景中进行测试。
部署上市
测试完成后,交换机产品就可以进入量产阶段,如果要对外销售,需要到工信部申请入网认证(NAL证书,此操作可以部分提交到软件开发完成阶段),如果是自用,则可以进行上线部署运行
以上,是一款白盒交换机开发的大体过程,如果是成熟产品,历时3-4个月即可开发完成,如果是定制产品,历时7-9月即可上市。