據國外媒體報道,瞻博網絡公司于去年十二月以1.76億美元收購了軟件定義網絡(SDN,Software Defined Network)新興企業Contrail Systems,而在此之前Contrail公司并不為很多人所了解。瞻博網絡則于一個月之后推出了自己的SDN計劃,并在今年五月公布了測試版代碼。現在,這部分代碼已經為正式面世做好了準備,瞻博網絡也宣布將以開源許可模式提供給使用者。
對于SDN項目及產品而言,Contrail只能算作像VMware(Nicira)、Big Switch網絡、博科通訊(Vyatta)、惠普、IBM這樣等一系列廠商的后備方案。此外,由多家企業組成的OpenDaylight同盟也不容忽視,他們正努力將大批代碼匯聚成一套開源SDN堆棧。
無論具體來自哪個項目或者供應商,各SDN方案的預定目標其實基本相同:以為服務器提供虛擬化機制的方式為網絡體系提供存儲方案,從而改變傳統網絡管理那種脆弱、純物理而且對管理員的命令行水平要求過高的狀況。
Aruba網絡公司前任CTO Ankur Singla以及瞻博公司Junos網絡操作系統首席架構師兼CTO Kireeti Kompella共同于2012年年初創建了Contrail Systems。他們從雇用了一大批來自思科及谷歌的軟件工程師與網絡專家,意在創建一套與斯坦福大學開發的OpenFlow協議相兼容的控制器。這套控制器以現有網絡協議為基礎,因此也能夠有效兼容目前常見的交換機、路由器以及服務器虛擬化管理程序。
曾效力于微軟、如今任瞻博公司軟件業務執行副總裁的Bob Muglia在接受采訪時表示,Contrail在接受收購之前已經計劃于今年將代碼推向開源。
“我們一直在與眾多客戶努力協作,而且希望其中一部分能在今年第四季度參與到實際生產流程中來。”Muglia表示。“我們原本打算到明年再推出產品,但事實證明,今年第三季度產品就已經可以籌備上市——這實在有些出乎意料。通常情況下,‘下半年推出’意味著要拖到12月31號,這可能也與我保守的個性有關。當初Contrail技術團隊的成員們都認為2013年肯定可以拿出一部分成果,但我仍然決定把上市日期確定在2014年。然而計劃趕不上變化,瞻博的收購讓項目出現了一些變數,我們也不能因為瞻博技術方案的加入而推遲產品的預定進展。我們一直希望能在今年第三季度拿出點成果,不過在上市日期方面持保守態度顯然更安全。總之,Contrail實現了自己的承諾,而根據我的體會,這種如期而至的狀況并不常見。”
即將投放市場的Contrail控制器與幾個月前交付測試的版本相比沒什么太大差異。控制機制以邊界網關協議(簡稱BGP)為基礎,當然該協議已經被嵌入到瞻博及其它競爭廠商的交換機及路由器當中。
它還采用XMPP,一種專為中間件消息設計的面向消息傳遞協議,旨在控制虛擬機管理程序當中的虛擬交換機。它所使用的“多協議標簽交換(簡稱MPLS)”技術源自電信網絡,能夠將網絡數據包加以壓縮并控制其經過分類后進行轉發;MPLS介于網絡堆棧的二層與三層之間。
Contrail控制器還利用其它一些協議將交換機堆棧中的數據層與控制層加以分割,從而使二者更具適應性。不過就目前來看,它還無法支持OpenFlow協議。
“我們在首個版本中還沒有支持OpenFlow,”Muglia指出。“事實上,我們需要觀察OpenFlow到底能給網絡世界帶來怎樣的改進。在當前的使用環境下,人們更多將OpenFlow以被動方式使用在終端到終端領域,而我們希望以更為主動的技術途徑解決問題。而且就目前來看,這也是技術業界的普遍共識與發展方向。為協議提供支持并不困難,我們現在就為成百上千的瞻博協議與Contrail協議提供支持,因此將OpenFlow納入進來也不成問題——關鍵在于,我們需要考慮哪些環境有必要采用OpenFlow。總而言之,與之對應的使用環境才是決定OpenFlow命運的關鍵。”
Contrail將各類網絡環境拆分為四個控制層——分別為管理層、服務層、控制層以及轉發層,將一部分功能集中到控制器之內,同時也為網絡環境中的交換機及路由器提供一些其它功能。
OpenFlow控制器與Contrail之間的最大區別在于,Contrail會把轉發列表的主副本保存在控制器當中、并將其復制到交換機端。相比之下,OpenFlow控制器會將主副本保存在交換機當中,并在其內容發生變更后將其聚合到控制器內。
Contrail控制器由C++所編寫,因此更貼近于設備本身;其用戶界面則利用Python編寫。整套堆棧還利用Cassandra分布式散列表數據庫實現網絡流量實時分析,保存在分析引擎內的數據可被導出至Hadoop或者時間序列數據庫當中,從而實現進一步分析。
Contrail控制器能夠與KVM、Xen兩大虛擬機管理程序順暢協作,同時也支持OpenStack及CloudStack等云組合。目前該控制器已經獲得認證,能夠運行在瞻博的MX邊界路由器、EX模塊化交換機以及QFX機頂式交換機當中。
瞻博的Contrail控制器采用非常簡單的定價規則:每個服務器插槽的永久性許可要價1700美元,管理體系下的每個網絡組件同樣要價1700美元。(最重要的是,大家每年還需要額外支付維護費用。)當然,各位也可以選擇訂閱模式,每年每插槽要價1000美元,或者每個網絡組件1000美元,這筆費用已經包含了每年的維護成本。
有趣的是,瞻博還把Contrail控制器納入了www.opencontrail.org網站中的開源項目列表,而且商用版與開源版在代碼內容方面完全相同,Muglia表示。世界上根本沒有“開放核心”這種概念。控制器代碼遵循Apache 2.0許可,Muglia認為重點在于控制器能夠通過這種方式將代碼與同樣基于Apache 2.0許可的OpenStack及CloudStack相結合。瞻博還宣布了與IBM的合作關系,藍色巨人將把Contrail與自家SmartCloud Orchestrator加以整合。當然,所謂SmartCloud Orchestrator也就是自己的OpenStack發行版。