劉俊輝,李 娜
(河南牧業經濟學院信息工程系,河南鄭州,450011)
網絡編碼的工作原理是把不同的信息通過運算轉化成新信息,新信息可以在多個中間節點間的多條路徑上反復傳遞,最終被送往接收節點,然后在接收節點演繹還原。不需額外容量和路由,只需把新信息轉換成位流即可。
著名的“蝴蝶網絡”(Butterfly Network)模型闡述了網絡編碼的工作原理。如圖1所示的“單信源二信宿”蝴蝶網絡,設各個鏈路容量為1,S是信源節點,Y和Z是信宿節點,其余為中間節點。根據“最大流最小割”定理,該多播的最大理論傳輸容量為2,即理論上信宿Y和Z能夠同時收到信源S發出的2個單位的信息,也就是說能同時收到b1和b2。圖1(a)表示的是傳統的路由傳輸方式,節點W執行存儲和轉發操作。假定W轉發信息b1,則鏈路WX、XY和XZ上傳輸的信息均為b1,雖然信宿Z收到b1和b2,但信宿Y卻只能收到b1 (同時收到一個多余的b1),因此信宿Y和Z無法同時收到b1和b2,該多播不能實現最大傳輸容量。

圖1 “單信源二信宿”蝴蝶網絡
圖1(b)表示的是網絡編碼方法,節點W對輸入的信息進行模二加操作,然后將操作結果發送至輸出鏈路WX,然后又通過鏈路XY和XZ,最終達到信宿Y和Z。Y收到b1和后,通過譯碼操作就能解出b2,因此,信宿Y同時收到了b1和b2。同理,通過譯碼操作,信宿Z也同時收到b1和b2。由此,基于網絡編碼的多播實現了理論上的最大傳輸容量。可見,網絡編碼的核心思想是:具備編碼條件的網絡節點(比如該節點的入度至少為2,如圖1中的節點W就具備編碼條件,節點X則不具備編碼條件)對接收到的信息進行一定方式的處理(編碼) ,然后傳輸給下一級的網絡節點,收到消息的下一級節點如果具備編碼條件,又對其接收的信息按照同樣的方式進行處理和傳輸,如此反復,直到所有經過處理后的信息都匯聚到信宿節點為止。最后,在信宿節點,通過逆過程的操作(譯碼),即可譯出信源發送的原始信息。網絡編碼是發生在域Fq上的操作,如果域Fq無限大,則運用網絡編碼的多播傳輸能達到理論上的最大傳輸容量等于各信宿節點的最大流的最小值,
即 h= min max flow(ti),ti∈ T。
網絡編碼可以分為經典網絡編碼和隨機網絡編碼兩大類。在一個通信網絡中,如果允許網絡節點對其輸入信息進行線性編碼,則可以使網絡中單播或組播的信息傳輸達到著名的最大流上屆。經典網絡編碼中,局部編碼核和與之對應的全局編碼核是事先給定的,信息數據作為向量從發點發出;中間節點按照給定的局部編碼核對接收到的若干向量作線性編碼;當收點接收到足夠的向量后,則根據全局編碼何解出原始數據向量。隨機網絡編碼,沒有事先給定全局編碼核:信息向量由發點出發到達中間節點,中間節點隨機選取局部編碼核對輸入向量作線性編碼,并由該局部編碼和計算出相應的全局編碼核,然后將相應的全局編碼核附在每個數據包中進行發送。網絡中無錯誤時,收點在收到足夠多的數據包后,提取出全局編碼核,并由其解得原始數據包。
(1)提升網絡吞吐量,采用網絡編碼可以比路由具有更高的吞吐量;
(2)改善網絡負載均衡,網絡編碼技術可有效的利用除多播樹路徑以外的其他網絡路徑;
(3)提高帶寬利用率;
(4)節省無線網絡節點能量消耗。
(1)復雜性增大。中間節點參與編解碼,與路由的存儲轉發相比,增加了CPU計算額外負擔,信宿解碼的復雜性為O,因為要實現編碼同步,需要增加緩存消耗,而且無論是解碼還是緩存,都需要延長信宿解碼的時間,對實時應用有較大的影響。
(2)安全性問題凸顯。無線網絡中的網絡編碼,即線性網絡編碼,線性多播說明了凡是最大流量大于等于信源消息數量的節點都可以利用網絡編碼收到所有信源消息,線性廣播說明每個節點可以根據自身的接入帶寬收到相應的消息,相當于多速率接受;線性擴散則說明每個節點不僅多速率接受,而且保證信宿節點以互補的形式接受消息,而一般線性網絡編碼則要求每個需要線性獨立的地方都必須線性獨立,以保證最有效的傳輸;有環網絡中的網絡編碼,即卷積網絡編碼,卷積多播,卷積廣播,卷積擴散,卷積網絡碼。
拓撲:有向圖無環圖,有向圖有環圖和無向圖。傳輸方式:單播、廣播、多播、多源多播。會話個數:單會話、多會話。分層:物理層,網絡層,應用層(覆蓋層)。
(1)基于網絡層比較:有向無環圖、無向圖、有向有環圖。
(2)基于應用層的 比較:在應用層,或者稱為覆蓋層,采用單播實現多播和廣播,利用應用層上的單播來間接實現IP層的多播和廣播。由于實際上是單播,所以可以歸結為單會話單播的情形。
我便耐心地給這兩位對足球看上去不怎么感興趣的哥們補課,從荷蘭隊的三劍客說到德國戰車,從西班牙斗牛士說到意大利綠茵風云,侃巴喬、范巴斯滕、克林斯曼、貝克漢姆。一個人興致勃勃地說了半天,仍無人插口,我只好知趣地閉上了嘴,繼續看我的球賽。要知道,在學校與陌生人熟悉最快的方式就是侃足球,一侃氣氛就會熱烈了。
(3)基于物理層的比較:[Physical Layer network coding]提出了另一種多跳網絡環境下的物理層網絡編碼PLNC( Physical Layer network coding),充分利用了無線信道的廣播特性,引入合適的機制,在物理層上利用同時到達的電磁波本身具備的加性特點進行類似于網絡的編碼。PLNC的吞吐量與采用傳網絡編碼和不采用網絡編碼相比可以達到50%-100%的增加。
網絡編碼的主要思想既是針對確定的編碼調制方案找到相應的解調標準使得物理層電磁波疊加可以隱射到網絡層比特流的疊加編碼。網絡編碼可看成是路由的超集。
網絡編碼技術可以有效減輕網絡通信的負擔,避免資源的無謂浪費。無論有多少個目標地址,在整個網絡的任何一條鏈路上只傳送單一的數據包。服務器只需要發出一個流,然后由網絡中的路由器或交換器同時復制出n個流。在網絡交換中,信息交換的兩個節點間可以由一個大的距離隔開。而交換,通常是指在一個網絡節點的合作,是基于路由協議的,而交換只是一個功能單一的設備,是基于轉發表,交換結構和調度算法的。單速率組播的有點是,可以較快地響應網絡擁塞并精確地控制發送速率。但大規模異構網絡中,由于但速率組播以最慢接收者的速率發送數據,雖然對具有較高帶寬的接收者是不公平的。提高發送速率固然固然能夠增加快接收者的帶寬利用率。
無線信道具有的多經衰落特性是阻礙信道容量增加,影響無線通信傳輸速率與質量的重要瓶頸,如何克服多經效應便成為提供通信質量要解決的首要問題。分集技術是抗多經衰落的有效方式,常見的分集方式主要有時間分集、頻率分集合空間分集。
空間分集技術從不同的位置(天線)發送信號,在接收端得到經過獨立衰落的多個信號副本,可以有效消除多經衰落的影響。空間分集不需要占用額外的時間和頻帶資源,并且可以和其他分集方式相結合,得到了廣泛的關注。近些年來提出的多輸入多輸出(MIMO)天線技術,通過在接收端和發送端同時安置多個天線,形成MIMO信道結構,從而將傳輸通信系統中存在的多經因素變成對用戶通信性能有理的因素,充分利用空域資源,大幅度提高了信道容量。
網絡編碼不僅僅是網絡層的問題,實際上物理層的問題也值得研究。我那個落編碼分散了信息,其編譯碼特性增加了信息破譯難度,從而改善了系統安全性。
Network Coding 的基本思想是允許網絡中間節點參與編碼,該理論具有達到最大容量的優勢。劃時代的意義在于:推翻了獨立比特(commodity)不能再被壓縮的經典結論,指出網絡信息流(Network Information Flow)可以 被壓縮,從而進一步提升網絡吞吐量。
[1]《network coding theory》2006 R.W.Yeung,S.-Y.R.Li,N.Cai,and Z.Zhang.
[2]《network coding :an introduction》2007 Tracey Ho,Desmond S.Lun
[3]黃佳慶,王帥,陳文清.網絡編碼在P2P網絡中的應用[J].中興通訊技術,2009,15(1):37-39.
[4]孫建鎮.基于鏈路穩定性及網絡編碼的無線網絡關鍵技術研究[D].北京郵電大學,2011.