阿爾·科瓦利克

你現(xiàn)在可能已經(jīng)聽到過“軟件定義一切”的大肆宣傳。“SDx”是一個描述可編程及路由策略、自動化和嚴格的資源管理推動的基礎設施的共同術(shù)語。x可指整個數(shù)據(jù)中心(SDDC)或存儲器(SDS)或網(wǎng)絡(SDN)或其它目標。
價值定位是雙重的:(1)硬件資源被虛擬化且被視為一個實用程序;(2)應用要求推動這些資源利用。因此,不是為一系列應用手動配置計算機、存儲器和網(wǎng)絡資源,而是APP的需求“編程行動資源”。聽起來這可能很抽象,因此讓我們看一個使用SDN的例子。當前,許多云和一些私有數(shù)據(jù)中心實現(xiàn)采用SDN原則。
為理解SDN的運行方式,讓我們首先觀察傳統(tǒng)第三層分組交換機的操作。一個新安裝的交換機查看其連接的鄰居并且建立一個它認為到其所在位置其它交換機的全部IP路由之拓撲圖。它采用如開放最短路徑優(yōu)先(OSPF)這樣的協(xié)議遞增地建立其內(nèi)部流程表。此流程表是該交換機控制面的一部分,而分組轉(zhuǎn)發(fā)路徑是數(shù)據(jù)面的一部分。每個交換機獨立行動,并且對網(wǎng)絡總體性有稍微短視的觀點。作為一個良好的網(wǎng)絡公民,它根據(jù)其流程表世界觀轉(zhuǎn)發(fā)數(shù)據(jù)包。
現(xiàn)在轉(zhuǎn)向SDN。在這種情況下,控制面與數(shù)據(jù)面完全分離(圖1)。實際上,這意味著流程表不是由如OSPF這樣的本地探測協(xié)議填充,而是由一種“無所不知”的外部控制器填充。這種控制器具有大拓撲關(guān),能夠最佳確定網(wǎng)絡上包的路由方式,利用網(wǎng)絡資源最大限度提高效率。
此外,基于SDN的路由還為應用層的實際業(yè)務要求提供更高能力。有些人稱之為“應用流暢”。例如,交換層可被分為兩個完全分開的虛擬網(wǎng)(即財務部門和實時媒體),必要時它們之間絕無聯(lián)系。不錯,當前用VLAN也能做到,但SDN方式提供基于應用需求的負載平衡能力。或者,如果因可靠性的關(guān)系,要求某些路徑上有重復鏈接,這些鏈接可使用SDN按需建立和拆除。最后,可集中管理系統(tǒng)級QoS,這是媒體設施一種有價值的特性。總之,網(wǎng)絡利用率、可靠性和資源管理程度提高是SDN戰(zhàn)略價值定位。
SDN環(huán)境
讓我們分析圖1。底部是一個網(wǎng)絡交換機網(wǎng),每個交換機有流程表。交換機可以是傳統(tǒng)的,但增加了SDN支持,另一極端就是“裸機、白盒、開放”型式。多種裸機支持SDN語義,但沒有傳統(tǒng)協(xié)議的沉重負擔。例如,谷歌建立了一個巨大的基于SDN友好裸機交換機的網(wǎng)絡。
控制層為多面的。核心是網(wǎng)絡操作層(NOS)。此軟件調(diào)解來自應用層的請求,并且根據(jù)應用需求編程每個交換機的流程表。一些流行的開源控制器包括OpenDaylight(Linux基金會)、Floodlight(Big Switch)和POX(斯坦福)。此外,還有很多廠家支持的私有控制器。
為便于說明,控制面有時被稱為“南北”面,而數(shù)據(jù)包流被視為“東西”面。在這個背景下,北向API使更高層系統(tǒng)能夠請求路由連接和QoS。例如,一個連接管理系統(tǒng)(想象SDI矩陣控制)在應用層能夠請求NOS建立一條從攝像機到錄像機或者從播出服務器到監(jiān)視器的3Gb/s視頻路徑。
NOS經(jīng)由南向API與交換機通信。與交換機通信的一種流行方式是采用OpenFlow協(xié)議。大部分現(xiàn)代交換機支持OpenFlow語義及其它方式。開放網(wǎng)絡基金會(ONF)提倡采用SDN且管理OpenFlow標準。設想OpenFlow為一種流程表編程的命令語言。一個流程表每行有兩項(加上一個統(tǒng)計項):第一項是“表頭或規(guī)則”,第二項為“動作”。例如,如果交換機收到一個設置為10.2.1.1的包頭目的地IP地址,那么動作就是轉(zhuǎn)發(fā)此包到出站端口X。你可以通過接口和試驗一個開放vSwitch(虛擬交換)實例探究OpenFlow和命令行對話。事實上,我在我的桌面上保存了一個亞馬遜EC2的實例,研究有基于vSwitch的不同網(wǎng)絡拓撲的OpenFlow。
當然,有只用SDN方案的折衷方案。很少網(wǎng)絡為孤島,大部分網(wǎng)絡需要在某一時刻與非SDN交換機通信。因此,大部分交換機支持最少量的傳統(tǒng)協(xié)議以便能夠互操作。傳統(tǒng)矩陣方式在開關(guān)故障情況下非常耐用。同樣,在NOS控制器失效情況下依賴一個使危險的。為了彌補,SDN可采用基于集群的高可用性模式,其中N個控制器表現(xiàn)為一個邏輯控制器。最后,SDN鑄就一個包含上述的NOS/OpenFlow的大網(wǎng):VXLAN(虛擬可擴展局域網(wǎng));而通用隧道覆蓋意味著建立虛擬局域網(wǎng)。為什么我們要關(guān)注?
SDN有可能實現(xiàn)全網(wǎng)資源控制:考慮一個有“無所不知”系統(tǒng)級管理方案的控制器。隨著視頻SDI轉(zhuǎn)向以太網(wǎng),一些設計將用SDN建立有有益的敏捷性、可靠性和流控制的網(wǎng)絡。總之,要在此領(lǐng)域和SDx中跟上時代,因為它們可能有助于定義未來的媒體設施。endprint