(空軍工程大學(xué) 電訊工程學(xué)院,西安 710077)
短波數(shù)據(jù)通信由于其自身信道的不穩(wěn)定性,相較于其它通信方式存在信道質(zhì)量差、丟包率高等特點,且電離層的變化、多徑干擾、衰落、頻偏等因素都會影響數(shù)據(jù)的傳輸。
美軍在MIL-STD-188-184軍標中定義了無線多播數(shù)據(jù)鏈路協(xié)議;Johnson博士借鑒ACP142中的P-MUL協(xié)議定義了一種需要接收方反饋ACK/NCK信息的短波通信可靠多播協(xié)議;北約標準STANAG4538定義了一對數(shù)據(jù)傳輸協(xié)議HDL(High throughput Data Link)和LDL(Low latency Data Link);Harris公司在HDL的基礎(chǔ)上發(fā)展了一種新的數(shù)據(jù)鏈路傳輸協(xié)議HDL+,并在其生產(chǎn)的商業(yè)短波電臺中提供了一種不需要答復(fù)的廣播服務(wù)[1]。通過對這些協(xié)議的分析發(fā)現(xiàn),目前短波多播群組管理方面還不是很完善。
在多播協(xié)議中群組管理是需要解決的一個重要問題,外軍協(xié)議也未對多播的群組管理問題給出清晰的設(shè)計方案,網(wǎng)絡(luò)結(jié)構(gòu)只是傳統(tǒng)的單層模型。多播數(shù)據(jù)傳輸網(wǎng)絡(luò)內(nèi)部成員數(shù)量并不固定,當有臨時節(jié)點加入或退出時,存在工作效率低、節(jié)點處理時延較長、網(wǎng)絡(luò)復(fù)雜度較高等問題。本文針對這些問題,在基于異步短波通信可靠多播協(xié)議條件下,提出一種樹形分層多播網(wǎng)絡(luò)群組管理模型,通過“分層”降低短波多播網(wǎng)絡(luò)在有節(jié)點加入或退出時與網(wǎng)絡(luò)內(nèi)部成員的交互次數(shù),使上述問題能得到明顯改善。
由于第二代短波通信并沒有實現(xiàn)發(fā)送方和接收方的時鐘同步,故短波可靠多播傳輸協(xié)議都是基于異步反饋的條件,因此在實現(xiàn)可靠多播時存在的主要問題是反饋信息的信道爭用方式[2]。
短波網(wǎng)絡(luò)中應(yīng)對每個節(jié)點進行編號,以便區(qū)分和管理,同時要求編號自適應(yīng)調(diào)整。當有節(jié)點加入時,其節(jié)點編號自動補到網(wǎng)絡(luò)末尾;當有節(jié)點退出時,該節(jié)點編號由網(wǎng)絡(luò)最末編號頂替。一般來說,發(fā)送數(shù)據(jù)的多播節(jié)點的網(wǎng)絡(luò)編號為1,在網(wǎng)絡(luò)內(nèi)某一節(jié)點需要發(fā)送數(shù)據(jù)時,對應(yīng)節(jié)點網(wǎng)絡(luò)編號自動更新為1,而原1號節(jié)點的網(wǎng)絡(luò)編號自動更新為當前多播節(jié)點的原網(wǎng)絡(luò)編號,這主要是為了方便后面接收節(jié)點的超時計算。
多播節(jié)點處理接收節(jié)點的反饋信息。反饋信息是在多播節(jié)點向網(wǎng)絡(luò)內(nèi)所有接收節(jié)點發(fā)送完全部數(shù)據(jù)之后傳輸,按照一定的信道爭用方式順序發(fā)送反饋信息,采用一個類似于令牌環(huán)的信道爭用方式。以多播節(jié)點為例,在多播節(jié)點發(fā)送完全部數(shù)據(jù)后,各接收節(jié)點按照網(wǎng)絡(luò)編號依次發(fā)送反饋信息,當編號為2的接收節(jié)點收到多播節(jié)點的數(shù)據(jù)發(fā)送完畢標志位之后,首先廣播反饋信息,多播節(jié)點與其它接收節(jié)點都將收到這個信息,則編號為3及后續(xù)節(jié)點也將依次發(fā)送自己的反饋信息。
由于短波數(shù)據(jù)傳輸?shù)牡涂煽啃?,所有二級?jié)點特別是與自身編號相鄰的接收節(jié)點可能會出現(xiàn)信息丟失情況,因此對于某一個接收節(jié)點從最近的一次接收到其它接收節(jié)點的反饋信息開始根據(jù)相應(yīng)編號的差值計算并更新超時,多播節(jié)點同樣計算并更新超時。單節(jié)點傳輸超時的設(shè)定略大于實際反饋信息發(fā)送所需的時間,同時對超時設(shè)定要確保滿足以下條件:
Tturnar+(n-2)Ttran+Tmax>(n-2)Tmax+Ttran
(1)
(2)
式中,n為二級節(jié)點數(shù),Tmax為實際節(jié)點反饋信息需要的傳輸時間,Tturnar是鏈路輪回時間,Ttran是為單節(jié)點超時設(shè)定。
這樣保證了在極限情況下反饋信道不發(fā)生擁塞:即在編號為n-1的接收節(jié)點沒有收到任何前面接收節(jié)點反饋信息,同時其它接收節(jié)點均可以正確接收反饋信息;編號為n的接收節(jié)點無法接收到編號為n-1的接收節(jié)點反饋信息的情況下,編號為n-1的節(jié)點從多播節(jié)點接收信息的接收標志開始計算超時后發(fā)送反饋信息,仍然與編號為n的接收節(jié)點接收到編號為n-2的接收節(jié)點的反饋信息開始計算超時后發(fā)送發(fā)反饋信息的數(shù)據(jù)不發(fā)生碰撞。
當接收節(jié)點返回的是ACK信息時,則不再接收多播節(jié)點,針對其它接收節(jié)點要求重發(fā)數(shù)據(jù),直到新一輪多播開始。
對于多播節(jié)點在接收到反饋信息之后,自動記錄返回ACK或NCK的子網(wǎng)編號,同時根據(jù)所有的NCK信息確定需要重發(fā)的數(shù)據(jù)包隊列。實際中存在多播節(jié)點未收到某一個接收節(jié)點的反饋信息,系統(tǒng)設(shè)定若在第五次多播中仍沒有這個接收節(jié)點的反饋信息,則認為這個接收節(jié)點第一次丟失的是ACK信息,系統(tǒng)默認該接收節(jié)點已經(jīng)可靠接收全部數(shù)據(jù),多播節(jié)點就不需要繼續(xù)給該節(jié)點發(fā)送數(shù)據(jù)。若存在只有一個接收節(jié)點的反饋信息丟失而其它節(jié)點均為ACK信息的情況,多播節(jié)點無法確認丟失為何種反饋信息及需要重傳的數(shù)據(jù)包隊列,就將上一次發(fā)送的數(shù)據(jù)包隊列進行重新發(fā)送。
單層多播網(wǎng)絡(luò)是單個多播節(jié)點對多個接收節(jié)點的單層網(wǎng)絡(luò)結(jié)構(gòu)(見圖1),當有一個節(jié)點或多個節(jié)點需要加入或退出該網(wǎng)絡(luò)時,則需要通知該網(wǎng)絡(luò)的所有節(jié)點。
圖1 單層多播網(wǎng)絡(luò)模型
假設(shè)多播網(wǎng)絡(luò)有n個節(jié)點,采用異步短波可靠多播協(xié)議,若有m個節(jié)點需加入該網(wǎng)絡(luò),則必須通知網(wǎng)絡(luò)中所有節(jié)點。為了防止頻率沖突,該節(jié)點不能在網(wǎng)絡(luò)多播時加入,而且該節(jié)點不是網(wǎng)絡(luò)成員,所以不能以廣播形式通知該網(wǎng)絡(luò)的所有節(jié)點,故只能采取點對點的方式進行通知。在通知過程中,若出現(xiàn)數(shù)據(jù)丟失,則丟失數(shù)據(jù)的節(jié)點根據(jù)反饋到該節(jié)點的信息來確定重發(fā)的數(shù)據(jù)。當該節(jié)點收到網(wǎng)絡(luò)內(nèi)所有節(jié)點的確認信息后,該節(jié)點加入網(wǎng)絡(luò)成功,直到m個節(jié)點均加入到該網(wǎng)絡(luò)為止。
假設(shè)添加第一個節(jié)點時網(wǎng)絡(luò)有n個節(jié)點,Pe為數(shù)據(jù)交付率,T服從二項分布,xi為概率大小,則:
TT1ωXiPe1-Pe
其中T1為發(fā)送信息的時間和收到確認信息所用的時間之和,t為通知一個節(jié)點成功所需時間,則添加1個節(jié)點所需總時間為
Tall=[T1·Pe+ω·(1-Pe)]·n+t·n
(3)
令t=T1·Pe+ω·(1-Pe),則添加m個節(jié)點需要的時間為
T=tn+t(n+1)+…+t(n+m-1)=
(4)
而網(wǎng)絡(luò)內(nèi)節(jié)點的退出分為兩種情況。第一種是某節(jié)點通知網(wǎng)絡(luò)退出的情況,該節(jié)點必須通知網(wǎng)絡(luò)內(nèi)所有節(jié)點,發(fā)送退出信息,并處理反饋信息,在收到網(wǎng)絡(luò)內(nèi)所有節(jié)點的確認反饋信息后,該節(jié)點退出。網(wǎng)絡(luò)內(nèi)節(jié)點總數(shù)為n,退出節(jié)點數(shù)為m,數(shù)據(jù)交付率為Pe,則若退出m個節(jié)點需要的時間為
(5)
第二種是某節(jié)點在未通知網(wǎng)絡(luò)的情況下退出,此時,多播節(jié)點在多播時將不會得到該節(jié)點的反饋信息,根據(jù)若干次超時計算,多播節(jié)點就判定該節(jié)點退出,并將這一信息多播給網(wǎng)絡(luò)其它節(jié)點,在收到所有節(jié)點反饋信息后,該節(jié)點確認退出。
在短波網(wǎng)絡(luò)初建時將整個網(wǎng)絡(luò)劃分為若干個子網(wǎng)絡(luò)[3],子網(wǎng)不影響各節(jié)點之間的點對點通信(如圖2)。各子網(wǎng)中規(guī)定一個節(jié)點作為該子網(wǎng)的首節(jié)點,即群首節(jié)點,另外規(guī)定一個節(jié)點作為備用群首節(jié)點,設(shè)置備用群首節(jié)點是為了避免該子網(wǎng)群首節(jié)點變?yōu)橄麓味嗖ス?jié)點而導(dǎo)致加入網(wǎng)絡(luò)失敗,當群首節(jié)點成為下次多播節(jié)點時,備用節(jié)點將頂替該群首節(jié)點,成為該子網(wǎng)新的群首節(jié)點。臨時有節(jié)點加入網(wǎng)絡(luò)時,在可覆蓋范圍內(nèi),根據(jù)鏈路質(zhì)量分析原則任意加入到與自己通信狀況最好的群首節(jié)點,并加入該群首節(jié)點所在的子網(wǎng)中[4]。
圖2 分層可靠多播網(wǎng)絡(luò)模型
子網(wǎng)內(nèi)的群首節(jié)點可以由任意節(jié)點擔任,但是在網(wǎng)絡(luò)建立初期就已經(jīng)選定好。
假設(shè)分層多播網(wǎng)絡(luò)內(nèi)有n個節(jié)點,有m個節(jié)點需加入該網(wǎng)絡(luò),并設(shè)子網(wǎng)數(shù)量為P,每組成員(節(jié)點)不固定,采用異步短波可靠多播協(xié)議。當有節(jié)點需要加入網(wǎng)絡(luò)時,首先根據(jù)鏈路質(zhì)量分析原則判定與哪一群首節(jié)點通信狀況最好,則其確定加入哪一子網(wǎng)絡(luò),欲加入網(wǎng)絡(luò)的節(jié)點不必像單層多播網(wǎng)絡(luò)那樣去通知所有的網(wǎng)絡(luò)成員,該節(jié)點只需通知其所加入子網(wǎng)的群首節(jié)點和備用群首節(jié)點即可;當有節(jié)點退出時,該節(jié)點同樣只需通知所在群群首節(jié)點和備用節(jié)點即可,所以:
Tall=2t
(6)
由于子網(wǎng)的劃分數(shù)量和網(wǎng)絡(luò)規(guī)模、可用頻點數(shù)量、網(wǎng)絡(luò)中信道質(zhì)量因素之間的關(guān)系還未進行深入研究,故未能給出在有多個節(jié)點需要加入或退出網(wǎng)絡(luò)時的具體最優(yōu)分組方法,只是推導(dǎo)出其所需的最大時間,但對體現(xiàn)這種分層模型的優(yōu)越性并無影響。所以m個節(jié)點加入或退出時所需時間為
T=2tm<最大時間>
(7)
使用Matlab軟件對兩種模型節(jié)點變動時處理時延進行模擬分析,實驗結(jié)果選擇相同參數(shù)情況下多次測試的平均值。設(shè)定反饋信息的分組交付率為0.8、0.85、0.9、0.95,單個數(shù)據(jù)包的傳輸時間為4.8 s,鏈路輪回時間設(shè)置為1.5 s。仿真中設(shè)整個網(wǎng)絡(luò)有30個節(jié)點。仿真結(jié)果如圖3和圖4所示。
圖3 節(jié)點加入處理延時曲線
短波數(shù)據(jù)通信由于其自身的信道特點,如信道質(zhì)量差、數(shù)據(jù)傳輸時丟包與錯誤概率高,要實現(xiàn)可靠傳輸則需要重傳的次數(shù)也較多,對傳輸延時影響較大[5]。
通過對兩種網(wǎng)絡(luò)模型的比較,由圖3和圖4可以看出,當網(wǎng)絡(luò)有臨時節(jié)點加入和退出時,要交互的節(jié)點過多,工作效率低,節(jié)點處理時延受節(jié)點加入和退出數(shù)量的影響較明顯;而分層網(wǎng)絡(luò)模型在網(wǎng)絡(luò)內(nèi)節(jié)點變動時影響不大,當有臨時節(jié)點加入或退出時,只需通知該群組的群首節(jié)點和備用節(jié)點即可,使得交互次數(shù)明顯減少,降低了節(jié)點管理的處理時延。通過仿真比較可以明顯看出,該分層模型在有節(jié)點加入、退出等群組管理時具有優(yōu)越性并且較單層模型有了很大改善。
圖4 節(jié)點刪除處理延時曲線
此外由仿真結(jié)果可以看到,節(jié)點處理時延與節(jié)點個數(shù)呈線性關(guān)系,且受到數(shù)據(jù)交付率的影響;而分層可靠多播網(wǎng)絡(luò)模型在網(wǎng)絡(luò)節(jié)點變動時,受數(shù)據(jù)分組交付率影響較小,傳輸?shù)目煽啃暂^單層網(wǎng)絡(luò)模型也有很大提高。
目前,我國的短波網(wǎng)絡(luò)化發(fā)展尚處于起步階段,可靠多播通信協(xié)議和規(guī)程并不完善,其中群組管理是短波可靠多播協(xié)議的一個重要部分,它影響到多播過程能否高效、可靠地運行。本文通過網(wǎng)絡(luò)分層方法來進行多播群組管理,對臨時節(jié)點加入或退出網(wǎng)絡(luò)的節(jié)點處理時延進行了具體分析和比較。理論分析和仿真結(jié)果表明,該方法可為未來短波多播協(xié)議的完善起到一定的參考作用,在短波多播業(yè)務(wù)中也有良好的實用價值。進一步研究的重點是當多播通信過程中正常節(jié)點成為盲節(jié)點時,群首節(jié)點對盲節(jié)點當前狀態(tài)的判定和處理問題。
參考文獻:
[1] Eric Koski. Concepts for A Reliable Multicast Data Link Protocol for HF Radio Communications[R].[S.l.]:Harris Corporation Rochester,2009.
[2] Johnson E E, Balakrishnan M,Tang Z. Impact of Turnaround Time on Wireless MAC Protocols[C]//Proceedings of MILCOM 2003. Boston:IEEE, 2003:375-381.
[3] 林祥軍.多對多組島層級可靠組播的研究與設(shè)計[D]. 吉林:吉林大學(xué),2005.
LIN Xiang-jun.The Research and Design of the Reliable Many-to-Many Group Islands Level Multicast[D]. Jilin: Jilin University, 2005. (in Chinese)
[4] Zhang Huiyan,Eric E Johnson. A Third-Generation Multicast Protocol for HF Wireless Networks[D].Las Cruces,New Mexico:New Mexico State University,2005.
[5] 黃慶寧.低速率短波傳輸系統(tǒng)中混合ARQ技術(shù)實現(xiàn)[D].南京:東南大學(xué),2005.
HUANG Qing-ning.Mix ARQ Techniques Implement in Low-spreed of HF Transmit System [D]. Nanjing: Southeast University, 2005. (in Chinese)