两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種在多源應(yīng)用層組播中實(shí)現(xiàn)擁塞控制的方法

文檔序號(hào):7766337閱讀:547來源:國(guó)知局
專利名稱:一種在多源應(yīng)用層組播中實(shí)現(xiàn)擁塞控制的方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種網(wǎng)絡(luò)擁塞控制方法,具體涉及一種應(yīng)用于多源應(yīng)用層組播的擁塞 控制方法,屬于應(yīng)用層組播可靠傳輸技術(shù)領(lǐng)域。
背景技術(shù)
多源應(yīng)用層組播是一種多點(diǎn)到多點(diǎn)數(shù)據(jù)傳輸方式,其中任何一個(gè)組成員都可能作 為數(shù)據(jù)源而擁有自己的組播分發(fā)樹以將數(shù)據(jù)組播到組中所有其他節(jié)點(diǎn);而任何組成員也將 會(huì)接收所有組播數(shù)據(jù)源發(fā)出的組播數(shù)據(jù)。由于該組播是在應(yīng)用層之上實(shí)現(xiàn),因此組成員節(jié) 點(diǎn)還擔(dān)負(fù)著組播數(shù)據(jù)復(fù)制與轉(zhuǎn)發(fā)的任務(wù)。構(gòu)建多源應(yīng)用層組播,首先需要在現(xiàn)有物理網(wǎng)絡(luò) 的基礎(chǔ)上建立覆蓋網(wǎng),然后在覆蓋網(wǎng)上為每一個(gè)數(shù)據(jù)源構(gòu)建組播樹。如果A與B兩點(diǎn)之間 存在覆蓋網(wǎng)邏輯鏈路,兩點(diǎn)之間就可能存在雙向的數(shù)據(jù)通路,從而在某個(gè)轉(zhuǎn)發(fā)樹中A是B的 上游(父)節(jié)點(diǎn),而在另外一個(gè)轉(zhuǎn)發(fā)樹上A則是B的下游(子)節(jié)點(diǎn),所以只有針對(duì)確定的 組播樹,描述節(jié)點(diǎn)的上下游關(guān)系才有意義。本地節(jié)點(diǎn)會(huì)在節(jié)點(diǎn)內(nèi)部為每個(gè)鄰居鏈路建立一 個(gè)輸入緩沖區(qū)和一個(gè)輸出緩沖區(qū),不同組播數(shù)據(jù)流在共享本地節(jié)點(diǎn)的同一邏輯鏈路時(shí),會(huì) 同時(shí)共享該鏈路的輸入或輸出緩沖區(qū)。由于組播數(shù)據(jù)流的特征在于單輸入多輸出,每個(gè)中 間節(jié)點(diǎn)都可能存在數(shù)據(jù)流分叉,而且在覆蓋網(wǎng)上同時(shí)存在多個(gè)數(shù)據(jù)源所形成的多個(gè)樹形組 播數(shù)據(jù)流相互疊加,會(huì)使得數(shù)據(jù)流錯(cuò)綜復(fù)雜,數(shù)據(jù)量暴增。組播的傳輸方式使得組播數(shù)據(jù)在網(wǎng)絡(luò)中以倍數(shù)的方式增長(zhǎng),組成員越多則復(fù)制出 的數(shù)據(jù)包越多,而傳統(tǒng)的IP組播又不提供速率控制,所以組播流量很容易占據(jù)所有網(wǎng)絡(luò)資 源,進(jìn)而導(dǎo)致?lián)砣?。?yīng)用層組播更容易產(chǎn)生擁塞,是由于應(yīng)用層節(jié)點(diǎn)的處理速度慢,緩沖區(qū) 中可能會(huì)堆積大量數(shù)據(jù),如果此時(shí)不對(duì)源節(jié)點(diǎn)的發(fā)送速率加以控制,就會(huì)造成緩沖區(qū)溢出, 進(jìn)而產(chǎn)生丟包;另外,在應(yīng)用層節(jié)點(diǎn)上的多個(gè)進(jìn)程需要競(jìng)爭(zhēng)主機(jī)資源導(dǎo)致終端主機(jī)的性能 不穩(wěn)定,無法實(shí)現(xiàn)數(shù)據(jù)包的線性轉(zhuǎn)發(fā),也會(huì)造成擁塞。多源應(yīng)用層組播中的每個(gè)節(jié)點(diǎn)都是潛 在的數(shù)據(jù)源,很容易發(fā)生多個(gè)數(shù)據(jù)源同時(shí)請(qǐng)求網(wǎng)絡(luò)轉(zhuǎn)發(fā)服務(wù)的情況,如果不對(duì)各個(gè)源節(jié)點(diǎn) 加以控制和區(qū)分調(diào)度,則更容易產(chǎn)生擁塞。

