羅定福 龍望晨 孔繁華
摘? 要:針對(duì)傳統(tǒng)數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)存在的問題進(jìn)行深入分析,以思科軟件定義網(wǎng)絡(luò)(SDN)技術(shù)APIC(Application Policy Infrastructure Controller)架構(gòu)為例,剖析SDN技術(shù)在業(yè)務(wù)流量的明確劃分、網(wǎng)絡(luò)無限定的橫向擴(kuò)展、虛擬資源無限制的變更、控制平面和轉(zhuǎn)發(fā)平面解耦合、集中化的網(wǎng)絡(luò)控制上的優(yōu)勢(shì)。得出SDN技術(shù)能夠有效降低設(shè)備負(fù)載,協(xié)助網(wǎng)絡(luò)運(yùn)營(yíng)商更好地控制基礎(chǔ)設(shè)施,降低整體運(yùn)營(yíng)成本上的巨大作用。
關(guān)鍵詞:軟件定義網(wǎng)絡(luò);業(yè)務(wù)流量;控制平面;轉(zhuǎn)發(fā)平面;集中化
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)志碼:A? ? ? ? ?文章編號(hào):2095-2945(2020)14-0066-03
Abstract: In view of the problems existing in the traditional data center network architecture, this paper takes the application policy infrastructure controller (APIC) architecture of Cisco SDN technology as an example to analyze the advantages of SDN technology in the clear division of traffic flow, unlimited horizontal expansion of network, unlimited change of virtual resources, decoupling of control plane and forwarding plane, and centralized network control. It is concluded that SDN technology can effectively reduce the equipment load, help the Internet Service Provider (ISP) to control the infrastructureeven better, and reduce overall operating cost.
Keywords: software defined network; traffic flow; control plane; forwarding plane; centralization
引言
傳統(tǒng)網(wǎng)絡(luò)運(yùn)維方式痛點(diǎn),網(wǎng)絡(luò)設(shè)備手工維護(hù),依靠傳統(tǒng)網(wǎng)絡(luò)管理軟件[1]等方式輔助人工進(jìn)行維護(hù),運(yùn)維效率低下,容易出現(xiàn)由于個(gè)人能力的差異以及響應(yīng)等原因,影響運(yùn)維的效率,增加運(yùn)維的成本。傳統(tǒng)網(wǎng)絡(luò)業(yè)務(wù)割接或者新業(yè)務(wù)上線周期偏長(zhǎng),往往大的業(yè)務(wù)割接切換,涉及非常復(fù)雜的操作。軟件定義網(wǎng)絡(luò)(SDN)[2]的主要特點(diǎn)是集群化、采用虛擬的軟件定義網(wǎng)絡(luò)數(shù)據(jù)流,通過圖形化的方式簡(jiǎn)易的呈現(xiàn),方便業(yè)務(wù)的上線以及后期的維護(hù)擴(kuò)容。SDN自動(dòng)化運(yùn)維方式,與云平臺(tái)進(jìn)行對(duì)接,實(shí)現(xiàn)網(wǎng)絡(luò)服務(wù)的自動(dòng)化。
1 傳統(tǒng)數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)逐漸落伍
1.1 傳統(tǒng)的大型數(shù)據(jù)中心結(jié)構(gòu)
在傳統(tǒng)的大型數(shù)據(jù)中心,網(wǎng)絡(luò)通常是三層結(jié)構(gòu)[3]。架構(gòu)模型包含了以下三層:(1)Access Layer(接入層):接入層位于網(wǎng)絡(luò)的最底層,負(fù)責(zé)所有終端設(shè)備的接入工作,并確保各終端設(shè)備可以通過網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)包的傳遞。(2)Aggregation Layer(匯聚層):匯聚層位于接入層和核心層之間。該層可以通過實(shí)現(xiàn)ACL等其他過濾器來提供區(qū)域的定義。(3)Core Layer(核心層):又被稱為網(wǎng)絡(luò)的骨干。該層的網(wǎng)絡(luò)設(shè)備為所有的數(shù)據(jù)包提供高速轉(zhuǎn)發(fā),通過L3路由網(wǎng)絡(luò)將各個(gè)區(qū)域進(jìn)行連接,保證各區(qū)域內(nèi)部終端設(shè)備的路由可達(dá)。
一般情況下,傳統(tǒng)網(wǎng)絡(luò)還存在著一些優(yōu)點(diǎn):
(1)精確的過濾器/策略創(chuàng)建和應(yīng)用:由于區(qū)域、終端地址網(wǎng)段明確,可以精細(xì)控制網(wǎng)絡(luò)策略,保證流量的安全。(2)穩(wěn)定的網(wǎng)絡(luò):區(qū)域的明確劃分,網(wǎng)絡(luò)設(shè)備的穩(wěn)定架構(gòu),使網(wǎng)絡(luò)更具有穩(wěn)定性。(3)廣播域的有效控制:由于三層架構(gòu)中間采用L3模式設(shè)計(jì),有效控制廣播域的大小。
傳統(tǒng)網(wǎng)絡(luò)架構(gòu)雖然穩(wěn)定,但隨著技術(shù)的不斷發(fā)展,應(yīng)用不斷的多元化以及對(duì)業(yè)務(wù)的高冗余化的需求,暴露出了一些傳統(tǒng)網(wǎng)絡(luò)的弊端。
1.2 傳統(tǒng)網(wǎng)絡(luò)架構(gòu)存在問題
隨著企業(yè)規(guī)模的發(fā)展,傳統(tǒng)網(wǎng)絡(luò)架構(gòu)漸漸開始無法跟上步伐,逐漸出現(xiàn)了以下問題:
(1)業(yè)務(wù)流量模型不清晰。隨著網(wǎng)絡(luò)的發(fā)展、各種新技術(shù)的產(chǎn)生,數(shù)據(jù)中心內(nèi)部、服務(wù)器之間協(xié)同處理、計(jì)算,導(dǎo)致由東向西的流量逐漸增大,超過了由南向北的流量。而傳統(tǒng)三層架構(gòu)服務(wù)器間交換,都要過三層核心,多層轉(zhuǎn)發(fā),增大了網(wǎng)絡(luò)的延遲,還浪費(fèi)了核心寶貴的資源。與此同時(shí),我們將業(yè)務(wù)拆分成多個(gè)模塊,并部署在不同的區(qū)域中,由于應(yīng)用的不斷發(fā)展,模塊的數(shù)量越來越多,模塊之間的調(diào)用越來越頻繁,可能一次完整的應(yīng)用流程需要經(jīng)歷數(shù)十個(gè)模塊,模塊之間的頻繁調(diào)用大大消耗了網(wǎng)絡(luò)設(shè)備的資源。
(2)橫向擴(kuò)展能力不足。傳統(tǒng)數(shù)據(jù)中心使用STP技術(shù),雖然上聯(lián)多根鏈路,但都是主備關(guān)系,僅有一根鏈路能跑流量,無法承載數(shù)據(jù)中心日益增長(zhǎng)的業(yè)務(wù)。盡管后續(xù)使用了相關(guān)的Ethernet Channel、堆疊、VSS等技術(shù),來達(dá)到鏈路冗余的需求,但是堆疊、Ethernet Channel不可能無限地進(jìn)行擴(kuò)展。
(3)廣播域過于龐大。隨著業(yè)務(wù)的發(fā)展,計(jì)算資源被池化。為了使得計(jì)算資源可以任意分配,需要一個(gè)巨大的二層網(wǎng)絡(luò)架構(gòu)。整個(gè)數(shù)據(jù)中心網(wǎng)絡(luò)都是多個(gè)L2廣播域,這樣,服務(wù)器可以在規(guī)定的區(qū)域地點(diǎn)創(chuàng)建、遷移,而不需要對(duì)IP地址或者默認(rèn)網(wǎng)關(guān)做修改。不斷地業(yè)務(wù)擴(kuò)展,造就了一個(gè)巨大的二層廣播域,一旦出現(xiàn)一點(diǎn)問題就造成巨大的網(wǎng)絡(luò)問題,導(dǎo)致業(yè)務(wù)中斷,業(yè)務(wù)的高可用性就無法保證。
(4)計(jì)算資源無法快速上線。隨著業(yè)務(wù)的不斷發(fā)展,計(jì)算資源的虛擬化。當(dāng)需要進(jìn)行虛擬資源部署時(shí),嚴(yán)格安全防護(hù)的要求下,需要進(jìn)行安全設(shè)備的策略開通。從部署到正式上線使用之間的耗時(shí)會(huì)長(zhǎng)達(dá)一小時(shí)之久。無法滿足在突發(fā)情況下,快速增加計(jì)算資源。
由于安全設(shè)備以及設(shè)備上聯(lián)位置的限制,無法在任意的計(jì)算資源池中隨意的創(chuàng)建、遷移;無法合理分配資源池的各種硬件資源,造成資源的分配不均衡。一旦某資源池已達(dá)閾值,就無法繼續(xù)計(jì)算資源的橫向擴(kuò)展。
(5)網(wǎng)絡(luò)延時(shí)過大。在使用傳統(tǒng)網(wǎng)絡(luò)架構(gòu)時(shí),每個(gè)業(yè)務(wù)模塊都是一個(gè)煙囪結(jié)構(gòu),業(yè)務(wù)模塊互相調(diào)用需要經(jīng)過多個(gè)三層設(shè)備(平均需要經(jīng)過6次物理設(shè)備),其中還可能包括防火墻等安全設(shè)備。受限于設(shè)備的性能,網(wǎng)絡(luò)架構(gòu)的主備方案。數(shù)據(jù)流量每經(jīng)過一次設(shè)備都會(huì)增加一點(diǎn)延遲。雖然每一次延時(shí)都是微乎其微,但是累計(jì)次數(shù)多了,對(duì)于業(yè)務(wù)來說這個(gè)延時(shí)可能就導(dǎo)致用戶體檢較差。
2 SDN網(wǎng)絡(luò)特征
2.1 思科APIC(Application Policy Infrastructure Controller)架構(gòu)
上述傳統(tǒng)網(wǎng)絡(luò)存在著一些問題,為了不斷提升網(wǎng)絡(luò)的承載能力,我們可以進(jìn)行各種技術(shù)可行性測(cè)試。例如:傳統(tǒng)網(wǎng)絡(luò)的優(yōu)化、當(dāng)前網(wǎng)絡(luò)的SDN化等。文章以思科SDN技術(shù)為例進(jìn)行探討。思科APIC(Application Policy Infrastructure Controller)是以應(yīng)用為中心的基礎(chǔ)架構(gòu)(ACI)結(jié)構(gòu)的自動(dòng)化和管理的統(tǒng)一集中點(diǎn),提供對(duì)所有節(jié)點(diǎn)信息的集中訪問控制,優(yōu)化應(yīng)用的規(guī)模和性能,并支持在物理和虛擬資源之間進(jìn)行靈活的應(yīng)用配置。管理員可通過APIC提供各種豐富的API接口對(duì)設(shè)備進(jìn)行配置、管理、策略下發(fā)等操作行為;控制器則通過OpFlex協(xié)議[4]將策略推送給ACI環(huán)境中的各個(gè)節(jié)點(diǎn)Leaf[5]。雖然APIC會(huì)將策略推送到各節(jié)點(diǎn)Leaf上,但控制器并不參與任何流量的轉(zhuǎn)發(fā),所以即使發(fā)生有5臺(tái)控制存在問題的極端情況下,網(wǎng)絡(luò)層面的流量轉(zhuǎn)發(fā)功能還是可以正常穩(wěn)定地運(yùn)行。網(wǎng)絡(luò)SDN化之后,可以解決前述傳統(tǒng)網(wǎng)絡(luò)中存在的一些問題,同時(shí)也提供了更人性化的管理方式。網(wǎng)絡(luò)架構(gòu)內(nèi)部示意圖如圖1所示。
2.2 SDN網(wǎng)絡(luò)優(yōu)勢(shì)
(1)業(yè)務(wù)流量的明確劃分。將原有業(yè)務(wù)劃分從一個(gè)應(yīng)用一個(gè)區(qū)域的劃分方式,在使用SDN后,變更為一個(gè)服務(wù)體系作為一個(gè)區(qū)域進(jìn)行劃分(例如:APP區(qū)域、數(shù)據(jù)庫區(qū)域、中間件區(qū)域等)。在每個(gè)區(qū)域中劃分多個(gè)Endpoint Group[6](以下簡(jiǎn)稱EPG)來準(zhǔn)確區(qū)分業(yè)務(wù)模塊,更清晰地了解業(yè)務(wù)之間的訪問關(guān)系。
(2)無限定的橫向擴(kuò)展。在現(xiàn)有的SDN網(wǎng)絡(luò)中,通過使用Anycast Gateway的方式將網(wǎng)關(guān)部署在各個(gè)Leaf節(jié)點(diǎn)上。即使有新設(shè)備加入網(wǎng)絡(luò),無論處于任何區(qū)域,都可以準(zhǔn)確的進(jìn)入相對(duì)應(yīng)邏輯位置。
(3)虛擬資源無限制的變更。ACI,通過VM Networking與VCenter[7]互相聯(lián)動(dòng),并下發(fā)vNIC供虛擬機(jī)使用,虛擬機(jī)只需要選擇對(duì)應(yīng)虛擬網(wǎng)卡就可以進(jìn)行業(yè)務(wù)上線。同時(shí)各個(gè)虛擬機(jī)對(duì)應(yīng)的EPG通過合約的形式開通策略。在SDN中所有相同業(yè)務(wù)都部署在同一個(gè)EPG中,所有策略的開通并不是基于IP地址來開通,只需要在不通的EPG之間開通策略即可,所以無需像傳統(tǒng)網(wǎng)絡(luò)進(jìn)行IP對(duì)應(yīng)的策略開放方式進(jìn)行SDN網(wǎng)絡(luò)策略開通。虛擬化資源可以在任意宿主機(jī)上進(jìn)行創(chuàng)建、遷移,沒有任何的物理位置的限制。
(4)控制平面和轉(zhuǎn)發(fā)平面解耦合[8]。SDN網(wǎng)絡(luò)區(qū)別傳統(tǒng)網(wǎng)絡(luò)的一個(gè)方面在于:傳統(tǒng)網(wǎng)絡(luò)的控制平面和轉(zhuǎn)發(fā)平面是緊密耦合的,集中到獨(dú)立的設(shè)備盒子中管理,控制平面分散到網(wǎng)絡(luò)的各個(gè)節(jié)點(diǎn)上,難以對(duì)全網(wǎng)情況進(jìn)行全局把控。SDN網(wǎng)絡(luò)將網(wǎng)絡(luò)設(shè)備中的控制平面從物理硬件中抽離出來,交由加載在物理網(wǎng)絡(luò)上的虛擬化網(wǎng)絡(luò)層處理,屏蔽了底層物理轉(zhuǎn)發(fā)設(shè)備的差異,重構(gòu)整個(gè)虛擬空間網(wǎng)絡(luò)。因此,就好比服務(wù)器虛擬化技術(shù)中把服務(wù)器資源轉(zhuǎn)化為計(jì)算能力池一樣,物理網(wǎng)絡(luò)資源被整合成了網(wǎng)絡(luò)資源池,滿足業(yè)務(wù)對(duì)網(wǎng)絡(luò)資源的按需交付需求,可以更加靈活地調(diào)用網(wǎng)絡(luò)資源。
(5)集中化的網(wǎng)絡(luò)控制。將控制平面進(jìn)行集中控制,中央控制器可以獲取網(wǎng)絡(luò)資源的全局信息并根據(jù)業(yè)務(wù)需要進(jìn)行資源的全局調(diào)配和優(yōu)化,如QOS、負(fù)載均衡功能等。同時(shí)集中控制后,全網(wǎng)的網(wǎng)絡(luò)設(shè)備都由中央控制器去管理,使得網(wǎng)絡(luò)節(jié)點(diǎn)的部署以及維護(hù)更加敏捷。由于集中化控制,ACI提供一個(gè)可視化的管理界面,通過界面中的評(píng)分以及錯(cuò)誤,可以更有效的提供給運(yùn)維工程師查找到問題的所在之處,提供一個(gè)快速定位的有效依據(jù)。
3 SDN架構(gòu)的后期展望
3.1 跨廠商自動(dòng)化聯(lián)動(dòng)
思科提供了其他廠商的管理工具包供ACI使用,通過服務(wù)鏈(Service Chain)功能進(jìn)行其他設(shè)備的配置推送。未來整個(gè)網(wǎng)絡(luò)的配置都可以通過ACI進(jìn)行遠(yuǎn)程控制,無需通過繁瑣的命令行進(jìn)行配置。即使對(duì)設(shè)備命令不熟悉的工程師也可以進(jìn)行配置。
3.2 自動(dòng)化配置平臺(tái)
ACI提供豐富的API接口供第三方軟件調(diào)用,建立一個(gè)自動(dòng)化運(yùn)維平臺(tái)通過API接口進(jìn)行ACI配置的推送、查看設(shè)備的運(yùn)行狀態(tài)實(shí)時(shí)體現(xiàn)。可以完全掌握整個(gè)SDN的運(yùn)行狀況,準(zhǔn)確及時(shí)地判斷。在問題將要發(fā)生時(shí),得到及時(shí)的處理和解決,避免了最終解決問題已出,維護(hù)人員還未得到告警的窘相。
3.3 全面的網(wǎng)絡(luò)監(jiān)控
在網(wǎng)路設(shè)備中進(jìn)行流量抓取取樣,通過報(bào)頭分析網(wǎng)絡(luò)中數(shù)據(jù)包的走向。通過流量排序可以清晰的知道各個(gè)模塊調(diào)用的次數(shù),結(jié)合研發(fā)部門進(jìn)行探討,為優(yōu)化網(wǎng)絡(luò)、優(yōu)化應(yīng)用做一個(gè)準(zhǔn)確的依據(jù)。
4 潛在問題
思科Smart Install[9]的遠(yuǎn)程代碼執(zhí)行漏洞:
Smart Install功能是交換機(jī)在部署時(shí)配置和鏡像管理功能,它可以自動(dòng)換成初始化,新的交換機(jī)可以通過TFTP等協(xié)議自動(dòng)加載操作系統(tǒng)鏡像。這就意味著在無配置管理員的情況下啟動(dòng)交換機(jī),當(dāng)設(shè)備配置發(fā)生變化等情況,還可以提供配置備份的功能。
Smart Install Client默認(rèn)開啟TCP 4786端口,用來進(jìn)行Smart Install功能。當(dāng)服務(wù)處理一段特殊的惡意信息,會(huì)發(fā)生交換機(jī)的緩沖區(qū)堆棧溢出,從而造成設(shè)備故障。
由于思科ACI通過控制器管理,無需額外的設(shè)備進(jìn)行自動(dòng)化配置等行為,故沒有該漏洞。
5 結(jié)束語
在運(yùn)維過程中引入SDN技術(shù),只需通過圖形化的界面,統(tǒng)一調(diào)度、維護(hù)網(wǎng)絡(luò)中的業(yè)務(wù)數(shù)據(jù),即可實(shí)現(xiàn)環(huán)路檢測(cè)、路徑探測(cè)、切換業(yè)務(wù)流等操作,運(yùn)維方便快捷。智能化、可視化、自動(dòng)化,是后期 SDN 網(wǎng)絡(luò)運(yùn)行維護(hù)的主要方式,降低傳統(tǒng)網(wǎng)絡(luò)維護(hù)中的成本以及提升網(wǎng)絡(luò)運(yùn)維的效率。
參考文獻(xiàn):
[1]https://baike.baidu.com/item/網(wǎng)元/11040242?fr=aladdin[EB/OL].
[2]朱金奇,孫華志,黃永鑫,等.軟件定義網(wǎng)絡(luò)中延遲滿足的路由選擇與實(shí)時(shí)調(diào)度更新[J].軟件學(xué)報(bào),2019,30(11):3440-3456.
[3]羅定福,李艷.三層交換機(jī)與路由器連接的技術(shù)研究[J].佛山科學(xué)技術(shù)學(xué)院學(xué)報(bào)(自然科學(xué)版),2013,31(2):52-54.
[4]程思遠(yuǎn).SDN實(shí)踐之ACI互聯(lián)設(shè)計(jì)[J].電信快報(bào),2019(8):44-46.
[5]新華三技術(shù)有限公司.一種IPv6地址分配方法和Leaf節(jié)點(diǎn)設(shè)備:CN201710770578.9[P].2018-10-09.
[6]Cisco Technology, Inc..Isolation of endpoints within an endpoint group:US201715422773[P].2019-01-01.
[7]王春海.部署vCenter Server經(jīng)驗(yàn)[J].網(wǎng)絡(luò)安全和信息化,2016 (006):62-65.
[8]王勇.NFV與SDN協(xié)同部署技術(shù)探討[J].中國(guó)新通信,2018,20(22):23-24.
[9]黃建.漏洞全生命周期管理服務(wù)探索與實(shí)踐[J].中國(guó)金融電腦,2019(7):67-71.