国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

間歇性連通網(wǎng)絡(luò)數(shù)據(jù)傳輸與路由技術(shù)研究* 1

2016-07-08 07:52康宗緒雷文虎李廣志蘇凌旭
通信技術(shù) 2016年5期
關(guān)鍵詞:移動(dòng)網(wǎng)絡(luò)

康宗緒,雷文虎,李廣志,蘇凌旭

(1.重慶金美通信有限責(zé)任公司,重慶 400030;2.中國(guó)人民解放軍駐重慶氣體壓縮機(jī)廠軍事代表室,重慶 400030)

?

間歇性連通網(wǎng)絡(luò)數(shù)據(jù)傳輸與路由技術(shù)研究* 1

康宗緒1,雷文虎1,李廣志2,蘇凌旭1

(1.重慶金美通信有限責(zé)任公司,重慶 400030;2.中國(guó)人民解放軍駐重慶氣體壓縮機(jī)廠軍事代表室,重慶 400030)

摘要:移動(dòng)網(wǎng)絡(luò)需要適應(yīng)各種復(fù)雜應(yīng)用環(huán)境,在出現(xiàn)節(jié)點(diǎn)密度較低、移動(dòng)性又高的場(chǎng)景時(shí),稀疏的節(jié)點(diǎn)就難以保證網(wǎng)絡(luò)拓?fù)涞姆€(wěn)定性和全連通性。在這種不理想的網(wǎng)絡(luò)環(huán)境中,傳統(tǒng)的移動(dòng)自組網(wǎng)路由協(xié)議會(huì)因?yàn)榫W(wǎng)絡(luò)頻繁中斷、間歇性連接和較大的網(wǎng)絡(luò)時(shí)延等條件限制,無法建立端到端穩(wěn)定的路由路徑而造成算法失效。針對(duì)移動(dòng)網(wǎng)絡(luò)間歇性連通的特性,結(jié)合DTN思想,充分利用節(jié)點(diǎn)間相遇的機(jī)會(huì)交互數(shù)據(jù),借助代理節(jié)點(diǎn)來提高數(shù)據(jù)傳輸?shù)某晒β?,最大化?bào)文的傳輸可能性。

關(guān)鍵詞:移動(dòng)網(wǎng)絡(luò);容斷網(wǎng)絡(luò);代理節(jié)點(diǎn);機(jī)會(huì)網(wǎng)絡(luò)

0引言

在移動(dòng)ad hoc網(wǎng)絡(luò)的實(shí)際應(yīng)用中,常會(huì)出現(xiàn)因節(jié)點(diǎn)移動(dòng)、障礙物反射、信號(hào)衰減等因素造成網(wǎng)絡(luò)在某些時(shí)刻不連通情況。傳統(tǒng)的移動(dòng)ad hoc網(wǎng)絡(luò)在傳輸數(shù)據(jù)之前,需要節(jié)點(diǎn)通過相應(yīng)的路由算法建立源到目的節(jié)點(diǎn)之間的路徑,然后將數(shù)據(jù)沿建好的路徑傳遞給目的節(jié)點(diǎn)。在這種數(shù)據(jù)傳輸模式下,就要求網(wǎng)絡(luò)在絕大部分時(shí)候處于連通狀態(tài),網(wǎng)絡(luò)中節(jié)點(diǎn)之間至少存在一條端到端的路徑。而在實(shí)際應(yīng)用中,由于某些客觀因素?zé)o法保證網(wǎng)絡(luò)一直處于連通狀態(tài),網(wǎng)絡(luò)可能被分割成若干個(gè)互不連通的子網(wǎng)[1]。當(dāng)源節(jié)點(diǎn)和目的節(jié)點(diǎn)不在同一子網(wǎng)時(shí),傳統(tǒng)的移動(dòng)ad hoc網(wǎng)絡(luò)路由機(jī)制就無法建立路由來完成數(shù)據(jù)傳輸。

由于節(jié)點(diǎn)可以隨機(jī)移動(dòng),當(dāng)節(jié)點(diǎn)通過移動(dòng)進(jìn)入彼此的通信范圍時(shí),便可以完成數(shù)據(jù)的交互,這使得網(wǎng)絡(luò)在不連通的條件下完成數(shù)據(jù)的交互成為可能。我們將這種利用節(jié)點(diǎn)移動(dòng)創(chuàng)造的相遇機(jī)會(huì)來完成數(shù)據(jù)傳遞的網(wǎng)絡(luò),稱為機(jī)會(huì)網(wǎng)絡(luò)[2]。

如果能夠解決在間歇性連通的網(wǎng)絡(luò)上傳遞數(shù)據(jù),在民用和軍事領(lǐng)域都有很廣泛的應(yīng)用和研究?jī)r(jià)值。與傳統(tǒng)無線網(wǎng)絡(luò)相比,機(jī)會(huì)網(wǎng)絡(luò)的拓?fù)鋭?dòng)態(tài)變化更頻繁,節(jié)點(diǎn)間沒有穩(wěn)定的傳輸路徑,甚至可能在任意時(shí)刻都沒有一條完整的傳輸路徑,使得那些依賴于穩(wěn)定傳輸路徑的傳統(tǒng)路由機(jī)制難以發(fā)揮作用。

1技術(shù)思路

