技術(shù)領(lǐng)域
[0001] 本
發(fā)明涉及深空延遲容忍網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別是指一種基于深空延遲容忍網(wǎng)絡(luò)的改進(jìn)概率路由方法。
背景技術(shù)
[0002] 延遲容忍網(wǎng)絡(luò)(Delay?Tolerant?Network,簡(jiǎn)稱DTN)是一種端到端之間缺乏持續(xù)可靠連接的網(wǎng)路。DTN往往具有高延遲,低傳輸率,間歇型連接、
節(jié)點(diǎn)頻繁移動(dòng),延遲容忍、錯(cuò)誤容忍、有限的存儲(chǔ)及通信環(huán)境惡劣等特點(diǎn),使得傳統(tǒng)的基于TCP/IP的端到端通信的互聯(lián)網(wǎng)技術(shù)無法很好地為其提供服務(wù)。鑒于DTN的獨(dú)特性。DTN路由作為延遲容忍網(wǎng)絡(luò)中的重中之中,成為廣大研究人員的首要研究對(duì)象。根據(jù)路由策略的不同,現(xiàn)有DTN路由策略主要可分為消息復(fù)制/洪泛策略、轉(zhuǎn)發(fā)策略、歷史/預(yù)測(cè)策略、概率策略和編碼策略等。消息復(fù)制/洪泛策略路由為增加消息傳輸成功概率,由中繼節(jié)點(diǎn)將消息進(jìn)行復(fù)制,并以泛洪機(jī)制轉(zhuǎn)發(fā)到下一跳節(jié)點(diǎn),直至目的節(jié)點(diǎn)為止;轉(zhuǎn)發(fā)策略路由根據(jù)網(wǎng)絡(luò)拓?fù)湫畔⑦x擇最佳路徑,消息由此路徑以逐跳方式轉(zhuǎn)發(fā)至目的節(jié)點(diǎn);歷史/預(yù)測(cè)策略路由采用估計(jì)的方式,將歷史消息傳輸?shù)侥康墓?jié)點(diǎn)的情況作為先驗(yàn)知識(shí),中繼節(jié)點(diǎn)通過決策,決定消息的轉(zhuǎn)發(fā);概率策略路由根據(jù)節(jié)點(diǎn)移動(dòng)類型或網(wǎng)絡(luò)拓?fù)湫畔⒌哪撤N概率分布來進(jìn)行消息轉(zhuǎn)發(fā);編碼策略路由轉(zhuǎn)變了傳統(tǒng)路由策略的思路,將網(wǎng)絡(luò)編碼或糾刪碼引入消息轉(zhuǎn)發(fā)中,解決消息傳輸過程中面臨的丟棄問題,提高網(wǎng)絡(luò)吞吐量,均衡網(wǎng)絡(luò)負(fù)載。
[0003] 基于概率策略的路由
算法是Prophet路由協(xié)議中的一種方法,該路由協(xié)議是一種典型的概率路由協(xié)議,利用相遇概率來描述某一節(jié)點(diǎn)與其他節(jié)點(diǎn)
接觸的可能性大小。每個(gè)節(jié)點(diǎn)都保存著其到達(dá)其他節(jié)點(diǎn)的概率信息,當(dāng)兩節(jié)點(diǎn)接觸時(shí),先更新各自維護(hù)的相遇概率表,然后通過比較節(jié)點(diǎn)與消息目的節(jié)點(diǎn)的相遇概率的大小來決定是否轉(zhuǎn)發(fā)該消息。
[0004]
電子科技大學(xué)的楊炎在其學(xué)位論文的研究中提出一種基于歷史相遇和傳輸信息的概率路由算法的改進(jìn)方案,路由算法設(shè)計(jì)時(shí)將路由中繼節(jié)點(diǎn)的選擇轉(zhuǎn)化為考慮節(jié)點(diǎn)運(yùn)動(dòng)活躍性、節(jié)點(diǎn)剩余
能量等多個(gè)路由影響因子的多目標(biāo)優(yōu)化問題。使用線性優(yōu)化的方式計(jì)算節(jié)點(diǎn)的效用值,并根據(jù)該效用值大小按比例地轉(zhuǎn)發(fā)消息副本,以實(shí)現(xiàn)最優(yōu)的路由決策,但該方法并沒有考慮到網(wǎng)絡(luò)開銷變大,易造成網(wǎng)絡(luò)擁塞的問題。
發(fā)明內(nèi)容
[0005] 本發(fā)明要解決的技術(shù)問題是提供一種基于深空延遲容忍網(wǎng)絡(luò)的改進(jìn)概率路由方法,以解決
現(xiàn)有技術(shù)所存在的網(wǎng)絡(luò)開銷大,易造成網(wǎng)絡(luò)擁塞的問題。
[0006] 為解決上述技術(shù)問題,本發(fā)明
實(shí)施例提供一種基于深空延遲容忍網(wǎng)絡(luò)的改進(jìn)概率路由方法,包括:
[0007] 當(dāng)兩節(jié)點(diǎn)接觸時(shí),根據(jù)節(jié)點(diǎn)相遇概率、節(jié)點(diǎn)連接時(shí)間比率及節(jié)點(diǎn)消息投遞率所占的比重,計(jì)算當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率和當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率;
[0008] 判斷當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率是否大于等于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率;
[0009] 若大于等于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率,則判斷當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的剩余緩存空間是否能容納新到達(dá)的消息副本;
[0010] 若不能容納新到達(dá)的消息副本,則利用當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的報(bào)文生存時(shí)間丟棄策略對(duì)緩存進(jìn)行管理。
[0011] 進(jìn)一步地,所述方法還包括:
[0012] 根據(jù)公式:F(a,b)=argmax[α*P(a,b)+β*R(a,b)+γ*I(a,b)]計(jì)算節(jié)點(diǎn)可行性概率;
[0013] 其中,F(xiàn)(a,b)表示節(jié)點(diǎn)可行性概率,P(a,b)、R(a,b)、I(a,b)分別表示節(jié)點(diǎn)相遇概率、節(jié)點(diǎn)連接時(shí)間比率、節(jié)點(diǎn)消息投遞率,α、β、γ分別表示節(jié)點(diǎn)相遇概率、節(jié)點(diǎn)連接時(shí)間比率、節(jié)點(diǎn)消息投遞率的權(quán)重。
[0014] 進(jìn)一步地,所述方法還包括:
[0015] 在一次傳輸過程中,若節(jié)點(diǎn)A和節(jié)點(diǎn)B不會(huì)相遇,則根據(jù)公式:
[0016] P(a,b)=P(a,b)old×σk
[0017] 對(duì)節(jié)點(diǎn)相遇概率進(jìn)行概率衰減;
[0018] 其中,節(jié)點(diǎn)A為儲(chǔ)存消息的當(dāng)前節(jié)點(diǎn),節(jié)點(diǎn)B為與節(jié)點(diǎn)A相遇過但本次不相遇的節(jié)點(diǎn),P(a,b)表示節(jié)點(diǎn)A和節(jié)點(diǎn)B的相遇概率,σ為衰減因子,P(a,b)old表示節(jié)點(diǎn)A和節(jié)點(diǎn)B上一次相遇時(shí)的相遇概率,k表示節(jié)點(diǎn)A和節(jié)點(diǎn)B從上次相遇到現(xiàn)在為止所經(jīng)過的時(shí)間間隔。
[0019] 進(jìn)一步地,所述方法還包括:
[0020] 在一次傳輸過程中,若節(jié)點(diǎn)A和節(jié)點(diǎn)B相遇并建立連接,則根據(jù)公式:
[0021] P(a,b)=P(a,b)old+(1-P(a,b)old)×Pinit
[0022] 更新節(jié)點(diǎn)相遇概率;
[0023] 其中,節(jié)點(diǎn)A為儲(chǔ)存消息的當(dāng)前節(jié)點(diǎn),節(jié)點(diǎn)B為與節(jié)點(diǎn)A相遇的節(jié)點(diǎn),P(a,b)表示節(jié)點(diǎn)A和節(jié)點(diǎn)B的相遇概率,P(a,b)old表示節(jié)點(diǎn)A和節(jié)點(diǎn)B上一次相遇時(shí)的相遇概率,Pinit表示最初節(jié)點(diǎn)A和節(jié)點(diǎn)B的相遇概率。
[0024] 進(jìn)一步地,所述方法還包括:
[0025] 若節(jié)點(diǎn)A和節(jié)點(diǎn)C接觸,且節(jié)點(diǎn)C和節(jié)點(diǎn)B接觸,則將節(jié)點(diǎn)A的消息傳遞給節(jié)點(diǎn)B時(shí),根據(jù)公式:
[0026] P(a,b)=P(a,b)old+(1-P(a,b)old)×P(a,c)×P(c,b)×δ
[0027] 更新節(jié)點(diǎn)相遇概率;
[0028] 其中,節(jié)點(diǎn)A為儲(chǔ)存消息的當(dāng)前節(jié)點(diǎn),P(a,b)表示節(jié)點(diǎn)A和節(jié)點(diǎn)B的相遇概率,δ表示傳遞影響因子,P(a,b)old表示節(jié)點(diǎn)A和節(jié)點(diǎn)B上一次相遇時(shí)的相遇概率,P(a,c)表示節(jié)點(diǎn)A和節(jié)點(diǎn)C的相遇概率,P(c,b)表示節(jié)點(diǎn)C和節(jié)點(diǎn)B的相遇概率。
[0029] 進(jìn)一步地,所述若不能容納新到達(dá)的消息副本,則利用當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的報(bào)文生存時(shí)間丟棄策略對(duì)緩存進(jìn)行管理包括:
[0030] 判斷當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的報(bào)文生存時(shí)間是否小于等于零;
[0031] 若當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的報(bào)文生存時(shí)間等于或者小于零,則當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)自動(dòng)丟棄報(bào)文。
[0032] 進(jìn)一步地,所述方法還包括:
[0033] 若當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的報(bào)文生存時(shí)間大于零且出現(xiàn)網(wǎng)絡(luò)擁塞,則將報(bào)文按轉(zhuǎn)發(fā)次數(shù)由大到小進(jìn)行排序,并按照排序順序丟棄報(bào)文直至當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)能容納新到達(dá)的消息副本。
[0034] 進(jìn)一步地,所述將報(bào)文按轉(zhuǎn)發(fā)次數(shù)由大到小進(jìn)行排序,并按照排序順序丟棄報(bào)文直至當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)能容納新到達(dá)的消息副本包括:
[0035] 將報(bào)文按轉(zhuǎn)發(fā)次數(shù)由大到小進(jìn)行排序,將轉(zhuǎn)發(fā)次數(shù)較多的報(bào)文放在隊(duì)尾,轉(zhuǎn)發(fā)次數(shù)較少的報(bào)文放在隊(duì)頭;
[0036] 按照優(yōu)先丟棄隊(duì)尾的順序開始丟棄報(bào)文直至當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)能容納新到達(dá)的消息副本。
[0037] 進(jìn)一步地,所述方法還包括:
[0038] 若當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的剩余緩存空間能容納新到達(dá)的消息副本,則當(dāng)前節(jié)點(diǎn)向其接觸的節(jié)點(diǎn)傳遞消息。
[0039] 進(jìn)一步地,所述方法還包括:
[0040] 若當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率小于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率,則當(dāng)前節(jié)點(diǎn)不向其接觸的節(jié)點(diǎn)傳遞消息。
[0041] 本發(fā)明的上述技術(shù)方案的有益效果如下:
[0042] 上述方案中,當(dāng)兩節(jié)點(diǎn)接觸時(shí),根據(jù)節(jié)點(diǎn)相遇概率、節(jié)點(diǎn)連接時(shí)間比率及節(jié)點(diǎn)消息投遞率所占的比重,計(jì)算當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率和當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率;判斷當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率是否大于等于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率;若大于等于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率,則判斷當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的剩余緩存空間是否能容納新到達(dá)的消息副本;若不能容納新到達(dá)的消息副本,則利用當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的報(bào)文生存時(shí)間丟棄策略對(duì)緩存進(jìn)行管理,從而解決網(wǎng)絡(luò)開銷大,易造成網(wǎng)絡(luò)擁塞的問題,且能夠節(jié)省網(wǎng)絡(luò)資源、減小了延時(shí)、提高消息傳輸?shù)男省?a href='/zhuanli/list-18302-1.html' target='_blank'>
附圖說明
[0043] 圖1為本發(fā)明實(shí)施例提供的基于深空延遲容忍網(wǎng)絡(luò)的改進(jìn)概率路由方法的流程示意圖;
[0044] 圖2為本發(fā)明實(shí)施例提供的節(jié)點(diǎn)路由信息表示意圖;
[0045] 圖3為本發(fā)明實(shí)施例提供的基于深空延遲容忍網(wǎng)絡(luò)的改進(jìn)概率路由方法的詳細(xì)流程示意圖
[0046] 圖4為本發(fā)明實(shí)施例提供的節(jié)點(diǎn)消息隊(duì)列示意圖。
具體實(shí)施方式
[0047] 為使本發(fā)明要解決的技術(shù)問題、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖及具體實(shí)施例進(jìn)行詳細(xì)描述。
[0048] 本發(fā)明針對(duì)現(xiàn)有的網(wǎng)絡(luò)開銷大,易造成網(wǎng)絡(luò)擁塞的問題,提供一種基于深空延遲容忍網(wǎng)絡(luò)的改進(jìn)概率路由方法。
[0049] 參看圖1所示,本發(fā)明實(shí)施例提供的基于深空延遲容忍網(wǎng)絡(luò)的改進(jìn)概率路由方法,包括:
[0050] S101,當(dāng)兩節(jié)點(diǎn)接觸時(shí),根據(jù)節(jié)點(diǎn)相遇概率、節(jié)點(diǎn)連接時(shí)間比率及節(jié)點(diǎn)消息投遞率所占的比重,計(jì)算當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率和當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率;
[0051] S102,判斷當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率是否大于等于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率;
[0052] S103,若大于等于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率,則判斷當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的剩余緩存空間是否能容納新到達(dá)的消息副本;
[0053] S104,若不能容納新到達(dá)的消息副本,則利用當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的報(bào)文生存時(shí)間丟棄策略對(duì)緩存進(jìn)行管理。
[0054] 本發(fā)明實(shí)施例所述的基于深空延遲容忍網(wǎng)絡(luò)的改進(jìn)概率路由方法,當(dāng)兩節(jié)點(diǎn)接觸時(shí),根據(jù)節(jié)點(diǎn)相遇概率、節(jié)點(diǎn)連接時(shí)間比率及節(jié)點(diǎn)消息投遞率所占的比重,計(jì)算當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率和當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率;判斷當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率是否大于等于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率;若大于等于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率,則判斷當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的剩余緩存空間是否能容納新到達(dá)的消息副本;若不能容納新到達(dá)的消息副本,則利用當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的報(bào)文生存時(shí)間丟棄策略對(duì)緩存進(jìn)行管理,從而解決網(wǎng)絡(luò)開銷大,易造成網(wǎng)絡(luò)擁塞的問題,且能夠節(jié)省網(wǎng)絡(luò)資源、減小了延時(shí)、提高消息傳輸?shù)男省?br>
[0055] 本實(shí)施例中,針對(duì)延遲容忍網(wǎng)絡(luò)中存在的節(jié)點(diǎn)移動(dòng)和鏈路頻繁變化等特點(diǎn),在原有的prophet路由算法的
基礎(chǔ)上,引入新的度量標(biāo)準(zhǔn):節(jié)點(diǎn)可行性概率,所述節(jié)點(diǎn)可行性概率綜合考慮了節(jié)點(diǎn)相遇概率、節(jié)點(diǎn)連接時(shí)間比率及節(jié)點(diǎn)消息投遞率等因素。
[0056] 本實(shí)施例中,基于新引入的度量標(biāo)準(zhǔn):節(jié)點(diǎn)可行性概率,提出了一種改進(jìn)概率路由的方法,當(dāng)兩節(jié)點(diǎn)接觸(也可以稱為:相遇)后交換路由信息,通過節(jié)點(diǎn)相遇概率、節(jié)點(diǎn)連接時(shí)間比率及節(jié)點(diǎn)消息投遞率所占的比重計(jì)算出節(jié)點(diǎn)可行性概率并更新節(jié)點(diǎn)可行性概率,能夠減小延時(shí),提高消息傳輸?shù)男?,并給出了網(wǎng)絡(luò)擁塞的處理方法,節(jié)省了網(wǎng)絡(luò)資源。
[0057] 本實(shí)施例所述的基于深空延遲容忍網(wǎng)絡(luò)的改進(jìn)概率路由方法的具體步驟可以包括:
[0058] 建立新的節(jié)點(diǎn)路由信息表,如圖2所示,所述節(jié)點(diǎn)路由信息表包括:當(dāng)前節(jié)點(diǎn),下一節(jié)點(diǎn),(節(jié)點(diǎn))相遇概率,(節(jié)點(diǎn))相遇時(shí)間,(節(jié)點(diǎn))斷開時(shí)間,(節(jié)點(diǎn))相遇次數(shù),(節(jié)點(diǎn)相遇)周期以及(節(jié)點(diǎn))消息投遞率。建立的節(jié)點(diǎn)路由信息表用于在一段周期內(nèi),記錄當(dāng)前節(jié)點(diǎn)與下一跳節(jié)點(diǎn)相遇概率等參數(shù);節(jié)點(diǎn)路由信息表在兩個(gè)節(jié)點(diǎn)相遇后會(huì)更新如圖2所示,在一個(gè)周期內(nèi)節(jié)點(diǎn)A和節(jié)點(diǎn)B相遇兩次,那么節(jié)點(diǎn)連接時(shí)間為:
[0059] H(a,b)=(te1-ts1)+(te2-ts2)
[0060] 其中,H(a,b)表示節(jié)點(diǎn)連接時(shí)間,H(a,b)表示節(jié)點(diǎn)A和節(jié)點(diǎn)B從這次連接開始到結(jié)束的這段時(shí)間間隔,te1、te2表示節(jié)點(diǎn)A和節(jié)點(diǎn)B兩次斷開的時(shí)間,
[0061] ts1、ts2表示節(jié)點(diǎn)A和節(jié)點(diǎn)B兩次相遇的時(shí)間。
[0062] 本實(shí)施例中,節(jié)點(diǎn)相遇概率用P(a,b)表示,P(a,b)表示節(jié)點(diǎn)A和節(jié)點(diǎn)B的相遇概率;節(jié)點(diǎn)相遇周期用T(a,b)表示,T(a,b)表示節(jié)點(diǎn)A和節(jié)點(diǎn)B從這次相遇連接開始到下一次相遇的這段時(shí)間間隔;用R(a,b)=H(a,b)÷T(a,b)表示節(jié)點(diǎn)連接時(shí)間比率;并用I(a,b)表示節(jié)點(diǎn)消息投遞率。
[0063] 本實(shí)施例中,進(jìn)一步地,根據(jù)公式:
[0064] F(a,b)=argmax[α*P(a,b)+β*R(a,b)+γ*I(a,b)]
[0065] 計(jì)算節(jié)點(diǎn)可行性概率;
[0066] 其中,F(xiàn)(a,b)表示節(jié)點(diǎn)可行性概率,P(a,b)、R(a,b)、I(a,b)分別表示節(jié)點(diǎn)相遇概率、節(jié)點(diǎn)連接時(shí)間比率、節(jié)點(diǎn)消息投遞率,α、β、γ分別表示節(jié)點(diǎn)相遇概率、節(jié)點(diǎn)連接時(shí)間比率、節(jié)點(diǎn)消息投遞率的權(quán)重,α、β、γ∈[0,1],且α+β+γ=1,α、β、γ的值是設(shè)定的。
[0067] 如圖3所示為本實(shí)施例提供的基于深空延遲容忍網(wǎng)絡(luò)的改進(jìn)概率路由方法的具體
流程圖,在一次傳輸過程中,若節(jié)點(diǎn)A和節(jié)點(diǎn)B不會(huì)相遇,則根據(jù)公式:
[0068] P(a,b)=P(a,b)old×σk
[0069] 對(duì)節(jié)點(diǎn)相遇概率進(jìn)行概率衰減;
[0070] 其中,節(jié)點(diǎn)A為儲(chǔ)存消息的當(dāng)前節(jié)點(diǎn),節(jié)點(diǎn)B為與節(jié)點(diǎn)A相遇過但本次不相遇的節(jié)點(diǎn),P(a,b)表示節(jié)點(diǎn)A和節(jié)點(diǎn)B的相遇概率,σ為衰減因子,σ∈[0,1],此時(shí)的σ可以取0.6,P(a,b)old表示節(jié)點(diǎn)A和節(jié)點(diǎn)B上一次相遇時(shí)的相遇概率,k表示節(jié)點(diǎn)A和節(jié)點(diǎn)B從上次相遇到現(xiàn)在為止所經(jīng)過的時(shí)間間隔,可以從節(jié)點(diǎn)路由信息表中讀取結(jié)果。
[0071] 在一次傳輸過程中,若節(jié)點(diǎn)A和節(jié)點(diǎn)B相遇并建立連接,則根據(jù)公式:
[0072] P(a,b)=P(a,b)old+(1-P(a,b)old)×Pinit
[0073] 更新節(jié)點(diǎn)相遇概率;
[0074] 其中,節(jié)點(diǎn)A為儲(chǔ)存消息的當(dāng)前節(jié)點(diǎn),節(jié)點(diǎn)B為與節(jié)點(diǎn)A相遇的節(jié)點(diǎn),P(a,b)表示節(jié)點(diǎn)A和節(jié)點(diǎn)B的相遇概率,P(a,b)old表示節(jié)點(diǎn)A和節(jié)點(diǎn)B上一次相遇時(shí)的相遇概率,Pinit表示最初節(jié)點(diǎn)A和節(jié)點(diǎn)B的相遇概率/節(jié)點(diǎn)路由信息表中存儲(chǔ)的原始相遇概率,Pinit∈[0,1],可以令Pinit取0.8。
[0075] 若節(jié)點(diǎn)A和節(jié)點(diǎn)C接觸,且節(jié)點(diǎn)C和節(jié)點(diǎn)B接觸,那么節(jié)點(diǎn)C作為中繼節(jié)點(diǎn),則將節(jié)點(diǎn)A的消息傳遞給節(jié)點(diǎn)B時(shí),根據(jù)公式:
[0076] P(a,b)=P(a,b)old+(1-P(a,b)old)×P(a,c)×P(c,b)×δ
[0077] 更新節(jié)點(diǎn)相遇概率;
[0078] 其中,節(jié)點(diǎn)A為儲(chǔ)存消息的當(dāng)前節(jié)點(diǎn),P(a,b)表示節(jié)點(diǎn)A和節(jié)點(diǎn)B的相遇概率,δ表示傳遞影響因子,可令δ=0.8,P(a,b)old表示節(jié)點(diǎn)A和節(jié)點(diǎn)B上一次相遇時(shí)的相遇概率,P(a,c)表示節(jié)點(diǎn)A和節(jié)點(diǎn)C的相遇概率,P(c,b)表示節(jié)點(diǎn)C和節(jié)點(diǎn)B的相遇概率,由此公式可以看出節(jié)點(diǎn)相遇概率具有傳遞性,可以通過傳遞性計(jì)算出任一節(jié)點(diǎn)到目的節(jié)點(diǎn)的相遇概率,再由相遇概率計(jì)算出可行性概率。
[0079] 本實(shí)施例中,根據(jù)公式:F(a,b)=argmax[α*P(a,b)+β*R(a,b)+γ*I(a,b)]將節(jié)點(diǎn)相遇概率,節(jié)點(diǎn)連接時(shí)間比率,節(jié)點(diǎn)消息投遞率整合計(jì)算出當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率、當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率,并判斷當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率是否大于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率,如果當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率小于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率,則當(dāng)前節(jié)點(diǎn)不向其接觸的節(jié)點(diǎn)傳遞消息,直接結(jié)束;
[0080] 如果當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率是大于等于當(dāng)前節(jié)點(diǎn)到目的節(jié)點(diǎn)的可行性概率,再判斷當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的剩余緩存空間是否能容納新到達(dá)的消息副本,若當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的剩余緩存空間能容納新到達(dá)的消息副本,則當(dāng)前節(jié)點(diǎn)向其接觸的節(jié)點(diǎn)傳遞消息;
[0081] 若當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的剩余緩存空間不能容納新到達(dá)的消息副本,則利用當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)的報(bào)文生存時(shí)間丟棄策略對(duì)緩存進(jìn)行管理,具體方法為:每個(gè)報(bào)文在生產(chǎn)的時(shí)候都有一個(gè)初始生存時(shí)間(Time?To?Live,TTL)值,但隨著轉(zhuǎn)發(fā)次數(shù)的增加,TTL值會(huì)依次減小,當(dāng)當(dāng)前節(jié)點(diǎn)緩存的報(bào)文TTL值等于或者小于零時(shí),則當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)自動(dòng)丟棄報(bào)文,避免占用節(jié)點(diǎn)緩存網(wǎng)絡(luò)資源、增加網(wǎng)絡(luò)開銷;
[0082] 若當(dāng)前節(jié)點(diǎn)緩存的報(bào)文TTL值均大于零時(shí),但又出現(xiàn)網(wǎng)絡(luò)擁塞的問題時(shí),將報(bào)文按轉(zhuǎn)發(fā)次數(shù)由大到小進(jìn)行排序,如圖4所示,節(jié)點(diǎn)消息隊(duì)列中按照?qǐng)?bào)文被轉(zhuǎn)發(fā)的次數(shù)排序,即轉(zhuǎn)發(fā)次數(shù)較多的報(bào)文放在隊(duì)尾,轉(zhuǎn)發(fā)次數(shù)較少的報(bào)文放在隊(duì)頭,并按照優(yōu)先丟棄隊(duì)尾的順序開始丟棄報(bào)文直至當(dāng)前節(jié)點(diǎn)所接觸的節(jié)點(diǎn)能容納新到達(dá)的消息副本,通過此方法可以緩解網(wǎng)絡(luò)擁塞的問題;圖4中,Messagen表示報(bào)文,下標(biāo)n來區(qū)分不同的報(bào)文,Qn表示對(duì)應(yīng)的報(bào)文轉(zhuǎn)發(fā)的次數(shù)。
[0083] 以上所述是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明所述原理的前提下,還可以作出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。