韋萬書
(廣州海格通信集團股份有限公司,廣東 廣州 510663)
在搶險救災、戶外探險、應急服務、邊防巡邏以及國防戰備等領域,通常需要在野外快速靈活部署一個或多個無線通信網絡用于臨時通信,并且在具備一定通信覆蓋能力的前提下,組網迅速、網內節點能夠自由移動、抗毀性強,Ad-Hoc 網絡能夠滿足這樣的需求。通過聲音傳播信息是人類最基礎、最重要的通信方式,語音(實時)通信是Ad-Hoc 網絡中不可或缺的一項應用需求。然而在信道帶寬有限、頻率資源有限的超短波(Very High Frequency,VHF)頻段實現多跳中繼的實時語音通信,必須創新帶寬分配、語音壓縮以及路由開銷均衡等相關技術。
Ad-Hoc 網絡是一種沒有網絡控制中心、網內所有節點地位平等的無線移動通信網絡,采用分層式網絡協議和分布式算法實現網絡的自組織和運行。Ad-Hoc 網絡的所有節點都具備終端收發功能和報文中繼轉發能力。當通信的源節點和目的節點不在單跳通信范圍內時,可以通過中間節點分組轉發進行通信;有時轉發的中間節點不止一個,需要經過多個節點接力轉發通信,多節點網絡甚至會同時經過多條路徑轉發同一報文到達目的節點,此時需要路由算法制定最佳中繼路線。因此,Ad-Hoc 網絡又被稱為移動自組織網絡、多跳無線中繼網或無固定設施的網絡[1]。
國際電信組織(International Telecommunication Union,ITU)研究了語音延遲對用戶聽感的影響,該研究表明(如圖1 所示):通信雙方語音時延小于150 ms 時,用戶感受最佳;當時延大于400 ms 而小于500 ms 時,多數用戶感受糟糕;當時延大于500 ms時,幾乎所有用戶無法忍受。因此,時延越小,用戶對通話質量的感知體驗越好。

圖1 通話效果與端到端語音時延的關系曲線
Ad-Hoc 網絡中因為多跳中繼的路徑不同,導致接收端接收到的語音分組包間隔不同,語音回放變得斷斷續續,也就是產生了抖動現象,需要將抖動時延限制在一定范圍內,避免破壞音頻的連續性。
在無線信道質量不佳、誤碼率提高或路徑不可達時會引起語音包丟包現象。語音具有連續性,人耳對語音中較小時間片丟失引起的擾動不敏感,因此允許語音通信中有少量丟包。經驗表明,低于2%的丟包率不會影響用戶體驗[2]。
在無線移動網絡中進行實時語音通信,重點在于控制傳輸的時延和抖動,以保證語音通信的實時性,不需要像傳輸數據一樣要求百分百正確。
Ad-Hoc 網絡的性能很大程度上取決于應用的組網協議,根據系統應用需求、組網規模以及通信帶寬等因素,選擇合適的組網協議是設計Ad-Hoc 網絡的重要工作。本方案基于實時語音廣播需求,采用基于鄰居信息的廣播協議。該協議根據網絡拓撲信息,使用已知路由的節點來覆蓋網絡的所有節點,廣播覆蓋率高,廣播冗余度低[3,4]。
其 中, 多 協 議 路 由 器(Multiprotocol Router,MPR)算法是一種基于鄰居信息的廣播協議。MPR的主要思想是發送節點,利用已知的兩跳范圍鄰居節點的拓撲信息,根據最大覆蓋原則優選其中部分節點轉發分組包,由近及遠依次中繼,最終實現全網的廣播覆蓋。設節點x為廣播報文發送節點,N-1(x)為節點x的一跳鄰居節點,N2(x)為節點x的兩跳鄰居節點,中繼節點的選擇算法基本步驟如下。
第一,初始化中繼節點集合MPR_Group(x),缺省為空。
第二,搜索N-1(x)中的節點,選擇N2(x)中對應某些節點的唯一鄰居節點,加入到MPR_Group(x)中作為多跳中繼節點。若N2(x)中還有節點沒有被MPR_Group(x)中的節點覆蓋,執行第三步,否則結束。
第三,對于N-1(x)中不屬于MPR_Group(x)的節點,依次計算覆蓋N2(x)鄰居數最多的N-1(x)節點,加入到MPR_Group(x)集合。若N2(x)中還有節點不能通過MPR_Group(x)中的節點覆蓋,此時需要判斷MPR_Group(x)中的節點總數是否大于中繼節點設定總數,若小于繼續執行第三步,否則結束。
以如圖2 所示拓撲結構自組網為例,節點A進行MPR 計算,按照MPR 算法描述,N2(A)中節點H、I、J、P、Q都僅有一個一跳鄰居節點,它們的鄰居節點分別是B、C、G,將節點B、C、G加入到MPR_Group(A)中,這些節點覆蓋了N2(A)中H、I、J、K、P、Q節點。N2(A)中還有節點L、M沒有被覆蓋,N-1(A)中未被MPR_Group(A)包括的節點有D、E、F,其中節點D同時覆蓋了K、L節點,節點E同時覆蓋了L、M節點,節點D和E被加入到MPR_Group(A)中。由此,最終MPR_Group(A)中節點包含B、C、G、D、E。

