王金苗 葉建設(shè) 許鵬文
1. 裝備指揮技術(shù)學(xué)院訓(xùn)練部,北京 101416;
2. 裝備指揮技術(shù)學(xué)院信息裝備系,北京 101416;
3. 裝備指揮技術(shù)學(xué)院裝備采辦系,北京 100720
衛(wèi)星鏈路上SCPS-TP協(xié)議中的SNACKTCP性能分析
王金苗1葉建設(shè)2許鵬文3
1. 裝備指揮技術(shù)學(xué)院訓(xùn)練部,北京 101416;
2. 裝備指揮技術(shù)學(xué)院信息裝備系,北京 101416;
3. 裝備指揮技術(shù)學(xué)院裝備采辦系,北京 100720
闡述了將空間互聯(lián)網(wǎng)協(xié)議SCPS-TP用于衛(wèi)星通信系統(tǒng)中的概況,介紹了將現(xiàn)有TCP協(xié)議擴(kuò)展到空間的TCP頭部壓縮策略和ACK控制算法改進(jìn),以SCPS-TP協(xié)議所使用的SNACK機(jī)制為研究對象,對其在GEO衛(wèi)星通信系統(tǒng)鏈路中的應(yīng)用進(jìn)行NS2環(huán)境下的仿真模擬實(shí)驗(yàn),比較分析了SNACKTCP和傳統(tǒng)TCP的性能,有針對性地進(jìn)行了鏈路誤碼率變化實(shí)驗(yàn)結(jié)果分析,證實(shí)了SNACKTCP在衛(wèi)星通信環(huán)境下的優(yōu)良性能。
衛(wèi)星通信;SCPS-TP協(xié)議;SNACKTCP;NS2
衛(wèi)星通信具有覆蓋面廣、可擴(kuò)展性強(qiáng)、用戶接入方便和不受地域條件限制等優(yōu)點(diǎn),是地面光纖難以鋪設(shè)或人口稀疏等偏遠(yuǎn)地區(qū)進(jìn)行長距離寬帶網(wǎng)絡(luò)接入的一種重要補(bǔ)充手段。與地面環(huán)境具有明顯不同的是,衛(wèi)星鏈路信環(huán)境具有不對稱信道、高信道誤碼率、長傳輸延遲和間歇性連接等特點(diǎn),將基于地面互聯(lián)網(wǎng)設(shè)計(jì)的傳輸控制協(xié)議/ 網(wǎng)絡(luò)協(xié)議(T ransfer Con tro l Pro tocol/In ternet Protocol,TCP/IP)直接用于衛(wèi)星網(wǎng)絡(luò)會導(dǎo)致較低的性能。20世紀(jì)90年代,空間數(shù)據(jù)系統(tǒng)咨詢委員會(CCSDS)借鑒TCP/IP的分層設(shè)計(jì)思想,提出了一套空間通信協(xié)議(Space Comm un ication Protocol Specification,SCPS)。目前SCPS已經(jīng)被國際標(biāo)準(zhǔn)化組織ISO采納為國際標(biāo)準(zhǔn),并且被多個國家采用或部分采用,是所有CCSDS SCPS中最為成熟并得到實(shí)際應(yīng)用的協(xié)議。
1.1 SCPS-TP協(xié)議簡介
空間通信協(xié)議規(guī)范SCPS主要用于空間多顆衛(wèi)星、空間實(shí)驗(yàn)室及地面射頻終端等組成的空間互聯(lián)網(wǎng)的星與星或星與地之間的通信。SCPS協(xié)議以TCP/IP協(xié)議為模型,包含網(wǎng)絡(luò)協(xié)議(SCPS Netw ork Protocol,SCPSNP)、安全協(xié)議(SCPS Security Protocol,SCPS-SP)、傳輸協(xié)議(SCPS T ranspor t Protocol,SCPS-TP)及文件協(xié)議(SCPS File Pro toco l, SCPS-FP),尤其是傳輸協(xié)議SCPS-TP最為重要[1],在使用SCPS協(xié)議時是必須使用的,而其他三個協(xié)議可以用TCP/IP協(xié)議簇中的協(xié)議代替。SCPS-TP在TCP協(xié)議基礎(chǔ)上,針對衛(wèi)星鏈路的高誤碼率、長傳輸時延、非對稱帶寬和間歇性連接等特點(diǎn),分別作相應(yīng)修改和擴(kuò)展,主要是:采用SNACK與報(bào)頭壓縮技術(shù)來減小誤碼率;增大TCP擁塞窗口,以適應(yīng)衛(wèi)星通信中時延大的要求;數(shù)據(jù)速率控制功能,防止出現(xiàn)擁塞;可選擇的多種擁塞控制機(jī)制;往返時延測量等功能。通過這些修改和擴(kuò)充,最大限度地提高鏈路的傳輸效率,很好地解決了衛(wèi)星通信中誤碼率高、延時大、前向和反向鏈路差異大等問題,從而為空間通信網(wǎng)絡(luò)提供端到端的數(shù)據(jù)傳輸,以適應(yīng)當(dāng)前和未來的空間任務(wù)需求。
1.2 SNACK機(jī)制
SCPS-TP的SNACK(Selective Negative Acknow ledgm en t)機(jī)制是從SACK(Selective A ck now led gm en t)和NAK(N ega tiv e A cknow ledgm en t)機(jī)制的思想發(fā)展而來的,既可提高帶寬利用率又可提高丟包恢復(fù)能力。SNACK允許接收端通知發(fā)送端有關(guān)接收端亂序隊(duì)列中多個缺失數(shù)據(jù)段的信息,可以對接收端緩存中的多個缺失數(shù)據(jù)段進(jìn)行標(biāo)志。通過快速地提供更多的有關(guān)丟失數(shù)據(jù)段的信息,SNACK能夠加快數(shù)據(jù)恢復(fù)的速度、避免發(fā)端窗口受限,允許在等待獲知丟失數(shù)據(jù)段信息時耗盡管道容量。出現(xiàn)丟包時持續(xù)傳輸數(shù)據(jù)的能力是極其重要的,尤其當(dāng)丟包是由誤碼而非擁塞引起時。當(dāng)確知使用擁塞控制處理丟包時,SNACK可保持通信管道容量工作在飽和狀態(tài)下,并允許在丟包恢復(fù)過程中數(shù)據(jù)傳輸能夠持續(xù)工作在滿負(fù)荷的瓶頸狀態(tài)下。
SNACK是一個否定性確認(rèn)機(jī)制,能夠在高比特率的情況下確認(rèn)較大數(shù)量的數(shù)據(jù)包。SNACK選項(xiàng)長度可變,包括5個數(shù)據(jù)域:標(biāo)準(zhǔn)TCP協(xié)議定義的類型域、長度域(不采用位向量的時候?yàn)? bit),強(qiáng)制定義的錯誤偏移量域、長度域(域長度均為16b it),可選的可變長位向量。偏移量指示了接收端數(shù)據(jù)隊(duì)列中的第一處錯誤與已確認(rèn)接收到的信息間的偏移量,單位為M SS(M ax im um Segm en t Size,最大分段大小);長度域描述了該缺失數(shù)據(jù)包(并不一定是收端緩沖區(qū)存儲的第一個數(shù)據(jù)包)的大小,單位是MSS;位向量包含了其余已檢測出的存在于接收隊(duì)列中的錯誤,位向量由0和1組成,0表示對應(yīng)位置上一個M SS長度的數(shù)據(jù)塊丟失,1表示成功接收,如果不足整字節(jié),在最后一個1之后補(bǔ)0補(bǔ)足八位。
圖1左是接收端的數(shù)據(jù)隊(duì)列,共存在三處錯誤。第一處錯誤在成功接收到第一個數(shù)據(jù)段后馬上就發(fā)生了,因此偏移量為0,并占用2個MSS。依據(jù)SNACK選項(xiàng)數(shù)據(jù)段要求,此處采用位向量,則由數(shù)據(jù)接收端產(chǎn)生的SNACK數(shù)據(jù)段將如圖1右所示。

