《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 再思考SDN(二)
再思考SDN(二)
來源:cnw.com.cn
作者:中興通訊中心研究院系統(tǒng)架構(gòu)部總工 汪軍 
摘要: 集中控制還是分散控制(De-Centralized)是分布式系統(tǒng)設(shè)計中的一個關(guān)鍵的取舍,取決于你追求的是可伸縮性還是全局解的優(yōu)化,全局最優(yōu)解需要集中的控制點收集決策所需的完全信息,對于網(wǎng)絡(luò)而言,無法對拓撲相關(guān)信息垂直劃分為完全不相關(guān)的子集,因此你不可能在兩個維度上都達到最優(yōu)。
關(guān)鍵詞: SDN 軟件定義網(wǎng)絡(luò)
Abstract:
Key words :

 集中控制還是分散控制(De-Centralized)是分布式系統(tǒng)設(shè)計中的一個關(guān)鍵的取舍,取決于你追求的是可伸縮性還是全局解的優(yōu)化,全局最優(yōu)解需要集中的控制點收集決策所需的完全信息,對于網(wǎng)絡(luò)而言,無法對拓撲相關(guān)信息垂直劃分為完全不相關(guān)的子集,因此你不可能在兩個維度上都達到最優(yōu)。在Internet的規(guī)模上,必須是分散控制的。另外互聯(lián)網(wǎng)從來就不是一個整體,而是由多個不同地域的商業(yè)主體運營的,而互聯(lián)網(wǎng)業(yè)務(wù)是全球化的,任何端到端的網(wǎng)絡(luò)解決方案落地都極其困難,首先要解決投資和收益主體匹配的問題,而端到端的解決方案不是一蹴而就的,后投資的能夠更快地獲得投資回報,先花錢的有點為人做嫁衣的感覺,因此也抑制了所謂的端到端解決方案的落地,類似的例子不勝枚舉。比如NGN時代端到端的QoS方案;又比如LISP協(xié)議來解決路由擴展性問題,投資主體是接入的ISP,而收益者是Tier 1/2的ISP,沒有人愿意花自己的錢解決別人的問題。

 
SDN本身就是一個局部的網(wǎng)絡(luò)技術(shù)革命,放大到全網(wǎng)的演進就得面臨經(jīng)濟、技術(shù)上的雙重挑戰(zhàn),個人理解對于一個分散控制的互聯(lián)網(wǎng),引入SDN不過是將分布式系統(tǒng)的節(jié)點規(guī)模做得更大,如果你想擴大它的內(nèi)涵,引入更廣泛的SDN控制,那么你要想想為什么互聯(lián)網(wǎng)要分自治域,為什么是IGP+BGP,BGP還要分iBGP、eBGP,還要引入路由反射器,為什么不是一個OSPF的單一區(qū)域。也許SDN+BGP,替代IGP是有技術(shù)可行性的,但是全網(wǎng)的演進總是比預期的更為緩慢。
 
回到SDN擅長的領(lǐng)域:數(shù)據(jù)中心。數(shù)據(jù)中心由來已久,Internet商用化后就存在,只不過在計算模式經(jīng)由MainFrame、C/S架構(gòu)、P2P再回到中心化的云計算時代,數(shù)據(jù)中心規(guī)模呈爆炸式增長,在虛擬化、分布式計算技術(shù)解決了計算本身的部署、規(guī)模問題后,網(wǎng)絡(luò)問題變得特別突出。前幾年的數(shù)據(jù)中心網(wǎng)絡(luò)問題研究很多人拿虛擬機遷移說事,但是虛擬機遷移實際上是個小眾應(yīng)用,畢竟虛擬機遷移需要大量的狀態(tài)復制,跨存儲集群遷移時還要進行持久存儲的復制,這是個投入產(chǎn)出比較低的活兒,尤其是跨WAN進行遷移,簡直拿資本家的錢不當錢。
 
我個人認為數(shù)據(jù)中心SDN帶來的價值主要有3點:
 