本文所提出的路由思想與傳統(tǒng)移動(dòng)ad hoc所采用的表驅(qū)動(dòng)路由或按需路由相比[3],增加了對(duì)長(zhǎng)時(shí)延容忍的考慮,提出了一種新的數(shù)據(jù)封裝、數(shù)據(jù)緩存、數(shù)據(jù)包雙重利用以及數(shù)據(jù)包緩存時(shí)間動(dòng)態(tài)化等機(jī)制,同時(shí)強(qiáng)調(diào)了代理節(jié)點(diǎn)在網(wǎng)絡(luò)中所起的作用。

代理節(jié)點(diǎn)的選擇比較關(guān)鍵,其選擇好壞可以影響消息的轉(zhuǎn)發(fā)次數(shù)。代理節(jié)點(diǎn)的選擇基于歷史相遇記錄的概率估計(jì)和節(jié)點(diǎn)的社會(huì)性兩方面綜合考慮得出。節(jié)點(diǎn)的社會(huì)性主要由節(jié)點(diǎn)相似性和局部介效中心性兩部分組成。介數(shù)中心性是節(jié)點(diǎn)連接其他節(jié)點(diǎn)路徑程度上的度量,具有較大介數(shù)中心性的節(jié)點(diǎn)在網(wǎng)絡(luò)中的位置比較重要,有利它連接的節(jié)點(diǎn)之間的交互[4]。代理節(jié)點(diǎn)確定后,周期性廣播最小Age的代理節(jié)點(diǎn)通告消息。

假設(shè)存在如圖1所示的移動(dòng)通信網(wǎng)絡(luò)使用場(chǎng)景,各節(jié)點(diǎn)之間的有效通信距離有限。區(qū)域內(nèi)的各個(gè)節(jié)點(diǎn)在運(yùn)行過程中根據(jù)上述機(jī)制選舉出一個(gè)代理節(jié)點(diǎn)(或稱為中心節(jié)點(diǎn)/網(wǎng)關(guān)節(jié)點(diǎn))。區(qū)域內(nèi)的各個(gè)節(jié)點(diǎn)均知道代理節(jié)點(diǎn)是誰,并且知道本節(jié)點(diǎn)距離代理節(jié)點(diǎn)跳數(shù)(H);代理節(jié)點(diǎn)知道到達(dá)區(qū)域內(nèi)其他節(jié)點(diǎn)的顯式路徑。代理節(jié)點(diǎn)在被摧毀或者節(jié)點(diǎn)本身不足以提供代理節(jié)點(diǎn)功能之后,可以動(dòng)態(tài)的選舉出新的代理節(jié)點(diǎn)。

圖1 網(wǎng)絡(luò)拓?fù)涫疽?/p>

如果兩點(diǎn)間可直接交互(如M3傳遞數(shù)據(jù)給M2),就直接傳送數(shù)據(jù)。如果不能直接交互(如M3傳遞數(shù)據(jù)給M5),則將數(shù)據(jù)進(jìn)行封裝發(fā)送給代理節(jié)點(diǎn),由代理節(jié)點(diǎn)負(fù)責(zé)轉(zhuǎn)發(fā)。為了做到數(shù)據(jù)的可靠性傳輸,代理節(jié)點(diǎn)在收到數(shù)據(jù)后向源節(jié)點(diǎn)回傳一個(gè)確認(rèn)數(shù)據(jù)包,表明已經(jīng)受理該數(shù)據(jù),同時(shí)將該數(shù)據(jù)緩存起來,負(fù)責(zé)將其傳送到目標(biāo)節(jié)點(diǎn)。源節(jié)點(diǎn)接收到確認(rèn)數(shù)據(jù)包后撤銷對(duì)該數(shù)據(jù)的管理。目標(biāo)節(jié)點(diǎn)接收到數(shù)據(jù)后向代理節(jié)點(diǎn)回傳一個(gè)確認(rèn)數(shù)據(jù)包,表明已經(jīng)接收該數(shù)據(jù)。代理節(jié)點(diǎn)收到目標(biāo)節(jié)點(diǎn)的確認(rèn)數(shù)據(jù)包后撤銷對(duì)該數(shù)據(jù)的管理。也就是說,數(shù)據(jù)包只在源節(jié)點(diǎn)和代理節(jié)點(diǎn)上進(jìn)行緩存和管理,中間節(jié)點(diǎn)只負(fù)責(zé)傳遞。

數(shù)據(jù)包在向代理節(jié)點(diǎn)轉(zhuǎn)發(fā)的過程中,會(huì)在數(shù)據(jù)包中攜帶上所經(jīng)過的節(jié)點(diǎn)。代理節(jié)點(diǎn)收到外來數(shù)據(jù)包時(shí),從數(shù)據(jù)包中提取出顯式路徑保存到路由表中。當(dāng)數(shù)據(jù)包需要從代理節(jié)點(diǎn)向普通節(jié)點(diǎn)轉(zhuǎn)發(fā)時(shí),利用路由表中的顯式路徑傳遞。

