新聞中心

EEPW首頁 > 網(wǎng)絡(luò)與存儲(chǔ) > 設(shè)計(jì)應(yīng)用 > 基于網(wǎng)絡(luò)編碼的多信源組播通信系統(tǒng)

基于網(wǎng)絡(luò)編碼的多信源組播通信系統(tǒng)

作者: 時(shí)間:2011-03-25 來源:電子產(chǎn)品世界 收藏

  系統(tǒng)實(shí)現(xiàn)的整體設(shè)計(jì)方案說明

本文引用地址:http://butianyuan.cn/article/118085.htm

  如圖2所示,是擬采用的組播通信網(wǎng)絡(luò)的拓?fù)鋱D。為了易于在工程上實(shí)現(xiàn),將路由器分為編碼路由器EC和解碼路由器DC,分別專門負(fù)責(zé)編碼和解碼。具體講,如圖2所示,信源S1,S2,S3發(fā)送數(shù)據(jù)包,編碼路由器EC0和EC1負(fù)責(zé)將接收到的數(shù)據(jù)包以隨機(jī)的系數(shù)進(jìn)行線性編碼后發(fā)送給組播路由器R,注意,這里的組播路由器更準(zhǔn)確地說是轉(zhuǎn)發(fā)路由器,因?yàn)樗墓δ苤皇菍⑹盏降臄?shù)據(jù)包轉(zhuǎn)發(fā)到其三個(gè)輸出端口,而沒有IGMP(組播管理)和相應(yīng)的組播路由功能。當(dāng)然,我們也可以直接在EC上實(shí)現(xiàn)轉(zhuǎn)發(fā)的功能,增加R的原因是考慮到NetFPGA端口數(shù)量的限制(每塊NetFPGA只有4個(gè)端口)。解碼路由器DC接收編碼的數(shù)據(jù)并解碼,并將它發(fā)送給下游的信宿主機(jī)。

  編碼策略與方案

  作為一種編碼結(jié)構(gòu)的提出,我們將編碼只限于不同信源數(shù)據(jù)包之間,暫不考慮信源包內(nèi)部編碼。相同信源的數(shù)據(jù)包之間分“代”,以便在解碼時(shí)區(qū)分信息先后順序[6]。不同信源的包之間不區(qū)分代的概念。

  定義:為了討論的方便性和簡潔性,我們將信源S1的第1代記為S(1,1),信源S2的第3代記為S(2,3),??依此類推。依據(jù)包頭和緩存,每個(gè)信源的代的編號從0開始,至1023結(jié)束,即信源n的最大的代編號為S(n,1023)。

  在編碼路由器EC上對不同信源的IP數(shù)據(jù)包進(jìn)行編碼,編碼系數(shù)矢量隨機(jī)選擇,編碼方法是線性編碼。例如,在上圖中的編碼路由器EC0,設(shè)兩個(gè)鏈路的輸入的全局編碼向量為:

,由于只有兩個(gè)信源之間的編碼有且只有一條邊輸出,則本地編碼向量為(α β),依據(jù)文章[7]的公式:

 

  out(e)=(α β)=αS(1,x)+βS(2,y)。編碼后的數(shù)據(jù)以NCP(network coding protocol)包頭封裝,然后再封裝在IP數(shù)據(jù)報(bào)中,如圖3所示。

  為減小相應(yīng)的編碼負(fù)擔(dān)和提高編碼效率,我們只對網(wǎng)絡(luò)中的IP數(shù)據(jù)報(bào)中的有效載荷進(jìn)行編碼(已經(jīng)編碼過的數(shù)據(jù)包可以再進(jìn)行編碼),不對ARP等其他數(shù)據(jù)包編碼。在編碼路由器中,我們?yōu)椴煌妮斎胪ǖ篱_辟不同的FIFO以進(jìn)行順序存取和編碼,編碼流程如圖4所示。

  轉(zhuǎn)發(fā)(組播)路由器R工作流程

  在實(shí)際的應(yīng)用中,R應(yīng)該是具有組播功能的路由器,即可以運(yùn)行網(wǎng)際組播管理協(xié)議IGMP和多播路由選擇協(xié)議DVMRP等,從而它可以知道網(wǎng)絡(luò)的局部的拓?fù)浜蜐M足組播成員的要求。為了初期容易實(shí)現(xiàn),我們將其功能簡化為轉(zhuǎn)發(fā)功能(即廣播功能),具體工作流程如圖5。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