1、網(wǎng)絡(luò)的自動化部署和運維、故障診斷。依賴于SDN的集中控制、集中拓撲探測,網(wǎng)絡(luò)設(shè)備完全可以做到即插即用,除了部署之外,網(wǎng)絡(luò)故障設(shè)備的更換變?yōu)楹唵蔚挠布鼡Q。對于故障診斷,則依賴于控制器具有完全的轉(zhuǎn)發(fā)表項,應(yīng)用可以根據(jù)故障申告的業(yè)務(wù)報文做端到端的報文路徑靜態(tài)檢查,也可以通過工具生成自動化的測試用例,在控制面進行灌包測試(與專門的測試儀表相比,不受位置限制),并且可以評估測試的覆蓋率,就如同軟件的代碼、分支覆蓋率一樣;最后可以在控制面應(yīng)用上生成故障申告業(yè)務(wù)相同的報文頭部通過SDN控制器的報文上送、下發(fā)機制進行單步的檢測,檢測到軟故障具體的流水線節(jié)拍。
 
2、虛擬機的按需部署,這在公有云、混合云的環(huán)境下尤其有用。今天大家已經(jīng)比較習慣于在電信運營商營業(yè)窗口、自服務(wù)頁面上辦理業(yè)務(wù)后,立刻收到短信通知業(yè)務(wù)已經(jīng)開通,但是在早年,這些業(yè)務(wù)開通涉及到營業(yè)、計費、后臺、網(wǎng)管中心、LMT等系統(tǒng),需要工單的流轉(zhuǎn)才能開通,是以天計的。那么在今天絕大多數(shù)的數(shù)據(jù)中心中只要涉及到IP地址的分配問題,仍然需要工單的流轉(zhuǎn),這對于以虛擬機作為單位的主機托管數(shù)據(jù)中心,顯然是低效的,尤其是虛擬私有云、混合云,從業(yè)需求來看需要允許客戶自己規(guī)劃、配置子網(wǎng)和虛機的IP地址,并支持按需啟動/停用虛擬機和按使用計費,從數(shù)據(jù)中心運營效率來看,需要能夠自動發(fā)現(xiàn)負載更輕的物理機器加載虛機,這就要求網(wǎng)絡(luò)的地址是可以浮動的,并且可以根據(jù)客戶的指令實時生效。前幾年大家推大二層的解決方案,大二層需要輔以802.1Qbg才是一個完整的解決方案,而Overlay+IP組網(wǎng)無需升級硬件,無疑性價比更高。如果要升級,則不如升級到SDN更為徹底,你可以得到第1條所述的所有好處,另外你也不知道明天還會有哪些需求,SDN提供了未來不升級硬件的承諾(當然這些承諾也是靠不住的,你不因為功能升級,但更可能要因為性能而升級)。保底地,可以實現(xiàn)基于SDN的Overlay。
 
3、動態(tài)業(yè)務(wù)插入,比如虛擬防火墻、虛擬VPN網(wǎng)關(guān)等設(shè)備以VM形式動態(tài)插入到轉(zhuǎn)發(fā)路徑上,并且可以根據(jù)業(yè)務(wù)流量的變化動態(tài)增加/停用Virtual Appliance.這其實是在第二點的基礎(chǔ)上實現(xiàn)的,只不過增加了應(yīng)用去感知、控制業(yè)務(wù)邏輯實體。
 
vSwitch的性能很多人懷疑,但是自從Intel推出DPDK后,這個問題質(zhì)疑的聲音要少一些了,但是報文經(jīng)過vSwitch到VM引起的上下文切換開銷還是比較難以解決,尤其是小報文為主的業(yè)務(wù),將來應(yīng)該以智能網(wǎng)卡+SR-IOV為解決思路,vSwitch退化為本地控制面。
 