圖1 TCP接收端數(shù)據(jù)隊(duì)列及其生成的SNACK數(shù)據(jù)段
當(dāng)存在亂序隊(duì)列時,數(shù)據(jù)接收端掃描接收緩沖區(qū),建立SNACK選項(xiàng)并通過ACK數(shù)據(jù)段發(fā)送出去?;诮邮盏腟NACK選項(xiàng),數(shù)據(jù)發(fā)送端會立即重傳所必需的數(shù)據(jù)段來填充被標(biāo)記的缺失數(shù)據(jù)包。由于SNACK選項(xiàng)可觸發(fā)重傳機(jī)制,因此就可以不依賴于快速重傳算法來探測丟包現(xiàn)象。
2.1 仿真參數(shù)設(shè)置
NS2是目前較為廣泛使用的一種網(wǎng)絡(luò)仿真軟件,支持多種版本的TCP協(xié)議,而且方便擴(kuò)展。本文使用NS2軟件建立了SCPSTP協(xié)議仿真模型,選擇了時延比較長,距地大約35800km的GEO衛(wèi)星進(jìn)行鏈路利用率仿真,比較SNACK與SACK在不同誤碼環(huán)境下的吞吐量和鏈路利用率。仿真參數(shù)如表1所示。
2.2 結(jié)果和分析
SNACK與SACK在不同誤碼率下的吞吐量和鏈路利用率的對比結(jié)果分別如圖2和圖3所示,仿真時間為550s。

表1

圖2 不同誤碼率下的平均吞吐量比較

圖3 不同誤碼率下的鏈路利用率比較
長時延和高誤碼率,是低吞吐量的主要原因。衛(wèi)星信道隨著誤碼率的增加,吞吐量隨之減弱,當(dāng)BER達(dá)到10-5時,表現(xiàn)得更為突出。由圖2和圖3可以看出,高誤碼率情況下,SNACK機(jī)制相比SACK機(jī)制能取得更好的吞吐量性能和鏈路利用率。理論分析和仿真實(shí)驗(yàn)表明,在不同誤碼率情況下,SNACK在寬帶衛(wèi)星網(wǎng)絡(luò)中的性能表現(xiàn)要優(yōu)于SACK,可避免短時間內(nèi)由誤碼造成的TCP性能下降。
[1] 陳明玉,程子敬. SCPS-TP協(xié)議在衛(wèi)星通信系統(tǒng)中的應(yīng)用研究.電子設(shè)計(jì)工程.Vo1.18,No.8:1-3
[2] 張潤彤,樊寧,張偉軍. LEO衛(wèi)星環(huán)境下的SNACKTCP性能分析.計(jì)算機(jī)學(xué)報(bào).Vo1.30,No.2:297-304
10.3969/j.issn.1001-8972.2011.10.064