It1 (offset, length), t2 (offset, length),......tn(offset, length)};每份長度length不一定相等,份數(shù)n隨機確定,但不超過整個載荷的總長,offset為分割兀組的偏移量。
[0045]4)依據(jù)分割元組生成隨機化策略與還原策略;
[0046]a)所述元組生成方法為,依據(jù)載荷總長I選取n,n〈 = I,計算η個正整數(shù),使該正整數(shù)的和等于I。
[0047]5)將元組分割方式生成控制器協(xié)議,定義元數(shù)據(jù)結(jié)構(gòu),調(diào)用協(xié)議和元數(shù)據(jù)處理接口寫入控制器;
[0048]6)將隨機化策略和還原策略生成流表:
[0049]a)所述隨機化策略流表的執(zhí)行步驟包括:
[0050]1.按照分割元組的格式將對應偏移量的載荷數(shù)據(jù)寫入元數(shù)據(jù)結(jié)構(gòu)操作;
[0051]i1.刪除原有數(shù)據(jù)包中除了二層載荷之外的協(xié)議字段;
[0052]ii1.將元數(shù)據(jù)結(jié)構(gòu)中的內(nèi)容按照隨機化策略生成的順序?qū)懟財?shù)據(jù)包的二層載荷中,生成新的數(shù)據(jù)包并設置交換機標簽;隨機化標簽直接設置到新生成的數(shù)據(jù)包中。
[0053]b)所述還原策略流表的執(zhí)行步驟包括:
[0054]1.最后一跳的交換機按照隨機化策略生成的順序依據(jù)偏移量和長度將數(shù)據(jù)包中的內(nèi)容按照原數(shù)據(jù)包中元組的順序?qū)懭朐獢?shù)據(jù)結(jié)構(gòu)中;
[0055]i1.將元數(shù)據(jù)結(jié)構(gòu)中的內(nèi)容依次寫回數(shù)據(jù)包的二層負載中,生成原始數(shù)據(jù)包;
[0056]3.圖3是本發(fā)明的協(xié)議保護子系統(tǒng)中的保護策略更新模塊的具體流程:
[0057]I)判斷策略更新條件是否滿足,如果滿足則執(zhí)行更新模塊,否則繼續(xù)等待;
[0058]2)依據(jù)保護策略生成模塊的流程生成新的保護策略;
[0059]3)將新的保護策略轉(zhuǎn)化為流表并下發(fā);
[0060]4)刪除已有保護策略中的隨機化策略生成對應的流表;
[0061]5)控制器判斷數(shù)據(jù)包的網(wǎng)絡延遲是否滿足數(shù)據(jù)包延遲條件,如果滿足則進行下一步,否則等待;
[0062]a)所述數(shù)據(jù)包延遲條件用來保證所有經(jīng)過隨機化策略生成模塊處理的數(shù)據(jù)包均已經(jīng)通過交換網(wǎng)絡;
[0063]6)刪除已有保護策略中的還原策略對應的流表;
[0064]4.圖4是本發(fā)明的協(xié)議自動識別子系統(tǒng)的具體流程:
[0065]I)交換機判斷數(shù)據(jù)包是否帶有隨機化標簽,如果是則進行下一步,否則進入源地址判斷過程;所述源地址判斷過程為數(shù)據(jù)包不帶有隨機化標簽,則判斷源地址是否在傳輸列表中,如果在則執(zhí)行保護策略中的隨機化策略流表,并進入步驟6),否則丟棄數(shù)據(jù)包;其中,傳輸列表是由拓撲生成。
[0066]2)判斷數(shù)據(jù)包帶有的隨機化標簽是否匹配策略中的隨機化標簽,如果匹配則進行下一步,否則丟棄數(shù)據(jù)包;
[0067]3)交換機通過流表判斷數(shù)據(jù)包是否帶有正確的交換機標簽,如果是則進行下一步,否則丟棄數(shù)據(jù)包;
[0068]4)根據(jù)網(wǎng)絡拓撲判斷交換機是否連接目的主機,如果是則進行下一步,否則執(zhí)行保護策略中的隨機化策略流表,并進入步驟6);
[0069]5)執(zhí)行保護策略中的還原策略,并進入步驟6);
[0070]6)轉(zhuǎn)發(fā)數(shù)據(jù)包。
[0071]綜上所述,本發(fā)明的基于SDN技術的協(xié)議保護與自動識別方法與系統(tǒng)通過SDN控制平面與數(shù)據(jù)平面相分離的特性,實現(xiàn)協(xié)議的保護和傳輸,該方法能夠從一定程度上增加攻擊者被動攻擊的難度,從而限制攻擊者對于通信要素的收集,同時協(xié)議的變換能夠從一定程度上防止基于監(jiān)聽所發(fā)起的重放攻擊,另外,由于本方法通過流表能夠處理所有流經(jīng)交換機的數(shù)據(jù)包,因此不存在數(shù)據(jù)包進行控制器導致控制面飽和的情況,防止由于支持packet_in消息而導致的控制面飽和攻擊。
[0072]通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到本發(fā)明在SDN中的實現(xiàn)過程,以上實施例僅用以說明本發(fā)明的技術方案而非對其進行限制,本領域的普通技術人員可以對本發(fā)明的技術方案進行修改或者等同替換,而不脫離本發(fā)明的精神和范圍,本發(fā)明的保護范圍應以權利要求書所述為準。
【主權項】
1.一種基于SDN技術的通信數(shù)據(jù)保護方法,其步驟為: 1)網(wǎng)絡體系架構(gòu)中的控制器生成全局唯一的隨機化標簽,以及根據(jù)網(wǎng)絡拓撲為每個交換機生成上一跳交換機標簽; 2)控制器定義數(shù)據(jù)包分割元組,該分割元組包括偏移量和長度兩部分; 3)控制器根據(jù)分割元組生成隨機化策略與還原策略,并且創(chuàng)建元數(shù)據(jù)結(jié)構(gòu),然后將生成的隨機化策略與還原策略以流表的方式發(fā)送到網(wǎng)絡體系架構(gòu)的交換機;其中,每一隨機化策略和還原策略中均包含一隨機化標簽; 4)交換機檢測收到的數(shù)據(jù)包是否帶有隨機化標簽,如果是則進行步驟5);否則進入源地址判斷過程:判斷該數(shù)據(jù)包源地址是否在傳輸列表中,如果在則執(zhí)行隨機化策略流表,新生成的數(shù)據(jù)包并將其轉(zhuǎn)發(fā)給下一跳交換機,否則丟棄該數(shù)據(jù)包;其中,新生成的該數(shù)據(jù)包中設置有所述隨機化標簽和交換機標簽; 5)判斷該數(shù)據(jù)包帶有的隨機化標簽是否匹配隨機化策略中的隨機化標簽,如果匹配則進行步驟6),否則丟棄該數(shù)據(jù)包; 6)交換機判斷該數(shù)據(jù)包的交換機標簽是否正確,如果正確則進行7),否則丟棄該數(shù)據(jù)包; 7)交換機根據(jù)網(wǎng)絡拓撲判斷其是否連接目的主機,如果是則進行8),否則執(zhí)行隨機化策略流表,然后將新生成的數(shù)據(jù)包轉(zhuǎn)發(fā)給下一跳交換機; 8)執(zhí)行保護策略中的還原策略流表,然后將還原后的數(shù)據(jù)發(fā)送給目的主機。2.如權利要求1所述的方法,其特征在于,所述隨機化策略為:將數(shù)據(jù)包中除以太網(wǎng)地址字段和網(wǎng)絡類型字段頭之外的二層載荷按照偏移量和長度進行切分,對切分后的載荷進行隨機化處理。3.如權利要求2所述的方法,其特征在于,所述隨機化處理的方法包括將切分后的載荷本身按照置亂策略進行置亂,同時用隨機位串插入的方法進行載荷偏移量修正。4.如權利要求3所述的方法,其特征在于,所述還原策略為:將隨機化策略處理后的除以太網(wǎng)地址字段和網(wǎng)絡類型字段頭之外的二層載荷按照原有偏移量和長度進行還原。5.如權利要求4所述的方法,其特征在于,將二層載荷按照原有偏移量和長度進行還原的方法為:a) 二層載荷的還原:通過交換機中元數(shù)據(jù)結(jié)構(gòu)保存載荷數(shù)據(jù),再依據(jù)所述置亂策略將正確的分段寫入數(shù)據(jù)包二層載荷中;b)隨機位串的還原:依據(jù)所述隨機位串插入的方法按位將隨機位串從原有載荷中刪除,進行數(shù)據(jù)還原。6.如權利要求1或2所述的方法,其特征在于,交換機執(zhí)行隨機化策略流表的方法為: 61)按照分割元組的格式將對應偏移量的載荷數(shù)據(jù)寫入元數(shù)據(jù)結(jié)構(gòu); 62)刪除數(shù)據(jù)包中除了二層載荷之外的協(xié)議字段; 63)將元數(shù)據(jù)結(jié)構(gòu)中的內(nèi)容按照隨機化策略生成的順序?qū)懟財?shù)據(jù)包的二層載荷中,生成新的數(shù)據(jù)包并設置隨機化標簽和交換機標簽。7.如權利要求1或2所述的方法,其特征在于,交換機執(zhí)行還原策略流表的方法為: 71)交換機按照隨機化策略生成的順序依據(jù)偏移量和長度將數(shù)據(jù)包中的內(nèi)容按照原數(shù)據(jù)包分割元組的順序?qū)懭朐獢?shù)據(jù)結(jié)構(gòu)中; 72)刪除原數(shù)據(jù)包中除了二層載荷之外的協(xié)議字段; 73)將元數(shù)據(jù)結(jié)構(gòu)中的內(nèi)容依次寫回數(shù)據(jù)包的二層載荷中,生成原始數(shù)據(jù)包。8.如權利要求1所述的方法,其特征在于,所述分割元組格式為tuple= {t! (offset, Iength), t2 (offset, length),......tn (offset, length)};其中,length為分割元組的長度,offset為分割元組的偏移量,η為分割元組的份數(shù)。9.如權利要求1所述的方法,其特征在于,所述控制器設置一策略更新條件,控制器定期判斷策略更新條件是否滿足,如果滿足則執(zhí)行更新模塊,更新隨機化策略與還原策略,然后將更新后的隨機化策略與還原策略以流表的方式發(fā)送到網(wǎng)絡體系架構(gòu)的交換機。10.如權利要求9所述的方法,其特征在于,所述策略更新條件為數(shù)據(jù)包的網(wǎng)絡延遲是否滿足設定的數(shù)據(jù)包延遲時間。
【專利摘要】本發(fā)明公開了一種基于SDN技術的通信數(shù)據(jù)保護方法。本方法為:1)控制器生成隨機化標簽和交換機標簽;2)控制器根據(jù)定義的分割元組生成隨機化策略與還原策略,并將其以流表的方式發(fā)送到交換機;3)交換機檢測數(shù)據(jù)包是否帶有隨機化標簽,如果是則進行步驟4);否則進入源地址判斷過程:判斷該數(shù)據(jù)包源地址是否在傳輸列表中,如果在則執(zhí)行隨機化策略流表,新生成的數(shù)據(jù)包并將其轉(zhuǎn)發(fā)給下一跳交換機;4)判斷該數(shù)據(jù)包帶有的隨機化標簽是否匹配隨機化標簽,如果匹配則判斷該數(shù)據(jù)包的交換機標簽是否正確,如果正確則根據(jù)網(wǎng)絡拓撲判斷其是否連接目的主機,如果是則執(zhí)行還原策略流表,然后將還原數(shù)據(jù)發(fā)送給目的主機。本發(fā)明大大提高了通信安全性。
【IPC分類】H04L12/813, H04L29/06, H04L12/937
【公開號】CN105207950
【申請?zhí)枴緾N201510590699
【發(fā)明人】宋晨, 楊倩, 王利明, 徐震, 姜帆, 黎海燕, 荀浩
【申請人】中國科學院信息工程研究所
【公開日】2015年12月30日
【申請日】2015年9月16日