假設(shè)在圖1中的M3需要向M5發(fā)送數(shù)據(jù),但M3發(fā)現(xiàn)它無法與M5直接交互,此時(shí)M3將數(shù)據(jù)進(jìn)行封裝,設(shè)置源節(jié)點(diǎn)為M3,目標(biāo)節(jié)點(diǎn)為Mc,距離代理節(jié)點(diǎn)跳數(shù)H=3,然后將數(shù)據(jù)包發(fā)送出去,該數(shù)據(jù)包可以被M2接收到。M2收到數(shù)據(jù)包后,發(fā)現(xiàn)該數(shù)據(jù)的目標(biāo)節(jié)點(diǎn)為Mc,它將不再封裝數(shù)據(jù),只需要修改距離代理節(jié)點(diǎn)跳數(shù)H=2,然后轉(zhuǎn)發(fā)出去。M1的處理方式與M2相同,它發(fā)送出去的數(shù)據(jù)即可被代理節(jié)點(diǎn)Mc接收到。當(dāng)Mc收到M3的數(shù)據(jù)后,針對(duì)該數(shù)據(jù)生成一個(gè)確認(rèn)數(shù)據(jù)包回傳給M3,并進(jìn)一步轉(zhuǎn)發(fā)該數(shù)據(jù)。Mc發(fā)出的數(shù)據(jù)經(jīng)過M4最終到達(dá)目標(biāo)節(jié)點(diǎn)M5。M5收到數(shù)據(jù)之后,發(fā)現(xiàn)源節(jié)點(diǎn)是代理節(jié)點(diǎn)Mc,它需要針對(duì)該數(shù)據(jù)生成一個(gè)確認(rèn)數(shù)據(jù)包回傳給Mc。Mc在接收到確認(rèn)數(shù)據(jù)包后,撤銷對(duì)該數(shù)據(jù)的管理,本次通信結(jié)束。

從總體技術(shù)實(shí)現(xiàn)上可以看出,區(qū)域內(nèi)存在兩種類型的節(jié)點(diǎn):普通節(jié)點(diǎn)和代理節(jié)點(diǎn)。普通節(jié)點(diǎn)上只需要保存距離代理節(jié)點(diǎn)跳數(shù)H,代理節(jié)點(diǎn)上需要保存其到達(dá)區(qū)域內(nèi)各個(gè)節(jié)點(diǎn)的顯式路徑。

2跳數(shù)學(xué)習(xí)

在網(wǎng)絡(luò)開通初期,各個(gè)節(jié)點(diǎn)不知道區(qū)域內(nèi)的代理節(jié)點(diǎn)是誰,其距離代理節(jié)點(diǎn)跳數(shù)H為多少,在此通過被動(dòng)學(xué)習(xí)方式來獲取。在網(wǎng)絡(luò)運(yùn)行起來之后,就可以從接收到的數(shù)據(jù)包中提取最新的距離代理節(jié)點(diǎn)跳數(shù)并動(dòng)態(tài)更新。

圖2 跳數(shù)探測(cè)過程

如圖2所示,由代理節(jié)點(diǎn)主動(dòng)發(fā)出跳數(shù)探測(cè)數(shù)據(jù)包,各普通節(jié)點(diǎn)接收處理跳數(shù)探測(cè)數(shù)據(jù)包并判斷是否繼續(xù)向外轉(zhuǎn)發(fā)。普通節(jié)點(diǎn)可以接收任何跳數(shù)的探測(cè)數(shù)據(jù)包,它選擇跳數(shù)值最小的作為本節(jié)點(diǎn)距離代理節(jié)點(diǎn)跳數(shù),將跳數(shù)值次之的作為備用跳數(shù),然后將本節(jié)點(diǎn)距離代理節(jié)點(diǎn)跳數(shù)向外轉(zhuǎn)發(fā)。

代理節(jié)點(diǎn)Mc發(fā)出一個(gè)跳數(shù)探測(cè)數(shù)據(jù)包,指示區(qū)域內(nèi)的當(dāng)前代理節(jié)點(diǎn)為Mc,距離代理節(jié)點(diǎn)跳數(shù)H=0,這個(gè)包可以同時(shí)被M1、M4、M6、M7接收到。當(dāng)M1、M4、M6、M7收到跳數(shù)探測(cè)包后,記錄區(qū)域內(nèi)的當(dāng)前代理節(jié)點(diǎn)為Mc,距離代理節(jié)點(diǎn)跳數(shù)H=1,同時(shí)繼續(xù)向外發(fā)送一個(gè)跳數(shù)探測(cè)數(shù)據(jù)包。當(dāng)M5接收到M4發(fā)出跳數(shù)探測(cè)數(shù)據(jù)包后,記錄區(qū)域內(nèi)的當(dāng)前代理節(jié)點(diǎn)為Mc,距離代理節(jié)點(diǎn)跳數(shù)H=2。當(dāng)M2接收到M1或M7發(fā)出的跳數(shù)探測(cè)數(shù)據(jù)包后,它只處理其中一個(gè)包而丟棄另外一個(gè)包,記錄區(qū)域內(nèi)的當(dāng)前代理節(jié)點(diǎn)為Mc,距離代理節(jié)點(diǎn)跳數(shù)H=2。M3可能會(huì)收到M2或M7發(fā)出的跳數(shù)探測(cè)數(shù)據(jù)包,此時(shí)它記錄區(qū)域內(nèi)的當(dāng)前代理節(jié)點(diǎn)為Mc,距離代理節(jié)點(diǎn)跳數(shù)H=2,同時(shí)把H=3作為其備用跳數(shù)。至此區(qū)域內(nèi)所有節(jié)點(diǎn)均學(xué)習(xí)到了代理節(jié)點(diǎn)是誰及其距離代理節(jié)點(diǎn)跳數(shù)是多少。

3路由學(xué)習(xí)

在網(wǎng)絡(luò)開通初期,代理節(jié)點(diǎn)不知道區(qū)域內(nèi)存在哪些節(jié)點(diǎn),更不知道其到各個(gè)節(jié)點(diǎn)的路徑是什么,在此也通過被動(dòng)學(xué)習(xí)方式來獲取。在網(wǎng)絡(luò)運(yùn)行起來之后,就可以從接收到的數(shù)據(jù)包中提取顯式路徑并動(dòng)態(tài)更新。

