無線網絡編碼科技

時間:2022-12-02 10:07:00

導語:無線網絡編碼科技一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

無線網絡編碼科技

1網絡編碼技術引進

在2000年,網絡編碼技術最初被提出來用于提高有線網絡中的多播(單點到多點)傳輸速率,使其達到多播的最大流限。在傳統的數據包傳送方式中,中間節點僅僅扮演著轉發器角色,它們對接收到的數據進行復制和轉發而不對數據內容做任何處理。而網絡編碼技術拓展了傳統的包傳送技術。簡單來說,網絡編碼是一種融合了編碼和轉發的信息交換技術。使用網絡編碼技術,中間節點扮演了編碼器的角色,來完成編碼和轉發雙重功能。自提出以后,網絡編碼技術便引起了國內外學術界、工業界的廣泛關住。

最初幾年,關于網絡編碼技術應用的研究主要集中于有線通信網絡。已有的研究成果表明:網絡編碼可以在有線網絡中不同的通信場景中帶來好處。跟傳統的包轉發技術相比,網絡編碼技術能有效地提高多播傳輸速率,或者有效地降低多播帶寬消耗。Gkansidis等人研究了網絡編碼在大數據分發中的應用問題,不僅節約了下載時間,還增強了P2P通信系統的魯棒性。此外,網絡編碼還在糾錯、鏈路失敗下的數據恢復等方面有著潛在的應用。最近幾年,網絡編碼技術在無線通信網絡里的應用也開始受到廣泛關注。研究成果表明,由于無線鏈路的不可靠性和物理層廣播特性非常適合采用網絡編碼,網絡編碼技術可以在無線局域網、無線中繼網絡、分布式無線多跳網絡等無線網絡中帶來非常可觀的性能改善。

網絡編碼在無線網絡中所能帶來的好處可以用圖1中的簡單例子來說明。圖中,節點A要發送數據包P1到節點B,節點B要發送同樣大小的數據包P2到節點A。A和B不在相互的通信范圍內,必須借助于節點R來轉發。如果用傳統的發送方式,總共需要4次發送來完成P1和P2的傳送。如果采用網絡編碼技術,可以先讓節點A把P1發送到R和B把P2發送到R,然后R把P1和P2逐個比特異或后得到編碼包P1P2并且發送(物理層廣播)出去。A接收到P1P2后,通過把P1P2和P1異或得到P2,同理B也得到P1。

因此總共只需要3次發送就完成P1和P2的傳送,從而提高傳送效率。接下來討論網絡編碼技術如何在無線局域網、無線中繼網絡、分布式無線多跳網絡等無線網絡中帶來性能提高,指出存在的一些問題,并討論可能的解決方法。

2網絡編碼在無線局域網的應用

無線局域網已經被廣泛部署在各種地方,比如說辦公樓、大學校園、機場等等。由于無線局域網中無線鏈路內在的高丟包性,獲得高傳輸效率是一個很大的挑戰,網絡編碼技術可以用于無線局域網中以顯著提高傳輸效率。無線局域網中的網絡編碼主要思想是:在無線接入點,不像傳統的協議里那樣不同的丟包被分開重傳,幾個(有著不同接收節點的)丟包可以組合在一起來實現一次發送就恢復多個丟包。以圖2里的無線局域網為例來說明該思想。在這個例子中,接入點要分別發送P1和P2到節點A和B。當發送P1時,A沒有正確接收到此包,而B卻正確接收到此包;當發送P2時,B沒有正確接收到此包,而A卻正確接收到此包。

在這種情況下,接入節點可以發送編碼包P1P2。

如果A收到該編碼包,則可以通過把P1P2和P2異或來恢復出P1。同樣,如果B收到該編碼包,則可以通過把P1P2和P1異或來恢復出P2。這樣一來,一次發送就能成功傳輸2個丟包,從而將重傳效率提高了一倍。為了設計出實際可行的基于網絡編碼的無線局域網接入點發送協議,有兩個重要的方面需要進一步考慮:(1)媒體接入控制(MAC)協議的設計目前的無線局域網工作模式下,當無線接入點要給某個用戶發數據包時,通過基于點到點連接的MAC協議來獲取發送機會。當采用網絡編碼后,由于一個編碼包有好幾個接收節點,基于點到點連接的MAC協議已經不能再用于此種場合。因此有必要設計新的MAC協議。

