亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種openflow消息中流規(guī)則等價(jià)快速判定方法

文檔序號(hào):9790784閱讀:223來(lái)源:國(guó)知局
一種openflow消息中流規(guī)則等價(jià)快速判定方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明涉及SDN領(lǐng)域。更為具體的,本發(fā)明涉及一種快速判定Openflow消息中的流規(guī)則是否等價(jià)的方法,以提高對(duì)于多個(gè)冗余控制器下發(fā)的流表規(guī)則的等價(jià)性判定過(guò)程。
【背景技術(shù)】
[0002]由于在SDN網(wǎng)絡(luò)中,控制平面和轉(zhuǎn)發(fā)平面的分離,網(wǎng)絡(luò)控制統(tǒng)一集中到網(wǎng)絡(luò)控制器,交換機(jī)與控制器之間通過(guò)openflow協(xié)議進(jìn)行通信,這使得網(wǎng)絡(luò)控制器成為SDN網(wǎng)絡(luò)的安全焦點(diǎn),網(wǎng)絡(luò)控制器的可用性和可靠性直接關(guān)系到整個(gè)網(wǎng)絡(luò)的安全性。在現(xiàn)有的部署模式和安全手段下,由于安全攻擊的不可預(yù)知,難以保證SDN控制器的安全性。利用多控制器構(gòu)建具有入侵容忍能力的控制器端系統(tǒng)是應(yīng)對(duì)上述問(wèn)題的有效途徑之一,而在這種系統(tǒng)中需要對(duì)于多個(gè)控制器下發(fā)的流表進(jìn)行一致性裁決,以發(fā)現(xiàn)控制器的不一致行為。
[0003]控制器通過(guò)openflow消息下發(fā)流表,每條流表包括執(zhí)行動(dòng)作和多個(gè)匹配項(xiàng),考慮到靈活性和可擴(kuò)展性,在openflow 1.2規(guī)范之后,在openflow消息中采用OXM結(jié)構(gòu)存儲(chǔ)匹配項(xiàng),各匹配項(xiàng)在消息中可能出現(xiàn)或者不出現(xiàn),且相互順序不確定,使得在對(duì)比兩個(gè)流規(guī)則時(shí),通常需要遍歷兩個(gè)流規(guī)則所有表匹配項(xiàng),效率低下。
[0004]該問(wèn)題的根源在于依據(jù)Openf low規(guī)范,各個(gè)匹配項(xiàng)可以在openf low消息中隨機(jī)且以不確定的順序出現(xiàn),給流規(guī)則間的相互比較帶來(lái)困難,從而降低了多控制器一致性裁決的效率。

【發(fā)明內(nèi)容】

