OCP的開源網絡項目會引發(fā)網絡變革嗎?
開源項目在過去十幾年里,已經在諸多領域取得了突破,包括硬件和軟件,但是唯獨在網絡設備領域,一直未能有效穿透傳統(tǒng)設備廠商的層層壁壘,一臺臺的網絡設備都是一個個的黑盒,對用戶來說,無法復制,也無法完全控制,只能使用,OCP現(xiàn)在想突破這個領域。
解讀OCP項目發(fā)展 Facebook全力主導
OCP全稱是Open Computer Project,是Facebook發(fā)起并主導的一個硬件開源組織,這個組織使命是致力于服務器、存儲和數據中心基礎架構的創(chuàng)新,以便更好地滿足高性能可擴展計算的需求,但是實際上遠不止于此。
如果深入了解一下OCP,會發(fā)現(xiàn)他們的關注點主要在這些方面:存儲設備、服務器主板、服務器機柜、虛擬I/O、硬件驅動管理、數據中心基礎架構設計,他們期望能夠把涉及其中的硬件盡量標準化,訂單交出去,隨便一個代工廠都可以生產,在這些領域,他們早已經有了很多成果。
現(xiàn)在輪到了網絡交換機,今年上半年的時候他們就開始了這方面的工作,隨著Cumulus公司的ONIE(Open Network Install Environment)的清晰化和各個公司相繼宣布支持ONIE, OCP的開源網絡項目也變得清晰了,讓我們來看看他們干了些什么。
跟開源服務器、存儲一樣,OCP的開源交換機項目也主要是開源硬件,但也包括部分軟件,他們試圖定義一套標準化的硬件設計,標準化包括:交換機硬件電路板中都要用哪些類型的器件,CPU跟各種器件之間用什么樣的接口,芯片接口類型和數量,各個器件地址空間,鏡像文件在flash中存放的位置等等很多,基于這樣的硬件規(guī)范,各個廠商或者代工廠可以生產符合OCP標準的硬件交換機。目前OCP針對的主要是數據中心TOR交換機,后面會擴展到匯聚層交換機(Spine/leaf架構中的Spine),但是實際上它們也都適應于企業(yè)網交換機。
美國的創(chuàng)業(yè)公司Cumulus是Facebook的親密合作伙伴,一直緊跟Facebook的腳步,他們一方面做了一套自己的交換機系統(tǒng)軟件,另外一方面,他們研發(fā)了一個叫做ONIE的軟件,它其實是一個比較智能的bootloader(相當于PC中的BIOS,但是比BIOS功能更多一些),用來安裝和啟動符合要求的交換機軟件系統(tǒng)。只要軟件廠商或者交換機廠商開發(fā)的交換機系統(tǒng)軟件能夠適配OCP硬件,那就可以通過ONIE啟動。這樣一來,交換機軟件和硬件就徹底分離了,OCP組織負責硬件規(guī)范設計,代工廠,比如廣達、天弘之類(或者傳統(tǒng)設備商)負責提供生產硬件(所用的ASIC芯片并不局限于一家,而是有多家的,比如Intel, Broadcom, Marvel, Mellanox、蘇州盛科網絡目前也已經加入了OCP)。另外的廠商提供交換機軟件系統(tǒng)(哪些廠商提供,我們后面再談)。這些交換機,就可以稱之為符合OCP要求的白牌交換機(WhiteBox Switch),目前OCP已經組織幾個廠商生產出了幾臺符合要求的樣機,都宣稱支持ONIE。
OCP宣稱他們的交換機開源包含三個層次:第一個層次是硬件開源且標準化;第二個層次是硬件驅動,bootloader, linux OS的開源;第三個層次包括各種開發(fā)和管理工具的開源,Rest API,還提到了SDN的開源,他們明確地宣稱,交換機系統(tǒng)協(xié)議棧的開源不在OCP工作范圍之內,但是他們鼓勵廠商在這方面的開源。
OCP白牌交換機面臨的挑戰(zhàn)
那么接下來一個問題就是,誰來提供能夠運行在OCP白牌交換機之上的系統(tǒng)協(xié)議軟件呢?OCP首先是期望白牌交換機提供商,比如Cumulus,比如廣達,甚至Intel, BCM, Mellanox,盛科這樣的芯片商能夠提供,還有他們也歡迎傳統(tǒng)交換機廠商能夠改造他們的系統(tǒng),讓他們的系統(tǒng)跑在這些白牌機上,比如Cisco的IOS。當然,不要求他們開源。
假設OCP的目的可以達到,那么未來的網絡交換機領域會是什么樣子呢?各個用戶可以在市場上買符合OCP要求的白牌交換機,然后購買符合要求的交換機系統(tǒng),自行通過ONIE安裝進去并啟動設備。
關于受益討論一:誰會從這個事情受益呢?如果把所有用戶看作是一個群體,那么首先的受益者是用戶,因為這種機器的成本肯定會大大降低,而且用戶不必被鎖定在某個廠商身上;其次是白牌設備提供商,比如廣達、智邦、天弘這樣的代工廠,另外芯片商也沒損失,特別后來者也許可以靠白牌交換機多獲取一些份額,那誰會受損失呢?毫無疑問,傳統(tǒng)設備商!
關于受益討論二:這個事情的阻力在哪里?第一個阻力是很顯然的,在傳統(tǒng)設備商,傳統(tǒng)設備商肯定不會配合,他們會允許自己的交換機軟件運行在別人生產的設備上讓別人來蠶食他們的市場嗎?或者換個問法,用戶會為純粹的交換機軟件額外付一大筆錢嗎?很難,肯付這個錢的用戶,估計也不會介意連他們的硬件一起買了。
如果傳統(tǒng)設備商不做這個事情,那最終誰來提供交換機協(xié)議軟件呢?新興的創(chuàng)業(yè)公司已經有人在做這個事情,美國的Cumulus公司,向他們的客戶提供開源的傳統(tǒng)二三層交換機軟件,采取License收費的模式。另外,BigSwitch也向客戶提供開源的Openflow軟件,對特定模塊進行收費,此外,Intel, Broadcom, Mellanox等都有自己的軟件。
但是上面還不是唯一的阻力,OCP的開放網絡項目如果只是供Facebook幾個廠商自己用一下,一點問題都沒有,但是如果要推廣開來,一定還要解決另外一個問題,如果用戶從一個公司買了硬件,從另外一個公司買了軟件(或者用了開源的),出了問題的時候,應該找誰?或者說誰提供支持?這涉及到利益分成,涉及到商業(yè)模式。也許最終會演變成硬件廠商跟軟件廠商合作,由硬件廠商出面做第一線支持,或者說每個硬件提供商都同時有自己的配套軟件。
講到現(xiàn)在,我們有沒有發(fā)現(xiàn)好像OCP的這個開放網絡項目還少了一環(huán),很重要的一環(huán),就是缺乏一個真正開源的交換機軟件,就像OpenStack一樣,從上到下,里里外外,全部開源,完全免費,只有走到這一步,網絡才算真正開放。國內的盛科網絡近期在這個方面先行一步,他們率先發(fā)布了世界上第一個完全開源的硬件交換機項目Lantern,目前先是只針對SDN交換機,將來會擴展到傳統(tǒng)二三層交換機。該項目是從管理界面,協(xié)議棧,操作系統(tǒng)(Linux)到硬件適配層,到芯片SDK,完全開源,完全免費,可以直接在Github上下載。盛科的這種模式,芯片廠商可以玩,ODM廠商(代工廠)也可以玩,但是唯獨Cumulus, BigSwitch這樣的軟件提供商不能玩,因為他們本身沒有任何載體,軟件是他們的立命之本,軟件開源了,他們就收不到錢了,除非他們能提供比開源軟件強大得多的軟件系統(tǒng),能夠吸引用戶付錢,OCP已經對該項目表示出了很大的興趣。
無論是開源也好,閉源也好,白牌交換機目前還面臨第三個也是最大一個挑戰(zhàn),就是用戶的接受度,用戶下意識會問的一個問題,白牌交換機穩(wěn)定嗎?能滿足需求嗎?因為對很多用戶來說,購買網絡設備首先考慮的并不是價格,而是穩(wěn)定性。就我的經驗來看,白牌交換機肯定沒法滿足所有應用場景,但是在當前的大多數場景下,絕對可以勝任。我們看看現(xiàn)在數據中心的TOR交換機,都運行了什么功能?三層就是一個OSPF,二層就是LACP,VLAN,F(xiàn)DB,然后就是一些管理功能,比如Mirror, SNMP等,其它就基本沒有了。這些都是非常非常成熟的技術,一點技術含量都沒有。要做穩(wěn)定是很容易的。盡管如此,要讓用戶接受白牌交換機,會是一個漫長的過程。
另外,我們還要注意到,OCP的項目都是開源硬件,但是在開放網絡項目中,提到了第三個層次的開放,包含了Rest API以及SDN。這是什么意思?ONF的執(zhí)行總監(jiān)Dan Pitt今年8月底來中國的時候,我跟他聊過OCP的事情,他表示ONF正在跟OCP緊密合作,力爭做出支持SDN的開源交換機,所以這可以理解為OCP想在開源硬件之外,在SDN軟件開源方面做出的一些努力。
OCP的開往網絡項目最終會攪動網絡交換機領域,甚至引發(fā)一場變革嗎?目前尚無法下結論,但是我們必須看到的是,這個項目,技術難度并不高,能給用戶帶來的價值卻很大,就看OCP如何將這個市場培育起來了,我對此保持謹慎的樂觀。