文獻(xiàn)標(biāo)識(shí)碼: A
章編號(hào): 0258-7998(2013)09-0109-03
互聯(lián)網(wǎng)采用TCP和UDP兩種協(xié)議,在網(wǎng)絡(luò)擁塞的情況下,,UDP數(shù)據(jù)流幾乎占用了所有網(wǎng)絡(luò)帶寬,,而TCP數(shù)據(jù)流則幾乎停止工作,影響相關(guān)應(yīng)用正常運(yùn)行,。因此,,如何實(shí)現(xiàn)UDP數(shù)據(jù)流和TCP數(shù)據(jù)流的公平性是一個(gè)迫切需要解決的問(wèn)題。
IP電話(huà)視頻會(huì)議等多媒體網(wǎng)絡(luò)應(yīng)用采用實(shí)時(shí)性較強(qiáng)的UDP傳輸數(shù)據(jù),。UDP是一種無(wú)連接協(xié)議,,在傳輸速度上占有一定優(yōu)勢(shì),但它缺乏擁塞控制機(jī)制,,傳輸可靠性差,。因此如何在UDP中解決擁塞控制從而提高傳輸可靠性是另一個(gè)迫切需要解決的問(wèn)題。
因此,,本文提出解決上述兩個(gè)問(wèn)題的方案,,即UDP根據(jù)丟包率來(lái)判斷網(wǎng)絡(luò)的擁塞情況,若出現(xiàn)網(wǎng)絡(luò)擁塞,,接收方則通知控制方調(diào)整發(fā)送速率從而有效解決公平性問(wèn)題和UDP的擁塞控制問(wèn)題,。
1 FFUDP實(shí)現(xiàn)方案
FFUDP的創(chuàng)新之處在于接收方收到發(fā)送方發(fā)送的數(shù)據(jù)消息后,不像TCP那樣頻繁返回確認(rèn)消息即可控制發(fā)送速率,,從而提高帶寬利用率和數(shù)據(jù)包傳輸效率,。
FFUDP包括兩個(gè)部分:局部調(diào)整算法和全局調(diào)整算法。前者根據(jù)接收方本次接收數(shù)據(jù)消息的序列號(hào)和前一次接收的差值得到丟包數(shù)(局部丟包數(shù))來(lái)調(diào)整發(fā)送方的數(shù)據(jù)發(fā)送率,。后者根據(jù)接收方開(kāi)始接收數(shù)據(jù)消息到本次接收消息結(jié)束這段時(shí)間內(nèi)產(chǎn)生的丟包數(shù)(全局丟包數(shù))來(lái)調(diào)整數(shù)據(jù)發(fā)送率,。
前期工作發(fā)現(xiàn):獨(dú)立使用局部調(diào)整算法導(dǎo)致丟包率抖動(dòng),而獨(dú)立使用全局調(diào)整算法則解決公平性的效果不理想,。在FFUDP中,,局部調(diào)整算法控制接收方發(fā)送通知消息的周期,全局調(diào)整算法控制發(fā)送方發(fā)送速率,。
1.1 FFUDP協(xié)議的協(xié)議頭
FFUDP通過(guò)實(shí)時(shí)監(jiān)測(cè)網(wǎng)絡(luò),,定時(shí)給發(fā)送端發(fā)送通知消息來(lái)解決公平性和擁塞控制問(wèn)題,。本文新增的FFUDP協(xié)議頭字段,如圖1所示,。
1.3 FFUDP協(xié)議實(shí)現(xiàn)機(jī)制
FFUDP的實(shí)現(xiàn)機(jī)制分為以下兩種情況,。
1.3.1 提高發(fā)送級(jí)別的通知消息
如果發(fā)送方發(fā)送的數(shù)據(jù)全部被接收方接收,則接收方向發(fā)送方發(fā)送提高發(fā)送速率的通知消息,。雙方通信過(guò)程如圖4所示,。
(1)發(fā)送方A依次發(fā)送數(shù)據(jù)包M1和M2,M2到達(dá)接收方B后,,接收方B開(kāi)始發(fā)送通知消息Notify1,,其負(fù)載為降低之后的發(fā)送級(jí)別。
(2)接收方B發(fā)送通知消息Notify1后,,降低發(fā)送速率,,并根據(jù)降低后的發(fā)送速率發(fā)送后期的數(shù)據(jù)包M3。
如果接收方發(fā)送的通知消息丟失,,那么發(fā)送方不改變發(fā)送速率,。
2 仿真實(shí)驗(yàn)與性能分析
仿真工具采用NS-2,網(wǎng)絡(luò)帶寬為4 Mb/s,,鏈路延遲為5 ms,,隊(duì)列長(zhǎng)度為20。網(wǎng)絡(luò)中的發(fā)送節(jié)點(diǎn)分別發(fā)送TCP,、UDP,、FFUDP三種數(shù)據(jù)流。為了保持公平性,,三種數(shù)據(jù)流所處的網(wǎng)絡(luò)環(huán)境完全一致,。
2.1 公平性分析
為了測(cè)試FFUDP和TCP的友好性,數(shù)據(jù)流只包含TCP/ FFUDP,。
如圖6所示,,兩種數(shù)據(jù)流都不斷調(diào)整自己的發(fā)送速率。8 s后,,兩者漸漸趨于平衡,保持一個(gè)相對(duì)平衡的趨勢(shì),。但FFUDP數(shù)據(jù)流的吞吐量高于TCP,,這是因?yàn)門(mén)CP對(duì)任一數(shù)據(jù)消息都返回確認(rèn)消息,從而實(shí)現(xiàn)可靠傳輸,。FFUDP則是定期發(fā)送通知消息,,所以,F(xiàn)FUDP數(shù)據(jù)流的吞吐量略高于TCP數(shù)據(jù)流,,但兩者保持一個(gè)相對(duì)平穩(wěn)的趨勢(shì),,因此保證了相對(duì)公平性,。
如圖6、圖7所示,,丟包率與吞吐量成反比,。初始階段,TCP/FFUDP數(shù)據(jù)流的吞吐量很高,,但丟包率很低,。同樣,經(jīng)過(guò)8 s左右的調(diào)整,,兩種數(shù)據(jù)流的丟包率出現(xiàn)穩(wěn)定的趨勢(shì),,但是FFUDP的丟包率比TCP的丟包率低。這是由于TCP的重傳確認(rèn)機(jī)制占用的網(wǎng)絡(luò)資源增加了丟棄數(shù)據(jù)的概率,。相比,,F(xiàn)FUDP不采用重傳確認(rèn)機(jī)制,降低了丟棄數(shù)據(jù)的概率,。從圖7可以看出,, FFUDP協(xié)議達(dá)到了FFUDP/TCP數(shù)據(jù)流友好公平的目的。
2.2 擁塞控制分析
為了測(cè)試FFUDP的擁塞控制功能,,在原來(lái)的配置下,,分別設(shè)置兩條FFUDP/UDP數(shù)據(jù)流,以測(cè)試FFUDP比UDP更具有可靠性,。如圖8所示,,F(xiàn)FUDP的吞吐量比UDP高很多。UDP的低吞吐量可能導(dǎo)致服務(wù)癱瘓,。而FFUDP通過(guò)調(diào)整發(fā)送速率有效控制了網(wǎng)絡(luò)擁塞,,達(dá)到了提高吞吐量的目的。
如圖9所示,,UDP丟包率遠(yuǎn)高于FFUDP,致使接收數(shù)據(jù)存在不完整性,。FFUDP大幅度降低了丟包率,實(shí)現(xiàn)了可靠傳輸,。
本文提出了FFUDP以解決UDP與TCP數(shù)據(jù)流公平性問(wèn)題,以及UDP傳輸可靠性問(wèn)題,。仿真數(shù)據(jù)表明,F(xiàn)FUDP協(xié)議實(shí)現(xiàn)了不同數(shù)據(jù)流之間的公平性,,在網(wǎng)絡(luò)資源緊張的情況下,能夠有效控制網(wǎng)絡(luò)擁塞從而實(shí)現(xiàn)傳輸可靠性,。
參考文獻(xiàn)
[1] 朱利, 周俊輝, 鄭守淇,等. 基于RTT的自適應(yīng)擁塞控制研究[J]. 計(jì)算機(jī)學(xué)報(bào),2000,23(7):705-710.
[2] 李如瑋, 鮑長(zhǎng)春. VoIP丟包處理技術(shù)的研究進(jìn)展[J].通信學(xué)報(bào), 2007,28(6):103-110.
[3] 李強(qiáng), 張新榮. 基于延遲抖動(dòng)分析的TCP友好擁塞控制算法[J]. 計(jì)算機(jī)工程與科學(xué), 2007,29(6):18-20.
[4] 王國(guó)棟, 任勇毛, 李俊. 多重慢啟動(dòng)TCP協(xié)議研究[J].微電子學(xué)與計(jì)算機(jī), 2011,28(3):178-181.
[5] 張藝瀕, 張志斌, 趙詠,等. TCP與UDP網(wǎng)絡(luò)流量對(duì)比分析研究[J].計(jì)算機(jī)應(yīng)用研究, 2010,27(6):2192-2197.
[6] 靳海力, 李俊. 具有補(bǔ)發(fā)機(jī)制的增強(qiáng)型可靠UDP的實(shí)現(xiàn)[J]. 小型微型計(jì)算機(jī)系統(tǒng), 2010,31(5):904-907.
[7] POSTEL J. User datagram protocol[S]. RFC 768. 1980.
[8] VELTEN D. Reliable data protocol[S]. RFC908. 1984.
[9] 方路平,劉世華,陳盼,等.NS-2網(wǎng)絡(luò)模擬基礎(chǔ)與應(yīng)用[M].北京:國(guó)防工業(yè)出版社,2008.
[10] TANENBAUM A S. Computer network(fourth edition)[M].Prentice Hall PTR,,2004.11.
[11] STEVENS W R. TCP/IP詳解卷1:協(xié)議[M]. 北京:機(jī)械工業(yè)出版社, 2000.
[13] STEVENS W R. TCP/IP詳解卷2:實(shí)現(xiàn)[M]. 北京:機(jī)械工業(yè)出版社, 2004.