一種無線自組網(wǎng)絡(luò)中數(shù)據(jù)傳輸方法和性能增強代理的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,特別涉及一種無線自組網(wǎng)絡(luò)中數(shù)據(jù)傳輸方法和性能增強代理。
【背景技術(shù)】
[0002]無線自組網(wǎng)絡(luò)(Wireless Ad Hoc Networks)是指沒有固定基礎(chǔ)設(shè)施,以某一種無線信號為通信手段的網(wǎng)絡(luò),它不需要預先部署固定基站設(shè)施,能充分體現(xiàn)無線網(wǎng)絡(luò)的移動性和靈活性,因而非常適合戰(zhàn)場通訊、災難救助、可穿戴計算等場合。
[0003]參見圖1,圖1為典型無線自組網(wǎng)絡(luò)示意圖。圖1中用戶終端I和其它用戶終端(用戶終端2和用戶終端3)之間能夠進行無線通信。
[0004]傳輸控制協(xié)議(Transmiss1nControl Protocol, TCP)是目前 Internet 上使用最廣泛的一種傳輸層協(xié)議;由于TCP是假定應用在帶寬時延乘積較小和信道誤碼率很低的有線網(wǎng)絡(luò)中,因此,當TCP協(xié)議應用于圖1中無線自組網(wǎng)絡(luò)時,由于鏈路的誤碼率高、時延長、鏈路不對稱、中斷率高等特性,會使TCP性能受到極大影響,降低吞吐量,影響數(shù)據(jù)的傳輸。
[0005]目前主要使用ATCP、TCP-F、Fixrd RTO等技術(shù)解決上述問題,當使用ATCP技術(shù)時,僅僅通過傳輸層是不能完全獲得鏈路的底層丟包情況;如使用TCP-F和Fixed RTO技術(shù),雖然通過調(diào)整擁塞窗口大小和重發(fā)機制,消除了不需要的擁塞避免引起的窗口減小和重傳等待,但是會加重網(wǎng)絡(luò)負擔,且適應性不好。
【發(fā)明內(nèi)容】
[0006]有鑒于此,本申請?zhí)峁┮环N無線自組網(wǎng)絡(luò)中數(shù)據(jù)傳輸方法和性能增強代理,以解決傳統(tǒng)TCP在無線自組網(wǎng)絡(luò)中對鏈路的誤碼率高、時延長、鏈路不對稱、中斷率高等特點的弓丨起的性能降低問題。
[0007]為解決上述技術(shù)問題,本申請的技術(shù)方案是這樣實現(xiàn)的:
[0008]一種無線自組網(wǎng)絡(luò)中數(shù)據(jù)傳輸方法,為無線自組網(wǎng)絡(luò)中的用戶終端分別部署性能增強代理PEP ;所述PEP與本端用戶終端建立傳輸控制協(xié)議TCP連接,與為對端用戶終端部署的PEP建立空間通信協(xié)議規(guī)范SCPS-傳輸協(xié)議TP連接;該方法包括:
[0009]所述PEP攔截到TCP數(shù)據(jù)報文時,代理本端用戶終端將所述TCP數(shù)據(jù)報文中的數(shù)據(jù)內(nèi)容封裝為SCPS-TP數(shù)據(jù)報文,并發(fā)送給對端用戶終端;
[0010]攔截到SCPS-TP數(shù)據(jù)報文時,代理對端用戶終端將所述SCPS-TP數(shù)據(jù)報文的數(shù)據(jù)內(nèi)容封裝為TCP數(shù)據(jù)報文,并向本端用戶終端發(fā)送。
[0011]一種無線自組網(wǎng)絡(luò)中數(shù)據(jù)傳輸性能增強代理PEP,該PEP為為無線自組網(wǎng)絡(luò)中的任一用戶終端部署的PEP ;該PEP包括:攔截單元、處理單元和發(fā)送單元;
[0012]所述建立單元,用于與本端用戶終端建立傳輸控制協(xié)議TCP連接,與為對端用戶終端部署的PEP建立空間通信協(xié)議規(guī)范SCPS-傳輸協(xié)議TP連接;
[0013]所述攔截單元,用于攔截TCP數(shù)據(jù)報文;攔截SCPS-TP數(shù)據(jù)報文;
[0014]所述處理單元,用于當所述攔截單元攔截到TCP數(shù)據(jù)報文時,代理本端用戶終端將所述TCP數(shù)據(jù)報文中的數(shù)據(jù)內(nèi)容封裝為SCPS-TP數(shù)據(jù)報文;當所述攔截單元攔截到SCPS-TP數(shù)據(jù)報文時,代理對端用戶終端將所述SCPS-TP數(shù)據(jù)報文的數(shù)據(jù)內(nèi)容封裝為TCP數(shù)據(jù)報文;
[0015]所述發(fā)送單元,用于將所述處理單元封裝的SCPS-TP數(shù)據(jù)報文通過所述建立單元建立的SCPS-TP連接發(fā)送給對端用戶終端;將所述處理單元封裝的TCP數(shù)據(jù)報文通過所述建立單元建立的TCP連接向本端用戶終端發(fā)送。
[0016]由上面的技術(shù)方案可知,本申請中為用戶終端部署PEP,通過該PEP代理本用戶終端和對端用戶終端之間進行數(shù)據(jù)傳輸,解決了傳統(tǒng)TCP在無線自組網(wǎng)絡(luò)中對鏈路的誤碼率高、時延長、鏈路不對稱、中斷率高等特點的引起的性能降低問題。
【附圖說明】
[0017]圖1為典型無線自組網(wǎng)絡(luò)示意圖;
[0018]圖2為本申請實施例中無線自組網(wǎng)絡(luò)組網(wǎng)示意圖;
[0019]圖3為圖2中的用戶終端I和用戶終端2之間建立完整連接的流程示意圖;
[0020]圖4為本申請實施例中用戶終端I和用戶終端2關(guān)閉連接過程流程示意圖;
[0021]圖5為本申請實施例中無線自組網(wǎng)絡(luò)中數(shù)據(jù)傳輸方法流程示意圖;
[0022]圖6為本申請實施例中應用于上述技術(shù)的裝置結(jié)構(gòu)示意圖。
【具體實施方式】
[0023]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,下面結(jié)合附圖并舉實施例,對本發(fā)明的技術(shù)方案進行詳細說明。
[0024]本申請實施例中提供一種無線自組網(wǎng)絡(luò)中數(shù)據(jù)傳輸方法,為無線自組網(wǎng)絡(luò)中的用戶終端分別部署性能增強代理(Performance Enhancing Proxy,PEP),即為每個用戶終端部署一個PEP,為每個用戶終端部署的PEP可以部署在該用戶終端上,也可以作為一個獨立設(shè)備進行部署。
[0025]與PEP通過TCP連接的用戶終端稱為本端終端,與PEP通過另外一個PEP進行連接后再通過TCP連接的用戶終端稱為對端用戶終端。
[0026]任一 PEP通過TCP與本端用戶終端連接,通過空間通信協(xié)議規(guī)范(SpaceCommunicat1ns Protocol Specificat1ns,SCPS)-傳輸協(xié)議(Transport Protocol,TP)與其他PEP連接。
[0027]PEP與用戶終端,以及其他PEP建立連接的過程,具體如下:
[0028]PEP攔截到本端用戶終端發(fā)送的TCP同步(SYN)報文時,代理對端用戶終端生成TCP SYN確認(ACK)報文,并發(fā)送給本端用戶終端;并且代理本端用戶終端生成SCPS-TPSYN報文,并發(fā)送給對端用戶終端;
[0029]PEP接收到本端用戶終端因接收到TCP SYN ACK報文而發(fā)送的TCP ACK報文時,確定與本端用戶終端建立TCP連接。
[0030]PEP攔截到SCPS-TP SYN報文時,代理本端用戶終端生成SCPS-TP SYN ACK報文,并發(fā)送給對端用戶終端;并且代理對端用戶終端生成TCP SYN報文,并發(fā)送給本端用戶終端;
[0031]PEP接收到對端用戶終端因接收到SCPS-TP SYN ACK報文而發(fā)送的SCPS-TP ACK報文時,確定與對端用戶終端對應的PEP建立SCPS-TP連接。
[0032]下面結(jié)合附圖,詳細說明TCP連接和SCPS-TP連接建立的過程。
[0033]參見圖2,圖2為本申請實施例中無線自組網(wǎng)絡(luò)組網(wǎng)示意圖。圖2中以無線自組網(wǎng)絡(luò)包括兩個用戶終端,即用戶終端I和用戶終端2 ;PEP部署為一個獨立設(shè)備為例;為用戶終端I部署PEPI,為用戶終端2部署PEP2。
[0034]參見圖3,圖3為圖2中的用戶終端I和用戶終端2之間建立完整連接的流程示意圖。具體步驟為:
[0035]步驟301,用戶終端I向用戶終端2發(fā)送TCP SYN報文。
[0036]用戶終端I發(fā)送的TCP SYN報文的源IP地址為用戶終端I的IP地址,目的IP地址為用戶終端2的IP地址。
[0037]步驟302,PEPl向用戶終端I發(fā)送TCP SYN ACK(O)報文。
[0038]PEPl截獲到用戶終端I向用戶終端2發(fā)送的TCP SYN報文時,代理用戶終端2生成TCP SYN ACK(O)報文,即以用戶終端2的身份生成TCP SYN ACK(O)報文,TCP SYN ACK(O)報文的源IP地址為用戶終端2的IP地址,目的IP地址為用戶終端I的IP地址,使接收到該TCP SYN ACK(O)報文的用戶終端I以為是用戶終端2發(fā)送來的。
[0039]步驟303,PEPl向用戶終端2發(fā)送SCPS-TP SYN報文。
[0040]PEPl還代理用戶終端I生成SCPS-TP SYN報文,即以用戶終端I的身份生成源IP地址為用戶終端I的IP地址,目的IP地址為用戶終端2的IP地址的SCPS-TP SYN報文,并發(fā)送給用戶終端2。
[0041 ] 步驟302和步驟303在具體執(zhí)行時不分先后順序。
[0042]步驟304,用戶終端I發(fā)送TCP ACK報文。
[0043]用戶終端I接收到源IP地址為用戶終端2的IP地址,目的IP地址為用戶終端I的TCP ACK報文時,發(fā)送生成并發(fā)送TCP ACK報文給用戶終端2。
[0044]步驟305,PEP2 發(fā)送 SCPS-TP SYN ACK 報文。
[0045]PEP2截獲到發(fā)送給用戶終端2的SCPS-TP SYN報文時,代理用戶終端2生成源IP地址為用戶終端2的IP地址,目的IP地址為用戶終端I的IP地址的SCPS-TP SYN ACK報文,并發(fā)送給用戶終端I。
[0046]步驟306,PEP2向用戶終端2發(fā)送TCP SYN報文。
[0047]PEP2以用戶終端I的身份,即代理用戶終端I生成源IP地址為用戶終端I的IP地址,目的IP地址為用戶終端2的IP地址的TCP SYN報文,并發(fā)送給用戶終端2。
[0048]步驟307,PEPl向用戶終端2發(fā)送SCPS-TP ACK報文。
[0049]PEPl截獲到發(fā)送給用戶終端I的SCPS-TP SYN ACK報文時,代理用戶終端1,即以用戶終端I的身份生成并發(fā)送源IP地址為用戶終端I的IP地址,目的IP地址為用戶終端2的IP地址的SCPS-TP ACK報文。
[0050]步驟308,用戶終端2向用戶終端I發(fā)送TCP SYN ACK報文。
[0051]用戶終端2接收到TCP SYN報文時,根據(jù)所述TCP SYN報文生成源IP地址為用戶終端2的IP地址,目的IP地址為用戶終端I的IP地址的TCP SYN ACK報文發(fā)送給用戶終端。
[0052]步驟309,PEP2向用戶終端2發(fā)送TCP ACK報文。
[0053]PEP2攔截到用戶終端2發(fā)送的TCP ACK報文時,代理用戶終端I生成源IP地址為用戶終端I的IP地址,目的IP地址為用戶終端2的目的IP地址的TCP ACK報文,并發(fā)送給用戶終端2。
[0054]步驟310,PE