發(fā)明內(nèi)容
本發(fā)明的目的是提供一種多源應(yīng)用層組播擁塞控制方法,它可使應(yīng)用層組播源節(jié) 點(diǎn)根據(jù)其緩沖區(qū)狀態(tài)進(jìn)行有效的速率控制,保證數(shù)據(jù)的有效可靠傳輸。另外根據(jù)各數(shù)據(jù)流 的擁塞反饋信息有效調(diào)整共享緩沖分配,可以保證多數(shù)據(jù)流之間的公平性。本發(fā)明提供了一種在多源應(yīng)用層組播中實(shí)現(xiàn)擁塞控制的方法,包括以下步驟步驟1、應(yīng)用層組播節(jié)點(diǎn)在應(yīng)用層為每個(gè)鄰居節(jié)點(diǎn)建立TCP連接,并預(yù)留輸入緩沖 區(qū)和輸出緩沖區(qū);節(jié)點(diǎn)接收到父節(jié)點(diǎn)的數(shù)據(jù)后,只要輸入緩沖區(qū)未滿,就實(shí)時(shí)地將數(shù)據(jù)存入 到輸入緩沖區(qū);處理進(jìn)程從其中讀取數(shù)據(jù),并清除已處理過的數(shù)據(jù)包;步驟2、應(yīng)用層組播節(jié)點(diǎn)在本地為每條組播數(shù)據(jù)流的每個(gè)子節(jié)點(diǎn)記錄一個(gè)擁塞控 制信息,該值初始設(shè)置為該記錄所能表示的最大值,收到一個(gè)子節(jié)點(diǎn)發(fā)來的數(shù)據(jù)流j的擁塞控制信息后,即更新本地的記錄;步驟3、應(yīng)用層組播節(jié)點(diǎn)在本地定期計(jì)算每個(gè)數(shù)據(jù)流的擁塞反饋信息,并將該擁塞 反饋信息發(fā)送給各個(gè)數(shù)據(jù)流相對(duì)應(yīng)的父節(jié)點(diǎn);計(jì)算擁塞反饋信息的具體方法為應(yīng)用層組 播節(jié)點(diǎn)從本地存儲(chǔ)的數(shù)據(jù)流j的所有擁塞控制信息中選擇最小值作為數(shù)據(jù)流j的擁塞反饋 信息Pp并將Pj與數(shù)據(jù)流j的所有輸出緩沖區(qū)的空閑大小相比,取最小值為新的擁塞反饋 fn 息 Pj ;步驟4、當(dāng)節(jié)點(diǎn)要向子節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),首先計(jì)算最大允許轉(zhuǎn)移數(shù)據(jù)量,若需發(fā)送 數(shù)據(jù)量小于最大允許轉(zhuǎn)移數(shù)據(jù)量,則將所有需發(fā)送數(shù)據(jù)寫入輸出緩沖區(qū);否則,僅向輸出緩 沖區(qū)轉(zhuǎn)移最大允許轉(zhuǎn)移的數(shù)據(jù)量;計(jì)算最大允許轉(zhuǎn)移數(shù)據(jù)量的方法為 (1)應(yīng)用層組播節(jié)點(diǎn)按照公式^ = α β ^Pj計(jì)算數(shù)據(jù)流j的轉(zhuǎn)移權(quán)重,其中Cj 為當(dāng)前緩沖區(qū)中已有的數(shù)據(jù)流j的數(shù)據(jù)量,α,β為權(quán)重因子,取0到1之間的實(shí)數(shù);(2)應(yīng)用層組播節(jié)點(diǎn)依據(jù)轉(zhuǎn)移權(quán)重,為每個(gè)數(shù)據(jù)流分配共享緩沖的可用空間即最
大允許轉(zhuǎn)移數(shù)據(jù)量-sj= Yjv^b
k芒φ其中&表示最大允許轉(zhuǎn)移數(shù)據(jù)量,Φ表示與數(shù)據(jù)流j共享同一輸出緩沖區(qū)的所有 其他數(shù)據(jù)流集合,B表示相應(yīng)輸出緩沖區(qū)的空閑大??;步驟5、發(fā)送進(jìn)程從輸出緩沖區(qū)實(shí)時(shí)讀取數(shù)據(jù)并發(fā)送到子節(jié)點(diǎn)。有益效果該方法利用TCP連接的可靠性來保證數(shù)據(jù)在節(jié)點(diǎn)之間發(fā)送不會(huì)丟失;同時(shí)利用本 地緩沖區(qū)來保證連接中斷造成的數(shù)據(jù)傳輸丟失能夠被快速恢復(fù);而在節(jié)點(diǎn)內(nèi)部可靠地從 輸入緩沖區(qū)向輸出緩沖區(qū)轉(zhuǎn)移數(shù)據(jù),因此能夠保證整個(gè)組播流的傳輸過程不會(huì)發(fā)生數(shù)據(jù)丟 失。使不同組播數(shù)據(jù)流共享緩沖區(qū)能提高緩沖利用率,并且通過分配緩沖空間來限制每條 組播數(shù)據(jù)流的流量,達(dá)到擁塞控制的目的。因此,使用該方法能夠達(dá)到可靠傳輸,增強(qiáng)緩沖 利用率的目的。


