楊曉萍,王 瑞,狄 特,牛 超
(吉林大學(xué)a.通信工程學(xué)院,長(zhǎng)春130012;b.汽車仿真與控制國家重點(diǎn)實(shí)驗(yàn)室,長(zhǎng)春130022)
傳統(tǒng)TCP(Transmission Control Protocol)Veno[1]算法無法辨別數(shù)據(jù)包丟失的原因,用于無線網(wǎng)絡(luò)傳輸層的TCP Westwood算法同樣無法解決該問題。當(dāng)丟失的數(shù)據(jù)包是由隨機(jī)干擾引起時(shí),誤將其認(rèn)為是網(wǎng)絡(luò)發(fā)生了擁塞,進(jìn)而盲目地啟動(dòng)擁塞控制機(jī)制。當(dāng)無線網(wǎng)絡(luò)環(huán)境較差時(shí),頻繁地減小擁塞控制窗口,使網(wǎng)絡(luò)性能明顯下降,吞吐量水平變低。針對(duì)無線網(wǎng)絡(luò)自身所具有的特點(diǎn),對(duì)TCP協(xié)議進(jìn)行改進(jìn)并提高擁塞控制性能成為目前研究的熱點(diǎn)。
當(dāng)前對(duì)無線網(wǎng)絡(luò)TCP[2]的優(yōu)化方案可以歸納為4種:TCP分段連接方案[3,4]、TCP的跨層合作方案[5]、TCP數(shù)據(jù)鏈路層方案[6]和TCP端到端的解決方案。這4種方案中對(duì)無線網(wǎng)絡(luò)環(huán)境優(yōu)化較為有效的是TCP端到端的傳輸層方案[7]。該方案在保證對(duì)其他層或中間路由器不加改動(dòng)的情況下,只對(duì)TCP進(jìn)行自身修改,使其能適應(yīng)無線網(wǎng)絡(luò)環(huán)境,不但部署簡(jiǎn)單,而且易于實(shí)現(xiàn)。TCP端到端的傳輸層方案 包 括 TCP Pacing、TCP Veno、TCP Vegas、TCP Westwood、TCP Probing 和 TCP SACK 等[8]。TCP SACK[9]算法在ACK(Acknowledgement)確認(rèn)報(bào)頭中增加SACK選項(xiàng),通過SACK選項(xiàng)可使TCP發(fā)送方只發(fā)送丟失的數(shù)據(jù)而不用發(fā)送后續(xù)全部數(shù)據(jù),從而提高了數(shù)據(jù)的傳輸效率;TCP Probing[10]在檢測(cè)到有數(shù)據(jù)包丟失后進(jìn)入探測(cè)階段,探測(cè)時(shí)間由信道環(huán)境決定;網(wǎng)絡(luò)處于擁塞的情況下,TCP Vegas在判斷網(wǎng)絡(luò)是否處于擁塞時(shí)用延遲作為標(biāo)準(zhǔn),并對(duì)比網(wǎng)絡(luò)實(shí)際傳輸速率與期望傳輸速率的差值,進(jìn)而預(yù)測(cè)網(wǎng)絡(luò)擁塞的發(fā)生;TCP Westwood[11,12]算法是在TCP Reno算法的基礎(chǔ)上提出的用來解決無線網(wǎng)絡(luò)中隨機(jī)丟包的一種算法,它是一種基于速率的TCP擁塞控制算法,源端實(shí)時(shí)的檢測(cè)和計(jì)算接收ACK速率的均值對(duì)網(wǎng)絡(luò)中可用帶寬進(jìn)行預(yù)測(cè)。……