• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      衛(wèi)星網(wǎng)絡(luò)中的TCP 跨層技術(shù)研究

      2021-01-17 13:18張連連
      現(xiàn)代電子技術(shù) 2021年1期
      關(guān)鍵詞:鏈路層序列號重傳

      張連連,劉 鋒,孫 杰,葛 宇

      (1.北京航空航天大學(xué) 電子信息工程學(xué)院,北京 100191;2.河北建筑工程學(xué)院 電氣工程學(xué)院,河北 張家口 075000)

      0 引 言

      TCP/IP[1]協(xié)議是當(dāng)前Internet 中最為廣泛使用的協(xié)議。但是,當(dāng)它運行在衛(wèi)星通信環(huán)境下時,卻面臨著諸如高誤碼率、長往返時延、非對稱信道、間歇性鏈路中斷等問題,大大影響其性能,阻礙了在衛(wèi)星數(shù)據(jù)傳輸中的應(yīng)用。在衛(wèi)星通信網(wǎng)絡(luò)中采用改進(jìn)的TCP/IP 協(xié)議以克服衛(wèi)星網(wǎng)絡(luò)的特性對傳輸性能的影響,是一種切實可行的方法。TCP 一般不能分辨數(shù)據(jù)包丟失的原因是由于不能區(qū)分鏈路誤碼和網(wǎng)絡(luò)擁塞,而將丟包現(xiàn)象都認(rèn)為是擁塞的信號。所以,當(dāng)有數(shù)據(jù)包因為傳輸中出錯而丟棄,即使沒有發(fā)生擁塞,TCP 也會縮減發(fā)送窗口。衛(wèi)星鏈路上出現(xiàn)的傳輸錯誤往往具有突發(fā)性,如果在一個RTT 內(nèi)出現(xiàn)突發(fā)錯誤導(dǎo)致多個數(shù)據(jù)包連續(xù)丟失,就會嚴(yán)重降低吞吐量[1]。TCP 提供了 SACK 機制、SNACK 機制以及CCSDS 提出的鏈路層TC 協(xié)議,均能夠?qū)φ`碼丟包進(jìn)行重傳。重復(fù)的重傳會導(dǎo)致TCP 窗口縮減、吞吐量降低、鏈路帶寬浪費的情況[2-6]。本文提出將傳輸層與鏈路層的差錯控制信息進(jìn)行跨層交互來有效地解決上述問題,由傳輸層將數(shù)據(jù)包序列號及連接號等信息通知鏈路層,鏈路層將相應(yīng)序列號數(shù)據(jù)包的重傳狀態(tài)通知傳輸層,使TCP 能夠區(qū)分當(dāng)前的超時與快速重傳是否必要,從而減少傳輸層不必要的重傳,提高其在高誤碼率環(huán)境下的性能。

      1 跨層信息交互機制

      鏈路層重傳機制會導(dǎo)致鏈路層提供的有序或亂序的幀分組發(fā)送對TCP 造成兩種影響:當(dāng)鏈路層提供的是有序的幀分組傳送時,幀分組在網(wǎng)絡(luò)中會產(chǎn)生較大的時延而使TCP 發(fā)生不必要的超時重傳;當(dāng)鏈路層提供的是亂序幀分組傳送時會產(chǎn)生幀分組重排序的問題,當(dāng)重排序長度超過3 個或多個RTT,就會引起TCP 發(fā)送端不必要的快速重傳。這兩種情況都會引起鏈路層和傳輸層啟動差錯恢復(fù)機制,導(dǎo)致鏈路層和傳輸層發(fā)生重傳競爭的問題。鏈路層會重傳一個或多個幀分組造成幀分組的時延,而同時,終端也會意識到數(shù)據(jù)包的丟失而錯誤地進(jìn)行相同數(shù)據(jù)包的TCP 端到端重傳,即偽重傳。這種現(xiàn)象會降低端到端的吞吐量且加大了傳輸層的響應(yīng)時間,這是因為兩層之間的差錯控制機制沒有進(jìn)行協(xié)調(diào)而導(dǎo)致的,因此會降低端到端的吞吐量且增加了高層的響應(yīng)時間,可通過跨層信息交互解決上述問題。

      1)TCP 發(fā)送數(shù)據(jù)過程中將數(shù)據(jù)包相應(yīng)的序列號通告給IP 層。

      2)IP 層將數(shù)據(jù)包序列號與IP 分片對應(yīng),同時通知鏈路層。

      3)鏈路層將數(shù)據(jù)包序列號與數(shù)據(jù)幀對應(yīng)并存儲到列表中。

      4)當(dāng)鏈路層發(fā)現(xiàn)數(shù)據(jù)幀丟失并重傳時把重傳的數(shù)據(jù)幀對應(yīng)的序列號、端口號以及重傳狀態(tài)(開始重傳、重傳成功、重傳失?。┩ㄖoTCP 發(fā)送端。

      5)TCP 獲知鏈路層重傳狀態(tài)并維持一個鏈路層重傳狀態(tài)列表,并根據(jù)三種不同的重傳狀態(tài)分別進(jìn)行處理。當(dāng)獲知數(shù)據(jù)包重傳成功時從列表中刪除相應(yīng)數(shù)據(jù)信息;重傳失敗時則立即重傳相應(yīng)的數(shù)據(jù)包;開始重傳時則查找當(dāng)前鏈路層重傳狀態(tài)列表是否已經(jīng)存有重傳數(shù)據(jù)包的信息,若沒有則按序列號順序插入到列表中,如有則不做任何處理。

      6)在標(biāo)準(zhǔn)TCP 中發(fā)送端發(fā)生重復(fù)ACK 或定時器超時事件時,檢查丟失的數(shù)據(jù)包是否存在于鏈路層重傳狀態(tài)列表中,如存在,則不做任何處理;如不存在,認(rèn)為是網(wǎng)絡(luò)擁塞的原因,按照TCP 原有的規(guī)則縮減擁塞窗口,并重傳丟失的包。

      2 基于跨層信息交互機制的TCP協(xié)議性能分析

      假設(shè)衛(wèi)星鏈路中丟幀率為pf,TCP 的單個數(shù)據(jù)包在CCSDS TC 鏈路層分為N個數(shù)據(jù)幀,則可以計算出鏈路中丟幀率與TCP 數(shù)據(jù)包丟包率的關(guān)系。

      一個數(shù)據(jù)幀在第i次(i≥1)傳輸成功的概率p(i)為:

      單個數(shù)據(jù)幀在最大重傳次數(shù)為M的情況下成功傳輸?shù)母怕蕄success為:

      則TCP 數(shù)據(jù)包傳輸失敗的概率ppacket為:

      TCP 吞吐量模型[7]采用式(4)計算:

      式中:λ為 TCP 吞吐量;b為 TCP 估計的數(shù)據(jù)速率;rto 為超時重傳時間。當(dāng)鏈路層是有序的分組傳輸時,傳輸層rto 一般可認(rèn)為是4·rtt。TCP 的單個數(shù)據(jù)包在鏈路層分為N個數(shù)據(jù)幀,單個數(shù)據(jù)幀在最大重傳次數(shù)為M=4 時,可能會發(fā)生超時重傳,根據(jù)式(3)得到TCP 超時重傳事件發(fā)生的概率prto。

      當(dāng)N取不同的數(shù)值,鏈路層最大重傳次數(shù)M分別為3,4,7 時,TCP 數(shù)據(jù)包傳輸失敗的概率ppacket與丟幀率的關(guān)系分別如圖1~圖3 所示。

      圖1 M=3 時丟幀率與TCP 丟包概率之間的關(guān)系

      從圖中可以看出,當(dāng)M越大時,TCP 數(shù)據(jù)包傳輸失敗的概率越小。在丟幀率較小的情況下,MAC 層的少次重傳已經(jīng)能夠滿足需求并不需要傳輸層進(jìn)行重傳,僅在丟幀率較高,MAC 層重傳不足以滿足數(shù)據(jù)包成功傳輸?shù)那闆r下,跨層信息交互機制才會起到作用。M分別為 3,4,7 時,當(dāng)丟幀率分別小于 0.05,0.1,0.2 時,TCP 丟包率基本可以認(rèn)為等于0。此時數(shù)據(jù)包的重傳都是由MAC 層完成的,否則數(shù)據(jù)包的重傳工作有部分由MAC層完成,其余部分由傳輸層完成。

      圖2 M=4 時丟幀率與TCP 丟包概率之間的關(guān)系

      圖3 M=7 時丟幀率與TCP 丟包概率之間的關(guān)系

      當(dāng)鏈路層是無序的分組傳輸時,在傳輸速率較大的情況下,只要分組長度超過3,就會引起TCP 的快速重傳,引發(fā)不必要的窗口縮減,大大降低了TCP 的吞吐量。由于無序分組傳輸存在很多的不確定性,因此本文只分析了有序分組傳輸時的TCP 協(xié)議性能情況。

      3 基于跨層信息交互機制的TCP 協(xié)議的仿真驗證

      本文在OPNET[8]中實現(xiàn)了CCSDS 協(xié)議框架,在鏈路層使用了TC 協(xié)議,并設(shè)計實現(xiàn)了傳輸層與鏈路層之間的跨層信息交互機制,創(chuàng)建了衛(wèi)星接入場景如圖4 所示,包括地面站節(jié)點、地面接入節(jié)點、衛(wèi)星發(fā)射節(jié)點及配置節(jié)點,對鏈路層有序分組傳輸?shù)那闆r進(jìn)行了仿真驗證,對比了基于跨層信息交互機制的TCP 與標(biāo)準(zhǔn)TCP 的吞吐量。

      在仿真場景中無線鏈路和有線網(wǎng)絡(luò)部分的往返傳播時延分別是50 ms和10 ms,無線鏈路帶寬為11 Mb/s,有線鏈路帶寬為100 Mb/s。仿真中運行的業(yè)務(wù)為衛(wèi)星向地面發(fā)送FTP 連續(xù)文件數(shù)據(jù)傳輸,文件大小為1 MB。仿真開始時間為200 s,仿真持續(xù)時間設(shè)置為3 600 s,且TCP 數(shù)據(jù)包在鏈路層不進(jìn)行分幀即N=1。從總吞吐量方面對基于跨層設(shè)計的TCP 和標(biāo)準(zhǔn)的TCP 進(jìn)行對比。設(shè)置鏈路層最大重傳次數(shù)分別為3,4,7,仿真結(jié)果如圖 5~圖8 所示。

      圖4 衛(wèi)星接入仿真場景

      圖5 跨層設(shè)計TCP 相對于標(biāo)準(zhǔn)TCP 吞吐量增長的百分比

      圖 6 M=3 時 TCP 傳輸 1 MB 數(shù)據(jù)時間對比

      從圖5 中可以看到,鏈路層重傳次數(shù)M分別為3,4,7 情況下基于跨層交互的TCP 相對于標(biāo)準(zhǔn)TCP 的吞吐量增長百分比情況。可以看出使用跨層機制的TCP 在丟幀率較高的情況下,能夠有效地提高TCP 的吞吐量,但在丟幀率較低的情況下對吞吐量影響不大。圖5結(jié)果與圖1~圖3 中的結(jié)果相吻合,從圖1~圖3 中可以看出在丟幀率較低的情況下,MAC 層的少次重傳已經(jīng)能夠滿足需求并不需要傳輸層進(jìn)行重傳,跨層信息交互機制并不能起到提高吞吐量的作用。僅在丟幀率較高,MAC 層重傳不足以滿足數(shù)據(jù)包成功傳輸?shù)那闆r下,跨層信息交互機制才會起到作用,能夠有效地提高吞吐量。從式(5)也可以看出,在丟幀率較低的情況下TCP 超時事件發(fā)生的概率也較低,所以跨層信息交互機制不能提高低丟幀率情況下的吞吐量。同時,從圖6~圖8 中可以看出,在丟幀率較高的情況下,使用跨層設(shè)計的TCP 傳輸1 MB數(shù)據(jù)的時間遠(yuǎn)低于標(biāo)準(zhǔn)的TCP。

      圖 7 M=4 時 TCP 傳輸 1 MB 數(shù)據(jù)時間對比

      圖 8 M=7 時 TCP 傳輸 1 MB 數(shù)據(jù)時間對比

      4 結(jié) 語

      鏈路層的重傳機制可以改善衛(wèi)星網(wǎng)絡(luò)中TCP 的性能,但需要避免引發(fā)TCP 偽重傳現(xiàn)象。本文提出基于跨層信息交互機制的改進(jìn)TCP 協(xié)議,通過鏈路層和傳輸層進(jìn)行差錯控制信息的協(xié)調(diào),避免了偽重傳現(xiàn)象的發(fā)生。雖然增加了發(fā)送端的復(fù)雜度,但是對丟幀率較高的衛(wèi)星網(wǎng)絡(luò)中TCP 的吞吐量有顯著的提高,且對中間節(jié)點和TCP 接收端的協(xié)議棧無特殊要求,兼容性好,容易實現(xiàn)。

      注:本文通訊作者為葛宇。

      猜你喜歡
      鏈路層序列號重傳
      基于多空間內(nèi)存共享的數(shù)據(jù)鏈路層網(wǎng)絡(luò)包捕獲方法
      一種離線電子錢包交易的雙向容錯控制方法
      recALL
      面向異構(gòu)網(wǎng)絡(luò)的多路徑數(shù)據(jù)重傳研究?
      基于FPGA全功能MVB網(wǎng)絡(luò)從設(shè)備鏈路層IP核設(shè)計
      數(shù)據(jù)鏈路層的選擇重傳協(xié)議的優(yōu)化改進(jìn)
      IEEE 1394事務(wù)層接口的設(shè)計與實現(xiàn)
      PP助手教你辨別翻新iPhone5小白不再中招
      MPTCP中一種減緩緩存阻塞的重傳策略
      溫度傳感器DS18B20序列號批量搜索算法
      陇川县| 巴中市| 大余县| 大丰市| 尼木县| 滦平县| 云龙县| 曲水县| 望都县| 桐庐县| 泰来县| 岫岩| 黎平县| 兴和县| 新野县| 南召县| 隆昌县| 自治县| 东辽县| 巴南区| 喀喇沁旗| 梁山县| 大安市| 桦甸市| 锡林郭勒盟| 方城县| 洞头县| 新乐市| 伊宁县| 远安县| 上林县| 三都| 永丰县| 延川县| 平塘县| 临夏市| 营口市| 芦溪县| 夏津县| 自贡市| 黔西县|