無(wú)線網(wǎng)絡(luò)編碼科技
時(shí)間:2022-12-02 10:07:00
導(dǎo)語(yǔ):無(wú)線網(wǎng)絡(luò)編碼科技一文來(lái)源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
1網(wǎng)絡(luò)編碼技術(shù)引進(jìn)
在2000年,網(wǎng)絡(luò)編碼技術(shù)最初被提出來(lái)用于提高有線網(wǎng)絡(luò)中的多播(單點(diǎn)到多點(diǎn))傳輸速率,使其達(dá)到多播的最大流限。在傳統(tǒng)的數(shù)據(jù)包傳送方式中,中間節(jié)點(diǎn)僅僅扮演著轉(zhuǎn)發(fā)器角色,它們對(duì)接收到的數(shù)據(jù)進(jìn)行復(fù)制和轉(zhuǎn)發(fā)而不對(duì)數(shù)據(jù)內(nèi)容做任何處理。而網(wǎng)絡(luò)編碼技術(shù)拓展了傳統(tǒng)的包傳送技術(shù)。簡(jiǎn)單來(lái)說(shuō),網(wǎng)絡(luò)編碼是一種融合了編碼和轉(zhuǎn)發(fā)的信息交換技術(shù)。使用網(wǎng)絡(luò)編碼技術(shù),中間節(jié)點(diǎn)扮演了編碼器的角色,來(lái)完成編碼和轉(zhuǎn)發(fā)雙重功能。自提出以后,網(wǎng)絡(luò)編碼技術(shù)便引起了國(guó)內(nèi)外學(xué)術(shù)界、工業(yè)界的廣泛關(guān)住。
最初幾年,關(guān)于網(wǎng)絡(luò)編碼技術(shù)應(yīng)用的研究主要集中于有線通信網(wǎng)絡(luò)。已有的研究成果表明:網(wǎng)絡(luò)編碼可以在有線網(wǎng)絡(luò)中不同的通信場(chǎng)景中帶來(lái)好處。跟傳統(tǒng)的包轉(zhuǎn)發(fā)技術(shù)相比,網(wǎng)絡(luò)編碼技術(shù)能有效地提高多播傳輸速率,或者有效地降低多播帶寬消耗。Gkansidis等人研究了網(wǎng)絡(luò)編碼在大數(shù)據(jù)分發(fā)中的應(yīng)用問(wèn)題,不僅節(jié)約了下載時(shí)間,還增強(qiáng)了P2P通信系統(tǒng)的魯棒性。此外,網(wǎng)絡(luò)編碼還在糾錯(cuò)、鏈路失敗下的數(shù)據(jù)恢復(fù)等方面有著潛在的應(yīng)用。最近幾年,網(wǎng)絡(luò)編碼技術(shù)在無(wú)線通信網(wǎng)絡(luò)里的應(yīng)用也開(kāi)始受到廣泛關(guān)注。研究成果表明,由于無(wú)線鏈路的不可靠性和物理層廣播特性非常適合采用網(wǎng)絡(luò)編碼,網(wǎng)絡(luò)編碼技術(shù)可以在無(wú)線局域網(wǎng)、無(wú)線中繼網(wǎng)絡(luò)、分布式無(wú)線多跳網(wǎng)絡(luò)等無(wú)線網(wǎng)絡(luò)中帶來(lái)非常可觀的性能改善。
網(wǎng)絡(luò)編碼在無(wú)線網(wǎng)絡(luò)中所能帶來(lái)的好處可以用圖1中的簡(jiǎn)單例子來(lái)說(shuō)明。圖中,節(jié)點(diǎn)A要發(fā)送數(shù)據(jù)包P1到節(jié)點(diǎn)B,節(jié)點(diǎn)B要發(fā)送同樣大小的數(shù)據(jù)包P2到節(jié)點(diǎn)A。A和B不在相互的通信范圍內(nèi),必須借助于節(jié)點(diǎn)R來(lái)轉(zhuǎn)發(fā)。如果用傳統(tǒng)的發(fā)送方式,總共需要4次發(fā)送來(lái)完成P1和P2的傳送。如果采用網(wǎng)絡(luò)編碼技術(shù),可以先讓節(jié)點(diǎn)A把P1發(fā)送到R和B把P2發(fā)送到R,然后R把P1和P2逐個(gè)比特異或后得到編碼包P1P2并且發(fā)送(物理層廣播)出去。A接收到P1P2后,通過(guò)把P1P2和P1異或得到P2,同理B也得到P1。
因此總共只需要3次發(fā)送就完成P1和P2的傳送,從而提高傳送效率。接下來(lái)討論網(wǎng)絡(luò)編碼技術(shù)如何在無(wú)線局域網(wǎng)、無(wú)線中繼網(wǎng)絡(luò)、分布式無(wú)線多跳網(wǎng)絡(luò)等無(wú)線網(wǎng)絡(luò)中帶來(lái)性能提高,指出存在的一些問(wèn)題,并討論可能的解決方法。
2網(wǎng)絡(luò)編碼在無(wú)線局域網(wǎng)的應(yīng)用
無(wú)線局域網(wǎng)已經(jīng)被廣泛部署在各種地方,比如說(shuō)辦公樓、大學(xué)校園、機(jī)場(chǎng)等等。由于無(wú)線局域網(wǎng)中無(wú)線鏈路內(nèi)在的高丟包性,獲得高傳輸效率是一個(gè)很大的挑戰(zhàn),網(wǎng)絡(luò)編碼技術(shù)可以用于無(wú)線局域網(wǎng)中以顯著提高傳輸效率。無(wú)線局域網(wǎng)中的網(wǎng)絡(luò)編碼主要思想是:在無(wú)線接入點(diǎn),不像傳統(tǒng)的協(xié)議里那樣不同的丟包被分開(kāi)重傳,幾個(gè)(有著不同接收節(jié)點(diǎn)的)丟包可以組合在一起來(lái)實(shí)現(xiàn)一次發(fā)送就恢復(fù)多個(gè)丟包。以圖2里的無(wú)線局域網(wǎng)為例來(lái)說(shuō)明該思想。在這個(gè)例子中,接入點(diǎn)要分別發(fā)送P1和P2到節(jié)點(diǎn)A和B。當(dāng)發(fā)送P1時(shí),A沒(méi)有正確接收到此包,而B(niǎo)卻正確接收到此包;當(dāng)發(fā)送P2時(shí),B沒(méi)有正確接收到此包,而A卻正確接收到此包。
在這種情況下,接入節(jié)點(diǎn)可以發(fā)送編碼包P1P2。
如果A收到該編碼包,則可以通過(guò)把P1P2和P2異或來(lái)恢復(fù)出P1。同樣,如果B收到該編碼包,則可以通過(guò)把P1P2和P1異或來(lái)恢復(fù)出P2。這樣一來(lái),一次發(fā)送就能成功傳輸2個(gè)丟包,從而將重傳效率提高了一倍。為了設(shè)計(jì)出實(shí)際可行的基于網(wǎng)絡(luò)編碼的無(wú)線局域網(wǎng)接入點(diǎn)發(fā)送協(xié)議,有兩個(gè)重要的方面需要進(jìn)一步考慮:(1)媒體接入控制(MAC)協(xié)議的設(shè)計(jì)目前的無(wú)線局域網(wǎng)工作模式下,當(dāng)無(wú)線接入點(diǎn)要給某個(gè)用戶發(fā)數(shù)據(jù)包時(shí),通過(guò)基于點(diǎn)到點(diǎn)連接的MAC協(xié)議來(lái)獲取發(fā)送機(jī)會(huì)。當(dāng)采用網(wǎng)絡(luò)編碼后,由于一個(gè)編碼包有好幾個(gè)接收節(jié)點(diǎn),基于點(diǎn)到點(diǎn)連接的MAC協(xié)議已經(jīng)不能再用于此種場(chǎng)合。因此有必要設(shè)計(jì)新的MAC協(xié)議。
一種簡(jiǎn)單的方案是接入節(jié)點(diǎn)采用廣播的方式來(lái)發(fā)送數(shù)據(jù),從而讓每個(gè)接收節(jié)點(diǎn)都接收編碼包。
這種方案的缺點(diǎn)是那些不需要此編碼包的接收節(jié)點(diǎn)會(huì)由于接收此包而浪費(fèi)能量。更合理的方案是設(shè)計(jì)能夠建立從接入節(jié)點(diǎn)到多個(gè)接收節(jié)點(diǎn)連接的MAC協(xié)議,來(lái)保證僅僅有必要的接收節(jié)點(diǎn)來(lái)接收編碼包。
(2)高效編碼算法的設(shè)計(jì)當(dāng)有很多個(gè)接收節(jié)點(diǎn)時(shí),不同的編碼包(即有不同接收節(jié)點(diǎn)集合)會(huì)有不同的性能提高。因此,有必要明確編碼包好壞的合理衡量方法以及設(shè)計(jì)高效編碼算法來(lái)找出較好的編碼包。
合理的編碼包好壞衡量方法應(yīng)該綜合考慮到各個(gè)接收節(jié)點(diǎn)處已經(jīng)接收的包,各個(gè)接收節(jié)點(diǎn)處的丟包率和各個(gè)流的包大小。而高效的編碼算法可以從最優(yōu)化理論的角度來(lái)研究,設(shè)計(jì)查找最優(yōu)編碼的低復(fù)雜度算法,或者設(shè)計(jì)低復(fù)雜度啟發(fā)式算法來(lái)查找較好(但不一定最優(yōu))的編碼。
3網(wǎng)絡(luò)編碼在無(wú)線中繼網(wǎng)絡(luò)的應(yīng)用
下一代移動(dòng)通信系統(tǒng)對(duì)頻譜效率提出了更高的要求,在現(xiàn)有的蜂窩網(wǎng)結(jié)構(gòu)中引入中繼的協(xié)作式通信是實(shí)現(xiàn)高速率高覆蓋的非常可行的方案之一。無(wú)線中繼的基本思想是使用中繼節(jié)點(diǎn)將基站發(fā)送的信號(hào)處理后再發(fā)送給用戶,或者將用戶發(fā)送的信號(hào)處理后再發(fā)給基站,從而擴(kuò)展覆蓋范圍和獲取分集增益。傳統(tǒng)的無(wú)線中繼技術(shù)里,無(wú)線中繼對(duì)不同的信號(hào)(數(shù)據(jù)包)進(jìn)行分開(kāi)的處理和轉(zhuǎn)發(fā)。具有網(wǎng)絡(luò)編碼的無(wú)線中繼可以將多個(gè)信號(hào)進(jìn)行編碼后通過(guò)一次發(fā)送來(lái)實(shí)現(xiàn)多個(gè)信號(hào)的中繼,從而進(jìn)一步提高頻譜效率。
以圖3中的無(wú)線中繼為例,說(shuō)明網(wǎng)絡(luò)編碼所能帶來(lái)的性能提高。當(dāng)用戶A發(fā)送信號(hào)P1時(shí),一方面基站直接接收該信號(hào),另一方面中繼把接收到的信號(hào)轉(zhuǎn)發(fā)給基站。同理,當(dāng)用戶B發(fā)送信號(hào)P2時(shí),中繼也接收此信號(hào)并進(jìn)行轉(zhuǎn)發(fā)。在傳統(tǒng)的中繼技術(shù)中,中繼點(diǎn)對(duì)接收的P1和P2分別進(jìn)行轉(zhuǎn)發(fā),總共需要2次轉(zhuǎn)發(fā)。因此網(wǎng)絡(luò)吞吐量為1/2符號(hào)/時(shí)隙。由于目的節(jié)點(diǎn)兩次接收到信息P1和P2,該中繼傳輸方案獲得了2階分集增益。如果具有網(wǎng)絡(luò)編碼功能,通過(guò)轉(zhuǎn)發(fā)編碼包P1P2中繼節(jié)點(diǎn)可以同時(shí)幫助A和B中繼信號(hào)。在這種情況下,基于網(wǎng)絡(luò)編碼的吞吐量為2/3符號(hào)/時(shí)隙且同樣也獲得了2階分集增益,從而獲得更高的頻譜效率。在基于網(wǎng)絡(luò)編碼的無(wú)線中繼中,有幾個(gè)重要問(wèn)題需要進(jìn)一步研究。首先,目前為止已經(jīng)提出來(lái)許多可行的中繼方案(有著不同的中繼節(jié)點(diǎn)信號(hào)處理方式、發(fā)送功率確定規(guī)則等),如何將這些具體的中繼方案與網(wǎng)絡(luò)編碼技術(shù)結(jié)合起來(lái)需要進(jìn)行大量的研究。其次,由于中繼節(jié)點(diǎn)發(fā)送的是編碼的包,目前已有的中繼節(jié)點(diǎn)最佳發(fā)送速率和發(fā)送功率確定方法已經(jīng)不再適用,因此需要重新設(shè)計(jì)。還有,由于用戶的移動(dòng)而發(fā)生中繼或者基站的切換時(shí),如何快速有效地更新網(wǎng)絡(luò)信息也需要進(jìn)一步的考慮。
4網(wǎng)絡(luò)編碼在無(wú)線多跳網(wǎng)絡(luò)的應(yīng)用
無(wú)線多跳網(wǎng)絡(luò)由于其低帶寬、多跳、拓?fù)渥兓⒏邅G包率等特性,采用基于單純轉(zhuǎn)發(fā)的傳統(tǒng)包傳送技術(shù)時(shí)所能達(dá)到的網(wǎng)絡(luò)吞吐量非常有限。因此,采用網(wǎng)絡(luò)編碼技術(shù)來(lái)顯著提高無(wú)線多跳網(wǎng)絡(luò)吞吐量是一個(gè)非常有意義的研究方向。在無(wú)線多跳網(wǎng)絡(luò)中,網(wǎng)絡(luò)編碼可以在單播、多播、廣播、P2P等方面帶來(lái)性能提高。由于單播數(shù)據(jù)流占到網(wǎng)絡(luò)總流量的主要部分,采用網(wǎng)絡(luò)編碼來(lái)有效地支持單播通信有著非常重要的意義。在2005年,Wu等人指出在簡(jiǎn)單的雙向單播中通過(guò)同時(shí)利用網(wǎng)絡(luò)編碼技術(shù)和無(wú)線鏈路物理層廣播特性,可以大大提高頻譜效率。受此思想的啟發(fā),針對(duì)多路單播流,MIT的Katti等人[6]提出了一個(gè)基于網(wǎng)絡(luò)編碼、實(shí)際可行的包傳送架構(gòu)(COPE)。該架構(gòu)巧妙地利用了由雙向信息流和無(wú)線通信中的包監(jiān)聽(tīng)特性這兩方面所制造的可觀網(wǎng)絡(luò)編碼機(jī)會(huì),并結(jié)合無(wú)線物理層廣播特性來(lái)實(shí)現(xiàn)單個(gè)發(fā)送就將多個(gè)數(shù)據(jù)包傳遞到各自的下一跳。他們所搭建的測(cè)試平臺(tái)顯示COPE架構(gòu)具有顯著提升(能高達(dá)二倍以上)無(wú)線多跳網(wǎng)絡(luò)吞吐量的潛力。緊接著此開(kāi)創(chuàng)性工作,一方面,一些研究工作對(duì)COPE架構(gòu)進(jìn)行了不同方面的性能分析:文獻(xiàn)從理論上分析了COPE架構(gòu)下的編碼機(jī)會(huì),而Liu等人則分析了利用網(wǎng)絡(luò)編碼和物理層廣播特性所能帶來(lái)的網(wǎng)絡(luò)吞吐量提高的理論上界值。
另一方面,一些研究者從制造更多編碼機(jī)會(huì)和更有效利用編碼機(jī)會(huì)這兩個(gè)方向來(lái)探索更加合理的包傳送架構(gòu)設(shè)計(jì)。Ni等人提出了基于網(wǎng)絡(luò)編碼意識(shí)(coding-aware)的路由思想,通過(guò)合適的路由選擇來(lái)制造更多的雙向信息流和有效的包監(jiān)聽(tīng),從而制造更多的潛在網(wǎng)絡(luò)編碼機(jī)會(huì)。目前基于網(wǎng)絡(luò)編碼的無(wú)線多跳網(wǎng)絡(luò)包傳送技術(shù)存在幾個(gè)關(guān)鍵問(wèn)題,以下將對(duì)其及其解決方案進(jìn)行討論。
4.1網(wǎng)絡(luò)編碼機(jī)會(huì)制造的問(wèn)題及解決方案
雖然網(wǎng)絡(luò)層上采用基于網(wǎng)絡(luò)編碼機(jī)會(huì)的路由算法能夠?yàn)榫W(wǎng)絡(luò)節(jié)點(diǎn)制造更加可觀的潛在編碼機(jī)會(huì),但是這些潛在編碼機(jī)會(huì)必須轉(zhuǎn)換為數(shù)據(jù)鏈路層上真實(shí)的編碼機(jī)會(huì)才能最終帶來(lái)編碼增益。現(xiàn)有的MAC協(xié)議由于是無(wú)意識(shí)地制造數(shù)據(jù)鏈路層真實(shí)編碼機(jī)會(huì),使得數(shù)據(jù)鏈路層以非常低的效率利用潛在的編碼機(jī)會(huì)。
因此,有必要設(shè)計(jì)基于網(wǎng)絡(luò)編碼的MAC協(xié)議,從而把潛在編碼機(jī)會(huì)在數(shù)據(jù)鏈路層充分地體現(xiàn)出來(lái)。目前為止,已經(jīng)有一小部分研究工作對(duì)該問(wèn)題進(jìn)行了初步探討。但是這些工作中提出的MAC協(xié)議存在著以下嚴(yán)重不足:在做接入調(diào)度時(shí)僅考慮由雙向信息流產(chǎn)生的潛在編碼機(jī)會(huì),并沒(méi)有考慮到由包監(jiān)聽(tīng)所產(chǎn)生的可觀的潛在編碼機(jī)會(huì);沒(méi)有考慮和評(píng)估所設(shè)計(jì)的MAC協(xié)議的節(jié)點(diǎn)接入公平性。因此,有必要對(duì)基于網(wǎng)絡(luò)編碼的MAC協(xié)議設(shè)計(jì)進(jìn)行更加深入的研究。無(wú)線多跳網(wǎng)絡(luò)MAC協(xié)議采用退避計(jì)數(shù)器及相應(yīng)的退避機(jī)制來(lái)有效地減少發(fā)送碰撞的概率,并保證公平性。
為了設(shè)計(jì)能主動(dòng)地制造編碼機(jī)會(huì)的MAC協(xié)議,可以設(shè)計(jì)能主動(dòng)地制造編碼機(jī)會(huì)且保證接入公平性的退避機(jī)制。主要思路是:(1)設(shè)計(jì)合理的規(guī)則,基于當(dāng)前節(jié)點(diǎn)待發(fā)送包的信息來(lái)判斷在節(jié)點(diǎn)獲得接入機(jī)會(huì)的時(shí)刻是否具有編碼機(jī)會(huì)。如果沒(méi)有編碼機(jī)會(huì),則判斷推遲接入無(wú)線媒質(zhì)(即增大退避計(jì)數(shù)器當(dāng)前值)是否能帶來(lái)編碼機(jī)會(huì)。(2)設(shè)計(jì)合理的規(guī)則,基于鄰居節(jié)點(diǎn)待發(fā)送包的信息來(lái)判斷鄰居節(jié)點(diǎn)是否需要接收當(dāng)前節(jié)點(diǎn)的某個(gè)包以獲取編碼機(jī)會(huì),從而決定當(dāng)前節(jié)點(diǎn)是否提前接入無(wú)線媒質(zhì)(即減小退避計(jì)數(shù)器當(dāng)前值)。(3)基于各個(gè)競(jìng)爭(zhēng)流已經(jīng)獲得的包發(fā)送機(jī)會(huì)統(tǒng)計(jì)數(shù)據(jù)來(lái)動(dòng)態(tài)調(diào)整競(jìng)爭(zhēng)窗口值,以保證接入公平性。
4.2網(wǎng)絡(luò)編碼機(jī)會(huì)利用的問(wèn)題及解決方案
在數(shù)據(jù)鏈路層,Katti等人在文獻(xiàn)中提出的采用面向數(shù)據(jù)包大小的隊(duì)列結(jié)構(gòu),把有著相同下一跳且在同一大小范圍內(nèi)的所有不同數(shù)據(jù)流的包都緩存在同一個(gè)隊(duì)列。為了減少亂序,只有每個(gè)隊(duì)列的最前面那個(gè)包可能參與編碼。但是,理論上講,每一個(gè)流的最早到達(dá)的包都有可能符合參與編碼的條件。因此,該隊(duì)列結(jié)構(gòu)過(guò)于簡(jiǎn)單,抹去了部分?jǐn)?shù)據(jù)包所具有的潛在編碼機(jī)會(huì)。合適的隊(duì)列結(jié)構(gòu)既要有能接受的復(fù)雜度(如隊(duì)列數(shù)),又能在不引入包亂序的前提下保證盡可能多的不同數(shù)據(jù)流的最早到達(dá)包具有參與編碼的機(jī)會(huì)(即保留盡可能多的編碼機(jī)會(huì))。如果采用面向流的隊(duì)列結(jié)構(gòu)(即為每個(gè)流維護(hù)一個(gè)隊(duì)列),所有最早到達(dá)包都具有參與編碼的機(jī)會(huì),然而此結(jié)構(gòu)需維護(hù)較多的隊(duì)列。可以根據(jù)不同類型網(wǎng)絡(luò)的具體特性來(lái)設(shè)計(jì)相應(yīng)的(在復(fù)雜度和編碼機(jī)會(huì)間取得良好平衡的)隊(duì)列結(jié)構(gòu)。在編碼子層,目前的編碼算法要么有低復(fù)雜度但經(jīng)常找不出最優(yōu)編碼,要么能經(jīng)常找出最優(yōu)編碼但復(fù)雜度偏高。高效編碼算法的設(shè)計(jì)可以從最優(yōu)化理論和算法的角度來(lái)研究。針對(duì)每類網(wǎng)絡(luò)的隊(duì)列結(jié)構(gòu),首先分析最優(yōu)編碼問(wèn)題的難度(是否NP-complete),然后根據(jù)問(wèn)題難度來(lái)決定是設(shè)計(jì)具有多項(xiàng)式復(fù)雜度的查找最優(yōu)編碼的算法,還是設(shè)計(jì)有效的啟發(fā)式算法或近似算法。
5結(jié)束語(yǔ)
通過(guò)上面對(duì)不同類型無(wú)線網(wǎng)絡(luò)中的網(wǎng)絡(luò)編碼應(yīng)用的探討,可以清晰地了解網(wǎng)絡(luò)編碼在無(wú)線通信網(wǎng)絡(luò)里有著廣泛的應(yīng)用前景。然而,目前關(guān)于無(wú)線網(wǎng)絡(luò)編碼的研究大多停留在理論階段,僅有少數(shù)的研究者在測(cè)試網(wǎng)絡(luò)里進(jìn)行性能測(cè)試。因此,尚有大量的問(wèn)題需要進(jìn)一步的深入考慮和研究,以最終實(shí)現(xiàn)網(wǎng)絡(luò)編碼在無(wú)線網(wǎng)絡(luò)里的實(shí)際應(yīng)用。