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

一種低開銷的覆蓋網(wǎng)安全組播方法

文檔序號(hào):7804551閱讀:151來源:國(guó)知局
一種低開銷的覆蓋網(wǎng)安全組播方法
【專利摘要】本發(fā)明公開了一種低開銷的覆蓋網(wǎng)安全組播方法,它涉及數(shù)據(jù)通信【技術(shù)領(lǐng)域】,特別是用于覆蓋網(wǎng)的數(shù)據(jù)安全高效傳輸。采用自底向上的分層分簇策略構(gòu)造組播樹,通過裁剪簇首的子節(jié)點(diǎn)數(shù),使得所有節(jié)點(diǎn)維護(hù)拓?fù)潢P(guān)系的控制算法復(fù)雜度為常量,保證節(jié)點(diǎn)開銷不隨組規(guī)模增大而加重;簇內(nèi)采用自平衡二叉樹算法,構(gòu)建組播分發(fā)路徑,保證系統(tǒng)穩(wěn)定性的同時(shí)減少數(shù)據(jù)延時(shí);數(shù)據(jù)分發(fā)時(shí)采用區(qū)分密鑰策略,第0層節(jié)點(diǎn)和非第0層節(jié)點(diǎn)采用不同的密鑰策略,對(duì)數(shù)據(jù)進(jìn)行加密傳輸,提供數(shù)據(jù)安全性。
【專利說明】—種低開銷的覆蓋網(wǎng)安全組播方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明公開了一種低開銷的覆蓋網(wǎng)安全組播方法,它涉及數(shù)據(jù)通信【技術(shù)領(lǐng)域】,特別是用于覆蓋網(wǎng)的數(shù)據(jù)安全傳輸方法。通過子節(jié)點(diǎn)的重加入,減少節(jié)點(diǎn)轉(zhuǎn)發(fā)開銷,采用區(qū)分密鑰策略,在保證效率的前提下,提高數(shù)據(jù)的安全性。
【背景技術(shù)】
[0002]目前Internet覆蓋網(wǎng)中的組播應(yīng)用不同程度地要求數(shù)據(jù)的可靠傳輸,如視頻會(huì)議、網(wǎng)絡(luò)游戲、交互式仿真??煽拷M播正是針對(duì)不同的應(yīng)用實(shí)現(xiàn)不同程度、不同要求的數(shù)據(jù)可靠傳輸,沒有可靠性保障的組播通信將無(wú)法在Internet中普及應(yīng)用。以往可靠組播的研究都是針對(duì)IP組播,而IP組播本身由于技術(shù)和非技術(shù)因素目前仍無(wú)法普及,這就導(dǎo)致基于IP層的可靠組播的應(yīng)用存在很多局限性。
[0003]應(yīng)用層組播技術(shù)因其不需要路由器的支持、無(wú)需改變?cè)芯W(wǎng)絡(luò)的體系結(jié)構(gòu)等特征所表現(xiàn)出的靈活性而被廣泛應(yīng)用。然而節(jié)點(diǎn)可自由退出組播樹,在節(jié)點(diǎn)失效或退出后其子節(jié)點(diǎn)的組播連接被迫中斷。因此,如何減少節(jié)點(diǎn)退出后帶來的傳輸中斷,是應(yīng)用層組播樹穩(wěn)定性的主要問題。
[0004]目前應(yīng)用最廣的NICE協(xié)議主要采取了層次化的節(jié)點(diǎn)集群思想。它可以支持大量不同的數(shù)據(jù)轉(zhuǎn)發(fā)樹,有較強(qiáng)的可擴(kuò)展性。在NICE協(xié)議中,假設(shè)k為簇大小,N為節(jié)點(diǎn)個(gè)數(shù),節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)復(fù)雜度為k -O(1gkN),隨N的增加而增長(zhǎng),當(dāng)N比較大時(shí),節(jié)點(diǎn)轉(zhuǎn)發(fā)復(fù)雜度很大,對(duì)節(jié)點(diǎn)能力造成很大的負(fù)擔(dān),可能導(dǎo)致節(jié)點(diǎn)異常,影響整個(gè)組播性能。
[0005]其次,NICE協(xié)議沒有考慮數(shù)據(jù)的安全傳輸,在計(jì)費(fèi)視頻、行業(yè)內(nèi)部數(shù)據(jù)共享、保護(hù)用戶隱私上,存在嚴(yán)重缺陷。

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