一種簡單的方案是接入節點采用廣播的方式來發送數據,從而讓每個接收節點都接收編碼包。

這種方案的缺點是那些不需要此編碼包的接收節點會由于接收此包而浪費能量。更合理的方案是設計能夠建立從接入節點到多個接收節點連接的MAC協議,來保證僅僅有必要的接收節點來接收編碼包。

(2)高效編碼算法的設計當有很多個接收節點時,不同的編碼包(即有不同接收節點集合)會有不同的性能提高。因此,有必要明確編碼包好壞的合理衡量方法以及設計高效編碼算法來找出較好的編碼包。

合理的編碼包好壞衡量方法應該綜合考慮到各個接收節點處已經接收的包,各個接收節點處的丟包率和各個流的包大小。而高效的編碼算法可以從最優化理論的角度來研究,設計查找最優編碼的低復雜度算法,或者設計低復雜度啟發式算法來查找較好(但不一定最優)的編碼。

3網絡編碼在無線中繼網絡的應用

下一代移動通信系統對頻譜效率提出了更高的要求,在現有的蜂窩網結構中引入中繼的協作式通信是實現高速率高覆蓋的非常可行的方案之一。無線中繼的基本思想是使用中繼節點將基站發送的信號處理后再發送給用戶,或者將用戶發送的信號處理后再發給基站,從而擴展覆蓋范圍和獲取分集增益。傳統的無線中繼技術里,無線中繼對不同的信號(數據包)進行分開的處理和轉發。具有網絡編碼的無線中繼可以將多個信號進行編碼后通過一次發送來實現多個信號的中繼,從而進一步提高頻譜效率。

以圖3中的無線中繼為例,說明網絡編碼所能帶來的性能提高。當用戶A發送信號P1時,一方面基站直接接收該信號,另一方面中繼把接收到的信號轉發給基站。同理,當用戶B發送信號P2時,中繼也接收此信號并進行轉發。在傳統的中繼技術中,中繼點對接收的P1和P2分別進行轉發,總共需要2次轉發。因此網絡吞吐量為1/2符號/時隙。由于目的節點兩次接收到信息P1和P2,該中繼傳輸方案獲得了2階分集增益。如果具有網絡編碼功能,通過轉發編碼包P1P2中繼節點可以同時幫助A和B中繼信號。在這種情況下,基于網絡編碼的吞吐量為2/3符號/時隙且同樣也獲得了2階分集增益,從而獲得更高的頻譜效率。在基于網絡編碼的無線中繼中,有幾個重要問題需要進一步研究。首先,目前為止已經提出來許多可行的中繼方案(有著不同的中繼節點信號處理方式、發送功率確定規則等),如何將這些具體的中繼方案與網絡編碼技術結合起來需要進行大量的研究。其次,由于中繼節點發送的是編碼的包,目前已有的中繼節點最佳發送速率和發送功率確定方法已經不再適用,因此需要重新設計。還有,由于用戶的移動而發生中繼或者基站的切換時,如何快速有效地更新網絡信息也需要進一步的考慮。

4網絡編碼在無線多跳網絡的應用

無線多跳網絡由于其低帶寬、多跳、拓撲變化、高丟包率等特性,采用基于單純轉發的傳統包傳送技術時所能達到的網絡吞吐量非常有限。因此,采用網絡編碼技術來顯著提高無線多跳網絡吞吐量是一個非常有意義的研究方向。在無線多跳網絡中,網絡編碼可以在單播、多播、廣播、P2P等方面帶來性能提高。由于單播數據流占到網絡總流量的主要部分,采用網絡編碼來有效地支持單播通信有著非常重要的意義。在2005年,Wu等人指出在簡單的雙向單播中通過同時利用網絡編碼技術和無線鏈路物理層廣播特性,可以大大提高頻譜效率。受此思想的啟發,針對多路單播流,MIT的Katti等人[6]提出了一個基于網絡編碼、實際可行的包傳送架構(COPE)。該架構巧妙地利用了由雙向信息流和無線通信中的包監聽特性這兩方面所制造的可觀網絡編碼機會,并結合無線物理層廣播特性來實現單個發送就將多個數據包傳遞到各自的下一跳。他們所搭建的測試平臺顯示COPE架構具有顯著提升(能高達二倍以上)無線多跳網絡吞吐量的潛力。緊接著此開創性工作,一方面,一些研究工作對COPE架構進行了不同方面的性能分析:文獻從理論上分析了COPE架構下的編碼機會,而Liu等人則分析了利用網絡編碼和物理層廣播特性所能帶來的網絡吞吐量提高的理論上界值。