如圖3所示,當(dāng)普通節(jié)點(diǎn)學(xué)習(xí)到代理節(jié)點(diǎn)及距離代理節(jié)點(diǎn)跳數(shù)之后,主動(dòng)生成一個(gè)路徑探測(cè)數(shù)據(jù)包向代理節(jié)點(diǎn)發(fā)送,這個(gè)數(shù)據(jù)包根據(jù)攜帶的跳數(shù)選擇下一跳并記錄下經(jīng)過的節(jié)點(diǎn),當(dāng)該數(shù)據(jù)包到達(dá)代理節(jié)點(diǎn)后,代理節(jié)點(diǎn)即可從數(shù)據(jù)包中將該顯式路徑提取出來并保存。如果此時(shí)恰好有數(shù)據(jù)需要向代理節(jié)點(diǎn)發(fā)送,就不用發(fā)送路徑探測(cè)數(shù)據(jù)包了,因?yàn)樗鼈兌伎梢詫?shí)現(xiàn)路徑探測(cè)的功能。為了避免多個(gè)節(jié)點(diǎn)同時(shí)生成這種數(shù)據(jù)包導(dǎo)致信道搶占,對(duì)這種特殊數(shù)據(jù)包的產(chǎn)生采用一定的退避機(jī)制。

圖3 代理節(jié)點(diǎn)顯式路由生成

為了減少路徑探測(cè)數(shù)據(jù)包的數(shù)量,限制跳數(shù)為1跳的節(jié)點(diǎn)不能發(fā)送該類數(shù)據(jù)包。如果有跳數(shù)大于1的節(jié)點(diǎn)的路徑探測(cè)數(shù)據(jù)包經(jīng)過了某個(gè)節(jié)點(diǎn),該節(jié)點(diǎn)就不用再生成自己的路徑探測(cè)數(shù)據(jù)包了,代理節(jié)點(diǎn)會(huì)從之前經(jīng)過的那個(gè)路徑探測(cè)數(shù)據(jù)包中提取到該節(jié)點(diǎn)的顯式路徑。圖3中,M3發(fā)出的路徑探測(cè)數(shù)據(jù)包可將M3、M2、M1到代理節(jié)點(diǎn)的顯式路徑全部帶回去。

4業(yè)務(wù)轉(zhuǎn)發(fā)

4.1源節(jié)點(diǎn)發(fā)向代理節(jié)點(diǎn)

源節(jié)點(diǎn)向代理節(jié)點(diǎn)轉(zhuǎn)發(fā)的數(shù)據(jù)包采用探測(cè)轉(zhuǎn)發(fā)的方式。在移動(dòng)ad hoc網(wǎng)絡(luò)中,由于一個(gè)節(jié)點(diǎn)發(fā)出的數(shù)據(jù)可以同時(shí)被多個(gè)節(jié)點(diǎn)接收到,因此需要對(duì)其進(jìn)行控制,以免數(shù)據(jù)在無線網(wǎng)絡(luò)中出現(xiàn)同一數(shù)據(jù)循環(huán)發(fā)送的現(xiàn)象,造成無線信道被搶占和電池能量的耗費(fèi)。數(shù)據(jù)包中所攜帶的本節(jié)點(diǎn)距離代理節(jié)點(diǎn)跳數(shù),正是為了實(shí)現(xiàn)這個(gè)目的。

當(dāng)本節(jié)點(diǎn)距離代理節(jié)點(diǎn)跳數(shù)小于數(shù)據(jù)包中所攜帶的跳數(shù)時(shí),節(jié)點(diǎn)才將該數(shù)據(jù)包轉(zhuǎn)發(fā)出去,否則直接拋棄所接收的數(shù)據(jù)包。這種機(jī)制可以讓數(shù)據(jù)以最短跳數(shù)方式到達(dá)代理節(jié)點(diǎn)。數(shù)據(jù)包到達(dá)代理節(jié)點(diǎn)后,代理節(jié)點(diǎn)會(huì)從數(shù)據(jù)包中提取出本次經(jīng)過的顯式路徑,并將其作為最新路徑保存下來,以供今后代理節(jié)點(diǎn)需要向源節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)時(shí)使用。

從圖4中可以看出,M3發(fā)送數(shù)據(jù)到Mc存在兩條路線:M3→M7→c和M3→M2→M1→Mc。M3在封裝數(shù)據(jù)包時(shí),填寫距離代理節(jié)點(diǎn)跳數(shù)H=2,發(fā)送出去的數(shù)據(jù)包會(huì)同時(shí)被M2和M7接收到。當(dāng)M7接收到數(shù)據(jù)包后,發(fā)現(xiàn)自己距代理節(jié)點(diǎn)跳數(shù)為1,它會(huì)更改跳數(shù)H=1并將數(shù)據(jù)轉(zhuǎn)發(fā)出去。當(dāng)M2接收到數(shù)據(jù)包后,發(fā)現(xiàn)自己距離代理節(jié)點(diǎn)跳數(shù)也為2,它將直接丟棄該數(shù)據(jù)不再進(jìn)行轉(zhuǎn)發(fā)。這種機(jī)制使得數(shù)據(jù)傳送選擇M3→M7→Mc路線。

圖4 源節(jié)點(diǎn)數(shù)據(jù)包探測(cè)轉(zhuǎn)發(fā)

4.2代理節(jié)點(diǎn)確認(rèn)反饋