[0006]本發(fā)明所要解決的技術(shù)問題是提供一種低節(jié)點(diǎn)開銷的覆蓋網(wǎng)安全組播方法。
[0007]本發(fā)明所采用的技術(shù)方案是:一種低開銷的覆蓋網(wǎng)安全組播方法,其基于由組播管理服務(wù)器,密鑰服務(wù)器,以及多個(gè)節(jié)點(diǎn)組成的網(wǎng)絡(luò)架構(gòu),包括以下步驟:
[0008]步驟1:系統(tǒng)啟動(dòng)時(shí),組播管理服務(wù)器端探測(cè)當(dāng)前網(wǎng)絡(luò)中存在的所有存活的節(jié)點(diǎn)信息,并構(gòu)造一個(gè)全局控制網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。組播管理服務(wù)器端采用自底向上的分層分簇策略構(gòu)造組播樹,通過裁剪簇首的子節(jié)點(diǎn)數(shù),使得所有節(jié)點(diǎn)的維護(hù)控制拓?fù)涞膹?fù)雜度為常量,從而保證節(jié)點(diǎn)開銷不隨組規(guī)模增大而加重。組播管理服務(wù)器端負(fù)責(zé)控制節(jié)點(diǎn)的加入和退出,節(jié)點(diǎn)加入后和節(jié)點(diǎn)退出前的行為通過節(jié)點(diǎn)的客戶端由其父節(jié)點(diǎn)負(fù)責(zé),以減輕組播管理服務(wù)器的開銷;節(jié)點(diǎn)的客戶端通過統(tǒng)一數(shù)據(jù)傳輸接口,完成數(shù)據(jù)的可靠傳輸。
[0009]步驟2:節(jié)點(diǎn)加入組播。待加入節(jié)點(diǎn)通過其客戶端向組播管理服務(wù)器發(fā)送加入請(qǐng)求,組播管理服務(wù)器端將頂層節(jié)點(diǎn)地址反饋給待加入節(jié)點(diǎn)的客戶端;待加入節(jié)點(diǎn)向頂層節(jié)點(diǎn)發(fā)送加入請(qǐng)求,并計(jì)算與頂層節(jié)點(diǎn)及頂層節(jié)點(diǎn)的子節(jié)點(diǎn)之間的往返時(shí)延;待加入節(jié)點(diǎn)繼續(xù)向往返延遲最小的節(jié)點(diǎn)發(fā)送加入請(qǐng)求,直到往返延遲最小的節(jié)點(diǎn)就是請(qǐng)求加入節(jié)點(diǎn)本身,或者往返延遲最小的節(jié)點(diǎn)是葉子節(jié)點(diǎn),這時(shí)該節(jié)點(diǎn)就作為待加入節(jié)點(diǎn)的父節(jié)點(diǎn)。
[0010]步驟3:節(jié)點(diǎn)退出組播。節(jié)點(diǎn)退出組播分為主動(dòng)退出和異常退出。節(jié)點(diǎn)主動(dòng)退出時(shí),節(jié)點(diǎn)的客戶端向組播管理服務(wù)器發(fā)送退出組播請(qǐng)求,組播管理服務(wù)器端的組播路由重構(gòu)模塊重新構(gòu)造組播路由,并將更新后的組播路由分發(fā)給各節(jié)點(diǎn)。節(jié)點(diǎn)異常退出時(shí),是在節(jié)點(diǎn)異?;蛲ㄐ殴收蠒r(shí)發(fā)生,組播管理服務(wù)器端的心跳響應(yīng)模塊在3個(gè)心跳周期中都沒有接收到節(jié)點(diǎn)的心跳消息,則判斷該節(jié)點(diǎn)異常退出,組播管理服務(wù)器端的組播路由重構(gòu)模塊重新構(gòu)造組播路由,并將更新后的組播路由分發(fā)給各節(jié)點(diǎn)。
[0011]步驟4:構(gòu)建組播分發(fā)路徑。在所有參與組播的節(jié)點(diǎn)中選取一個(gè)節(jié)點(diǎn)作為組播分發(fā)源,以組播分發(fā)源為根節(jié)點(diǎn),簇首節(jié)點(diǎn)與簇成員節(jié)點(diǎn)之間根據(jù)父子關(guān)系,簇內(nèi)節(jié)點(diǎn)間根據(jù)自平衡二叉樹算法,構(gòu)建組播分發(fā)路徑。
[0012]步驟5:全局密鑰服務(wù)器端生成并發(fā)布全局的密鑰。數(shù)據(jù)分發(fā)時(shí)采用區(qū)分密鑰策略,第O層節(jié)點(diǎn)和非第O層節(jié)點(diǎn)采用不同的密鑰策略,對(duì)數(shù)據(jù)進(jìn)行加密傳輸,提供數(shù)據(jù)安全性。第O層節(jié)點(diǎn)間采用點(diǎn)對(duì)點(diǎn)密鑰方式,非第O層節(jié)點(diǎn)采用全局密鑰方式。在組播分發(fā)路徑上屬于父子關(guān)系的第O層節(jié)點(diǎn),相互之間通過握手方式確定點(diǎn)對(duì)點(diǎn)密鑰;非第O層節(jié)點(diǎn),采用全局密鑰服務(wù)器端廣播全局統(tǒng)一密鑰。
[0013]步驟6:非第O層節(jié)點(diǎn)間的數(shù)據(jù)分發(fā)。組播分發(fā)源節(jié)點(diǎn)客戶端的數(shù)據(jù)接收模塊,監(jiān)測(cè)到需要分發(fā)數(shù)據(jù),數(shù)據(jù)加密模塊調(diào)用密鑰管理模塊中的全局統(tǒng)一密鑰,對(duì)分發(fā)數(shù)據(jù)進(jìn)行加密,數(shù)據(jù)轉(zhuǎn)發(fā)模塊查找本地路由管理模塊中的下一跳節(jié)點(diǎn),將加密后的數(shù)據(jù)分發(fā)給下一跳節(jié)點(diǎn)。
[0014]步驟7:非第O層節(jié)點(diǎn)與第O層節(jié)點(diǎn)間的數(shù)據(jù)分發(fā)。第O層節(jié)點(diǎn)的簇首節(jié)點(diǎn)的組播接收模塊,接收到上一跳發(fā)來的分發(fā)數(shù)據(jù),數(shù)據(jù)解密模塊調(diào)用密鑰管理模塊中的全局統(tǒng)一密鑰,對(duì)分發(fā)數(shù)據(jù)進(jìn)行解密,并將解密后的數(shù)據(jù)存儲(chǔ)在本地。數(shù)據(jù)轉(zhuǎn)發(fā)模塊查找本地路由管理模塊中的下一跳節(jié)點(diǎn),數(shù)據(jù)加密模塊從密鑰管理模塊中獲取與下一跳節(jié)點(diǎn)之間的點(diǎn)對(duì)點(diǎn)密鑰,對(duì)分發(fā)數(shù)據(jù)進(jìn)行加密,將加密后的數(shù)據(jù)分發(fā)給下一跳節(jié)點(diǎn)。
[0015]步驟8:第O層節(jié)點(diǎn)間的數(shù)據(jù)分發(fā)。簇內(nèi)節(jié)點(diǎn)的組播接收模塊,接收到來自上一跳的分發(fā)數(shù)據(jù),數(shù)據(jù)解密模塊從密鑰管理模塊中獲取與上一跳節(jié)點(diǎn)之間的點(diǎn)對(duì)點(diǎn)密鑰,對(duì)分發(fā)數(shù)據(jù)進(jìn)行解密,并將解密后的數(shù)據(jù)存儲(chǔ)在本地。數(shù)據(jù)轉(zhuǎn)發(fā)模塊查找本地路由管理模塊中的下一跳節(jié)點(diǎn),數(shù)據(jù)加密模塊從密鑰管理模塊中獲取與下一跳節(jié)點(diǎn)之間的點(diǎn)對(duì)點(diǎn)密鑰,對(duì)分發(fā)數(shù)據(jù)進(jìn)行加密,將加密后的數(shù)據(jù)分發(fā)給下一跳節(jié)點(diǎn)。
[0016]本發(fā)明與現(xiàn)有技術(shù)相比,具有如下其顯著特點(diǎn):
[0017](I)提出降低節(jié)點(diǎn)維護(hù)開銷的復(fù)雜度方法:通過重新分配簇首節(jié)點(diǎn)的低級(jí)子節(jié)點(diǎn),從而保證簇首節(jié)點(diǎn)的維護(hù)開銷復(fù)雜度為一個(gè)常數(shù)。
[0018](2)簇內(nèi)部數(shù)據(jù)分發(fā)時(shí),采用自平衡二叉樹算法來構(gòu)建分發(fā)路徑,提高數(shù)據(jù)分發(fā)效率。
[0019](3)在數(shù)據(jù)分發(fā)時(shí)加入安全機(jī)制,極大提高數(shù)據(jù)安全:簇首節(jié)點(diǎn)間采用全局統(tǒng)一密鑰機(jī)制,非簇首節(jié)點(diǎn)內(nèi)部采用點(diǎn)對(duì)點(diǎn)密鑰機(jī)制,在保障安全的前提下,提高系統(tǒng)穩(wěn)定性。
[0020]該發(fā)明適合大規(guī)模組播應(yīng)用,采用分層分簇管理策略,通過子節(jié)點(diǎn)的重加入,減少節(jié)點(diǎn)的數(shù)據(jù)轉(zhuǎn)發(fā)負(fù)載,提高組播樹穩(wěn)定性;采用自平衡二叉查找樹——紅黑樹算法,提高簇內(nèi)節(jié)點(diǎn)的數(shù)據(jù)分發(fā)效率;采用區(qū)分的加密方案,在盡量不影響效率的前提下,提高數(shù)據(jù)傳輸?shù)陌踩浴?br> [0021]隨著行業(yè)領(lǐng)域中文件分發(fā)和流媒體傳輸需求日益增強(qiáng),采用無(wú)需更改網(wǎng)絡(luò)結(jié)構(gòu)的覆蓋層組播技術(shù)進(jìn)行安全可靠的數(shù)據(jù)傳輸有著迫切需求,本發(fā)明具有廣泛的應(yīng)用前景。
【專利附圖】

