一種基于ap優(yōu)化tcp連接的方法、ap和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及無(wú)線網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,具體地,涉及一種基于AP (Access Point,即接入點(diǎn))優(yōu)化TCP (Transmiss1n Control Protocol,即傳輸控制協(xié)議)連接的方法、AP和系統(tǒng)。
【背景技術(shù)】
[0002]通常,無(wú)線網(wǎng)絡(luò)環(huán)境主要有如下特點(diǎn):
[0003](I)無(wú)線設(shè)備共享信道資源,在信道利用率高的情況下,容易出現(xiàn)丟包。
[0004](2)無(wú)線接入點(diǎn)的功率普遍比無(wú)線終端高,會(huì)出現(xiàn)上下行功率不對(duì)等問題,下行功率大于上行功率。
[0005](3)無(wú)線信號(hào)容易受到環(huán)境的影響,丟包和時(shí)延不均勻。
[0006](4)無(wú)線信號(hào)的信號(hào)強(qiáng)度受到無(wú)線終端與接入點(diǎn)的距離影響,距離遠(yuǎn)時(shí),信號(hào)強(qiáng)度變低,時(shí)延和丟包會(huì)增加。
[0007]因此,在無(wú)線網(wǎng)絡(luò)環(huán)境下,由于復(fù)雜的無(wú)線環(huán)境的干擾,容易發(fā)生延時(shí)和丟包,網(wǎng)絡(luò)很不穩(wěn)定,跟有線網(wǎng)絡(luò)環(huán)境相比,在網(wǎng)絡(luò)穩(wěn)定性上存在很大的差別,從而導(dǎo)致了 TCP連接在無(wú)線網(wǎng)絡(luò)環(huán)境下的傳輸效率較低,使得有些應(yīng)用的用戶體驗(yàn)差。
[0008]針對(duì)無(wú)線網(wǎng)絡(luò)環(huán)境下存在的問題,現(xiàn)有技術(shù)中的解決方案通常是在AP上建立TCP代理。TCP代理是處理基于內(nèi)容的網(wǎng)絡(luò)業(yè)務(wù)的常見手段,其基本模型是在原本互通的TCP發(fā)送端與目的端之間加入代理端,使原本直接交互的兩端分別與代理端進(jìn)行交互,同時(shí)代理端可根據(jù)業(yè)務(wù)的需要對(duì)兩端交互的內(nèi)容進(jìn)行修改。因此,通過TCP代理把終端到服務(wù)器的一條TCP連接變成兩條TCP連接,一條是終端到AP的TCP連接,一條是AP到服務(wù)器的連接,這兩條TCP連接也把網(wǎng)絡(luò)分為無(wú)線網(wǎng)絡(luò)環(huán)境和有線網(wǎng)絡(luò)環(huán)境,然后根據(jù)無(wú)線網(wǎng)絡(luò)環(huán)境,優(yōu)化TCP的擁塞算法,從而減少TCP的擁塞機(jī)會(huì),以提高TCP的傳輸效率和應(yīng)用的用戶體驗(yàn)。這種方案通過改進(jìn)TCP的擁塞算法,可以提高TCP的傳輸效率,但是沒有實(shí)現(xiàn)與無(wú)線驅(qū)動(dòng)模塊聯(lián)動(dòng),不能及時(shí)向TCP代理模塊反饋報(bào)文是否發(fā)送成功,從而影響TCP協(xié)議棧重傳報(bào)文或繼續(xù)發(fā)送報(bào)文的效率。
【發(fā)明內(nèi)容】
[0009]本發(fā)明的目的是提供一種基于AP的優(yōu)化TCP連接的方法、AP和系統(tǒng),用于解決TCP連接在無(wú)線網(wǎng)絡(luò)環(huán)境下的傳輸效率較低的問題。
[0010]為了實(shí)現(xiàn)上述目的,本發(fā)明提供一種基于AP優(yōu)化TCP連接的方法,該方法包括:TCP代理的TCP協(xié)議棧將發(fā)送端發(fā)送的TCP報(bào)文轉(zhuǎn)發(fā)至AP的無(wú)線驅(qū)動(dòng)模塊,其中,所述TCP代理設(shè)置在建立TCP連接的發(fā)送端與目的端之間的接入點(diǎn)AP上;無(wú)線驅(qū)動(dòng)模塊向目的端發(fā)送所述TCP報(bào)文;以及無(wú)線驅(qū)動(dòng)模塊向所述TCP協(xié)議棧反饋TCP報(bào)文是否發(fā)送成功。
[0011]優(yōu)選地,無(wú)線驅(qū)動(dòng)模塊向TCP協(xié)議棧反饋TCP報(bào)文是否發(fā)送成功包括:若AP收到目的端回應(yīng)的ACK幀,則無(wú)線驅(qū)動(dòng)模塊向TCP協(xié)議棧反饋TCP報(bào)文發(fā)送成功,否則向TCP協(xié)議棧反饋TCP報(bào)文發(fā)送失敗。
[0012]優(yōu)選地,無(wú)線驅(qū)動(dòng)模塊向所述TCP協(xié)議棧反饋TCP報(bào)文是否發(fā)送成功包括:在AP未收到目的端回應(yīng)的無(wú)線ACK幀的情況下,所述無(wú)線驅(qū)動(dòng)模塊根據(jù)預(yù)定的時(shí)間間隔和預(yù)定的次數(shù)向所述目的端重新發(fā)送所述TCP報(bào)文;以及在重新發(fā)送所述TCP報(bào)文的過程中,如果接收到所述目的端響應(yīng)的ACK幀,則確定TCP報(bào)文發(fā)送成功,否則確定TCP報(bào)文發(fā)送失敗。
[0013]優(yōu)選地,所述方法還包括:無(wú)線驅(qū)動(dòng)模塊向TCP協(xié)議棧反饋TCP報(bào)文發(fā)送成功時(shí),生成一個(gè)TCP ACK報(bào)文,并將該TCP ACK報(bào)文發(fā)送給TCP協(xié)議棧,TCP協(xié)議棧收到該TCP ACK報(bào)文后,清除對(duì)應(yīng)的未確認(rèn)發(fā)送成功的TCP報(bào)文。
[0014]優(yōu)選地,所述無(wú)線驅(qū)動(dòng)模塊上配置有反饋模塊,且所述無(wú)線驅(qū)動(dòng)模塊通過該反饋模塊向TCP協(xié)議棧反饋TCP報(bào)文是否發(fā)送成功,其中,所述反饋模塊配置有能與所述TCP協(xié)議棧進(jìn)行通信的接口。
[0015]本發(fā)明的技術(shù)方案還提供了一種AP,該AP位于建立TCP連接的發(fā)送端與目的端之間,且包括依次連接的TCP代理模塊和無(wú)線驅(qū)動(dòng)模塊;其中,所述TCP代理模塊,用于通過TCP協(xié)議棧將發(fā)送端發(fā)送的TCP報(bào)文轉(zhuǎn)發(fā)至所述無(wú)線驅(qū)動(dòng)模塊;所述無(wú)線驅(qū)動(dòng)模塊,用于向目的端發(fā)送所述TCP報(bào)文,并向所述TCP協(xié)議棧反饋TCP報(bào)文是否發(fā)送成功。
[0016]優(yōu)選地,所述TCP代理模塊包括:TCP協(xié)議棧模塊,用于通過TCP協(xié)議棧將發(fā)送端發(fā)送的TCP報(bào)文轉(zhuǎn)發(fā)至無(wú)線驅(qū)動(dòng)模塊,并接收所述無(wú)線驅(qū)動(dòng)模塊向TCP協(xié)議棧反饋的TCP報(bào)文是否發(fā)送成功的消息;快速重傳模塊,用于在所述TCP協(xié)議棧模塊接收到所述無(wú)線驅(qū)動(dòng)模塊反饋的TCP報(bào)文發(fā)送失敗的消息時(shí),啟動(dòng)TCP協(xié)議??焖僦貍靼l(fā)送失敗的TCP報(bào)文,且在快速重傳過程中不改變TCP連接的擁塞情況;以及處理模塊,用于在所述TCP協(xié)議棧模塊接收到所述無(wú)線驅(qū)動(dòng)模塊反饋的TCP報(bào)文發(fā)送成功的消息時(shí),啟動(dòng)TCP協(xié)議棧清除對(duì)應(yīng)的未確認(rèn)發(fā)送成功的TCP報(bào)文。
[0017]優(yōu)選地,所述無(wú)線驅(qū)動(dòng)模塊包括:反饋模塊,其配置有能與所述TCP協(xié)議棧進(jìn)行通信的接口,用于使所述無(wú)線驅(qū)動(dòng)模塊通過該反饋模塊向TCP協(xié)議棧反饋TCP報(bào)文是否發(fā)送成功。
[0018]優(yōu)選地,所述反饋模塊還用于在向TCP協(xié)議棧反饋TCP報(bào)文發(fā)送成功時(shí),生成一個(gè)TCP ACK報(bào)文,并將該TCP ACK報(bào)文發(fā)送給所述TCP代理模塊,以使TCP協(xié)議棧收到TCP ACK報(bào)文后再清除對(duì)應(yīng)的未確認(rèn)發(fā)送成功的TCP報(bào)文。
[0019]本發(fā)明的技術(shù)方案還包括一種基于AP優(yōu)化TCP連接的系統(tǒng),該系統(tǒng)包括依次連接的發(fā)送端、AP和目的端,其中,所述AP為上述技術(shù)方案中任意所述的AP。
[0020]通過上述技術(shù)方案,本發(fā)明的有益效果是:本發(fā)明利用了 TCP代理技術(shù),在AP發(fā)送報(bào)文給終端出現(xiàn)丟包的時(shí)候可以實(shí)現(xiàn)快速重傳TCP報(bào)文,減少了重傳報(bào)文的時(shí)間間隔,從而提高了 TCP的傳輸效率;在AP發(fā)送報(bào)文給終端成功時(shí),生成一個(gè)TCP ACK報(bào)文,使得有可能觸發(fā)TCP協(xié)議棧繼續(xù)發(fā)送數(shù)據(jù),從而避免了有可能出現(xiàn)終端回復(fù)的TCP ACK報(bào)文丟失的情況導(dǎo)致的TCP協(xié)議棧無(wú)法繼續(xù)發(fā)送數(shù)據(jù)的現(xiàn)象,從而達(dá)到了提高TCP的傳輸效率的目的。
[0021]本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的【具體實(shí)施方式】部分予以詳細(xì)說(shuō)明。
【附圖說(shuō)明】
[0022]附圖是用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,并且構(gòu)成說(shuō)明書的一部分,與下面的【具體實(shí)施方式】一起用于解釋本發(fā)明,但并不構(gòu)成對(duì)本發(fā)明的限制。在附圖中:
[0023]圖1是本發(fā)明實(shí)施例中優(yōu)化TCP連接的方法的流程示意圖。
[0024]圖2是本發(fā)明實(shí)施例中從發(fā)送端至目的端的TCP報(bào)文的傳輸過程示意圖。
[0025]圖3是本發(fā)明實(shí)施例中優(yōu)化TCP連接的AP及系統(tǒng)的結(jié)構(gòu)示意圖
[0026]附圖標(biāo)記說(shuō)明
[0027]IAP2 發(fā)送端
[0028]3目的端IlTCP代理模塊
[0029]12無(wú)線驅(qū)動(dòng)模塊 13反饋模塊
[0030]IllTCP協(xié)議棧模塊112快速重傳模塊
[0031]113處理模塊
【具體實(shí)施方式】
[0032]以下結(jié)合附圖對(duì)本發(fā)明的【具體實(shí)施方式】進(jìn)行詳細(xì)說(shuō)明。應(yīng)當(dāng)理解的是,此處所描述的【具體實(shí)施方式】?jī)H用于說(shuō)明和解釋本發(fā)明,并不用于限制本發(fā)明。
[0033]本發(fā)明中的AP是指廣義上的AP,它不僅包括單純性無(wú)線接入點(diǎn)(無(wú)線AP,也稱瘦AP),也包括無(wú)線路由器(含無(wú)線網(wǎng)關(guān)、無(wú)線網(wǎng)橋,也稱胖AP)等類型的設(shè)備。AP是通過無(wú)線驅(qū)動(dòng)模塊發(fā)送TCP報(bào)文的,常規(guī)無(wú)線驅(qū)動(dòng)模塊接收TCP協(xié)議棧發(fā)送的數(shù)據(jù),并將數(shù)據(jù)轉(zhuǎn)換成無(wú)線信號(hào)發(fā)送到終端,再等待接收終端回應(yīng)的無(wú)線ACK幀,若預(yù)定時(shí)間內(nèi)沒收到無(wú)線ACK幀則重傳報(bào)文,否則不重傳。而TCP代理則是通過模擬終端與服務(wù)器建立連接,