圖2 一個自組織網絡拓撲
若通過部分優勢修剪(Partial Dominant Pruning,PDP)算法,每個節點在計算轉發節點集合時去掉已經被上一跳節點覆蓋的與本節點相同的兩跳鄰居節點,可以進一步減少網絡上的廣播包,降低廣播開銷[3,4]。應用PDP 算法,圖2 拓撲結構中的節點D可以從MPR_Group(A)中剔除,因為節點D覆蓋的節點K和L分別被節點C和E覆蓋了,節點C、E已經包含在了MPR_Group(A)中。
本方案探討一款50 kHz 帶寬的手持式超短波頻段窄帶移動通信設備,該設備具備Ad-Hoc 組網能力,網絡容量為64 個,但僅限于數據中繼傳輸功能,語音通信為半雙工單跳通信。文章在該設備上實現多跳語音實時通信,目標是拓展實現不小于四跳的中繼語音通信。
設備物理層采用時分多址(Time Division Multiple Access,TDMA)方式將整個物理信道分為同步時隙、數據時隙以及語音時隙。同步時隙用于系統時鐘同步,數據時隙用于傳輸MPR 路由廣播在內的數據業務,語音時隙用于傳輸語音業務。發送節點產生語音業務時,通過設計約定,將語音時隙以動態的TDMA接入使用,發起節點占用隨按即說(Push To Talk,PTT)發起時刻的語音時隙。第一跳中繼節點占用第2 個語音時隙,第二跳中繼節點占用第3 個語音時隙,依次類推轉發語音包。
語音編碼算法采用混合激勵線性預測(Mixed Excitation Linear Prediction,MELP)模型算法,可將16 位8 kb/s 采樣速率的語音壓縮為2.4 kb/s 編碼語音數據。該編碼算法吸取了多帶激勵聲碼器的分帶技術優點,還采用了自適應譜增強、脈沖和噪聲的混合激勵以及脈沖相位抖動等措施,跟相同比特率的編解碼算法相比,能夠獲得更好的合成語音質量。高壓縮的語音編碼不僅可以提高傳輸效率,還能保證接收端有足夠的緩存區以抵消多跳中繼帶來的語音抖動問題。
以線性拓撲結構的五跳中繼通信為例,省略去了周期循環的同步時隙,多跳語音傳輸TDMA 時隙的分配情況如圖3 所示,每個時隙64 ms。當呼叫節點在第0 語音時隙發送語音包時,該語音包攜帶語音包編號、最大生存跳數以及MPR 節點等信息,呼叫節點一跳范圍內的所有節點都可以在第0 語音時隙進行接收;一跳范圍內的鄰居節點解析語音包中的勤務信息,判斷本節點是否需要轉發,將需要轉發的節點在第2 語音時隙中進行轉發,生存跳減1,同時更新本節點的MPR 節點信息;二跳節點在第2 語音時隙接收一跳節點轉發的語音包,并在第4 語音時隙轉發語音包,三跳、四跳、五跳節點以此類推。同時考慮無線通信的空間復用性,當四跳節點轉發語音報文時,初始呼叫節點可以在該時隙發送下一個語音報文,這樣可以大大減小系統語音時延,提高語音服務質量。通過語音包編號剔除接收到的重復語音包[5]。

圖3 多跳語音傳輸物理層時隙分配

圖4 多跳中繼與單跳語音輸出時延
使用KSW-WNS02 無線信道仿真儀模擬自由空間通信環境,測試多跳語音中繼延時。在設備單跳語音通信固有延時的基礎上,比較四跳和五跳的中繼語音輸出延時,測試結果表明:四跳語音中繼平均傳輸延時為479.0 ms;五跳語音中繼平均傳輸延時為607.9 ms。
針對多跳中繼語音通信的應用需求,文章對Ad-Hoc 網絡和實時語音通信進行了論述,并提出一種基于MPR 廣播協議、物理層采用TDMA 接入方式、采用MELP 模型算法將16 位8 kb/s 采樣速率的語音壓縮為2.4 kb/s 編碼語音數據,在50 kHz 帶寬的VHF頻段手持式窄帶通信設備實現多跳語音組網通信,滿足應急、戶外探險、軍用班排級團隊的無線通信需求。