代理節(jié)點(diǎn)向源節(jié)點(diǎn)傳送的確認(rèn)數(shù)據(jù)包,并標(biāo)識(shí)該確認(rèn)數(shù)據(jù)包是代理節(jié)點(diǎn)生成的。由于代理節(jié)點(diǎn)從接收到的源節(jié)點(diǎn)數(shù)據(jù)包內(nèi)部提取出了數(shù)據(jù)包前向轉(zhuǎn)發(fā)時(shí)所經(jīng)過的各個(gè)節(jié)點(diǎn),代理節(jié)點(diǎn)回傳給源節(jié)點(diǎn)的確認(rèn)數(shù)據(jù)包可以按照顯式路徑返回。

從圖5可以看出,在代理節(jié)點(diǎn)Mc向源節(jié)點(diǎn)M3返回確認(rèn)數(shù)據(jù)包時(shí),存在兩條路徑:Mc→M1→M2→M3和Mc→M7→M3。Mc在封裝確認(rèn)數(shù)據(jù)包時(shí)填寫返程路徑為M7→M3,Mc發(fā)出的數(shù)據(jù)包會(huì)同時(shí)被M1、M4、M6和M7接收到。當(dāng)M1、M4和M6接收到數(shù)據(jù)包后,發(fā)現(xiàn)自己不包含在顯式路徑中,就直接丟棄該數(shù)據(jù)包。當(dāng)M7接收到數(shù)據(jù)包后,發(fā)現(xiàn)自己包含在顯式路徑中,它將數(shù)據(jù)包的顯式路徑中去掉自己,重新封裝確認(rèn)數(shù)據(jù)包填寫返程路徑為M3并發(fā)送出去。M3在接收到確認(rèn)數(shù)據(jù)包后釋放對(duì)原數(shù)據(jù)的管理。

圖5 代理節(jié)點(diǎn)確認(rèn)反饋

4.3代理節(jié)點(diǎn)發(fā)向目標(biāo)節(jié)點(diǎn)

由于代理節(jié)點(diǎn)上有到區(qū)域內(nèi)任何一個(gè)節(jié)點(diǎn)的顯式路徑,所以代理節(jié)點(diǎn)在封裝數(shù)據(jù)時(shí)會(huì)將路徑攜帶上,向目標(biāo)節(jié)點(diǎn)發(fā)送的數(shù)據(jù)包將按照顯式路徑進(jìn)行傳遞,該過程與代理節(jié)點(diǎn)發(fā)向源節(jié)點(diǎn)的傳送方式相同。

4.4目標(biāo)節(jié)點(diǎn)確認(rèn)反饋

當(dāng)目標(biāo)節(jié)點(diǎn)接收到來自代理節(jié)點(diǎn)的數(shù)據(jù)包時(shí),它需要向代理節(jié)點(diǎn)回傳確認(rèn)數(shù)據(jù)包,并標(biāo)識(shí)該確認(rèn)數(shù)據(jù)包是由目標(biāo)節(jié)點(diǎn)生成的,傳送過程與源節(jié)點(diǎn)發(fā)向代理節(jié)點(diǎn)的過程相同。這個(gè)確認(rèn)數(shù)據(jù)包在帶回確認(rèn)消息的同時(shí),也帶回了從Mc到達(dá)目標(biāo)節(jié)點(diǎn)的最新顯式路徑,Mc會(huì)將該顯式路徑更新到路由表中。

如圖6所示,之所以采用這種處理機(jī)制,是因?yàn)殡m然可以讓M5知道數(shù)據(jù)是從Mc→M4→M5傳遞過來的,但是等到M5回傳數(shù)據(jù)時(shí),有可能由于M4已關(guān)機(jī)或者中間障礙物的阻擋或者受到電磁干擾等因素,回程路徑已經(jīng)不可達(dá)。而且采用顯式路徑返回與采用回程探測(cè)路徑方式返回所占用的資源完全相同,還能獲得最新可用路徑。

圖6 目標(biāo)節(jié)點(diǎn)確認(rèn)反饋

4.5數(shù)據(jù)中途截獲

在無線鏈路上傳輸數(shù)據(jù)時(shí),可能出現(xiàn)圖7所示的情況:M3需要向M1發(fā)送數(shù)據(jù),由于M3不能直接與M1交互,需要將數(shù)據(jù)進(jìn)行封裝發(fā)送給代理節(jié)點(diǎn)Mc,由Mc負(fù)責(zé)轉(zhuǎn)發(fā),但是向Mc轉(zhuǎn)發(fā)的時(shí)候又會(huì)經(jīng)過目標(biāo)節(jié)點(diǎn)M1。這時(shí)就沒有必要再傳送到Mc節(jié)點(diǎn)去了,需要目標(biāo)節(jié)點(diǎn)具備中途截獲數(shù)據(jù)的功能。

圖7 數(shù)據(jù)包中途截獲

當(dāng)節(jié)點(diǎn)接收到發(fā)往代理節(jié)點(diǎn)的前向轉(zhuǎn)發(fā)數(shù)據(jù)包時(shí),它需要查看封裝的數(shù)據(jù)內(nèi)容,判斷目標(biāo)節(jié)點(diǎn)是否為自己。如果不是自己,則繼續(xù)向外轉(zhuǎn)發(fā);如果發(fā)現(xiàn)目標(biāo)節(jié)點(diǎn)就是自己,說明數(shù)據(jù)已經(jīng)到達(dá)目的端,它將該數(shù)據(jù)截獲下來,然后生成一個(gè)確認(rèn)數(shù)據(jù)包返回給源節(jié)點(diǎn),并標(biāo)識(shí)該確認(rèn)數(shù)據(jù)包是由目標(biāo)節(jié)點(diǎn)生成。圖中的紅色虛線表示是目標(biāo)節(jié)點(diǎn)直接向源節(jié)點(diǎn)返回的確認(rèn)數(shù)據(jù)包。