至于流量可視化,沒有SDN你能夠做到,有了SDN也不見得會實現(xiàn)更加容易。租戶數(shù)量問題,和SDN也沒有太大關(guān)系,關(guān)鍵是轉(zhuǎn)發(fā)面封裝格式中表達租戶數(shù)量的標簽是多少位以及轉(zhuǎn)發(fā)設(shè)備據(jù)此生成的轉(zhuǎn)發(fā)規(guī)則。
 
需要謹慎考慮、評估的好處包括:
 
1、虛擬機遷移,除了前面講的虛機遷移本身的成本外,虛擬機遷移本身的SDN實現(xiàn)也是一個比較困難的問題。當集群規(guī)模較小,VM通信對端較少的時候,一切都不是問題;當虛機集群規(guī)模較大,比如Hadoop集群節(jié)點,one hop DHT節(jié)點、分布式文件系統(tǒng)節(jié)點,數(shù)據(jù)庫節(jié)點等(當然不一定建議這些節(jié)點用虛擬機,性能也是問題),遷移時需要遷移VM所在節(jié)點的轉(zhuǎn)發(fā)表,還需要更新與之有通信關(guān)系的虛擬機所在邊緣交換機的轉(zhuǎn)發(fā)表,這個問題的痛苦之處在于需要更新轉(zhuǎn)發(fā)表的節(jié)點數(shù)量是不可預知的。我們在移動網(wǎng)絡(luò)網(wǎng)絡(luò)中往往不去更新對端的轉(zhuǎn)發(fā)表,而是在遷移終端所在的遷出網(wǎng)絡(luò)設(shè)備和遷入網(wǎng)絡(luò)設(shè)備之間建立一條中轉(zhuǎn)隧道用于流量的轉(zhuǎn)發(fā),但問題是移動網(wǎng)絡(luò)中的每一個會話周期都是短暫的,因此這種中轉(zhuǎn)通道的生命周期是短暫的,不會給設(shè)備帶來太大的負擔;而服務(wù)器集群中的通信會話周期是不可預知的,并且中轉(zhuǎn)帶來的迂回流量開銷可能也是驚人的。因此這是一個很難控制的過程,尤其是在集群規(guī)模較大、業(yè)務(wù)繁忙的時刻。
 
2、細顆粒度的流量控制。理論上我們可以做到,并且OpenFlow一開始就被誤解為基于流的轉(zhuǎn)發(fā)控制。顆粒度越細,需要消耗更多的轉(zhuǎn)發(fā)面和控制面資源,更為糟糕的是在轉(zhuǎn)發(fā)面和控制面之間需要同步的信息就越多。在移動核心網(wǎng)的PCC架構(gòu)下,理論上是按照業(yè)務(wù)流進行QoS的控制的,需要和轉(zhuǎn)發(fā)面能力相匹配的本地控制面能力,需要海量的TCAM來存儲通配流表,付出的代價就是高1-2個數(shù)量級的成本,所幸的是移動網(wǎng)絡(luò)的無線接入是瓶頸,流量有限,如果在數(shù)據(jù)中心中應(yīng)用,最好還是進行粗顆粒度的流統(tǒng)計或者只對少數(shù)已經(jīng)預先識別的流進行控制。
 
從遠期來看,DataCenter本身的效率和管理復雜度問題可能逐步成為解決方案的重點,可能由松散的系統(tǒng)逐步走向計算、存儲、網(wǎng)絡(luò)統(tǒng)一控制的緊耦合體,更加注重對不同計算實體調(diào)度的優(yōu)化處理,這是所謂的DataCenter As A Computer理念,這其中,裸CPU+Main Memory、存儲都可以通過融合網(wǎng)絡(luò)直接連接起來,構(gòu)成一臺類NUMA(此處是針對外存而言)的超級計算機,而SDN控制下的網(wǎng)絡(luò)充當其CPU和外設(shè)的交換矩陣。出于成本的考慮,這一交換矩陣可能很難做到完全無阻塞的,因此它需要一定的實時監(jiān)測和路徑重指派能力。這時候,SDN已經(jīng)完全融入到DataCenter的管理控制系統(tǒng)之中,和計算、存儲的調(diào)度完全融為一體。
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。