王濤,陳鴻昶
考慮拜占庭屬性的SDN安全控制器多目標(biāo)優(yōu)化部署方案
王濤,陳鴻昶
(信息工程大學(xué),河南 鄭州 450001)
通過賦予軟件定義網(wǎng)絡(luò)分布式控制平面拜占庭屬性可以有效提高其安全性。在實(shí)現(xiàn)拜占庭屬性過程中,控制器部署的數(shù)量、位置,以及交換機(jī)與控制器之間的連接關(guān)系會(huì)直接影響全局網(wǎng)絡(luò)關(guān)鍵性能指標(biāo)。為此,提出了一種考慮拜占庭屬性的SDN安全控制器多目標(biāo)優(yōu)化部署方案。首先,構(gòu)建了綜合考量交互時(shí)延、同步時(shí)延、負(fù)載差異程度和控制器部署數(shù)量等優(yōu)化指標(biāo)的拜占庭控制器部署問題(MOSBCPP)模型;然后,針對(duì)該模型個(gè)性化設(shè)計(jì)了包括控制器部署策略初始化函數(shù)、變異函數(shù),快速非支配排序函數(shù)及精英策略選擇函數(shù)等在內(nèi)的NASG-II求解算法。相關(guān)仿真結(jié)果表明,該部署方案能夠在有效降低交互時(shí)延、同步時(shí)延、負(fù)載差異程度和控制器部署數(shù)量等性能指標(biāo)的同時(shí)提高控制平面安全性。
軟件定義網(wǎng)絡(luò)安全;分布式控制平面;拜占庭屬性;控制器部署;多目標(biāo)優(yōu)化
軟件定義網(wǎng)絡(luò)(SDN,software defined network)[1]將傳統(tǒng)網(wǎng)絡(luò)緊耦合的控制元素與轉(zhuǎn)發(fā)元素分離,通過邏輯集中的可編程控制器實(shí)現(xiàn)統(tǒng)一的網(wǎng)絡(luò)資源管理與編排,而轉(zhuǎn)發(fā)平面的交換機(jī)單純負(fù)責(zé)執(zhí)行控制器下發(fā)的高級(jí)網(wǎng)絡(luò)策略。這種解耦式的架構(gòu)為管控靈活性和可編程性提供了便利,加速了網(wǎng)絡(luò)應(yīng)用創(chuàng)新過程。
隨著SDN技術(shù)在更大規(guī)模網(wǎng)絡(luò)和更多場(chǎng)景下應(yīng)用,控制平面所面臨的可擴(kuò)展性需求逐漸增大,控制平面由最初的單點(diǎn)式控制器向分布式控制器轉(zhuǎn)變(如Hyperflow[2]等)。分布式控制器能夠有效改善控制平面性能和可擴(kuò)展性,很快便成為SDN控制平面的主流配置。但隨著網(wǎng)絡(luò)安全形勢(shì)日益嚴(yán)峻,SDN分布式控制器面臨的安全威脅風(fēng)險(xiǎn)不斷升高,而分布式技術(shù)本身并不能增加控制平面的安全性,這使各場(chǎng)景下SDN的安全問題較為突出。而且,現(xiàn)有的一些“補(bǔ)丁式”SDN安全方案[3]具有防御滯后性,這更加劇了SDN控制平面的安全風(fēng)險(xiǎn)。為了解決這一問題,研究人員開始嘗試賦予分布式控制平面拜占庭安全屬性[4]。為了實(shí)現(xiàn)拜占庭安全屬性,每個(gè)交換機(jī)均需根據(jù)其安全(容錯(cuò))需求度選擇網(wǎng)絡(luò)拓?fù)鋱D中的多個(gè)控制器作為參考,這些控制器通過運(yùn)行拜占庭協(xié)議協(xié)商下發(fā)流規(guī)則。通過這種方式可以有效識(shí)別因少數(shù)控制器受到惡意攻擊而被篡改的流規(guī)則(不依賴于特定攻擊特征,從而擺脫補(bǔ)丁式安全方案的防御滯后性),提高控制平面的安全性。
考慮到拜占庭控制平面結(jié)構(gòu)的復(fù)雜性,在實(shí)現(xiàn)上述拜占庭屬性過程中,如何設(shè)計(jì)控制器部署策略優(yōu)化全局網(wǎng)絡(luò)性能指標(biāo)已成為待解決的關(guān)鍵問題之一。一般而言,全局網(wǎng)絡(luò)的開銷、時(shí)延、負(fù)載均衡等性能指標(biāo)直接取決于控制器的數(shù)量、位置,以及交換機(jī)與控制器之間的連接關(guān)系。因此,如果在部署控制器(即確定控制器數(shù)量、位置,以及交換機(jī)與控制器之間的連接關(guān)系)時(shí)未統(tǒng)籌考量開銷、時(shí)延、負(fù)載均衡等綜合網(wǎng)絡(luò)性能指標(biāo),就容易使控制器部署策略在多種性能指標(biāo)優(yōu)化方面“顧此失彼”,造成控制器部署策略在部分指標(biāo)方面短板效應(yīng)顯著,降低控制器部署策略的實(shí)際參考價(jià)值。為了便于直觀理解上述過程,本文以如圖1所示的控制器部署策略拓?fù)錇槔?,概述一般?chǎng)景下不同控制器部署策略對(duì)全局網(wǎng)絡(luò)性能指標(biāo)的具體影響。為了便于描述,假設(shè)示例中交換機(jī)A、B和C的負(fù)載分別為、和2(0);交換機(jī)鏈路AB、BC和AC的傳輸時(shí)延分別為1、2和3(1<2<3);控制器部署數(shù)量固定為2;如果交換機(jī)位置上部署了控制器則部署策略(A、B、C)對(duì)應(yīng)位置元素賦值為1,否則為0。在此基礎(chǔ)上,具體定量討論不同控制器部署策略(1,1,0)和(1,0,1)在時(shí)延和負(fù)載均衡方面的性能差異,如表1所示,考慮到控制器與交換機(jī)一般采用最短路徑進(jìn)行連接,那么上述兩種策略的時(shí)延合計(jì)和負(fù)載差異指標(biāo)分別為(2,1)和(2, 0)。由于1<2且>0,故不同控制器部署策略(1,1,0)和(1,0,1)會(huì)對(duì)時(shí)延和負(fù)載均衡指標(biāo)產(chǎn)生直接影響,且策略(1,1,0)各性能指標(biāo)均劣于(1,0,1)。因此,合理確定控制器部署策略對(duì)提高網(wǎng)絡(luò)性能指標(biāo)具有重要意義。
圖1 控制器部署策略拓?fù)涫纠?/p>
Figure 1 Example of controller deployment strategies topology
表1 不同控制器部署策略下網(wǎng)絡(luò)性能指標(biāo)對(duì)比
Table 1 Comparison of network performance indicators under different controller deployment strategies
在上述分析基礎(chǔ)上,考慮到拜占庭控制平面結(jié)構(gòu)的復(fù)雜性(涉及交換機(jī)與控制器之間交互、控制器之間同步、控制器之間負(fù)載均衡等方面)以及控制器數(shù)量不確定性因素等,使具有拜占庭屬性的SDN安全控制器部署問題更加復(fù)雜,相關(guān)綜合考慮多種性能優(yōu)化目標(biāo)的控制器部署研究也更少。為此,本文提出了一種考慮拜占庭屬性的SDN安全控制器多目標(biāo)部署方案,主要貢獻(xiàn)總結(jié)如下。
(1)首次構(gòu)建了綜合考量交互時(shí)延、同步時(shí)延、負(fù)載差異程度和控制器部署數(shù)量等優(yōu)化指標(biāo)的拜占庭控制器部署問題(MOSBCPP,multi-objective SDN Byzantine controller placement problem)模型。
(2)在第二代非支配排序遺傳算法(NSGA-II,non-dominated sorted genetic algorithm-II)思想的基礎(chǔ)上,提出了包括基于非確定交換機(jī)序列的控制器部署策略初始化函數(shù)、基于拜占庭備選域內(nèi)隨機(jī)約束性映射的控制器部署策略變異函數(shù)、基于雙向支配屬性的快速非支配排序函數(shù)和基于非支配臨界等級(jí)與擁擠度指標(biāo)的精英策略選擇函數(shù)等在內(nèi)的MOSBCPP模型求解算法。
(3)通過仿真驗(yàn)證了MOSBCPP模型在交互時(shí)延、同步時(shí)延、負(fù)載差異程度、控制器部署數(shù)量和安全性能等指標(biāo)方面的有效性。
目前對(duì)于軟件定義網(wǎng)絡(luò)控制器部署問題可以按照部署前控制器數(shù)量是否確定分為自適應(yīng)部署方案和非自適應(yīng)部署方案。其中,現(xiàn)有研究中大多數(shù)控制器部署方案均屬于非自適應(yīng)部署方案,這類方案的研究目標(biāo)是在給定控制器數(shù)量的前提下,通過調(diào)整控制器部署位置以提升相關(guān)網(wǎng)絡(luò)性能指標(biāo)。而自適應(yīng)部署方案則可以根據(jù)實(shí)際拓?fù)渥赃m應(yīng)地確定控制器部署的數(shù)量和位置,當(dāng)然,這類方案在研究數(shù)量和深度方面還遠(yuǎn)未成熟。
非自適應(yīng)控制器部署方案最早由Heller[5]提出,其在給定拓?fù)浜涂刂破鞑渴鸬臄?shù)量前提下,通過遍歷手段探索不同控制器部署的位置對(duì)交換機(jī)與控制器之間交互時(shí)延的影響,并選擇交互時(shí)延指標(biāo)最優(yōu)的控制器位置作為最終部署方案。該研究雖然對(duì)控制器部署方案具有奠基性作用,但其僅考慮了交互時(shí)延這一單一指標(biāo),降低了該方案的通用性。隨后,不斷有研究人員從改善不同指標(biāo)入手提出了多種不同研究方案。文獻(xiàn)[6]從經(jīng)濟(jì)開銷角度對(duì)控制器部署方案進(jìn)行建模評(píng)估,以獲得經(jīng)濟(jì)最優(yōu)化部署方案;文獻(xiàn)[7]在Heller所提出模型的基礎(chǔ)上增加了控制器容量限制,從一定程度豐富了模型考慮因素;文獻(xiàn)[8]以控制器負(fù)載均衡為優(yōu)化目標(biāo),進(jìn)一步增加了控制器部署模型的通用性;文獻(xiàn)[9]應(yīng)用了主備控制器機(jī)制,并將交換機(jī)與對(duì)應(yīng)主備控制器的交互時(shí)延作為優(yōu)化目標(biāo),增加了控制器的可靠性;文獻(xiàn)[10-11]則通過控制路徑復(fù)用程度對(duì)節(jié)點(diǎn)壓力和控制路徑丟失率等指標(biāo)進(jìn)行建模優(yōu)化,在一定程度上提高了控制器部署的可靠性。文獻(xiàn)[12]在預(yù)先考慮鏈路故障的場(chǎng)景下設(shè)計(jì)了一種低故障恢復(fù)開銷的控制器部署方案,該方案能夠有效降低鏈路故障情況對(duì)全局控制時(shí)延的負(fù)面影響,增加了控制器部署策略在鏈路故障發(fā)生時(shí)的可靠性;文獻(xiàn)[13]針對(duì)SDN大規(guī)模廣域網(wǎng)場(chǎng)景提出了一種基于網(wǎng)絡(luò)集群劃域的控制器部署算法CNPA,該算法可以有效降低單個(gè)網(wǎng)絡(luò)域內(nèi)控制器和交換機(jī)之間的最大端到端時(shí)延;文獻(xiàn)[14]提出了一種控制器靜態(tài)放置與負(fù)載動(dòng)態(tài)調(diào)整相結(jié)合的方案,通過在考慮時(shí)延和負(fù)載兩個(gè)指標(biāo)的控制器靜態(tài)部署方案的基礎(chǔ)上設(shè)計(jì)了控制器負(fù)載動(dòng)態(tài)調(diào)整算法(ADOA),提高了離線和在線兩種狀態(tài)下控制器負(fù)載均衡的能力。通過分析可知,上述非自適應(yīng)部署方案與本文提出的MOSBCPP模型相比,缺少安全屬性的考量,而且,相關(guān)性能指標(biāo)局部特征明顯。另外,非自適應(yīng)部署方案中基于固定控制器數(shù)量的假設(shè)也限制了其通用性。
在自適應(yīng)部署方案方面,現(xiàn)有研究仍較為初步,其基本思想均是通過聚類或生成樹劃分等方法實(shí)現(xiàn)子網(wǎng)劃分,進(jìn)而在每一子網(wǎng)內(nèi)根據(jù)交互時(shí)延指標(biāo)最小化來(lái)部署控制器。文獻(xiàn)[15]根據(jù)節(jié)點(diǎn)密度的聚類分析方法提出了DBCP部署算法;文獻(xiàn)[16]通過Min-Cut方法計(jì)算最大不相交路徑,并以該指標(biāo)為參考對(duì)網(wǎng)絡(luò)拓?fù)溥M(jìn)行分割;文獻(xiàn)[17]利用改進(jìn)的吸引子傳播算法(affinity propagation)對(duì)子域進(jìn)行劃分;文獻(xiàn)[18]在劃分節(jié)點(diǎn)層次樹結(jié)果的基礎(chǔ)上,結(jié)合負(fù)載均衡指標(biāo)提出了MCDALB部署算法;文獻(xiàn)[19]提出了一種基于最小容錯(cuò)覆蓋模型的控制器部署方案,該方案能夠保證數(shù)據(jù)平面容錯(cuò)需求的同時(shí)盡可能降低控制器部署數(shù)量。以上自適應(yīng)部署方案雖然將控制器數(shù)量作為考量因素,但其本質(zhì)仍以提供可行解為目標(biāo),與MOSBCPP相比,相關(guān)性能指標(biāo)同樣較為片面,安全性能等因素同樣被忽視。
為了更好地從數(shù)學(xué)角度描述考慮拜占庭容錯(cuò)屬性的SDN安全控制器多目標(biāo)部署問題,本節(jié)首先對(duì)相關(guān)模型參數(shù)進(jìn)行定義說(shuō)明。
拜占庭容錯(cuò)約束 為了滿足拜占庭容錯(cuò)屬性,每個(gè)交換機(jī)均需根據(jù)其容錯(cuò)需求度從網(wǎng)絡(luò)拓?fù)鋱D中選擇滿足相關(guān)條件的多個(gè)控制器作為參考,因此,交換機(jī)所連接的控制器數(shù)量首先需要滿足相應(yīng)約束,即
時(shí)延相關(guān)約束 由于SDN交換機(jī)與控制器的交互時(shí)延直接影響全局網(wǎng)絡(luò)性能,因此,在建立交換機(jī)與控制器的連接關(guān)系前,還需要對(duì)該指標(biāo)進(jìn)行約束,即
控制器容量約束 考慮到控制器計(jì)算資源的有限性,故對(duì)于每個(gè)控制器而言,其管理的交換機(jī)請(qǐng)求總負(fù)載需要小于其容量限制,即
在滿足上述相關(guān)約束條件后,便可以初步劃定可行解的范圍,當(dāng)然,對(duì)最終結(jié)果的選取仍需進(jìn)一步結(jié)合具體優(yōu)化目標(biāo)。為此,本節(jié)選取最大交互時(shí)延、平均交互時(shí)延、最大同步時(shí)延、平均同步時(shí)延、控制器負(fù)載差異程度及控制器部署數(shù)量6個(gè)指標(biāo)作為優(yōu)化目標(biāo)。
(1)最大交互時(shí)延
網(wǎng)絡(luò)拓?fù)渲械娜我饨粨Q機(jī)與其連接的控制器的最大交互時(shí)延是反映網(wǎng)絡(luò)性能下界的重要指標(biāo)之一,該值越小表明網(wǎng)絡(luò)性能下界越優(yōu),其表達(dá)如式(10)所示。
(2)平均交互時(shí)延
(3)最大同步時(shí)延
網(wǎng)絡(luò)拓?fù)渲械娜我饨粨Q機(jī)所連接的控制器之間的最大同步時(shí)延也是反映網(wǎng)絡(luò)性能下界的重要指標(biāo)之一,該值越小,同樣表明網(wǎng)絡(luò)性能下界越優(yōu),其表達(dá)如式(12)所示。
(4)平均同步時(shí)延
網(wǎng)絡(luò)拓?fù)渲腥我饨粨Q機(jī)所連接的控制器之間的平均同步時(shí)延也是反映平均網(wǎng)絡(luò)性能的重要指標(biāo)之一,該值越小,同樣表明平均網(wǎng)絡(luò)性能越優(yōu),其表達(dá)如式(13)所示。
(5)控制器負(fù)載差異程度
在SDN多控制器模型中,各控制器的負(fù)載均衡程度是衡量控制器部署合理性的重要指標(biāo),各控制器負(fù)載越均衡,則相應(yīng)地控制器部署策略合理性越高。因此,本文將控制器負(fù)載差異程度也作為優(yōu)化指標(biāo),負(fù)載差異值越小,表明控制器負(fù)載均衡程度越高,全局網(wǎng)絡(luò)性能越優(yōu),其表達(dá)式如式(14)所示。
(6)控制器部署數(shù)量
考慮到控制器資源的有限性,本著節(jié)約資源的原則,需要合理控制控制器部署數(shù)量。控制器部署數(shù)量越少,相應(yīng)地,網(wǎng)絡(luò)運(yùn)維開銷就越小,其表達(dá)如式(16)所示。
通過對(duì)上述模型參數(shù)、約束條件及優(yōu)化目標(biāo)分析后可知,本文所提出的MOSBCPP可建模為多目標(biāo)優(yōu)化模型,如式(17)所示。
約束條件:
式(1)~式(9)
算法1 基于NSGA-II的MOSBCPP求解算法
通過上述算法分析可知,基于NSGA-II的MOSBCPP求解算法主要包括控制器部署策略初始化函數(shù)Initialize、變異函數(shù)Mutate,快速非支配排序函數(shù)FastNondominatedSort及精英策略選擇函數(shù)EliteSelection等。下面將對(duì)上述函數(shù)進(jìn)行具體介紹。
為了生成可行的初始化控制器部署策略,需要令每一個(gè)交換機(jī)均滿足其相關(guān)容錯(cuò)及時(shí)延約束條件,該過程可通過在每一個(gè)交換機(jī)的備選域中選擇滿足交換機(jī)容錯(cuò)需求數(shù)量的節(jié)點(diǎn)建立連接關(guān)系實(shí)現(xiàn)。當(dāng)然,在為每一個(gè)交換機(jī)分配控制器節(jié)點(diǎn)的過程中,考慮到各交換機(jī)備選域的耦合性及控制器容量的有限性,交換機(jī)分配序列順序會(huì)對(duì)最終結(jié)果產(chǎn)生直接影響。為此,算法2首先對(duì)網(wǎng)絡(luò)拓?fù)鋱D內(nèi)的所有節(jié)點(diǎn)的連通特征進(jìn)行評(píng)估,并根據(jù)評(píng)估結(jié)果對(duì)交換機(jī)分配序列排序(第1~3行);為了描述交換機(jī)連通特征,本函數(shù)引入交換機(jī)度中心因子和交換機(jī)聚集因子等兩個(gè)指標(biāo)。
交換機(jī)度中心因子的表達(dá)如式(18)所示。
交換機(jī)聚集因子的表達(dá)如式(19)所示。
其中,分子部分表示了交換機(jī)的鄰居節(jié)點(diǎn)之間相互連接的數(shù)量,交換機(jī)聚集因子反映了交換機(jī)所在節(jié)點(diǎn)的局域連接屬性。
通過分析上述指標(biāo)可知,節(jié)點(diǎn)的度中心因子及聚集因子越大,備選域內(nèi)可選的控制器節(jié)點(diǎn)越多,隨機(jī)復(fù)用的概率越高。因此,在制定初始交換機(jī)分配順序SWSeq[0]時(shí),本函數(shù)按照連通性指標(biāo)由大到小對(duì)交換機(jī)排序(優(yōu)先比較交換機(jī)度中心因子,若該指標(biāo)相同,則繼續(xù)比較交換機(jī)聚集因子;第4行),這有利于產(chǎn)生優(yōu)勢(shì)控制器部署策略。當(dāng)然,為了避免后續(xù)因初始部署策略多樣性不足而導(dǎo)致的局部最優(yōu)問題,本函數(shù)采用交叉變異方法產(chǎn)生個(gè)不同的交換機(jī)分配序列SWSeq[](第5~7行)。然后,按照交換機(jī)分配序列內(nèi)的順序SWSeq[],在每一交換機(jī)SWSeq[][]的備選域BCADSWSeq[p][q]中隨機(jī)選擇滿足交換機(jī)容錯(cuò)數(shù)量的SWSeq[p][q]個(gè)節(jié)點(diǎn)組成備選控制器集合SWSeq[p][q]。其中,在將該交換機(jī)連接至備選控制器集合時(shí),若集合中存在控制器過載,則需要重新隨機(jī)選擇備選控制器集合,直至滿足負(fù)載約束條件(第8~12行)后,更新連接矩陣(第13行)同理,針對(duì)不同的交換機(jī)分配序列,重復(fù)上述步驟,最終返回規(guī)模為的初始種群CP(第15~17行)。
算法2 基于非確定交換機(jī)序列的控制器部署策略初始化函數(shù)
算法3 基于拜占庭備選域內(nèi)隨機(jī)約束性映射的控制器部署策略變異函數(shù)
快速非支配排序函數(shù)能夠?qū)斎敕N群內(nèi)的個(gè)體進(jìn)行評(píng)級(jí),按照非支配關(guān)系將不同個(gè)體歸入不同等級(jí)的策略集合中,具體步驟如算法4所示。
算法4 基于雙向支配屬性的快速非支配排序函數(shù)
算法5 基于非支配臨界等級(jí)與擁擠度指標(biāo)的精英策略選擇函數(shù)
不同控制器部署算法的平均交互時(shí)延及最大交互時(shí)延指標(biāo)如圖2所示。
圖2 不同控制器部署算法交互時(shí)延指標(biāo)對(duì)比
Figure 2 Comparison of interaction delay indicators under different controller deployment algorithms
分析圖2可知,MOSBCPP無(wú)論在平均交互時(shí)延指標(biāo)還是最大交互時(shí)延指標(biāo)方面均優(yōu)于MCDALB和ABC算法,這是由于與MOSBCPP相比,MCDALB和ABC分別以負(fù)載均衡程度和控制器部署數(shù)目為主要優(yōu)化對(duì)象,缺少對(duì)交互時(shí)延指標(biāo)的優(yōu)化。而且隨著交換機(jī)規(guī)模的增加,MOSBCPP交互時(shí)延上升幅度(10 ms左右)低于其他兩種算法,這表明MOSBCPP算法具有穩(wěn)定性。
由于MCDALB不具備多控制器容錯(cuò)屬性,不涉及本文所考慮的同步時(shí)延指標(biāo),因此,本節(jié)僅對(duì)比MOSBCPP與ABC算法的平均同步時(shí)延及最大同步時(shí)延指標(biāo),其結(jié)果如圖3所示。分析圖3可知,與前述交互時(shí)延指標(biāo)規(guī)律類似,MOSBCPP無(wú)論在平均同步時(shí)延指標(biāo)還是最大同步時(shí)延指標(biāo)方面均優(yōu)于ABC算法,而且隨著交換機(jī)規(guī)模的增加,MOSBCPP同步時(shí)延波動(dòng)相較于ABC更加穩(wěn)定,這是MOSBCPP綜合考慮要素較為完備的優(yōu)勢(shì)。
圖3 不同控制器部署算法同步時(shí)延指標(biāo)對(duì)比
Figure 3 Comparison of synchronization delay indicators under different controller deployment algorithms
圖4給出了不同控制器部署算法的歸一化負(fù)載差異程度的CDF曲線。分析圖4可知,相較于MOSBCPP和ABC算法,MCDALB控制器的負(fù)載差異程度最小,在90%的情況下負(fù)載差異度小于0.15。這是由于MCDALB以負(fù)載差異度為其優(yōu)化目標(biāo),其考慮的因素要少于MOSBCPP下的多優(yōu)化目標(biāo),故其在負(fù)載差異程度方面具有一定優(yōu)勢(shì)。雖然MOSBCPP在該指標(biāo)上略劣于MCDALB,但其指標(biāo)仍具有較高接受度,在90%的情況下低于0.3。而相比之下,ABC算法由于未考慮負(fù)載均衡因素,故其負(fù)載差異度最高,超過50%的情況下高于0.5。
圖4 不同控制器部署算法歸一化負(fù)載差異指標(biāo)對(duì)比
Figure 4 Comparison of normalized load difference indicators under different controller deployment algorithms
由于MOSBCPP與ABC算法均充分衡量了交換機(jī)的冗余屬性,故在控制器部署數(shù)量指標(biāo)方面,這兩者與未考慮冗余容錯(cuò)屬性的MCDALB算法不具有同等比較性。因此,本小節(jié)選擇理論下界值TLB來(lái)衡量MOSBCPP與ABC算法在控制器部署數(shù)量上的絕對(duì)有效性。其中,TLB是綜合考慮交換機(jī)請(qǐng)求負(fù)載、冗余容錯(cuò)需求度和控制器容量等因素而得出的控制器部署數(shù)量的理論下界。圖5對(duì)比了3個(gè)算法的控制器部署數(shù)量。
從圖5可知,在不同的交換機(jī)規(guī)模下,ABC的控制器部署數(shù)量均與理論下界TLB最為接近,而MOSBCPP所需要的控制器數(shù)量略多于前兩者。這是由于ABC算法將控制器數(shù)量最小化作為優(yōu)化目標(biāo),而控制器部署數(shù)量指標(biāo)僅是MOSBCPP眾多優(yōu)化目標(biāo)中的一個(gè),故ABC的控制器數(shù)量指標(biāo)要優(yōu)于MOSBCPP算法。但是,從絕對(duì)有效性來(lái)看,MOSBCPP算法的控制器部署數(shù)量指標(biāo)與理論下界差距不大(差距15%左右),也具有較高接受程度。
圖5 不同控制器部署算法控制器數(shù)量指標(biāo)對(duì)比
Figure 5 Comparison of the number of controllers under different controller deployment algorithms
為了衡量不同控制器部署算法對(duì)控制平面帶來(lái)的安全增益,本仿真在相應(yīng)部署算法產(chǎn)生的結(jié)果基礎(chǔ)上通過刪除某些控制器實(shí)例來(lái)模擬控制器被劫持的場(chǎng)景,并在該場(chǎng)景中測(cè)量交換機(jī)連接失敗率來(lái)衡量控制平面抗攻擊的安全性能。本文仿真首先利用MOSBCPP、MCDALB和ABC算法在交換機(jī)規(guī)模為1 000時(shí)的100種隨機(jī)拓?fù)湎律煽刂破鞑渴鸱桨?,然后隨機(jī)刪除5~10個(gè)控制器節(jié)點(diǎn)并測(cè)量交換機(jī)連接失敗率。值得注意的是,只有在交換機(jī)沒有連接任何控制器時(shí),才將其歸為交換機(jī)連接失敗情況。
圖6中給出了不同控制器部署算法的交換機(jī)連接失敗率對(duì)比情況。分析圖6可知,MCDALB算法的交換機(jī)連接失敗率遠(yuǎn)高于MOSBCPP和ABC算法,這是由于MCDALB并未考慮冗余容錯(cuò)因素。MOSBCPP和ABC算法的交換機(jī)連接失敗率則較為接近,而且隨著刪除控制節(jié)點(diǎn)數(shù)目的增加,兩者交換機(jī)連接失敗率均未產(chǎn)生明顯波動(dòng),均穩(wěn)定在0.1以內(nèi)。當(dāng)然,MOSBCPP在該指標(biāo)上略微優(yōu)于ABC算法,這也是控制器部署數(shù)量差異的折中體現(xiàn)。
圖6 不同控制器部署算法交換機(jī)連接失敗率指標(biāo)對(duì)比
Figure 6 Comparison of switch connection failure rate indicators under different controller deployment algorithms
為了提高SDN分布式控制平面的安全性,拜占庭式控制器受到廣泛關(guān)注。在拜占庭式解決方案中,控制器部署的數(shù)量、位置,以及交換機(jī)與控制器之間的連接關(guān)系直接影響全局網(wǎng)絡(luò)關(guān)鍵性能指標(biāo)。為了提高控制器部署效率,本文提出了一種考慮拜占庭屬性的SDN安全控制器多目標(biāo)部署方案。通過基于NSGA-II思路對(duì)交互時(shí)延、同步時(shí)延、負(fù)載差異程度和控制器部署數(shù)量等多個(gè)優(yōu)化指標(biāo)的拜占庭控制器部署問題模型進(jìn)行求解。相關(guān)仿真結(jié)果表明,該部署方案能夠在有效降低交互時(shí)延、同步時(shí)延、負(fù)載差異程度和控制器部署數(shù)量等性能指標(biāo)的同時(shí),提高控制平面安全性。
[1]MCKEOWN N, ANDERSON T, BALAKRISHNAN H, et al. OpenFlow: enabling innovation in campus networks[J]. ACM Sigcomm Computer Communication Review, 2008, 38(2): 69-74.
[2]TOOTOONCHIAN A, GANJALI Y. HyperFlow: a distributed control plane for OpenFlow[C]//Internet Network Management Conference on Research on Enterprise Networking. 2011.
[3]CHICA J, IMBACHI J, BOTERO J. Security in SDN: a comprehensive survey[J]. Journal of Network and Computer Applications, 2020, 159: 102595.
[4]KRIAA S, PAPILLON S, JAGADEESAN L, et al. Better safe than sorry: modeling reliability and security in replicated SDN controllers[C]//2020 16th International Conference on the Design of Reliable Communication Networks (DRCN). 2020.
[5]HELLER B, SHERWOOD R, MCKEOWN N. The controller placement problem[J]. ACM Sigcomm Computer Communication Review, 2012, 42(4): 473-478.
[6]SALLAHI A, ST-HILAIRE M. Optimal model for the controller placement problem in software defined networks[J]. IEEE Communications Letters, 2015, 19(1): 30-33.
[7]YAO G, BI J, LI Y, et al. On the capacitated controller placement problem in software defined networks[J]. IEEE Communications Letters, 2014, 18(8): 1339-1342.
[8]HU Y, LUO T, WANG W, et al. On the load balanced controller placement problem in software defined networks[C]//2016 2nd IEEE International Conference on Computer and Communications (ICCC). 2016.
[9]BALA P. Capacitated next controller placement in software defined networks[J]. IEEE Transactions on Network and Service Management, 2017, 14(3): 514-527.
[10]ISHIGAKI G, SHINOMIYA N. Controller placement algorithm to alleviate burdens on communication nodes[C]//International Conference on Computing. 2016.
[11]HU Y, WANG W, GONG X, et al. On reliability-optimized controller placement for software-defined networks[J]. China Communications, 2014, 11(2): 38-54.
[12]吳奇, 陳鴻昶. 低故障恢復(fù)開銷的軟件定義網(wǎng)絡(luò)控制器布局算法[J]. 網(wǎng)絡(luò)與信息安全學(xué)報(bào), 2020, 6(6): 97-104.
WU Q, CHEN H C. Low fault recovery cost controller placement strategy in software-defined networks[J]. Chinese Journal of Network and Information Security, 2020, 6(6): 97-104.
[13]WANG G , ZHAO Y , HUANG J , et al. An effective approach to controller placement in software defined wide area networks[J]. IEEE Transactions on Net-work and Service Management, 2018, 15(1): 344-355.
[14]史久根, 謝熠君,孫立, 等. 軟件定義網(wǎng)絡(luò)中面向時(shí)延和負(fù)載的多控制器放置策略[J]. 電子與信息學(xué)報(bào), 2019, 41(8): 1869-1876.
SHI J G, XIE Y J, SUN L, et al. Multi-controller placement strategy based on latency and load in software defined network[J]. Journal of Electronics & Information Technology, 2019, 41(8): 1869-1876.
[15]LIAO J, SUN H. Density cluster based approach for controller placement problem in large-scale software defined networkings[J]. Computer Networks, 2017, 112(1): 24-35.
[16]ZHANG Y, BEHESHTI N, TATIPAMULA M. On resilience of split-architecture networks[C]//2011 IEEE Global Telecommunications Conference-GLOBECOM 2011. 2012.
[17]ZHAO J, QU H, ZHAO J, et al. Towards controller placement problem for software-defined network using affinity propagation[J]. Electronics Letters, 2017, 53(14): 928-929.
[18]史久根, 邾偉, 賈坤熒, 等. 軟件定義網(wǎng)絡(luò)中基于負(fù)載均衡的多控制器部署算法[J]. 電子與信息學(xué)報(bào), 2018, 40(2): 455-461.
SHI J G, ZHU W, JIA K Y, et al. Multi-controller deployment algorithm based on load balance in software defined network[J]. Journal of Electronics & Information Technology, 2018, 40(2): 455-461.
[19]吳奇, 陳鴻昶. 軟件定義網(wǎng)絡(luò)容錯(cuò)控制平面的最小覆蓋布局方法[J]. 電子與信息學(xué)報(bào), 2020, 42(12): 2849-2856.
WU Q, CHEN H C. Minimal coverage model for fault-tolerant controller placement in software-defined networks[J]. Journal of Electronics & Information Technology, 2020, 42(12): 2849-2856.
[20]XIE J, GUO D, ZHU X, et al. Minimal fault-tolerant coverage of controllers in IaaS datacenters[J]. IEEE Transactions on Services Computing, 2020, 13(6): 1128-1141.
Multi-objective optimization placement strategy for SDN security controller considering Byzantine attributes
WANG Tao, CHEN Hongchang
Information Engineering University, Zhengzhou 450001, China
By giving the softwaredefined network distributed control plane Byzantine attributes, its security can be effectively improved. In the process of realizing Byzantine attributes, the number and location of controllers, and the connection relationship between switches and controllers can directly affect the key network performance. Therefore, a controller multi-objective optimization placement strategy for SDN security controllers considering Byzantine attributes was proposed. Firstly, a Byzantine controller placement problem (MOSBCPP)model that comprehensively considered interaction delay, synchronization delay, load difference and the number of controllers was constructed. Then, a solution algorithm based on NASG-II was designed for this model, which included the initialization function, the mutation function, the fast non-dominated sorting function and the elite strategy selection function. Simulation results show that this strategy can effectively reduce interaction delay, synchronization delay, load difference and the number of controllers, while improving control plane security.
softwaredefined network security, distributed control plane, Byzantine attributes, controller placement, multi-objective optimization
TP393
A
10.11959/j.issn.2096?109x.2021060
2020?12?11;
2021?03?01
王濤,wangtaogenuine@163.com
國(guó)家重點(diǎn)研發(fā)計(jì)劃(2018YFB0804004);國(guó)家自然科學(xué)基金(62072467, 61521003)
The National Key R&D Program of China (2018YFB0804004), The National Natural Science Foundation of China (62072467, 61521003)
王濤, 陳鴻昶. 考慮拜占庭屬性的SDN安全控制器多目標(biāo)優(yōu)化部署方案[J]. 網(wǎng)絡(luò)與信息安全學(xué)報(bào), 2021, 7(3): 72-84.
WANG T, CHEN H C. Multi-objective optimization placement strategy for SDN security controller considering Byzantine attributes[J]. Chinese Journal of Network and Information Security, 2021, 7(3): 72-84.
王濤(1993? ),男,山東臨朐人,信息工程大學(xué)博士生,主要研究方向?yàn)镾DN安全。
陳鴻昶(1964? ),男,河南新密人,信息工程大學(xué)教授、博士生導(dǎo)師,主要研究方向?yàn)槲磥?lái)網(wǎng)絡(luò)體系結(jié)構(gòu)、人工智能。