4.6緩存時(shí)間動(dòng)態(tài)化

當(dāng)引入數(shù)據(jù)中途截獲機(jī)制后,可能會(huì)出現(xiàn)圖8所示的兩種情況。情況一:M3需要向M7發(fā)送數(shù)據(jù),當(dāng)數(shù)據(jù)到達(dá)M2時(shí),就可以被M7接收到并返回確認(rèn)數(shù)據(jù)包,而M1也會(huì)繼續(xù)將數(shù)據(jù)傳送到Mc上去,并由Mc向M3返回確認(rèn)數(shù)據(jù)包,同時(shí)Mc還會(huì)將數(shù)據(jù)再一次的向M7轉(zhuǎn)發(fā)并要求M7返回確認(rèn)數(shù)據(jù)包。情況二:M5需要向M6發(fā)送數(shù)據(jù),M5不能直接與M6交互,當(dāng)封裝好的數(shù)據(jù)包傳遞到M4后,M4發(fā)出的數(shù)據(jù)包會(huì)同時(shí)被M6和Mc接收到,Mc會(huì)向M5回傳確認(rèn)數(shù)據(jù)包,M6也會(huì)向M5回傳確認(rèn)數(shù)據(jù)包,而且Mc還會(huì)向M6轉(zhuǎn)發(fā)數(shù)據(jù)并要求M6返回確認(rèn)數(shù)據(jù)包。

圖8 緩存時(shí)間動(dòng)態(tài)化

通過對(duì)上述過程分析,目標(biāo)節(jié)點(diǎn)可能會(huì)兩次收到同一個(gè)數(shù)據(jù)包,這可以在應(yīng)用層通過數(shù)據(jù)內(nèi)容過濾掉。源節(jié)點(diǎn)針對(duì)同一個(gè)數(shù)據(jù)包可能會(huì)接收到兩個(gè)確認(rèn)數(shù)據(jù)包。針對(duì)第二個(gè)現(xiàn)象,我們引入數(shù)據(jù)包緩存時(shí)間動(dòng)態(tài)化的機(jī)制。

源節(jié)點(diǎn)對(duì)需要發(fā)送出去的數(shù)據(jù)包的緩存時(shí)間可以很長(zhǎng),在收到確認(rèn)數(shù)據(jù)包之后才將主動(dòng)清除緩存的數(shù)據(jù)包;代理節(jié)點(diǎn)對(duì)需要中轉(zhuǎn)的數(shù)據(jù)包的緩存時(shí)間也可以很長(zhǎng),得到確認(rèn)之后才主動(dòng)刪除緩存的數(shù)據(jù)包;目標(biāo)節(jié)點(diǎn)將收到的數(shù)據(jù)包直接交給應(yīng)用層處理,不需要進(jìn)行緩存。源節(jié)點(diǎn)只要接收到該數(shù)據(jù)的確認(rèn)數(shù)據(jù)包后就可以撤銷對(duì)其的管理,而不管該確認(rèn)數(shù)據(jù)包是由目標(biāo)節(jié)點(diǎn)生成的還是由代理節(jié)點(diǎn)生成的。

4.7數(shù)據(jù)包多重利用

通過對(duì)上述思想及流程的分析,我們可以發(fā)現(xiàn)數(shù)據(jù)包可以歸納出兩個(gè)功能:傳遞數(shù)據(jù)和探測(cè)路由。為了減少無線網(wǎng)絡(luò)中發(fā)送的數(shù)據(jù)包的數(shù)量,需要將發(fā)送的數(shù)據(jù)充分的利用起來,在此提出兩種應(yīng)用模式。

(1)距離代理節(jié)點(diǎn)跳數(shù)和顯式路徑的探測(cè)

距離代理節(jié)點(diǎn)跳數(shù)和顯式路徑的探測(cè),通過專門設(shè)計(jì)的兩個(gè)TLV實(shí)現(xiàn)。

對(duì)于顯式路徑的探測(cè),在普通節(jié)點(diǎn)發(fā)往代理節(jié)點(diǎn)的數(shù)據(jù)包中,封裝一個(gè)顯式路徑TLV來實(shí)現(xiàn)顯示路徑的搜集。

對(duì)于距離代理節(jié)點(diǎn)跳數(shù)的探測(cè),除了在網(wǎng)絡(luò)開通初期發(fā)送出去的跳數(shù)探測(cè)數(shù)據(jù)包中封裝距離跳數(shù)TLV之外,在代理節(jié)點(diǎn)發(fā)往普通節(jié)點(diǎn)的數(shù)據(jù)包中也封裝一個(gè)距離跳數(shù)TLV進(jìn)去。中間節(jié)點(diǎn)可以對(duì)距離跳數(shù)TLV進(jìn)行動(dòng)態(tài)調(diào)整,這樣各節(jié)點(diǎn)收到數(shù)據(jù)包的同時(shí)也學(xué)習(xí)到了當(dāng)前距離代理節(jié)點(diǎn)的最短跳數(shù)。距離代理節(jié)點(diǎn)跳數(shù)的動(dòng)態(tài)調(diào)整過程通過圖9的示例進(jìn)行說明。

圖9 距離跳數(shù)動(dòng)態(tài)調(diào)整