圖1為本發(fā)明所述方法的流程圖;
具體實(shí)施例方式下面結(jié)合附圖,具體說明本發(fā)明的優(yōu)選實(shí)施方式。本實(shí)施方式實(shí)現(xiàn)了一種在多源應(yīng)用層組播中實(shí)現(xiàn)擁塞控制的方法。首先對(duì)本實(shí)施方式使用的一些術(shù)語進(jìn)行解釋輸入緩沖區(qū)——指組播節(jié)點(diǎn)在應(yīng)用層為接收數(shù)據(jù)包而預(yù)留的內(nèi)存空間。節(jié)點(diǎn)從 TCP中讀取數(shù)據(jù),并將讀到的數(shù)據(jù)保存在輸入緩沖區(qū)中,處理進(jìn)程從其中讀取數(shù)據(jù),并清除 已處理過的數(shù)據(jù)包;輸出緩沖區(qū)——指組播節(jié)點(diǎn)在應(yīng)用層為向子節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù)包而預(yù)留的內(nèi)存空間, 處理進(jìn)程將數(shù)據(jù)從輸入緩沖區(qū)轉(zhuǎn)移到輸出緩沖區(qū),發(fā)送進(jìn)程從輸出緩沖區(qū)實(shí)時(shí)讀取數(shù)據(jù), 交給TCP層進(jìn)行處理。
4
擁塞控制信息——指在節(jié)點(diǎn)上為每個(gè)數(shù)據(jù)流所維護(hù)的擁塞控制參數(shù),該參數(shù)由子 節(jié)點(diǎn)計(jì)算生成并向父節(jié)點(diǎn)轉(zhuǎn)發(fā)。轉(zhuǎn)移權(quán)重——指在本地節(jié)點(diǎn)為每個(gè)數(shù)據(jù)流分配共享緩沖的可用空間所依據(jù)的標(biāo) 準(zhǔn),即按照各個(gè)數(shù)據(jù)流轉(zhuǎn)移權(quán)重的比例分配共享緩沖的可用空間;權(quán)重因子——指對(duì)不同參數(shù)加權(quán)求和時(shí)的權(quán)重值,該值越大表示該參數(shù)對(duì)最終結(jié) 果的影響也越大。圖1為本實(shí)施方式所使用方法的流程圖。如圖所示,本實(shí)施方式包括如下步驟步驟1、應(yīng)用層組播節(jié)點(diǎn)在應(yīng)用層為每個(gè)鄰居節(jié)點(diǎn)建立TCP連接,并預(yù)留輸入緩沖 區(qū)和輸出緩沖區(qū);節(jié)點(diǎn)接收到父節(jié)點(diǎn)的數(shù)據(jù)后,只要輸入緩沖區(qū)未滿,就實(shí)時(shí)地將數(shù)據(jù)存入 到輸入緩沖區(qū);處理進(jìn)程從其中讀取數(shù)據(jù),并清除已處理過的數(shù)據(jù)包;步驟2、應(yīng)用層組播節(jié)點(diǎn)在本地為每條組播數(shù)據(jù)流的每個(gè)子節(jié)點(diǎn)記錄一個(gè)擁塞控 制信息,該值初始設(shè)置為該記錄所能表示的最大值,收到一個(gè)子節(jié)點(diǎn)發(fā)來的數(shù)據(jù)流j的擁 塞控制信息后,即更新本地的記錄;步驟3、應(yīng)用層組播節(jié)點(diǎn)在本地定期計(jì)算每個(gè)數(shù)據(jù)流的擁塞反饋信息,并將該擁塞 反饋信息發(fā)送給各個(gè)數(shù)據(jù)流相對(duì)應(yīng)的父節(jié)點(diǎn);計(jì)算擁塞反饋信息的具體方法為應(yīng)用層組 播節(jié)點(diǎn)從本地存儲(chǔ)的數(shù)據(jù)流j的所有擁塞控制信息中選擇最小值作為數(shù)據(jù)流j的擁塞反饋 信息Pp并將Pj與數(shù)據(jù)流j的所有輸出緩沖區(qū)的空閑大小相比,取最小值為新的擁塞反饋 fn 息 Pj ;步驟4、當(dāng)節(jié)點(diǎn)要向子節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),首先計(jì)算最大允許轉(zhuǎn)移數(shù)據(jù)量,若需發(fā)送 數(shù)據(jù)量小于最大允許轉(zhuǎn)移數(shù)據(jù)量,則將所有需發(fā)送數(shù)據(jù)寫入輸出緩沖區(qū);否則,僅向輸出緩 沖區(qū)轉(zhuǎn)移最大允許轉(zhuǎn)移的數(shù)據(jù)量;計(jì)算最大允許轉(zhuǎn)移數(shù)據(jù)量的方法為(1)應(yīng)用層組播節(jié)點(diǎn)按照公式Wj = α β ^Pj計(jì)算數(shù)據(jù)流j的轉(zhuǎn)移權(quán)重,其中Cj 為當(dāng)前緩沖區(qū)中已有的數(shù)據(jù)流j的數(shù)據(jù)量,α,β為權(quán)重因子,取0到1之間的實(shí)數(shù);(2)應(yīng)用層組播節(jié)點(diǎn)依據(jù)轉(zhuǎn)移權(quán)重,為每個(gè)數(shù)據(jù)流分配共享緩沖的可用空間即最
大允許轉(zhuǎn)移數(shù)據(jù)量、
k黽φ其中&表示最大允許轉(zhuǎn)移數(shù)據(jù)量,Φ表示與數(shù)據(jù)流j共享同一輸出緩沖區(qū)的所有 其他數(shù)據(jù)流集合,B表示相應(yīng)輸出緩沖區(qū)的空閑大?。徊襟E5、發(fā)送進(jìn)程從輸出緩沖區(qū)實(shí)時(shí)讀取數(shù)據(jù)并發(fā)送到子節(jié)點(diǎn)。最后所應(yīng)說明的是,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非限制,盡管參 照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明 的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的精神和范圍。
權(quán)利要求
一種在多源應(yīng)用層組播中實(shí)現(xiàn)擁塞控制的方法,其特征在于包括以下步驟步驟1、應(yīng)用層組播節(jié)點(diǎn)在應(yīng)用層為每個(gè)鄰居節(jié)點(diǎn)建立TCP連接,并預(yù)留輸入緩沖區(qū)和輸出緩沖區(qū);節(jié)點(diǎn)接收到父節(jié)點(diǎn)的數(shù)據(jù)后,只要輸入緩沖區(qū)未滿,就實(shí)時(shí)地將數(shù)據(jù)存入到輸入緩沖區(qū);處理進(jìn)程從其中讀取數(shù)據(jù),并清除已處理過的數(shù)據(jù)包;步驟2、應(yīng)用層組播節(jié)點(diǎn)在本地為每條組播數(shù)據(jù)流的每個(gè)子節(jié)點(diǎn)記錄一個(gè)擁塞控制信息,該值初始設(shè)置為該記錄所能表示的最大值,收到一個(gè)子節(jié)點(diǎn)發(fā)來的數(shù)據(jù)流j的擁塞控制信息后,即更新本地的記錄;步驟3、應(yīng)用層組播節(jié)點(diǎn)在本地定期計(jì)算每個(gè)數(shù)據(jù)流的擁塞反饋信息,并將該擁塞反饋信息發(fā)送給各個(gè)數(shù)據(jù)流相對(duì)應(yīng)的父節(jié)點(diǎn);計(jì)算擁塞反饋信息的具體方法為應(yīng)用層組播節(jié)點(diǎn)從本地存儲(chǔ)的數(shù)據(jù)流j的所有擁塞控制信息中選擇最小值作為數(shù)據(jù)流j的擁塞反饋信息Pj,并將Pj與數(shù)據(jù)流j的所有輸出緩沖區(qū)的空閑大小相比,取最小值為新的擁塞反饋信息Pj;步驟4、當(dāng)節(jié)點(diǎn)要向子節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),首先計(jì)算最大允許轉(zhuǎn)移數(shù)據(jù)量,若需發(fā)送數(shù)據(jù)量小于最大允許轉(zhuǎn)移數(shù)據(jù)量,則將所有需發(fā)送數(shù)據(jù)寫入輸出緩沖區(qū);否則,僅向輸出緩沖區(qū)轉(zhuǎn)移最大允許轉(zhuǎn)移的數(shù)據(jù)量;計(jì)算最大允許轉(zhuǎn)移數(shù)據(jù)量的方法為(1)應(yīng)用層組播節(jié)點(diǎn)按照公式Wj=α*Cj+β*Pj計(jì)算數(shù)據(jù)流j的轉(zhuǎn)移權(quán)重,其中Cj為當(dāng)前緩沖區(qū)中已有的數(shù)據(jù)流j的數(shù)據(jù)量,α,β為權(quán)重因子,取0到1之間的實(shí)數(shù);(2)應(yīng)用層組播節(jié)點(diǎn)依據(jù)轉(zhuǎn)移權(quán)重,為每個(gè)數(shù)據(jù)流分配共享緩沖的可用空間即最大允許轉(zhuǎn)移數(shù)據(jù)量其中Sj表示最大允許轉(zhuǎn)移數(shù)據(jù)量,φ表示與數(shù)據(jù)流j共享同一輸出緩沖區(qū)的所有其他數(shù)據(jù)流集合,B表示相應(yīng)輸出緩沖區(qū)的空閑大小;步驟5、發(fā)送進(jìn)程從輸出緩沖區(qū)實(shí)時(shí)讀取數(shù)據(jù)并發(fā)送到子節(jié)點(diǎn)。FSA00000359766300011.tif
全文摘要
本發(fā)明涉及一種在多源應(yīng)用層組播中實(shí)現(xiàn)擁塞控制的方法,包括以下步驟1、應(yīng)用層組播節(jié)點(diǎn)為每個(gè)鄰居節(jié)點(diǎn)預(yù)留輸入緩沖區(qū)和輸出緩沖區(qū);2、應(yīng)用層組播節(jié)點(diǎn)在本地為每條組播數(shù)據(jù)流的每個(gè)子節(jié)點(diǎn)記錄一個(gè)擁塞控制信息;3、應(yīng)用層組播節(jié)點(diǎn)在本地定期計(jì)算每個(gè)數(shù)據(jù)流的擁塞反饋信息,并發(fā)送給對(duì)應(yīng)的父節(jié)點(diǎn);4、當(dāng)節(jié)點(diǎn)要向子節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),首先計(jì)算最大允許轉(zhuǎn)移數(shù)據(jù)量,若需發(fā)送數(shù)據(jù)量小于最大允許轉(zhuǎn)移數(shù)據(jù)量,則將所有需發(fā)送數(shù)據(jù)寫入輸出緩沖區(qū);否則,僅向輸出緩沖區(qū)轉(zhuǎn)移最大允許轉(zhuǎn)移的數(shù)據(jù)量;5、發(fā)送進(jìn)程從輸出緩沖區(qū)實(shí)時(shí)讀取數(shù)據(jù)并發(fā)送到子節(jié)點(diǎn)。本發(fā)明使不同組播數(shù)據(jù)流共享緩沖區(qū),能提高緩沖利用率,實(shí)現(xiàn)擁塞控制與可靠傳輸。
文檔編號(hào)H04L29/08GK101977158SQ20101055826
公開日2011年2月16日 申請(qǐng)日期2010年11月22日 優(yōu)先權(quán)日2010年11月22日
發(fā)明者劉靖, 陸慧梅, 高建敏 申請(qǐng)人:北京理工大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
屏南县| 前郭尔| 常宁市| 大英县| 南郑县| 醴陵市| 金门县| 康平县| 长阳| 隆昌县| 石台县| 汉沽区| 巴塘县| 安图县| 盐津县| 顺昌县| 隆尧县| 邓州市| 益阳市| 广宗县| 崇礼县| 金溪县| 嘉黎县| 正蓝旗| 萍乡市| 读书| 正镶白旗| 中江县| 浠水县| 阳东县| 琼结县| 临漳县| 集贤县| 长汀县| 惠来县| 亚东县| 西贡区| 南投县| 托克托县| 呼图壁县| 百色市|