【附圖說明】
[0022]圖1是本發(fā)明的組播管理服務(wù)器端模塊結(jié)構(gòu)圖。
[0023]圖2是本發(fā)明的組播密鑰服務(wù)器端模塊結(jié)構(gòu)圖。
[0024]圖3是本發(fā)明的組播客戶端模塊結(jié)構(gòu)圖。
[0025]圖4是本發(fā)明的覆蓋網(wǎng)節(jié)點(diǎn)分層分簇的控制拓?fù)渖蛇^程圖之一。
[0026]圖5是本發(fā)明的覆蓋網(wǎng)節(jié)點(diǎn)分層分簇的控制拓?fù)渖蛇^程圖之二。
[0027]圖6是本發(fā)明的覆蓋網(wǎng)節(jié)點(diǎn)分層分簇的控制拓?fù)渖蛇^程圖之三。
[0028]圖7是本發(fā)明的覆蓋網(wǎng)節(jié)點(diǎn)數(shù)據(jù)分發(fā)示意圖之一。
[0029]圖8是本發(fā)明的覆蓋網(wǎng)節(jié)點(diǎn)數(shù)據(jù)分發(fā)示意圖之二。
[0030]圖9是本發(fā)明的覆蓋網(wǎng)節(jié)點(diǎn)數(shù)據(jù)分發(fā)示意圖之三。
[0031]圖10是本發(fā)明的分層分簇組播拓?fù)浣Y(jié)構(gòu)圖。
[0032]圖11是本發(fā)明的組播樹構(gòu)造流程圖。
[0033]圖12是本發(fā)明的組播路由優(yōu)化流程圖。
[0034]圖13是本發(fā)明的組播路由安全密鑰流程圖。
[0035]圖14是本發(fā)明的狀態(tài)反饋模塊流程圖。
[0036]圖15是本發(fā)明的仿真效果比較圖。
【具體實(shí)施方式】
[0037]本發(fā)明采用分層分簇的組播樹構(gòu)建方法,通過釋放簇首節(jié)點(diǎn)的子節(jié)點(diǎn)開銷,采用數(shù)據(jù)區(qū)分加密傳輸方式,保證數(shù)據(jù)安全傳輸?shù)耐瑫r(shí)提高系統(tǒng)的健壯性。本系統(tǒng)從部署上來劃分,可以分為組播管理服務(wù)器,密鑰管理服務(wù)器以及客戶端;從功能上來劃分,可以分為組播管理模塊,數(shù)據(jù)分發(fā)模塊,密鑰管理模塊。其基本原理如下:采用自底向上的分層分簇策略構(gòu)造組播樹,通過裁剪簇首的子節(jié)點(diǎn)數(shù),使得所有節(jié)點(diǎn)的維護(hù)控制拓?fù)涞膹?fù)雜度為常量,保證節(jié)點(diǎn)開銷不隨組規(guī)模增大而加重;簇內(nèi)采用自平衡二叉樹算法,構(gòu)建組播分發(fā)路徑,保證系統(tǒng)穩(wěn)定性同時(shí)減少數(shù)據(jù)延時(shí);數(shù)據(jù)分發(fā)時(shí)采用區(qū)分密鑰策略,第O層節(jié)點(diǎn)和非第O層節(jié)點(diǎn)采用不同的密鑰策略,對(duì)數(shù)據(jù)進(jìn)行加密傳輸,提供數(shù)據(jù)安全性。
[0038]本發(fā)明的基本方法是:初始化時(shí),所有節(jié)點(diǎn)都位于第O層,將第O層節(jié)點(diǎn)劃分成大小為k的簇,在每一個(gè)簇中選取簇首節(jié)點(diǎn),形成第I層的成員;然后將第I層節(jié)點(diǎn)劃分成大小為k的簇,在每一個(gè)簇中選取簇首節(jié)點(diǎn),形成第2層的成員,同時(shí)將第2層成員的子節(jié)點(diǎn)中非第I層成員的節(jié)點(diǎn)轉(zhuǎn)移到第I層的子節(jié)點(diǎn)下;依次類推,將第i_l層節(jié)點(diǎn)劃分成大小為k的簇,在每個(gè)簇中選取簇首節(jié)點(diǎn),形成第i層的成員,同時(shí)將第i層成員的子節(jié)點(diǎn)中非第1-1層成員的節(jié)點(diǎn)轉(zhuǎn)移到第i_l層的子節(jié)點(diǎn)下,直到頂層為I個(gè)節(jié)點(diǎn),這樣就形成了節(jié)點(diǎn)最大復(fù)雜度為k的組播拓?fù)浣Y(jié)構(gòu)。在簇內(nèi),采用自平衡二叉樹算法,構(gòu)成粗內(nèi)節(jié)點(diǎn)的數(shù)據(jù)拓?fù)浣Y(jié)構(gòu),在保證時(shí)效性的同時(shí)控制節(jié)點(diǎn)的開銷。針對(duì)第O層節(jié)點(diǎn)的動(dòng)態(tài)性較大(如頻繁加入退出,低性能導(dǎo)致異常死機(jī)),而簇首節(jié)點(diǎn)穩(wěn)定性較強(qiáng),采用區(qū)分密鑰策略對(duì)數(shù)據(jù)傳輸進(jìn)行加密,在非第O層簇內(nèi)數(shù)據(jù)分發(fā)時(shí),采用統(tǒng)一全局密鑰管理策略,在第O層的簇內(nèi)節(jié)點(diǎn)數(shù)據(jù)分發(fā)時(shí),采用點(diǎn)到點(diǎn)密鑰管理策略。根據(jù)這種方法,在大規(guī)模節(jié)點(diǎn)管理時(shí),控制拓?fù)鋸?fù)雜度是一個(gè)常量k,不受規(guī)模影響;采用自平衡二叉樹一紅黑樹算法能降低樹的深度,其復(fù)雜度為logk,k為簇大小,這種分法方法有效減少數(shù)據(jù)轉(zhuǎn)發(fā)延時(shí);采用區(qū)分密鑰策略,在保證數(shù)據(jù)安全性的同時(shí)盡量減少對(duì)效率的影響,這種設(shè)計(jì)方案在同類產(chǎn)品中處于國(guó)內(nèi)領(lǐng)先水平。
[0039]本發(fā)明的技術(shù)方案主要分為以下三步:
[0040]步驟1、在分層分簇的組播分發(fā)拓?fù)浣Y(jié)構(gòu)中,高層節(jié)點(diǎn)擔(dān)負(fù)著轉(zhuǎn)發(fā)數(shù)據(jù)的任務(wù),因此高層節(jié)點(diǎn)的轉(zhuǎn)發(fā)復(fù)雜度,直接影響到底層節(jié)點(diǎn)接收數(shù)據(jù)的延時(shí),復(fù)雜度越高延時(shí)越大。本發(fā)明通過負(fù)載平衡方法,轉(zhuǎn)移高層節(jié)點(diǎn)的子節(jié)點(diǎn)數(shù),保證高層節(jié)點(diǎn)的轉(zhuǎn)發(fā)復(fù)雜度為常量,減少高層節(jié)點(diǎn)間轉(zhuǎn)發(fā)數(shù)據(jù)延時(shí),提高數(shù)據(jù)分發(fā)效率。
[0041]步驟2、構(gòu)建簇內(nèi)數(shù)據(jù)分發(fā)路由時(shí),采用紅黑樹算法構(gòu)造組播分發(fā)樹,紅黑樹算法是一種自平衡二叉查找樹,針對(duì)大小為k的簇,其復(fù)雜度為1gk為常量。采用平衡二叉樹算法能有效降低簇內(nèi)分發(fā)樹的高度,平衡簇內(nèi)部成員的轉(zhuǎn)發(fā)負(fù)載,有效縮短簇內(nèi)部數(shù)據(jù)分發(fā)的延時(shí)。
[0042]步驟3、采用區(qū)分密鑰策略對(duì)數(shù)據(jù)進(jìn)行加密傳輸。通過自下而上的組播樹構(gòu)造策略得到的組播拓?fù)浣Y(jié)構(gòu),可以得到以下結(jié)論:第O層節(jié)點(diǎn)性能較低動(dòng)態(tài)性較強(qiáng),而第I層及以上層的節(jié)點(diǎn)性能較高穩(wěn)定性較高。本發(fā)明采用數(shù)據(jù)加密算法(Data EncryptionAlgorithm, DEA)這一對(duì)稱算法對(duì)數(shù)據(jù)進(jìn)行加密,針對(duì)密鑰管理策略常用的方法有兩種:一是全局統(tǒng)一密鑰策略,即所有節(jié)點(diǎn)通過相同的全局密鑰來加密解密數(shù)據(jù);二是點(diǎn)到點(diǎn)密鑰策略,即兩節(jié)點(diǎn)間的密鑰由這兩個(gè)節(jié)點(diǎn)來生成,不同節(jié)點(diǎn)間的密鑰不相同。方法一的優(yōu)點(diǎn)是轉(zhuǎn)發(fā)節(jié)點(diǎn)直接轉(zhuǎn)發(fā)加密數(shù)據(jù)即可,轉(zhuǎn)發(fā)效率和非加密數(shù)據(jù)是等效的,缺點(diǎn)是節(jié)點(diǎn)動(dòng)態(tài)加入退出操作頻繁時(shí),需要在全部節(jié)點(diǎn)中更新密鑰,增加控制開銷。方法二的優(yōu)點(diǎn)是節(jié)點(diǎn)的動(dòng)態(tài)加入退出只需要重新生成其與父節(jié)點(diǎn)、子節(jié)點(diǎn)的密鑰,不會(huì)影響全局密鑰,缺點(diǎn)是每個(gè)節(jié)點(diǎn)接受到數(shù)據(jù)后,都需要先解密,然后通過與下一跳節(jié)點(diǎn)的協(xié)商密鑰加密再傳輸給下一跳,極大地增加了節(jié)點(diǎn)的轉(zhuǎn)發(fā)開銷。因此本發(fā)明采用區(qū)分密鑰策略,在穩(wěn)定性較強(qiáng)的非O層節(jié)點(diǎn)采用全局統(tǒng)一密鑰,在穩(wěn)定性較差的第O層節(jié)點(diǎn)采用點(diǎn)到點(diǎn)密鑰。通過分析可知,假設(shè)
N為節(jié)點(diǎn)數(shù),k為簇大小,則采用全局同一密鑰的節(jié)點(diǎn)數(shù)為;,采用點(diǎn)到點(diǎn)密鑰的節(jié)點(diǎn)數(shù)為
AT。簇首節(jié)點(diǎn)的動(dòng)態(tài)性導(dǎo)致控制開銷復(fù)雜度為\第O層節(jié)點(diǎn)的動(dòng)態(tài)性導(dǎo)致的開銷復(fù) k k
雜度為I。這種方法在保證數(shù)據(jù)安全的前提下,極大降低了由于安全機(jī)制帶來的開銷。
[0043]下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步詳細(xì)描述。
[0044]本發(fā)明為實(shí)現(xiàn)覆蓋網(wǎng)數(shù)據(jù)的高效安全組播,基于NICE協(xié)議框架,在組播構(gòu)建時(shí)采用均衡負(fù)載機(jī)制,簇內(nèi)節(jié)點(diǎn)采用紅黑樹算法得到一個(gè)平衡二叉樹的分發(fā)路徑,采用區(qū)分密鑰策略加密數(shù)據(jù)。組播管理服務(wù)器、組播密鑰服務(wù)器及客戶端層次分明,各自功能明確,組播管理服務(wù)器是整個(gè)系統(tǒng)的核心,負(fù)責(zé)節(jié)點(diǎn)的加入退出以及組播路由的構(gòu)建,組播密鑰服務(wù)器負(fù)責(zé)全局密鑰的生成以及分發(fā),客戶端負(fù)責(zé)數(shù)據(jù)的轉(zhuǎn)發(fā)及接收。
[0045]本發(fā)明的一種低開銷的覆蓋網(wǎng)安全組播方法基于組播管理服務(wù)器、組播密鑰服務(wù)器及多個(gè)節(jié)點(diǎn)組成的架構(gòu)。組播管理服務(wù)器上安裝組播構(gòu)造軟件,負(fù)責(zé)路由構(gòu)建、路由重構(gòu)、路由分發(fā)、界面響應(yīng)、可信節(jié)點(diǎn)驗(yàn)證等,簡(jiǎn)稱組播管理服務(wù)器端。組播密鑰服務(wù)器上安裝密鑰生成與分發(fā)軟件,負(fù)責(zé)全局密鑰管理與全局密鑰分發(fā),簡(jiǎn)稱組播密鑰服務(wù)器端。多個(gè)節(jié)點(diǎn)上均安裝組播節(jié)點(diǎn)接收軟件,負(fù)責(zé)本地的組播路由與數(shù)據(jù)分發(fā),簡(jiǎn)稱組播客戶端。
[0046]結(jié)合圖1,本發(fā)明的組播管理服務(wù)器端模塊結(jié)構(gòu)圖。組播管理服務(wù)器端包括有組播路由構(gòu)建模塊、組播路由重構(gòu)模塊、路由分發(fā)模塊、界面響應(yīng)模塊、可信節(jié)點(diǎn)驗(yàn)證模塊以及守候進(jìn)程模塊組成,其中守候進(jìn)程模塊又分為加入響應(yīng)模塊、退出響應(yīng)模塊、心跳響應(yīng)模塊和成員注冊(cè)響應(yīng)模塊。
[0047]組播管理服務(wù)器端,采用自底而上分層分簇的組播構(gòu)造技術(shù),通過拆分低層子節(jié)點(diǎn),維護(hù)一個(gè)低開銷的簇首節(jié)點(diǎn)。
[0048]組播管理服務(wù)器端可以通過在標(biāo)準(zhǔn)C平臺(tái)上實(shí)現(xiàn),并部署運(yùn)行在組播管理服務(wù)器上,通過Internet來響應(yīng)節(jié)點(diǎn)的行為,在組播管理服務(wù)器上構(gòu)造一個(gè)全局控制網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。所述的標(biāo)準(zhǔn)C平臺(tái),通過少量庫(kù)包的修改及編譯,可適應(yīng)多種平臺(tái)(如Windows,UNIX,麒麟,ARM)的應(yīng)用。另外,由于C平臺(tái)天生的接近底層開發(fā),可以將開發(fā)平臺(tái)的處理時(shí)延降到最低。
[0049]組播管理服務(wù)器端的組播路由構(gòu)建模塊和組播路由重構(gòu)模塊,負(fù)責(zé)構(gòu)建和優(yōu)化組播拓?fù)浣Y(jié)構(gòu)。
[0050]組播路由構(gòu)建模塊,用于根據(jù)分層分簇低開銷策略,以探測(cè)到的節(jié)點(diǎn)距離為依據(jù),對(duì)節(jié)點(diǎn)進(jìn)行分簇,最后達(dá)到分層分簇的節(jié)點(diǎn)拓?fù)浣Y(jié)構(gòu)圖。
[0051]組播路由重構(gòu)模塊,用于監(jiān)測(cè)分層分簇的組播拓?fù)渲?,?duì)異常的父-子-孫鏈路進(jìn)行優(yōu)化,提高數(shù)據(jù)的分發(fā)效率。
[0052]路由分發(fā)模塊,用于將路由構(gòu)造模塊和路由重構(gòu)模塊生成好的路由信息,分發(fā)給各成員節(jié)點(diǎn)。
[0053]界面響應(yīng)模塊,用于解析用戶輸入的命令,以及將系統(tǒng)信息輸出到控制臺(tái),負(fù)責(zé)與用戶交互界面的操作。
[0054]可信節(jié)點(diǎn)驗(yàn)證模塊,用于驗(yàn)證節(jié)點(diǎn)的MAC地址、IP地址、用戶名、密碼是否滿足可信任節(jié)點(diǎn)的約束策略。
[0055]守候進(jìn)程模塊是負(fù)責(zé)客戶端的操作響應(yīng)。其中:加入響應(yīng)模塊,用于響應(yīng)節(jié)點(diǎn)的加入請(qǐng)求,并發(fā)出反饋消息。退出響應(yīng)模塊,用于響應(yīng)節(jié)點(diǎn)的推出請(qǐng)求,并發(fā)出反饋消息。
[0056]心跳響應(yīng)模塊,用于響應(yīng)節(jié)點(diǎn)心跳消息,并發(fā)出反饋消息。成員注冊(cè)響應(yīng)模塊,用于解析節(jié)點(diǎn)注冊(cè)消息,通過可信節(jié)點(diǎn)驗(yàn)證模塊認(rèn)證后,反饋?zhàn)?cè)成功消息,否則,反饋?zhàn)?cè)失敗消息。
[0057]結(jié)合圖2,本發(fā)明的組播密鑰服務(wù)器端模塊結(jié)構(gòu)圖。組播密鑰服務(wù)器端包括有全局密鑰管理模塊和全局密鑰分發(fā)模塊組成。全局密鑰服務(wù)器端用來生成并發(fā)布全局的密鑰,在節(jié)點(diǎn)加入時(shí),廣播新的密鑰,更新全局密鑰。數(shù)據(jù)源所在服務(wù)器,先通過全局密鑰服務(wù)器的密鑰來生成加密數(shù)據(jù),然后轉(zhuǎn)發(fā)加密數(shù)據(jù)到下一跳節(jié)點(diǎn)。
[0058]全局密鑰管理模塊,用于生成DES (Data Encryption Standard,數(shù)據(jù)加密標(biāo)準(zhǔn))所需要的64比特的密文,并通過系統(tǒng)自帶的密文進(jìn)行加密,形成全局密文。
[0059]全局密鑰分發(fā)模塊,用于將全局密鑰管理模塊生成好的密鑰,發(fā)送給組播成員節(jié)點(diǎn)。[0060]結(jié)合圖3,本發(fā)明的組播客戶端模塊結(jié)構(gòu)圖。組播客戶端分為組播管理模塊和數(shù)據(jù)分發(fā)模塊。
[0061]組播管理模塊又分為節(jié)點(diǎn)心跳模塊、節(jié)點(diǎn)加入模塊、節(jié)點(diǎn)退出模塊、界面響應(yīng)模塊、本地路由管理模塊和異常處理模塊。節(jié)點(diǎn)心跳模塊負(fù)責(zé)簇內(nèi)節(jié)點(diǎn)間周期的心跳測(cè)量,客戶端每隔一個(gè)心跳周期,就向父節(jié)點(diǎn)報(bào)告節(jié)點(diǎn)存活狀態(tài)。節(jié)點(diǎn)加入模塊和節(jié)點(diǎn)退出模塊負(fù)責(zé)向組播管理服務(wù)器上報(bào)節(jié)點(diǎn)狀態(tài),客戶端加入組播時(shí),向組播管理服務(wù)器發(fā)起節(jié)點(diǎn)加入請(qǐng)求;客戶端退出組播時(shí),向組播管理服務(wù)器發(fā)起節(jié)點(diǎn)退出請(qǐng)求。界面響應(yīng)模塊用于解析用戶輸入的命令,以及將系統(tǒng)信息輸出到控制臺(tái),其功能與組播管理服務(wù)器中的模塊功能相同,負(fù)責(zé)與用戶交互。本地節(jié)點(diǎn)路由管理模塊負(fù)責(zé)解析并存儲(chǔ)本簇的路由信息,其用于解析組播管理服務(wù)器發(fā)來的路由信息,對(duì)本地路由表的記錄進(jìn)行增加、刪除、修改操作。異常處理模塊負(fù)責(zé)管理組播節(jié)點(diǎn)的異常信息,并上報(bào)組播管理服務(wù)器。
[0062]數(shù)據(jù)分發(fā)模塊包括密鑰管理模塊、數(shù)據(jù)加密模塊、數(shù)據(jù)解密模塊、數(shù)據(jù)接收模塊、數(shù)據(jù)轉(zhuǎn)發(fā)模塊、任務(wù)狀態(tài)監(jiān)控模塊、數(shù)據(jù)調(diào)度模塊、緩沖區(qū)管理模塊。數(shù)據(jù)分發(fā)模塊負(fù)責(zé)數(shù)據(jù)安全高效傳輸,其中密鑰管理模塊、數(shù)據(jù)加密模塊、數(shù)據(jù)解密模塊基于DEA數(shù)據(jù)加密策略,保證數(shù)據(jù)的安全傳輸;數(shù)據(jù)接收模塊和數(shù)據(jù)轉(zhuǎn)發(fā)模塊,負(fù)責(zé)數(shù)據(jù)落地供本節(jié)點(diǎn)使用,以及根據(jù)路由信息中的下一跳,將數(shù)據(jù)轉(zhuǎn)發(fā)給下一個(gè)節(jié)點(diǎn);數(shù)據(jù)調(diào)度模塊用于優(yōu)化本地?cái)?shù)據(jù)的讀取以及高效存放;緩沖區(qū)管理模塊負(fù)責(zé)清理緩沖區(qū)中過期的或是臟的無(wú)用數(shù)據(jù),釋放內(nèi)存空間。
[0063]數(shù)據(jù)接收模塊將接收到的數(shù)據(jù),通過數(shù)據(jù)解密模塊,解密后存儲(chǔ)在本地,重新加密或直接轉(zhuǎn)發(fā)加密數(shù)據(jù)到下一跳。
[0064]密鑰管理模塊,用于接收密鑰服務(wù)器發(fā)送來的密鑰,同時(shí)也負(fù)責(zé)生成本節(jié)點(diǎn)的密鑰。數(shù)據(jù)加密模塊,用于對(duì)接收到的數(shù)據(jù)進(jìn)行加密操作。數(shù)據(jù)解密模塊,用于對(duì)接收到的數(shù)據(jù)進(jìn)行解密操作。數(shù)據(jù)接收模塊,用于接收父節(jié)點(diǎn)上一跳發(fā)送來的數(shù)據(jù),將數(shù)據(jù)解密后存儲(chǔ)在本地。數(shù)據(jù)轉(zhuǎn)發(fā)模塊,用于將接收到的數(shù)據(jù)轉(zhuǎn)發(fā)給下一跳節(jié)點(diǎn)。任務(wù)狀態(tài)監(jiān)控模塊,用于節(jié)點(diǎn)接收到數(shù)據(jù)后,向上一跳反饋接收狀態(tài)。數(shù)據(jù)調(diào)度模塊,用于在本地文件系統(tǒng)中存儲(chǔ)和讀取數(shù)據(jù)。緩沖區(qū)管理模塊,用于定期清理本地的緩存,釋放系統(tǒng)內(nèi)存。
[0065]客戶端的加入和退出直接由組播管理服務(wù)器負(fù)責(zé),節(jié)點(diǎn)加入后和節(jié)點(diǎn)退出前,節(jié)點(diǎn)的行為均為父節(jié)點(diǎn)負(fù)責(zé),減輕組播管理服務(wù)器的開銷;客戶端通過統(tǒng)一數(shù)據(jù)傳輸接口,完成數(shù)據(jù)的可靠傳輸。
[0066]組播客戶端接收、存儲(chǔ)和轉(zhuǎn)發(fā)(非葉節(jié)點(diǎn))組播數(shù)據(jù)源的數(shù)據(jù),同時(shí)具有數(shù)據(jù)緩存能力,在子節(jié)點(diǎn)數(shù)據(jù)接收失敗時(shí),可迅速實(shí)現(xiàn)數(shù)據(jù)重傳。
[0067]結(jié)合圖4至圖6,本發(fā)明的覆蓋網(wǎng)節(jié)點(diǎn)分層分簇的控制拓?fù)渖蛇^程圖。本發(fā)明的組播拓?fù)浣Y(jié)構(gòu)構(gòu)建步驟是自下而上、分層分簇的構(gòu)建方法,圖4表示初始化時(shí),所有的組播節(jié)點(diǎn)進(jìn)行分簇,設(shè)定簇大小k = 4,以相互間的距離為權(quán)值,劃分成4個(gè)簇:[A0,Al, A2, B0]、[A3, A4, A5, CO]、[A6, A7, A8, BI]、[A9, A10, All, B2],為第 O 層。簇首定義:每個(gè)簇中距離其他節(jié)點(diǎn)累加權(quán)值最小者為族首。根據(jù)簇首定義:B0、B1、B2、C0為第O層的簇首,它們形成了第I層的成員節(jié)點(diǎn);同理,根據(jù)簇首定義:C0為第I層的簇首,其也形成了第2層的成員節(jié)點(diǎn)。此時(shí)CO的子節(jié)點(diǎn)中有第I層節(jié)點(diǎn)B0、B1、B2,以及第O層節(jié)點(diǎn)A3、A4、A5。根據(jù)基本方法中敘述的:將第i層成員的子節(jié)點(diǎn)中非第1-1層成員的節(jié)點(diǎn)轉(zhuǎn)移到第1-1層的子節(jié)點(diǎn)下。結(jié)合圖5,需要將第2層成員的子節(jié)點(diǎn)中非第I層(第O層)節(jié)點(diǎn)A3、A4、A5,轉(zhuǎn)移到第I層節(jié)點(diǎn)B0、B1、B2的子節(jié)點(diǎn)中,轉(zhuǎn)移規(guī)則是第O層節(jié)點(diǎn)在CO的下一層子節(jié)點(diǎn)B0、B1、B2中,尋找距離各自最近的節(jié)點(diǎn)作為父節(jié)點(diǎn)。結(jié)合圖6,最終CO節(jié)點(diǎn)的子節(jié)點(diǎn)中,只有第I層節(jié)點(diǎn):B0、B1、B2,沒有第O層節(jié)點(diǎn):A3、A4、A5,這樣保證了高層節(jié)點(diǎn)的維護(hù)復(fù)雜度為常量k。
[0068]結(jié)合圖7至9,本發(fā)明的覆蓋網(wǎng)節(jié)點(diǎn)數(shù)據(jù)分發(fā)示意圖。本發(fā)明的分層分簇覆蓋網(wǎng)組播,是支持多源分發(fā)的:每一個(gè)成員節(jié)點(diǎn)都可以作為分發(fā)源,不同的分發(fā)源根據(jù)分層分簇中的組播路徑形成分發(fā)路徑。結(jié)合圖7,以節(jié)點(diǎn)AO為數(shù)據(jù)分發(fā)源的分發(fā)路徑。結(jié)合圖8,以節(jié)點(diǎn)A7為數(shù)據(jù)分發(fā)源的分發(fā)路徑。結(jié)合圖9,以節(jié)點(diǎn)CO為數(shù)據(jù)分發(fā)源的分發(fā)路徑。
[0069]結(jié)合圖10,本發(fā)明的目標(biāo)是要構(gòu)建一個(gè)節(jié)點(diǎn)維護(hù)復(fù)雜度為常量的分層分簇組播拓?fù)浣Y(jié)構(gòu)。最底層為第O層,是所有的非簇首節(jié)點(diǎn)以及第O層的簇首節(jié)點(diǎn);第1層為第O層的簇首節(jié)點(diǎn)以及第二層的成員節(jié)點(diǎn);第2層為最頂層,其成員為第I層的簇首節(jié)點(diǎn)。每一個(gè)簇首節(jié)點(diǎn),都跨層存在,既是下一層的簇首節(jié)點(diǎn),也是上一層的成員節(jié)點(diǎn),但不會(huì)存在一個(gè)節(jié)點(diǎn)跨越超過2層。在第O層中采用點(diǎn)對(duì)點(diǎn)密鑰管理策略,每對(duì)節(jié)點(diǎn)之間維護(hù)一個(gè)密鑰,非第O層節(jié)點(diǎn)之間采用全局密鑰管理策略。
[0070]結(jié)合圖11,本發(fā)明的組播樹構(gòu)造流程圖。本發(fā)明的組播樹構(gòu)造算法位于組播管理服務(wù)器端。執(zhí)行以下步驟:
[0071]步驟1:獲取節(jié)點(diǎn)間距離,作為分簇的依據(jù);
[0072]步驟2:得到所有組播成員節(jié)點(diǎn)信息;
[0073]步驟3:初始化層i = 0,將第i層中距離最近的節(jié)點(diǎn)歸為同一簇,直到簇大小為k,并給分簇節(jié)點(diǎn)打上已分簇標(biāo)記FLAG ;
[0074]步驟4:每個(gè)簇中選取一個(gè)距離其他節(jié)點(diǎn)累計(jì)權(quán)值最小的作為簇首;
[0075]步驟5:從沒有FLAG標(biāo)記的節(jié)點(diǎn)中,繼續(xù)執(zhí)行分簇算法,直到所有的成員節(jié)點(diǎn)都屬于某個(gè)簇;
[0076]步驟6:第i層的簇首節(jié)點(diǎn)形成第i+Ι層的成員;
[0077]步驟7:將第i+Ι層的子節(jié)點(diǎn)中不屬于第i層的,以第i層的子節(jié)點(diǎn)為父節(jié)點(diǎn),重新加入組播樹中;
[0078]步驟8:判斷第i+Ι層節(jié)點(diǎn)是否只有I個(gè)節(jié)點(diǎn),如果是,則跳到第九步,否則繼續(xù)執(zhí)行第四步至第八步的流程;
[0079]步驟9:組播路由構(gòu)建結(jié)束;
[0080]步驟10:組播路由分發(fā)。
[0081]結(jié)合圖12,本發(fā)明的組播路由優(yōu)化流程圖。本發(fā)明的組播重構(gòu)算法,是優(yōu)化組播拓?fù)浣Y(jié)構(gòu)。一是簇內(nèi)成員節(jié)點(diǎn),在父兄節(jié)點(diǎn)中進(jìn)行比較,是否有更優(yōu)的父節(jié)點(diǎn)。二是簇內(nèi)部,是否有比現(xiàn)有粗首節(jié)點(diǎn)的累計(jì)權(quán)重更小的節(jié)點(diǎn),有則更新該簇的簇首節(jié)點(diǎn)。
[0082]結(jié)合圖13,本發(fā)明的組播路由安全密鑰流程圖。本發(fā)明的采用區(qū)分密鑰機(jī)制進(jìn)行數(shù)據(jù)安全傳輸。按照密鑰機(jī)制的不同,將節(jié)點(diǎn)分為三類:第O層非簇首節(jié)點(diǎn)、第I層非簇首節(jié)點(diǎn)和第2層及以上層節(jié)點(diǎn)。第一種情況,第O層非簇首節(jié)點(diǎn)接收到數(shù)據(jù),獲取與上一跳的密鑰對(duì)數(shù)據(jù)進(jìn)行解密,存儲(chǔ)到本地,然后獲取與下一跳的密鑰,對(duì)數(shù)據(jù)進(jìn)行加密,然后獲取下一跳地址進(jìn)行轉(zhuǎn)發(fā)。第二種情況,第I層非簇首節(jié)點(diǎn)接收到數(shù)據(jù),獲取全局統(tǒng)一密鑰對(duì)數(shù)據(jù)進(jìn)行解密,存儲(chǔ)到本地,然后獲取與下一跳的密鑰,對(duì)數(shù)據(jù)進(jìn)行加密,然后獲取下一跳地址進(jìn)行轉(zhuǎn)發(fā)。第三種情況,第2層及以上層節(jié)點(diǎn),獲取全局統(tǒng)一密鑰對(duì)數(shù)據(jù)進(jìn)行解密,存儲(chǔ)到本地,然后直接將接收到的加密數(shù)據(jù)進(jìn)行轉(zhuǎn)發(fā)。
[0083]結(jié)合圖14,本發(fā)明的狀態(tài)反饋模塊流程圖。首先數(shù)據(jù)接收失敗分兩種情況,接收超時(shí)和解析失敗,分發(fā)源接收到分發(fā)失敗消息后,如果重傳次數(shù)不到3次,則將重傳次數(shù)加1,然后進(jìn)行重傳,否則不執(zhí)行重傳,直接得出數(shù)據(jù)分發(fā)失敗結(jié)論。分發(fā)源接收到數(shù)據(jù)分發(fā)成功消息后,得出數(shù)據(jù)分發(fā)成功結(jié)論。
[0084]結(jié)合圖15,本發(fā)明的仿真效果比較圖。仿真環(huán)境采用NS2的emulation半仿真試驗(yàn)?zāi)J?,首先用GT-1TM生成10個(gè)傳輸拓?fù)洌總€(gè)拓?fù)浣Y(jié)構(gòu)都有兩層的傳輸網(wǎng)絡(luò)及節(jié)點(diǎn)網(wǎng)絡(luò),每個(gè)拓?fù)涠加?個(gè)傳輸域和64個(gè)節(jié)點(diǎn)域,每個(gè)節(jié)點(diǎn)域生成50個(gè)終端節(jié)點(diǎn),終端節(jié)點(diǎn)通過局域網(wǎng)連接到節(jié)點(diǎn)路由器。
[0085]本發(fā)明方法與NICE組播、IP組播在數(shù)據(jù)傳輸延時(shí)與組規(guī)模關(guān)系的比較,NICE算法是基于大規(guī)模節(jié)點(diǎn)的應(yīng)用層組播分層分簇構(gòu)造方法,IP組播是分發(fā)效率最高的組播分發(fā)方法。在組播數(shù)據(jù)分發(fā)過程中,隨組規(guī)模的增長(zhǎng)會(huì)增加數(shù)據(jù)的傳輸路徑,導(dǎo)致數(shù)據(jù)傳輸延遲增大,圖15可以看出,隨著組規(guī)模的增長(zhǎng),IP組播的時(shí)延增長(zhǎng)較緩慢,而本發(fā)明方法的時(shí)延要小于傳統(tǒng)的NICE協(xié)議,而且隨著組規(guī)模增長(zhǎng),這種優(yōu)勢(shì)越來越明顯。
【權(quán)利要求】
1.一種低開銷的覆蓋網(wǎng)安全組播方法,是基于由組播管理服務(wù)器,密鑰服務(wù)器,以及多個(gè)節(jié)點(diǎn)組成的網(wǎng)絡(luò)架構(gòu),其特征在于包括以下步驟: 步驟1:組播管理服務(wù)器端探測(cè)當(dāng)前網(wǎng)絡(luò)中存在的所有存活的節(jié)點(diǎn)信息,并構(gòu)造一個(gè)全局控制網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu): 組播管理服務(wù)器端采用自底向上的分層分簇策略構(gòu)造組播樹,通過裁剪簇首的子節(jié)點(diǎn)數(shù),使得所有節(jié)點(diǎn)維護(hù)拓?fù)潢P(guān)系的控制算法復(fù)雜度為常量; 組播管理服務(wù)器端負(fù)責(zé)控制節(jié)點(diǎn)的加入和退出,節(jié)點(diǎn)加入后和節(jié)點(diǎn)退出前的行為通過節(jié)點(diǎn)的客戶端由其父節(jié)點(diǎn)負(fù)責(zé); 節(jié)點(diǎn)的客戶端通過統(tǒng)一數(shù)據(jù)傳輸接口,完成數(shù)據(jù)傳輸; 步驟2:節(jié)點(diǎn)加入組播: 待加入節(jié)點(diǎn)通過其客戶端向組播管理服務(wù)器發(fā)送加入請(qǐng)求,組播管理服務(wù)器端將頂層節(jié)點(diǎn)地址反饋給待加入節(jié)點(diǎn)的客戶端;待加入節(jié)點(diǎn)向頂層節(jié)點(diǎn)發(fā)送加入請(qǐng)求,并計(jì)算與頂層節(jié)點(diǎn)及頂層節(jié)點(diǎn)的子節(jié)點(diǎn)之間的往返時(shí)延;待加入節(jié)點(diǎn)繼續(xù)向往返延遲最小的節(jié)點(diǎn)發(fā)送加入請(qǐng)求,直到往返延遲最小的節(jié)點(diǎn)就是請(qǐng)求加入節(jié)點(diǎn)本身,或者往返延遲最小的節(jié)點(diǎn)是葉子節(jié)點(diǎn),這時(shí)該節(jié)點(diǎn)就作為待加入節(jié)點(diǎn)的父節(jié)點(diǎn); 步驟3:節(jié)點(diǎn)退出 組播: 節(jié)點(diǎn)退出組播分為主動(dòng)退出和異常退出; 節(jié)點(diǎn)主動(dòng)退出時(shí),節(jié)點(diǎn)的客戶端向組播管理服務(wù)器發(fā)送退出組播請(qǐng)求,組播管理服務(wù)器端的組播路由重構(gòu)模塊重新構(gòu)造組播路由,并將更新后的組播路由分發(fā)給各節(jié)點(diǎn); 節(jié)點(diǎn)異常退出時(shí),組播管理服務(wù)器端的心跳響應(yīng)模塊在3個(gè)心跳周期中都沒有接收到節(jié)點(diǎn)的心跳消息,則判斷該節(jié)點(diǎn)異常退出,組播管理服務(wù)器端的組播路由重構(gòu)模塊重新構(gòu)造組播路由,并將更新后的組播路由分發(fā)給各節(jié)點(diǎn); 步驟4:構(gòu)建組播分發(fā)路徑: 在所有參與組播的節(jié)點(diǎn)中選取一個(gè)節(jié)點(diǎn)作為組播分發(fā)源,以組播分發(fā)源為根節(jié)點(diǎn),簇首節(jié)點(diǎn)與簇成員節(jié)點(diǎn)之間根據(jù)父子關(guān)系,簇內(nèi)節(jié)點(diǎn)間根據(jù)自平衡二叉樹算法,構(gòu)建組播分發(fā)路徑; 步驟5:全局密鑰服務(wù)器端生成并發(fā)布全局的密鑰: 數(shù)據(jù)分發(fā)時(shí)采用區(qū)分密鑰策略,第O層節(jié)點(diǎn)和非第O層節(jié)點(diǎn)采用不同的密鑰策略,對(duì)數(shù)據(jù)進(jìn)行加密傳輸; 第O層節(jié)點(diǎn)間采用點(diǎn)對(duì)點(diǎn)密鑰方式,非第O層節(jié)點(diǎn)采用全局密鑰方式; 在組播分發(fā)路徑上屬于父子關(guān)系的第O層節(jié)點(diǎn),相互之間通過握手方式確定點(diǎn)對(duì)點(diǎn)密鑰;非第O層節(jié)點(diǎn),采用全局密鑰服務(wù)器端廣播全局統(tǒng)一密鑰; 步驟6:非第O層節(jié)點(diǎn)間的數(shù)據(jù)分發(fā): 組播分發(fā)源節(jié)點(diǎn)客戶端的數(shù)據(jù)接收模塊,監(jiān)測(cè)到需要分發(fā)數(shù)據(jù),數(shù)據(jù)加密模塊調(diào)用密鑰管理模塊中的全局統(tǒng)一密鑰,對(duì)分發(fā)數(shù)據(jù)進(jìn)行加密,數(shù)據(jù)轉(zhuǎn)發(fā)模塊查找本地路由管理模塊中的下一跳節(jié)點(diǎn),將加密后的數(shù)據(jù)分發(fā)給下一跳節(jié)點(diǎn); 步驟7:非第O層節(jié)點(diǎn)與第O層節(jié)點(diǎn)間的數(shù)據(jù)分發(fā): 第O層節(jié)點(diǎn)的簇首節(jié)點(diǎn)客戶端的數(shù)據(jù)接收模塊,接收到上一跳發(fā)來的分發(fā)數(shù)據(jù),數(shù)據(jù)解密模塊調(diào)用密鑰管理模塊中的全局統(tǒng)一密鑰,對(duì)分發(fā)數(shù)據(jù)進(jìn)行解密,并將解密后的數(shù)據(jù)存儲(chǔ)在本地; 數(shù)據(jù)轉(zhuǎn)發(fā)模塊查找本地路由管理模塊中的下一跳節(jié)點(diǎn),數(shù)據(jù)加密模塊從密鑰管理模塊中獲取與下一跳節(jié)點(diǎn)之間的點(diǎn)對(duì)點(diǎn)密鑰,對(duì)分發(fā)數(shù)據(jù)進(jìn)行加密,將加密后的數(shù)據(jù)分發(fā)給下一跳節(jié)點(diǎn); 步驟8 --第O層節(jié)點(diǎn)間的數(shù)據(jù)分發(fā): 簇內(nèi)節(jié)點(diǎn)客戶端的數(shù)據(jù)接收模塊,接收到來自上一跳的分發(fā)數(shù)據(jù),數(shù)據(jù)解密模塊從密鑰管理模塊中獲取與上一跳節(jié)點(diǎn)之間的點(diǎn)對(duì)點(diǎn)密鑰,對(duì)分發(fā)數(shù)據(jù)進(jìn)行解密,并將解密后的數(shù)據(jù)存儲(chǔ)在本地; 數(shù)據(jù)轉(zhuǎn)發(fā)模塊查找本地路由管理模塊中的下一跳節(jié)點(diǎn),數(shù)據(jù)加密模塊從密鑰管理模塊中獲取與下一跳節(jié)點(diǎn)之間的點(diǎn)對(duì)點(diǎn)密鑰,對(duì)分發(fā)數(shù)據(jù)進(jìn)行加密,將加密后的數(shù)據(jù)分發(fā)給下一跳節(jié)點(diǎn)。
【文檔編號(hào)】H04L12/761GK103997463SQ201410223572
【公開日】2014年8月20日 申請(qǐng)日期:2014年5月23日 優(yōu)先權(quán)日:2014年5月23日
【發(fā)明者】沈曄, 馮徑, 印敏, 蔣磊, 周愛霞 申請(qǐng)人:中國(guó)人民解放軍理工大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1