如圖9左邊所示,假設(shè)代理節(jié)點(diǎn)Mc當(dāng)前路由表中保存的到達(dá)M3顯式路徑為Mc→M1→M2→M3,而此時(shí)M2已經(jīng)轉(zhuǎn)移到了新的位置,使得M3距離代理節(jié)點(diǎn)跳數(shù)變成了2。Mc根據(jù)該顯式路徑封裝數(shù)據(jù)包并設(shè)置距離代理節(jié)點(diǎn)跳數(shù)H=0,發(fā)出的數(shù)據(jù)包可以被M1和M2接收到。M1接收到該數(shù)據(jù)包后進(jìn)行處理,它轉(zhuǎn)發(fā)的數(shù)據(jù)包已經(jīng)不能到達(dá)目標(biāo)節(jié)點(diǎn)M3了。M2接收到該數(shù)據(jù)包后進(jìn)行處理,它將距離跳數(shù)改為H=1,并將顯示路徑中的M1、M2去除,直接向M3轉(zhuǎn)發(fā)。M3收到數(shù)據(jù)包后,通過跳數(shù)TLV即可學(xué)習(xí)到其最新距離跳數(shù)為2。

如圖9右邊所示,假設(shè)代理節(jié)點(diǎn)Mc當(dāng)前路由表中保存的到達(dá)M5顯式路徑為Mc→M6→M7→M4→M5,而此時(shí)M4已經(jīng)轉(zhuǎn)移到了新的位置,使得M5距離代理節(jié)點(diǎn)跳數(shù)變成了2。Mc根據(jù)該顯式路徑封裝數(shù)據(jù)包并設(shè)置距離代理節(jié)點(diǎn)跳數(shù)H=0,發(fā)出的數(shù)據(jù)包可以被M6和M4接收到。M4接收到該數(shù)據(jù)包后進(jìn)行處理,將距離跳數(shù)改為H=1,并將顯示路徑中的M6、M7、M4去除,直接向M5轉(zhuǎn)發(fā)。M6接收到該數(shù)據(jù)包后進(jìn)行處理,將距離跳數(shù)改為H=1,并將顯式路徑中的M6去除,向M4和M7轉(zhuǎn)發(fā)。M7接收到該數(shù)據(jù)包后進(jìn)行處理,將距離跳數(shù)改為H=2,并將顯式路徑中的M7去除,它轉(zhuǎn)發(fā)出來的數(shù)據(jù)將不能到達(dá)目標(biāo)節(jié)點(diǎn)M5了。這樣目標(biāo)節(jié)點(diǎn)M5會(huì)收到M4發(fā)送過來的兩條相同的數(shù)據(jù)包,但是距離代理節(jié)點(diǎn)跳數(shù)分別為2和3,M5會(huì)選擇H=2作為自己的距離代理節(jié)點(diǎn)跳數(shù)。M5在返回確認(rèn)數(shù)據(jù)包的時(shí)候就可以將最新的顯式路徑送回代理節(jié)點(diǎn)并更新。

(2)多數(shù)據(jù)包組合

在圖10所示中,①為源節(jié)點(diǎn)向代理節(jié)點(diǎn)發(fā)送的數(shù)據(jù)包;②為代理節(jié)點(diǎn)發(fā)往目標(biāo)節(jié)點(diǎn)的數(shù)據(jù)包;③為代理節(jié)點(diǎn)向源節(jié)點(diǎn)回傳的確認(rèn)數(shù)據(jù)包;④為目標(biāo)節(jié)點(diǎn)向代理節(jié)點(diǎn)發(fā)送的確認(rèn)數(shù)據(jù)包;⑤為代理節(jié)點(diǎn)向源節(jié)點(diǎn)發(fā)送的數(shù)據(jù)包;⑥為代理節(jié)點(diǎn)向目標(biāo)節(jié)點(diǎn)發(fā)送的數(shù)據(jù)包。

圖10 多數(shù)據(jù)包組合

可以看出,③和⑤、④和⑥的傳送方式一致,如果它們發(fā)送的間隔很短,那么它們走的路徑是完全相同的,因此為了減少無線網(wǎng)絡(luò)中傳遞數(shù)據(jù)包的數(shù)量,可以將這樣的數(shù)據(jù)包組合成一個(gè)數(shù)據(jù)包進(jìn)行傳遞。也就是說,源節(jié)點(diǎn)和目標(biāo)節(jié)點(diǎn)相同的數(shù)據(jù)在短時(shí)間內(nèi)所經(jīng)過的路徑是相同的,可以將短時(shí)間內(nèi)兩個(gè)或多個(gè)這樣的數(shù)據(jù)包組合成一個(gè)數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā),可以有效節(jié)省鏈路開銷,提供數(shù)據(jù)傳送效率。

5結(jié)語(yǔ)

本文利用選舉出的代理節(jié)點(diǎn)來實(shí)現(xiàn)間歇性連通網(wǎng)絡(luò)中的消息擺渡,提升稀疏環(huán)境下網(wǎng)絡(luò)的數(shù)據(jù)傳輸?shù)男阅芎蛿U(kuò)展性。數(shù)據(jù)源在首次發(fā)送數(shù)據(jù)報(bào)文時(shí)采用了探測(cè)發(fā)送機(jī)制,其本質(zhì)還是泛洪,利用跳數(shù)和攜帶顯示路徑等機(jī)制來限制洪泛的范圍?;诜汉榈穆酚伤惴ň哂休^好健壯性和較低的數(shù)據(jù)傳輸時(shí)延等特點(diǎn),但該算法在數(shù)據(jù)傳輸過程中也會(huì)消耗較多能量,占用較多的帶寬資源和存儲(chǔ)空間。如果網(wǎng)絡(luò)規(guī)模較大或者節(jié)點(diǎn)的存儲(chǔ)空間或帶寬有限時(shí),本算法就會(huì)呈現(xiàn)出不足的一面來。在未來的工作中,我們會(huì)考慮引入跨層機(jī)制[5]、增強(qiáng)對(duì)鄰居信息的感知等手段來減少首次報(bào)文投遞的盲目性,并進(jìn)一步減少報(bào)文傳輸開銷。

