李軍飛,蘭巨龍,胡宇翔,鄔江興
?
SDN多控制器一致性的量化研究
李軍飛,蘭巨龍,胡宇翔,鄔江興
(國家數(shù)字交換系統(tǒng)工程技術(shù)研究中心,河南鄭州 450002)
針對SDN網(wǎng)絡(luò)中多控制器的一致性問題,提出了一種量化的研究方法,為控制層的東西向擴(kuò)展提供更為精準(zhǔn)有效的共享網(wǎng)絡(luò)視圖方法。首先,結(jié)合SDN的特性,給出了控制器之間一致性、性能以及可用性的度量指標(biāo),建立通用的量化分析模型。其次,針對其中3類典型的一致性問題進(jìn)行了量化研究,明確了其取得最優(yōu)值的條件,為一致性參數(shù)的配置提供了參考。最后,通過仿真實(shí)驗(yàn)對該量化方法進(jìn)行驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,該量化方法能夠有效提高SDN控制層的性能和可用性。
SDN;多控制器;一致性;性能;可用性
隨著網(wǎng)絡(luò)應(yīng)用的快速發(fā)展,傳統(tǒng)的網(wǎng)絡(luò)交換設(shè)備承載著越來越多的控制邏輯,已難以適應(yīng)虛擬化、云計(jì)算、大數(shù)據(jù)及相關(guān)業(yè)務(wù)發(fā)展對數(shù)據(jù)高速傳輸、資源靈活配置、協(xié)議快速部署的需求。軟件定義網(wǎng)絡(luò)(SDN, software defined network)提出了控制與轉(zhuǎn)發(fā)分離的設(shè)計(jì)結(jié)構(gòu),實(shí)現(xiàn)了開放的可編程網(wǎng)絡(luò)接口,為網(wǎng)絡(luò)提供了更細(xì)粒度的管理,引起了學(xué)術(shù)界和產(chǎn)業(yè)界的廣泛研究[1,2]。然而,SDN的集中式控制在為網(wǎng)絡(luò)應(yīng)用帶來創(chuàng)新與便利的同時,也帶來了可靠性、可擴(kuò)展性以及可用性等方面的問題。目前,無論是針對SDN的可靠性問題[3],還是可擴(kuò)展性問題[4],大多數(shù)的解決方法均采用多控制器間主備冗余或?qū)Φ葏f(xié)同的方法。
然而,多個控制器之間如何高效地共享網(wǎng)絡(luò)視圖,以期實(shí)現(xiàn)快速的主備切換或有效的集中式控制,即SDN控制器的一致性(consensus)問題,仍是SDN多控制器網(wǎng)絡(luò)面臨的主要難題之一。維護(hù)SDN控制器一致性的主要目的就在于要保證主控制器獲取的網(wǎng)絡(luò)事件能夠共享給從控制器,或本地控制器獲取的網(wǎng)絡(luò)事件能夠傳播給全局其余的控制器,以使多個控制器在關(guān)于全網(wǎng)的視圖問題上達(dá)成一致。在SDN網(wǎng)絡(luò)中,強(qiáng)一致性有利于多個控制器間具有更加一致的網(wǎng)絡(luò)視圖,使基于集中式控制的上層應(yīng)用的效果更好。但是,這也會帶來更多的通信開銷和延遲,影響控制層面的性能并降低其可用性。
目前,SDN控制器的一致性主要是通過分布式數(shù)據(jù)存儲系統(tǒng)來實(shí)現(xiàn)[5],其可供選擇的一致性協(xié)議、數(shù)據(jù)交互和同步方法有限,難以滿足上層應(yīng)用的多樣化部署和流量優(yōu)化需求[6,7]。而且,控制器一致性的研究主要集中在設(shè)計(jì)和實(shí)現(xiàn)方面,多是針對不同強(qiáng)度一致性的定性研究,缺少對其進(jìn)一步的量化和優(yōu)化。因此,研究多控制器之間一致性、性能以及可用性的量化關(guān)系,并基于此來尋求SDN多控制器間的協(xié)同優(yōu)化配置,對于提升SDN控制層面的整體性能具有重要的現(xiàn)實(shí)應(yīng)用價值。
綜上,本文提出了一種SDN多控制器的一致性量化研究方法,希望能引起相關(guān)研究者的興趣。具體而言,本文通過建立SDN多控制器的通用量化分析模型,研究其一致性、性能及可用性之間的協(xié)同優(yōu)化配置,以減少同步的通信開銷、提高可用性。
SDN的主要優(yōu)勢之一就是具有全局的網(wǎng)絡(luò)視圖,供部署在控制器上層的應(yīng)用所使用,以簡潔高效地解決傳統(tǒng)網(wǎng)絡(luò)中難以解決的問題,如Handigol、Wang等[1,2]的研究結(jié)果表明集中式網(wǎng)絡(luò)具有更為有效的負(fù)載均衡管理。然而,SDN網(wǎng)絡(luò)中也存在著可靠性、可擴(kuò)展性以及可用性等方面的問題,成為了該領(lǐng)域的研究熱點(diǎn)。例如,Li等[3]針對主控制器異常會造成整個網(wǎng)絡(luò)癱瘓的問題,提出了多個冗余控制器采用BFT (byzantine fault tolerant)技術(shù),以增強(qiáng)控制層的可靠性。另外,Dixit等[4]針對不斷增長的SDN網(wǎng)絡(luò)規(guī)模及單個控制器性能有限的問題,提出了多個分布式控制器協(xié)同工作的方法,以解決SDN網(wǎng)絡(luò)的可擴(kuò)展性。因此,無論是解決SDN網(wǎng)絡(luò)中的可靠性還是可擴(kuò)展性,目前大多數(shù)的方法都是基于多控制器的思想。然而,由于不同控制器管理的交換機(jī)不同或角色不同,導(dǎo)致其獲得的網(wǎng)絡(luò)視圖不同,為了能夠達(dá)到SDN的集中式控制效果,多個控制器之間需要同步其網(wǎng)絡(luò)視圖。控制器之間如何同步,使具有更加一致的網(wǎng)絡(luò)視圖,是上述研究要解決的根本問題。
HyperFlow[8]是第一個提出在SDN網(wǎng)絡(luò)中引入分布式控制器概念的,控制器之間通過構(gòu)建在分布式文件系統(tǒng)WheelFS之上的訂閱—發(fā)布平臺實(shí)現(xiàn)數(shù)據(jù)同步,以確保節(jié)點(diǎn)之間對網(wǎng)絡(luò)視圖的一致性。同時,文獻(xiàn)[8]也評估了HyperFlow中控制器節(jié)點(diǎn)之間的同步性能,即每秒能夠處理1 000次以下的網(wǎng)絡(luò)事件更新,但沒有對一致性強(qiáng)弱對性能的影響做進(jìn)一步的研究。Onix[5]是第一款產(chǎn)品級的強(qiáng)調(diào)可用性和可擴(kuò)展性的SDN控制器,由于其針對大規(guī)模的商用級網(wǎng)絡(luò)所開發(fā),所以廣泛應(yīng)用于Google、VMware等公司的商用網(wǎng)絡(luò)中。Onix控制器為上層應(yīng)用提供了NIB (network information base) 的網(wǎng)絡(luò)視圖,并有2種可供選擇的不同類型的數(shù)據(jù)庫用于節(jié)點(diǎn)間的數(shù)據(jù)同步:面向SQL的、具有強(qiáng)一致性的事務(wù)型數(shù)據(jù)庫,但其同步性能較低;基于DHT (distributed Hash map)的、僅能最終一致性的Key-Value數(shù)據(jù)庫,但有較好的同步性能。然而,Onix是一款不開源的控制器,且僅提供了2種不同強(qiáng)弱的一致性模型,難以適應(yīng)SDN上層應(yīng)用的多樣化需求。OpenDayLight是一個以商用為初衷的開源的控制器項(xiàng)目,得到Cisco、IBM等公司的支持,其中的多控制器協(xié)同主要是采用云計(jì)算中的Infinispan數(shù)據(jù)存儲框架[9],但由于其目前仍在開發(fā)之中,沒有達(dá)到理想的性能指標(biāo),故需要重新考慮該部分的設(shè)計(jì)[10]。
另外,Bailis等[11]研究了如何采用PBS (probabilistically bounded staleness) 模型預(yù)測分布式節(jié)點(diǎn)間數(shù)據(jù)的最終一致性強(qiáng)度,為一致性和性能之間的權(quán)衡提供了借鑒方法。但是,該模型針對通用的分布式系統(tǒng),沒有結(jié)合SDN的特性給出具體的優(yōu)化方法。Hassas等[12]提出了一種層次式架構(gòu)來實(shí)現(xiàn)多控制器間的一致性,其中,上下兩層控制器形成樹狀結(jié)構(gòu),下層的控制器負(fù)責(zé)局部交換機(jī)的管理,上層控制器協(xié)調(diào)下層控制器的同步,維護(hù)網(wǎng)絡(luò)視圖的一致性。然而,該方法僅改變了多控制器間的通信模式,并沒有緩解一致性和性能之間的沖突問題。
3.1 動機(jī)
在分布式系統(tǒng)一致性的研究中,一致性與性能之間的平衡始終是研究熱點(diǎn),針對不同的應(yīng)用場景提出了不同強(qiáng)弱的一致性協(xié)議[13,14]。例如,Paxos是解決分布式系統(tǒng)一致性問題的經(jīng)典算法,可以保證多控制器之間具有強(qiáng)一致的網(wǎng)絡(luò)視圖,但是在一次數(shù)據(jù)同步中,proposer、acceptor和learner之間需要多次交互。如圖1所示,這種信息交互方式會產(chǎn)生較大的網(wǎng)絡(luò)通信開銷,尤其是在選舉失敗或提議沖突的情況下消耗的網(wǎng)絡(luò)帶寬更為嚴(yán)重。因此,采用弱一致性協(xié)議或最終一致性協(xié)議來降低節(jié)點(diǎn)間同步的通信開銷,對于提升性能具有較好的效果。然而,弱一致性導(dǎo)致了控制器之間網(wǎng)絡(luò)視圖的差異,影響某些上層應(yīng)用的功能和效果,文獻(xiàn)[6]中所提及的流量負(fù)載均衡應(yīng)用。因此,如何在滿足上層應(yīng)用一致性要求的情況下,實(shí)現(xiàn)最小的同步通信開銷以及最高的可用性,是本文的研究重點(diǎn)。
3.2 相關(guān)概念
3.2.1 一致性
對于一個SDN控制器節(jié)點(diǎn),由于本地緩存或通信延遲,使其控制區(qū)域內(nèi)更新的網(wǎng)絡(luò)事件沒有及時地共享給它其余的控制器,造成了節(jié)點(diǎn)間網(wǎng)絡(luò)視圖的不一致。因此,這里采用控制器間網(wǎng)絡(luò)事件的差異度作為一致性的度量指標(biāo),控制器之間網(wǎng)絡(luò)事件的差異度越大,意味著系統(tǒng)的一致性越弱。另外,控制器節(jié)點(diǎn)上有不同類型的網(wǎng)絡(luò)事件,表1中列舉了部分常見的事件,如新的主機(jī)節(jié)點(diǎn)加入、鏈路斷開、流量負(fù)載更新等,并且,一致性的強(qiáng)弱很大程度上依賴于具體的應(yīng)用,例如,對于路徑計(jì)算應(yīng)用來說是弱一致性的協(xié)議,而對于負(fù)載均衡應(yīng)用來說卻可能是強(qiáng)一致性的。同時,不同的網(wǎng)絡(luò)事件對于同一上層應(yīng)用的一致性影響是不同的,例如,對于路徑計(jì)算應(yīng)用的一致性而言,網(wǎng)絡(luò)拓?fù)涞淖兓鄬τ诹髁控?fù)載的變化,具有更大的影響。
表1 常見的網(wǎng)絡(luò)事件
綜上可知,一致性的分析是要針對某一具體的上層應(yīng)用,且取決于該應(yīng)用中所涉及網(wǎng)絡(luò)事件的類型和數(shù)量。所以,對于部署在多個SDN控制器上的某一應(yīng)用,定義控制器節(jié)點(diǎn)CN的一致性為
其中,E(1≤≤)表示在控制器節(jié)點(diǎn)CN上應(yīng)用中所涉及的網(wǎng)絡(luò)事件的類型,|E|表示該控制器節(jié)點(diǎn)上已更新的但還沒有及時同步的網(wǎng)絡(luò)事件E的最大數(shù)量,λ表示事件E在應(yīng)用中的影響因子??梢钥闯?,c的取值越大,該節(jié)點(diǎn)的一致性越弱。進(jìn)一步地,可以定義應(yīng)用在整個系統(tǒng)中的一致性為
(2)
其中,表示網(wǎng)絡(luò)中控制器的數(shù)目。那么,當(dāng)僅有,,,意味著SDN控制層面僅有一個控制器節(jié)點(diǎn)有事件更新,對應(yīng)用于增強(qiáng)SDN網(wǎng)絡(luò)可靠性的主備冗余多控制器網(wǎng)絡(luò);當(dāng),,意味著每個節(jié)點(diǎn)最多有一個需要同步的事件,對應(yīng)強(qiáng)一致性的分布式多控制器網(wǎng)絡(luò)。
3.2.2 性能
控制器之間進(jìn)行一致性同步的性能主要受限于2個因素:1)節(jié)點(diǎn)間的通信開銷;2)單節(jié)點(diǎn)的同步負(fù)載。下面將逐一分析上述因素與一致性的關(guān)系,以研究性能與一致性之間的平衡點(diǎn)。
對于通信開銷,控制器節(jié)點(diǎn)CN在同步一個網(wǎng)絡(luò)事件E時,產(chǎn)生的數(shù)據(jù)分組通常較小,平均在1 KB左右,最大不超過4 KB[15],如圖1中步驟2的數(shù)據(jù)分組。而且,一致性協(xié)議交互過程中的其余數(shù)據(jù)分組的大小也大都在該范圍內(nèi),差異不大,如圖1中步驟3~步驟5通信過程的數(shù)據(jù)分組。因此,使用單位時間內(nèi)的通信次數(shù)作為衡量通信開銷的指標(biāo),文獻(xiàn)[16]中也采用了該近似方法。那么,當(dāng)控制器節(jié)點(diǎn)CN每次均在達(dá)到一致性上限C時,節(jié)點(diǎn)間進(jìn)行一次一致性同步,則可以獲得最小的通信開銷,速率為
其中,是一個固定的常數(shù),取決于系統(tǒng)中采用的一致性協(xié)議。g表示控制器節(jié)點(diǎn)CN上網(wǎng)絡(luò)事件E的產(chǎn)生速率。進(jìn)一步,可以計(jì)算整個系統(tǒng)通信開銷的最小速率為
(4)
單節(jié)點(diǎn)的同步負(fù)載主要是指本地發(fā)送的或接受遠(yuǎn)程的同步請求,可以采用同步次數(shù)作為其量化指標(biāo),即上文中所述的V。因此,式(3)和式(4)可以表示一致性與性能之間的關(guān)系。
3.2.3 可用性
可用性是另一個與一致性沖突的因素,在要求強(qiáng)一致性的多控制器網(wǎng)絡(luò)中,當(dāng)某個節(jié)點(diǎn)出現(xiàn)故障時,使控制器之間的網(wǎng)絡(luò)視圖形成差異。此時,控制層由于無法達(dá)成強(qiáng)一致性的網(wǎng)絡(luò)視圖,將不能再繼續(xù)工作,失去可用性??刂破鞴?jié)點(diǎn)間如果減弱一致性強(qiáng)度,在本地緩存部分更新的網(wǎng)絡(luò)事件,則能夠容忍短時間的故障。
進(jìn)而,整個控制層的可用性可以被度量為
(6)
3.3 一致性問題
在對SDN多控制器的一致性、性能以及可用性進(jìn)行量化分析之后,接下來本文研究它們之間的平衡點(diǎn),以獲取最大的效益。在對某一上層應(yīng)用進(jìn)行一致性配置時,通常會有2類針對不同目標(biāo)的優(yōu)化問題:1)在給定一致性的約束條件下,求解可以實(shí)現(xiàn)的最大性能或最高可用性;2)在給定性能或可用性約束的條件下,求解可以實(shí)現(xiàn)的最大一致性。對于這些約束條件,一般從全局的角度對整個系統(tǒng)進(jìn)行約束,進(jìn)一步地,考慮到網(wǎng)絡(luò)環(huán)境和應(yīng)用需求的多樣性,也可以對每個控制器節(jié)點(diǎn)進(jìn)行具體的約束。因此,該一致性問題又可以細(xì)分為幾類具體的子問題,下面選取其中具有代表性的3個問題進(jìn)行詳細(xì)的描述和分析。
1) 給定一致性的全局約束,求能實(shí)現(xiàn)的最大性能
Q1:對某一上層應(yīng)用,已知其在各個控制器節(jié)點(diǎn)上所涉及網(wǎng)絡(luò)事件的更新速率,即,在式(2)的一致性約束的條件下,求式(4)的最小取值。
2) 給定一致性的全局約束,求可獲得的最高可用性
Q2:對某一上層應(yīng)用,已知其在各個控制器節(jié)點(diǎn)上所涉及網(wǎng)絡(luò)事件的更新速率,即,以及故障節(jié)點(diǎn)修復(fù)時間t,在式(2)的一致性約束的條件下,求式(6)的最大取值。
3) 給定一致性的具體約束,求能實(shí)現(xiàn)的最大性能
Q3:對某一上層應(yīng)用,已知其在各個控制器節(jié)點(diǎn)上所涉及網(wǎng)絡(luò)事件的更新速率,即。給定式(1)的一致性約束,及式(2)的約束,且,求式(4)的最小取值。
本節(jié)將逐一討論上述一致性問題的最優(yōu)解,并分析其獲得最優(yōu)解的條件。
4.1 問題Q1的最優(yōu)解
(8)
c的取值雖然復(fù)雜,但其含義是簡單清晰的,可以稱其為“平方根分布法則”[16],表示每個節(jié)點(diǎn)的一致性上限與其產(chǎn)生網(wǎng)絡(luò)事件速率的平方根成正比。所以,在給定一致性的全局約束下,可以根據(jù)各個節(jié)點(diǎn)產(chǎn)生網(wǎng)絡(luò)事件的速率來分配各節(jié)點(diǎn)的一致性上限,以獲得最小的通信開銷,實(shí)現(xiàn)更高的性能。
4.2 問題Q2的最優(yōu)解
在式(6)中,可用性有明確的上確界
同問題Q1類似,c的取值取決于節(jié)點(diǎn)產(chǎn)生網(wǎng)絡(luò)事件的速率,當(dāng)兩者之間構(gòu)成正比關(guān)系時,整個控制層的可用性達(dá)到最大。同時,本文也注意到該問題的最優(yōu)解并不唯一,上述僅是其中的一組。
4.3 問題Q3的最優(yōu)解
問題Q3的求解是一個典型的多約束非線性規(guī)劃問題,可形式化描述為
MNP啟發(fā)式算法
在該啟發(fā)式算法中,首先按照4.1節(jié)中的平方根分布法則,計(jì)算在全局約束下取得最優(yōu)解的點(diǎn)(第4)、5)行),以其作為啟發(fā),搜索臨近的近似最優(yōu)解。同時,記錄與局部一致性相沖突的項(xiàng)x,構(gòu)成集合(第6)、7)行)。然后,在能夠較快接近最優(yōu)解的方向上搜索,即在集合中選擇x,使其對應(yīng)的t是所有沖突項(xiàng)中最大的,并使其滿足局部一致性約束(第13)、14)行)。最后,從解向量中去除x項(xiàng)(第15)、16)行),進(jìn)行下一輪的最優(yōu)解搜索,直至所有的項(xiàng)同時也滿足局部約束(第8)~11)行)。
5.1 測試環(huán)境
為了測試該量化模型,本文采用C++語言實(shí)現(xiàn)了一個仿真器,來模擬多控制器之間的一致性交互。該仿真器基于Internet 2 OS3E網(wǎng)絡(luò)拓?fù)?,OS3E是一個遍布美國的用于先進(jìn)科學(xué)研究的SDN網(wǎng)絡(luò)[18]。如圖2所示,OS3E具有34個節(jié)點(diǎn)和42條鏈路,每個節(jié)點(diǎn)表示一個獨(dú)立的大學(xué)或組織,通常需要部署一個SDN控制器。因此,在該仿真器中,本文假定OS3E的每個節(jié)點(diǎn)上均部署一個控制器,控制器之間需要一致性交互。
同時,在該仿真器中實(shí)現(xiàn)了3種一致性策略:1) Strict Mode:確保SDN網(wǎng)絡(luò)中的每個事件能夠被及時地全局共享,即,類似于Onix中基于SQL的強(qiáng)一致性模型;2) Relaxed Mode:在滿足一致性約束的前提下,節(jié)點(diǎn)間選擇最弱的一致性協(xié)議,且各節(jié)點(diǎn)的一致性配置相同,即,類似于Onix中基于Key-Value的弱一致性模型;3) Elastic Mode:基于上述量化模型的分析結(jié)果,設(shè)計(jì)一種具有彈性的一致性協(xié)議,使各節(jié)點(diǎn)的一致性配置與其網(wǎng)絡(luò)事件的更新速率相協(xié)調(diào)。通過分析上述3種策略的仿真結(jié)果,來說明該量化模型相對于SDN網(wǎng)絡(luò)中常用一致性模型的優(yōu)勢。
5.2 實(shí)驗(yàn)數(shù)據(jù)
對于要在多個控制器節(jié)點(diǎn)上部署的上層應(yīng)用,假定其全局一致性約束C= 68,并在上述實(shí)驗(yàn)環(huán)境中對其進(jìn)行仿真測試。圖4所示為在該約束下全局通信開銷的仿真結(jié)果,包括同構(gòu)網(wǎng)絡(luò)和異構(gòu)網(wǎng)絡(luò)2種仿真場景,其中的軸采用西八區(qū)(PST)時間。從仿真結(jié)果可以看出,在3種一致性策略中,Elastic Mode一直具有最小的通信開銷,Strict Mode的通信開銷最大,且三者隨時間的走勢大致相同。所以,Elastic Mode相對于常用的一致性策略能夠?qū)崿F(xiàn)更好的性能。另一方面,通過對比分析具體的數(shù)據(jù),可以發(fā)現(xiàn)在異構(gòu)網(wǎng)絡(luò)中,Elastic Mode具有更好的效果,即各節(jié)點(diǎn)網(wǎng)絡(luò)事件數(shù)量的差異越大,Elastic Mode提升性能的效果越顯著。
進(jìn)一步地,在全局一致性約束的基礎(chǔ)上,再對每個控制器節(jié)點(diǎn)做具體的約束,即,其中,b在[1, 3]內(nèi)隨機(jī)取值。Elastic Mode采用4.3節(jié)所述的啟發(fā)式算法,計(jì)算每個節(jié)點(diǎn)的一致性參數(shù)c。這里僅在異構(gòu)網(wǎng)絡(luò)中進(jìn)行了仿真,圖5給出了該一致性約束下的通信開銷。同樣,Elastic Mode具有最小的通信開銷,而Strict Mode的通信開銷最大。另外,與圖4(b)對比,圖5中Relaxed Mode通信開銷的抖動較大,即在一些特殊情況下的性能較差(如圖5中7 h、11 h、19 h等時刻),而Elastic Mode通信開銷的變化較為平穩(wěn),能適應(yīng)不同情況的一致性約束。
對于可用性的仿真測試,為了便于對比分析,考慮另一個在多個控制器節(jié)點(diǎn)上部署的上層應(yīng)用,假定其全局一致性約束C= 1 700。由于各節(jié)點(diǎn)產(chǎn)生網(wǎng)絡(luò)事件的速率很快,為了不致使其在故障發(fā)生后均能超出本地一致性約束的上限,假定系統(tǒng)可以在很短的時間內(nèi)修復(fù)故障,即t= 0.01 s。這里也僅在異構(gòu)網(wǎng)絡(luò)中進(jìn)行了仿真,測試結(jié)果如圖6所示,軸表示式(6)中的。其中,Elastic Mode和Relaxed Mode的可用性大致相當(dāng),在9~15 h時,Elastic Mode的可用性略占優(yōu)勢。而Strict Mode的可用性為定值,遠(yuǎn)低于上述兩者的可用性。
圖5 具體約束下的通信開銷
綜合上述分析可以發(fā)現(xiàn),在多控制器的SDN網(wǎng)絡(luò)中,基于該量化模型來適時調(diào)整一致性參數(shù)的Elastic Mode,相對于傳統(tǒng)的一致性策略Strict Mode和Relaxed Mode,在減小通信開銷和提高可用性上,都具有一定的優(yōu)勢。因此,該量化模型對于研究多控制器之間的一致性問題,提升控制層面的性能和可用性,具有重要的意義。
本文針對SDN多控制器間的一致性問題,首先介紹了該領(lǐng)域的相關(guān)工作和研究。然后,結(jié)合SDN的特性,給出了一致性、性能及可用性的度量指標(biāo),建立了量化分析模型。然后,選擇其中的幾類一致性問題進(jìn)行量化研究,求解其最優(yōu)值以及獲得最優(yōu)值的條件,為一致性參數(shù)的配置提供了指導(dǎo)。最后,將基于上述量化模型的一致性配置方法與傳統(tǒng)的一致性方法進(jìn)行了對比,實(shí)驗(yàn)結(jié)果表明該方法能夠有效提高控制層面的性能和可用性。下一步的工作是把該方法應(yīng)用到OpenDayLight控制器上,將其作為東西向接口以實(shí)現(xiàn)控制器之間的同步,測試在真實(shí)SDN環(huán)境下的一致性效果。
[1] HANDIGOL N, SEETHARAMAN S, FLAJSLIK M, et al. Plugin-serve: load-balancing Web traffic using OpenFlow[J]. ACM SIGCOMM Demo, 2009, 4(5): 6.
[2] WANG R, BUTNARIU D, REXFORD J. OpenFlow-based server load balancing gone wild[C]//USENIX HotICE. c2011:12.
[3] LI H, LI P, GUO S, et al. Byzantine-resilient secure software-defined networks with multiple controllers in cloud[J]. IEEE Transactions on Cloud Computing, 2014, 2(4): 436-447.
[4] DIXIT A, HAO F, MUKHERJEE S, et al. Towards an elastic distributed SDN controller[C]//ACM SIGCOMM Computer Communication Review, 2013, 43(4): 7-12.
[5] KOPONEN T, CASADO M, GUDE N, et al. Onix: a distributed control platform for large-scale production networks[C]//OSDI. c2010: 1-6.
[6] LEVIN D, WUNDSAM A, HELLER B, et al. Logically centralized: state distribution trade-offs in software defined networks[C]//The First Workshop on Hot Topics in Software Defined Networks. ACM, c2012: 1-6.
[7] STRAU? J. Control-plane consensus in software-defined networking: distributed controller synchronization using the ISIS2 toolkit[J/OL]. http://elib.uni-stuttgart.de/handle/1162/357/.
[8] TOOTOONCHIAN A, GANJALI Y. HyperFlow: a distributed control plane for OpenFlow[C]//The 2010 Internet Network Management Conference on Research on Enterprise Networking. USENIX Association, c2010: 3.
[9] LUO M, WU X, ZENG Y, et al. Multi-dimensional hashing for fast network information processing in SDN[C]//Complex, Intelligent, and Software Intensive Systems (CISIS), 2015 Ninth International Conference. IEEE, c2015: 140-147.
[10] BOTELHO F, BESSANI A, RAMOS F, et al. SmartLight: a practical fault-tolerant SDN controller[J]. arXiv preprint arXiv:1407.6062.
[11] BAILIS P, VENKATARAMAN S, FRANKLIN M J, et al. Probabilistically bounded staleness for practical partial quorums[J]. Proceedings of the VLDB Endowment, 2012, 5(8): 776-787.
[12] HASSAS Y S, GANJALI Y. Kandoo: a framework for efficient and scalable offloading of control applications[C]//The First Workshop on Hot Topics in Software Defined Networks. ACM, c2012: 19-24.
[13] BAILIS P, VENKATARAMAN S, FRANKLIN M J, et al. Quantifying eventual consensus with PBS[J]. The VLDB Journal, 2014, 23(2): 279-302.
[14] DIAO Z. Consistency models for cloud-based online games: the storage system’s perspective[J/OL]. http://ceur-ws.org/Vol-1020/paper_03.pdf.
[15] BOTELHO F, RAMOS V, MANUEL F, et al. On the feasibility of a consistent and fault-tolerant data store for SDNs[C]//Software Defined Networks (EWSDN), 2013 Second European Workshop. IEEE, c2013: 38-43.
[16] ZHANG C, ZHANG Z. Trading replication consensus for performance and availability: an adaptive approach[C]//Distributed Computing Systems, 23rd International Conference. IEEE, c2003: 687-695.
[17] YU H, VAHDAT A. The costs and limits of availability for replicated services[J]. ACM SIGOPS Operating Systems Review, ACM, 2001, 35(5): 29-42.
[18] Internet2 open science, scholarship and services exchange[EB/OL]. http://www.internet2.edu/network/ose/.
[19] SHALIMOV A, ZUIKOV D, ZIMARINA D, et al. Advanced study of SDN/OpenFlow controllers[C]//The 9th Central & Eastern European Software Engineering Conference in Russia. ACM, c2013: 1.
Quantitative approach of multi-controller’s consensus in SDN
LI Jun-fei, LAN Ju-long, HU Yu-xiang, WU Jiang-xing
(National Digital Switching System Engineering & Technological R&D Center, Zhengzhou 450002, China)
For the problem of multi-controller’s consensus in SDN, a quantitative approach was proposed, which provided a more accurate and effective method of sharing network view for the control layer's east-west extension. Firstly, the metrics of consensus, performance and availability between the controllers with the feature of SDN was provided, establishing the common model for quantitative research. Secondly, for the three typical questions in the research of multi-controller’s consensus, the condition to achieve its optimal value was explicated, which provided a reference for the configuration of consensus. Finally, to verify the validity of the quantitative approach by simulation, experimental results show that this approach can improve the performance and availability of the control layer in SDN effectively.
SDN, multi-controller, consensus, performance, availability
TP393
A
10.11959/j.issn.1000-436x.2016119
2015-10-19;
2016-05-10
國家重點(diǎn)基礎(chǔ)研究發(fā)展計(jì)劃(“973”計(jì)劃)基金資助項(xiàng)目(No.2012CB315901, No.2013CB329104);國家自然科學(xué)基金資助項(xiàng)目(No.61521003,No.61372121);國家高技術(shù)研究發(fā)展計(jì)劃(“863”計(jì)劃)基金資助項(xiàng)目(No.2015AA016102, No.2013AA013505)
The National Basic Research Program of China(973 Program) (No.2012CB315901, No.2013CB329104), The National Natural Science Foundation of China (No.61521003, No.61372121), The National High Technology Research and Development Program of China(863 Program) (No.2015AA016102, No.2013AA013505)
李軍飛(1989-),男,河南安陽人,國家數(shù)字交換系統(tǒng)工程技術(shù)研究中心博士生,主要研究方向?yàn)榧惺骄W(wǎng)絡(luò)管控下的主動防護(hù)技術(shù)。
蘭巨龍(1962-),男,河北張北人,博士,國家數(shù)字交換系統(tǒng)工程技術(shù)研究中心總工程師、教授、博士生導(dǎo)師,主要研究方向?yàn)樾乱淮畔⒕W(wǎng)絡(luò)關(guān)鍵理論與技術(shù)。
胡宇翔(1982-),男,河南周口人,博士,國家數(shù)字交換系統(tǒng)工程技術(shù)研究中心講師,主要研究方向?yàn)樾乱淮畔⒕W(wǎng)絡(luò)關(guān)鍵理論與技術(shù)。
鄔江興(1953-),男,浙江嘉興人,國家數(shù)字交換系統(tǒng)工程技術(shù)研究中心教授、博士生導(dǎo)師,主要研究方向?yàn)榫W(wǎng)絡(luò)通信和網(wǎng)絡(luò)安全。