現在數據中心和企業網中,網絡設備中交換機占了很大的數目。互聯網公司數據中心傳統的架構里需要大量采購交換機等網絡設備,而現在新興的云計算中的網絡和企業網組建內部網絡也需要大量的此類設備,大家都因為交換機的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控制器及北向接口最終的發展和實現,也可能像現在的交換機研發一樣,最終是規模大的廠商在主導,小的廠商在跟進!