[0005]針對(duì)現(xiàn)有技術(shù)中存在的技術(shù)問(wèn)題,本發(fā)明的目的在于提供一種openflow消息中流規(guī)則等價(jià)快速判定方法。相比傳統(tǒng)方法,本發(fā)明方法更簡(jiǎn)單、快捷。
[0006]本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:
[0007]一種openf low消息中流規(guī)則等價(jià)快速判定方法,其步驟為:SDN網(wǎng)絡(luò)中的openf low代理接收到來(lái)自一 SDN控制器的Openf I ow消息后,將該Openf I ow消息與所有已收到會(huì)話的Openf I ow消息中包含的流規(guī)則進(jìn)行比較;如果均不一致,則為該Openf I ow消息創(chuàng)建一新的會(huì)話,并為該會(huì)話設(shè)一隨機(jī)初始種子值;如果與其中一個(gè)已收到會(huì)話的Openflow消息中包含的規(guī)則一致,貝lJ判定該Openf low消息中流規(guī)則與該會(huì)話的Openf low消息中流規(guī)則等價(jià);其中,進(jìn)行比較的方法為:首先將該Op enf I ο w消息中流規(guī)則的匹配項(xiàng)和動(dòng)作項(xiàng)每Kb i t劃分一個(gè)單元,然后將該Openflow消息流規(guī)則劃分后的所有單元和一已收到會(huì)話i的隨機(jī)初始種子值進(jìn)行計(jì)算,結(jié)果記為a,該會(huì)話i的Openf low消息流規(guī)則劃分后的所有單元和該會(huì)話i的隨機(jī)初始種子值的計(jì)算結(jié)果記為b,如果a等于b,則判定兩條流規(guī)則等價(jià)。
[0008]進(jìn)一步的,所述K的取值為32的整數(shù)倍。
[0009]進(jìn)一步的,所述Kbit的取值為32bit。
[0010]進(jìn)一步的,所述計(jì)算為求和計(jì)算。
[0011]進(jìn)一步的,所述openflow代理為每一會(huì)話設(shè)定一定時(shí)器。
[0012]進(jìn)一步的,所述openflow對(duì)該定時(shí)器設(shè)定時(shí)間內(nèi)收到的Openflow消息進(jìn)行流規(guī)則等價(jià)判定,根據(jù)判定結(jié)果對(duì)SDN網(wǎng)絡(luò)中多個(gè)控制器的Openf low消息進(jìn)行一致性裁決,然后根據(jù)裁決結(jié)果對(duì)收到的Openflow消息進(jìn)行轉(zhuǎn)發(fā)。
[0013]本發(fā)明在openf low代理解析了openf low消息之后(參考申請(qǐng)?zhí)?201510455076.8、名稱(chēng)“基于入侵容忍的SDN控制器端系統(tǒng)和安全通信方法”的專(zhuān)利技術(shù)文獻(xiàn)),判定openf I ow消息的等價(jià)依賴(lài)于openflow消息中包含的流規(guī)則的等價(jià),在流規(guī)則兩兩比較過(guò)程中采用以下方法:在每個(gè)比較會(huì)話開(kāi)始時(shí)隨機(jī)設(shè)置32bit的初始種子值,用以抵御惡意偽造的消息,將所有控制器openf low消息中包含的流規(guī)則中的匹配項(xiàng)和動(dòng)作項(xiàng)每32bit劃分一個(gè)單元,將每一流規(guī)則所有單元和初始種子值進(jìn)行加法運(yùn)算然后求和,如果兩條規(guī)則的加法運(yùn)算結(jié)果相等,說(shuō)明兩條規(guī)則等價(jià);否則,說(shuō)明兩條規(guī)則不等價(jià)。本方法是對(duì)所有的值,不區(qū)分匹配項(xiàng)的名字,先求和再比較和的區(qū)別。
[0014]在本發(fā)明方法中,通過(guò)隨機(jī)設(shè)置初始種子值,可以抵御少數(shù)控制器惡意偽造消息合成相同的加法運(yùn)算結(jié)果;通過(guò)利用求和運(yùn)算對(duì)于位置無(wú)關(guān)性,從而規(guī)避了在OXM結(jié)構(gòu)中各個(gè)匹配項(xiàng)出現(xiàn)與否以及位置不確定給比較帶來(lái)的困難;同時(shí)考慮到了多控制器消息裁決不需要精確判定消息之間不一致的詳細(xì)信息,從而利用求和結(jié)果既可以滿足多控制器消息一致性裁決的需要。
[0015]和現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:
[0016]在基于多個(gè)冗余控制器構(gòu)建具有入侵容忍能力的SD N控制器系統(tǒng)時(shí)可以加快openflow消息等價(jià)性的判定過(guò)程。例如,一條流規(guī)則的匹配項(xiàng)和動(dòng)作項(xiàng)目共η個(gè)OXM的TLV子結(jié)構(gòu),另一條流表有m個(gè)TLV的子結(jié)構(gòu),如果是普通的對(duì)比,需要遍歷查找的時(shí)間復(fù)雜度為O(n)*0(m),如果使用本專(zhuān)利的方法,時(shí)間復(fù)雜度為0(1),因?yàn)椴恍枰檎乙灰粚?duì)應(yīng)的OXM子結(jié)構(gòu)類(lèi)型,只需全部求和即可。
【附圖說(shuō)明】
[0017]圖1是本發(fā)明方法的流程圖;
[0018]圖2是本發(fā)明每一流規(guī)則的求和方法流程圖。
【具體實(shí)施方式】
[0019]下面通過(guò)具體實(shí)施例結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步描述。
[°02°] 如附圖所示,openf low代理在接收到來(lái)自SDN控制器的Openf low消息后,分析比對(duì)其中的流規(guī)則,對(duì)多個(gè)控制器消息進(jìn)行一致性裁決,最終將流規(guī)則多數(shù)一致的消息轉(zhuǎn)發(fā)給交換機(jī)。
[0021]I)用戶的網(wǎng)絡(luò)控制邏輯需要在所有后端不同的SDN控制器環(huán)境上實(shí)現(xiàn)和部署。
[0022]2)用戶配置所有openf low代理的執(zhí)行參數(shù),包括入侵容忍策略(描述了至少η個(gè)SDN控制器中收到m個(gè)包含相同流規(guī)則判定為符合系統(tǒng)入侵容忍策略中的數(shù)目η和m,表示為m/n)、所有后端SDN控制器地址、端口以及相關(guān)連接認(rèn)證參數(shù)(如有必要)等,并與所有后端SDN控制器建立連接,并標(biāo)記狀態(tài)為“正?!?。
[0023]3)用戶配置SDN交換機(jī)的執(zhí)行參數(shù),包括交換機(jī)后端的openf low代理的地址和端口,以及相關(guān)連接認(rèn)證參數(shù)(如有必要)等,并與當(dāng)前活動(dòng)的openf low代理建立連接。
[0024]4)openf low代理接收到來(lái)自某SDN控制器的Openf low消息后,對(duì)于其中包含了流規(guī)則的消息進(jìn)行如下處理,其他消息則進(jìn)行轉(zhuǎn)發(fā):
[0025]1.如果所有現(xiàn)有已收到會(huì)話消息中包含的流規(guī)則與每一新接收消息中包含的流規(guī)則都不等價(jià),則為該消息創(chuàng)建新的會(huì)話,設(shè)定定時(shí)器和隨機(jī)32bit的種子值,等待其他SDN控制器的相關(guān)消息。具體比較方法,只需計(jì)算新消息中流規(guī)則在不包含隨機(jī)種子值時(shí)的和,然后與各個(gè)現(xiàn)有會(huì)話的種子值求和,然后與現(xiàn)有會(huì)話的和進(jìn)行比較,如果一致,則消息等價(jià);反之,則不等價(jià)。如果在定時(shí)器設(shè)定時(shí)間內(nèi),某個(gè)控制器一直不回復(fù)下層的請(qǐng)求,此時(shí)代理不能一直等待這個(gè)控制器,而需要在一定時(shí)間內(nèi)對(duì)下層網(wǎng)絡(luò)做出反應(yīng)。
[0026]下面對(duì)上述過(guò)程舉例說(shuō)明。
[0027]假設(shè)后端為5個(gè)SDN控制器,在一個(gè)會(huì)話中,每個(gè)控制器發(fā)過(guò)來(lái)的Openflow消息中都只包含一條流規(guī)則,此時(shí)我們用本方法對(duì)5條流規(guī)則進(jìn)行兩兩等價(jià)判定。
[0028]假設(shè)每條規(guī)則中包含兩個(gè)匹配項(xiàng),每個(gè)匹配項(xiàng)的長(zhǎng)度為64bit:
[0029]1#流規(guī)則的匹配項(xiàng)數(shù)據(jù)部分:0x00000000000000001111111111111111,其中0x0000000000000000為第一個(gè)匹配項(xiàng)A,0x1111111111111111 為第二個(gè)匹配項(xiàng)B
[0030]2#流規(guī)則的匹配項(xiàng)數(shù)據(jù)部分:0x11111111111111110000000000000000,其中0x1111111111111111為第一個(gè)匹配項(xiàng)B,0x0000000000000000為第二個(gè)匹配項(xiàng)A初始隨機(jī)種子值:0xFFFFFFFF
[0031 ] 則對(duì)于1#流規(guī)則,求和過(guò)程如下:
[0032]OxFFFFFFFF+OxOOOOOOOO+OxOOOOOOOO+Oxll111111+0x11111111=OxFFFFFFFF對(duì)于2#流規(guī)則,求和如下:
[0033]0xFFFFFFFF+0xlI111111+0x111111I1+0x00000000+0x00000000=OxFFFFFFFF比較兩個(gè)和,都是OxFFFFFFFF,所以兩個(gè)流規(guī)則的匹配項(xiàng)是等價(jià)的。
【主權(quán)項(xiàng)】
1.一種openf 1W消息中流規(guī)則等價(jià)快速判定方法,其步驟為:SDN網(wǎng)絡(luò)中的openf low代理接收到來(lái)自一SDN控制器的Openf low消息后,將該Openf low消息與所有已收到會(huì)話的Openf I ow消息中包含的流規(guī)則進(jìn)行比較;如果均不一致,則為該Openf I ow消息創(chuàng)建一新的會(huì)話,并為該會(huì)話設(shè)一隨機(jī)初始種子值;如果與其中一個(gè)已收到會(huì)話的Openflow消息中包含的規(guī)則一致,貝1J判定該Openf low消息中流規(guī)則與該會(huì)話的Openf low消息中流規(guī)則等價(jià);其中,進(jìn)行比較的方法為:首先將該Op enf I ο w消息中流規(guī)則的匹配項(xiàng)和動(dòng)作項(xiàng)每Kb i t劃分一個(gè)單元,然后將該Openflow消息流規(guī)則劃分后的所有單元和一已收到會(huì)話i的隨機(jī)初始種子值進(jìn)行計(jì)算,結(jié)果記為a,該會(huì)話i的Openf low消息流規(guī)則劃分后的所有單元和該會(huì)話i的隨機(jī)初始種子值的計(jì)算結(jié)果記為b,如果a等于b,則判定兩條流規(guī)則等價(jià)。2.如權(quán)利要求1所述的方法,其特征在于,所述K的取值為32的整數(shù)倍。3.如權(quán)利要求1或2所述的方法,其特征在于,所述Kbi t的取值為32b i t。4.如權(quán)利要求1或2所述的方法,其特征在于,所述計(jì)算為求和計(jì)算。5.如權(quán)利要求1或2所述的方法,其特征在于,所述openflow代理為每一會(huì)話設(shè)定一定時(shí)器。6.如權(quán)利要求5所述的方法,其特征在于,所述openfI ow對(duì)該定時(shí)器設(shè)定時(shí)間內(nèi)收到的Openf low消息進(jìn)行流規(guī)則等價(jià)判定,根據(jù)判定結(jié)果對(duì)SDN網(wǎng)絡(luò)中多個(gè)控制器的Openf low消息進(jìn)行一致性裁決,然后根據(jù)裁決結(jié)果對(duì)收到的Openflow消息進(jìn)行轉(zhuǎn)發(fā)。
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種openflow消息中流規(guī)則等價(jià)快速判定方法。本方法為:SDN網(wǎng)絡(luò)中的代理接收到來(lái)自一Openflow消息后,將該消息與已收到會(huì)話消息中的流規(guī)則進(jìn)行比較;如果均不一致,則為該消息創(chuàng)建一新會(huì)話,并設(shè)一隨機(jī)初始種子值;如果與一已收到會(huì)話消息中包含的規(guī)則一致,則判定該消息中流規(guī)則與該會(huì)話消息中流規(guī)則等價(jià);其中,比較的方法為:首先將該消息中流規(guī)則的匹配項(xiàng)和動(dòng)作項(xiàng)每32bit劃分一個(gè)單元,然后將所有單元和一已收到會(huì)話i的隨機(jī)初始種子值進(jìn)行計(jì)算,結(jié)果記為a,該會(huì)話i的Openflow消息流規(guī)則劃分后的所有單元和該會(huì)話i的隨機(jī)初始種子值的計(jì)算結(jié)果記為b,如果a等于b,則判定兩條流規(guī)則等價(jià)。
【IPC分類(lèi)】H04L29/12, H04L12/24, H04L12/801, H04L29/08
【公開(kāi)號(hào)】CN105553689
【申請(qǐng)?zhí)枴緾N201510882758
【發(fā)明人】王利明, 姜帆, 荀浩, 馬多賀, 徐震
【申請(qǐng)人】中國(guó)科學(xué)院信息工程研究所
【公開(kāi)日】2016年5月4日
【申請(qǐng)日】2015年12月3日
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1