參考文獻(xiàn):

[1]錢雁斌,陳性元,杜學(xué)繪等. 無線多跳空間網(wǎng)絡(luò)間歇連通性問題研究[J]. 計(jì)算機(jī)科學(xué),2009,36(11):52-55.

QIAN Yan-bin,CHEN Xing-yuan,DU Xue-hui,et al. Research on Intermittent Connectivity for Wireless Multiple-hop Space Network [J]. Computer Science,2009,36(11):52-55.

[2]楊勇. 基于地理位置信息的機(jī)會(huì)網(wǎng)絡(luò)路由算法研究[D]. 重慶:重慶郵電大學(xué),2013.

YANG Yong. A Study on Location-based Routing Algorithms for Opportunistic Networks. Chongqing University of Posts and Telecommunications, 2013.

[3]沈亮光,汪學(xué)明. 移動(dòng) Ad hoc 網(wǎng)絡(luò)ZRP 路由協(xié)議的仿真分析[J].通信技術(shù),2013, 46(08):71-73.SHENG Liang-guang, WANG Xue-ming. Simulation Analysis of ZRP Routing Protocol in Mobile Ad hoc Network[J]. Communications Technology,2013,46(08):71-73.

[4]Newman M E J. A Measure of Betweenness Centrality based on Random Walks[J]. Social Networks, 2005,27(5):39-54.

[5]LIU C, WU J. On Multicopy Opportunistic Forwarding Protocols in Nondeterministic Delay Tolerant Networks[J].IEEE Transactions On Parallel and Dislributed Systems,2012,23(6):1121-1128.

Service Transfer and Routing Algorithm for Intermittent Connectivity Network

KANG Zong-xu1, LEI Wen-hu1,LI Guang-zhi2,SU Ling-xu1

(1.Chongqing Jinmei Communication Co.,Ltd., Chongqing 400030, China;2.PLA Military Representative Office Posted in Chongqing Gas Compressor Co., Ltd., Chongqing 400030,China)

Abstract:Mobile network is required to adapt various complex application environments. In the scene of low node density and high mobility, it is difficult for the sparse node to guarantee the stability and full connectivity of network topology. In such a non-ideal network environment, traditional routing algorithm, for frequent network interruption, intermittent connection and fairly large network delay, could not establish a stable end-to-end routing path and finally would cease to be effective. In view of the intermittent connection for mobile network, and in combination with DTN ideology, the proposed algorithm could catch the opportunity for nodes to meet each other and effectively implement message interaction and by depending on the agent node, improve the success rate of message transmission and provide reliable message delivery.

Key words:mobile networks;disruption tolerant networks(DTN);agent node;opportunistic networks

doi:10.3969/j.issn.1002-0802.2016.05.016

* 收稿日期:2015-12-12;修回日期:2016-03-25Received date:2015-12-12;Revised date:2016-03-25

中圖分類號(hào):TP393.0

文獻(xiàn)標(biāo)志碼:A

文章編號(hào):1002-0802(2016)05-0593-06

作者簡(jiǎn)介:

康宗緒(1972—),男,碩士,高級(jí)工程師,主要研究方向?yàn)橛?jì)算機(jī)網(wǎng)絡(luò)及通信技術(shù);

雷文虎(1980—),男,碩士,工程師,主要研究方向?yàn)橛?jì)算機(jī)網(wǎng)絡(luò)技術(shù);

李廣志(1978—),男,學(xué)士,工程師,主要研究方向?yàn)榫W(wǎng)絡(luò)通信技術(shù);

蘇凌旭(1977—),男,碩士,工程師,主要研究方向?yàn)橥ㄐ艆f(xié)議處理。

猜你喜歡
移動(dòng)網(wǎng)絡(luò)
移動(dòng)網(wǎng)絡(luò)的大學(xué)英語(yǔ)微課自主學(xué)習(xí)引導(dǎo)研究
基于移動(dòng)互聯(lián)網(wǎng)的課程教學(xué)輔助系統(tǒng)的構(gòu)建及應(yīng)用
網(wǎng)絡(luò)經(jīng)濟(jì)背景下PC網(wǎng)絡(luò)及移動(dòng)網(wǎng)絡(luò)博弈分析
蜂窩網(wǎng)絡(luò)終端直通通信功率控制研究
移動(dòng)網(wǎng)絡(luò)的信息安全管理
基于移動(dòng)網(wǎng)絡(luò)的語(yǔ)音集群通信系統(tǒng)
論中學(xué)生沉迷手機(jī)的原因與危害及應(yīng)對(duì)措施
淺析移動(dòng)社交網(wǎng)絡(luò)語(yǔ)義話題的若干關(guān)鍵技術(shù)
移動(dòng)互聯(lián)網(wǎng)絡(luò)對(duì)大學(xué)生心理影響及對(duì)策研究
微信營(yíng)銷的發(fā)展前景分析