另一方面,一些研究者從制造更多編碼機會和更有效利用編碼機會這兩個方向來探索更加合理的包傳送架構設計。Ni等人提出了基于網絡編碼意識(coding-aware)的路由思想,通過合適的路由選擇來制造更多的雙向信息流和有效的包監聽,從而制造更多的潛在網絡編碼機會。目前基于網絡編碼的無線多跳網絡包傳送技術存在幾個關鍵問題,以下將對其及其解決方案進行討論。

4.1網絡編碼機會制造的問題及解決方案

雖然網絡層上采用基于網絡編碼機會的路由算法能夠為網絡節點制造更加可觀的潛在編碼機會,但是這些潛在編碼機會必須轉換為數據鏈路層上真實的編碼機會才能最終帶來編碼增益。現有的MAC協議由于是無意識地制造數據鏈路層真實編碼機會,使得數據鏈路層以非常低的效率利用潛在的編碼機會。

因此,有必要設計基于網絡編碼的MAC協議,從而把潛在編碼機會在數據鏈路層充分地體現出來。目前為止,已經有一小部分研究工作對該問題進行了初步探討。但是這些工作中提出的MAC協議存在著以下嚴重不足:在做接入調度時僅考慮由雙向信息流產生的潛在編碼機會,并沒有考慮到由包監聽所產生的可觀的潛在編碼機會;沒有考慮和評估所設計的MAC協議的節點接入公平性。因此,有必要對基于網絡編碼的MAC協議設計進行更加深入的研究。無線多跳網絡MAC協議采用退避計數器及相應的退避機制來有效地減少發送碰撞的概率,并保證公平性。

為了設計能主動地制造編碼機會的MAC協議,可以設計能主動地制造編碼機會且保證接入公平性的退避機制。主要思路是:(1)設計合理的規則,基于當前節點待發送包的信息來判斷在節點獲得接入機會的時刻是否具有編碼機會。如果沒有編碼機會,則判斷推遲接入無線媒質(即增大退避計數器當前值)是否能帶來編碼機會。(2)設計合理的規則,基于鄰居節點待發送包的信息來判斷鄰居節點是否需要接收當前節點的某個包以獲取編碼機會,從而決定當前節點是否提前接入無線媒質(即減小退避計數器當前值)。(3)基于各個競爭流已經獲得的包發送機會統計數據來動態調整競爭窗口值,以保證接入公平性。

4.2網絡編碼機會利用的問題及解決方案

在數據鏈路層,Katti等人在文獻中提出的采用面向數據包大小的隊列結構,把有著相同下一跳且在同一大小范圍內的所有不同數據流的包都緩存在同一個隊列。為了減少亂序,只有每個隊列的最前面那個包可能參與編碼。但是,理論上講,每一個流的最早到達的包都有可能符合參與編碼的條件。因此,該隊列結構過于簡單,抹去了部分數據包所具有的潛在編碼機會。合適的隊列結構既要有能接受的復雜度(如隊列數),又能在不引入包亂序的前提下保證盡可能多的不同數據流的最早到達包具有參與編碼的機會(即保留盡可能多的編碼機會)。如果采用面向流的隊列結構(即為每個流維護一個隊列),所有最早到達包都具有參與編碼的機會,然而此結構需維護較多的隊列。可以根據不同類型網絡的具體特性來設計相應的(在復雜度和編碼機會間取得良好平衡的)隊列結構。在編碼子層,目前的編碼算法要么有低復雜度但經常找不出最優編碼,要么能經常找出最優編碼但復雜度偏高。高效編碼算法的設計可以從最優化理論和算法的角度來研究。針對每類網絡的隊列結構,首先分析最優編碼問題的難度(是否NP-complete),然后根據問題難度來決定是設計具有多項式復雜度的查找最優編碼的算法,還是設計有效的啟發式算法或近似算法。

5結束語

通過上面對不同類型無線網絡中的網絡編碼應用的探討,可以清晰地了解網絡編碼在無線通信網絡里有著廣泛的應用前景。然而,目前關于無線網絡編碼的研究大多停留在理論階段,僅有少數的研究者在測試網絡里進行性能測試。因此,尚有大量的問題需要進一步的深入考慮和研究,以最終實現網絡編碼在無線網絡里的實際應用。