现在数据中心和企业网中,网络设备中交换机占了很大的数目。互联网公司数据中心传统的架构里需要大量采购交换机等网络设备,而现在新兴的云计算中的网络和企业网组建内部网络也需要大量的此类设备,大家都因为交换机的CLI或API接口不统一而面临如何不被厂家锁定的问题,这里不仅仅有价格利益上的因素,更多的是技术上希望有较多的选择。而在SDN领域里,统一南向接口更是控制转发分离后,SDN控制器来管理底层网络的基础。
通常造成交换机管理或控制比较难统一的因素大概有这么几类:
***,交换机芯片商和交换机设备商厂家众多,客户所购买交换机上面所跑的交换机操作系统一般都是设备商私有研发的闭源系统,或基于Linux等开源系统定制研发的操作系统;芯片商的芯片SDK API很大差异,这样都导致的交换机常用配置方式CLI差异非常大,设备商的网络设备也一般不提供软件的接口,对极少数设备商提供了API,接口之间的差异也很大。
第二,纵然是不同设备商交换机的同一个功能,即使该功能有标准可参考,但是实现出来的产品形态仍然千差万别,甚至在标准未有明确规定之处,两家厂商可能会做出截然相反的实现做法,因为设备商所用的交换芯片可能不同而导致芯片对该功能的支持程度不同;进一步即使两家设备商采用了同一家芯片商的同一款型号开发同一个功能,因为技术人员的技术水平差异和思维方式差别,也会造成两家交换机设备所提供的同一个网络功能,在配置方式上基本会有显著的不同。
第三,使用交换机的客户通常没有足够的时间、财力和精力对所有厂家的交换机都进行测试和调研,通常是选择其中的几家进行竞标或对比测试,甚至有的厂商连对比测试都没有做,只是随意选择了一家设备商的交换机,当然也可能有技术积累不够方面的原因认为所有设备商的交换机功能都应该是一样的,这样导致了这些客户肯定会被设备商锁定;回过头来仔细想想,纵然做了足够对比测试和竞标流程的客户,因为对网络设备控制管理的因素,也不太可能选择太多厂家的设备,而只能最终选择两三家的产品,实质上也是被这两三家设备商所锁定;近在两三家设备商提供的设备里,再加上产品型号的不同,交换机数量一旦上了规模,其部署、管理和维护的难度及成本,都是极其大的。
第四,交换机接口不统一且不开放,很大的原因是此方面标准化工作做的不足,所以OpenFlow协议的提出可谓是生逢其时,这也为蓬勃发展的SDN提供标准化的开放南向接口,但是OpenFlow有些太“学术化”,有以下几方面因素:
a)OpenFlow标准内容最初没有基于现有的交换芯片,而是在原来ACL的基础上发展为全TCAM实现,这会给芯片商和设备商带来技术上的资金和人力投资,以开发新的硬件和软件来支持OpenFlow,但是新研发都是有风险的;所以后来也有I2RS的提出,最近OpenFlow有提出TTP的内容(https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/OpenFlow%20Table%20Type%20Patterns%20v1.0.pdf);
b)OpenFlow引入生产环境,在新的部署中重新网络规划和采购新设备基本还可以,但对于已有的设备仅是升级软件的话,会导致一些原来的设备无法使用的问题,这必然会导致客户更换设备引起成本的增加,也会导致一些设备被淘汰而浪费,会给OpenFlow的落地带来不利的因素;
c)和传统设备研发一样,虽然OpenFlow也是标准的,但是由于设备商使用的硬件交换芯片和开发人员的技术思维不同,将来也会引起设备商之间设备不兼容性的问题;这样虽然是标准的接口,但是不同厂家的实现不同也给接口统一带来了一定的难度;
第五,为摆脱设备商锁定和其产品不满足定制化需求的问题(很少有设备商为了单一客户而定制开发某个型号的交换机),使用交换机设备的客户不被设备商锁定,还有一种解决方式是对交换机设备进行自研,比如Google、Facebook和国内的BAT等,这种方式需要客户有足够的财力和技术投资才可以尝试,一般的企业客户和新兴云计算厂商还不具备这个条件。
第六,新兴的白牌交换机,是将这些交换机的硬件和操作系统相分离,类似于购买电脑和安装操作系统之间的关系,购买了一台笔记本电脑可以安装任意想用的系统一样,交换机硬件购买后来安装想要的交换机操作系统,例如在NFV中设备厂商提供的白牌交换机(比如Pica8和盛科等厂商)也是不错的选择,但是要同时玩得起交换机硬件测试和软件达标,这些对客户的技术要求也不会太低。
第七,在云计算中则多采取了在物理网络通用的二三层转发之上,采用虚拟交换机(比如Open vSwitch)对网络虚拟化来规避不同厂商设备之间的差异所带来的技术问题,这些虚拟交换机通常是服务器里虚拟而出,必然会占用服务器的CPU和内存等本应用于计算的资源,需要客户仔细核算这之间的成本是否足以抵消为解决不被厂商锁定带来的收益;也有一些设备商比如盛科、思科和博科等提供了一些可以用于云计算网络的硬件设备,但毕竟基本属于私有实现,不具备所有厂家的通用性,也会导致被设备商锁定的问题。
交换机接口的开放和统一,对于客户利益来讲,还是对于SDN/NFV及云计算网络等技术角度来说,都有着重大的影响;但是前方的路各界都还在探索,有些时候少不了迷惑和道路弯曲,但是目标是明确且辉煌的。而SDN控制器及北向接口最终的发展和实现,也可能像现在的交换机研发一样,最终是规模大的厂商在主导,小的厂商在跟进!