卫星TCP/IP的拥塞控制与协议欺骗

  • 格式:pdf
  • 大小:180.06 KB
  • 文档页数:4

第7卷第3期 

2002年6月 哈尔滨理工大学学报 

J0URNAL HARBIN UNIV.SCI.&TECH. Vo1.7 No.3 June.2002 

文章编号:1007—2683(2002)03—0028—04 

卫星TCP/IP的拥塞控制与协议欺骗 

呼大明 , 周廷显 , 

(1.哈尔滨工业大学航天学院,黑龙江哈尔滨150001;2.哈尔滨理工大学 杨明极 

测控技术与通信工程学院,黑龙江哈尔滨15oo4o) 

摘要:针对TCP/IPover Satellite中启动时间长、拥塞恢复时间长以及通信效率低等问题,给 出了扩展初始窗口、选择确认和快速重传/快速恢复三种解决办法,并讨论了基于SSCOP协议的协 

协议欺骗问题,该方法提高了TCP/IP over Satellite的效率和安全性. 关键词:TCP;慢启动;拥塞控制;RTT:协议欺骗;SSCOP 

中图分类号:TP927.2 文献标识码:A 

Congestion Control and Protocol Spoofing Based 

on TCP/IP over Satellite 

HU Da—min9’,ZHOU Ting—xian ,YANG Ming—ji 

(1.School of Astronautics,Harbin Institute of Technology,Harbin 1 50001,China; 

2 Collage of Measure—control Technology&Communication Engineering,Harbin Univ.Sci Tech.,Harbin 150040,China) 

Abstract:According to the long start time,the long congestion recovery and the low 

communication efficiency in TCP/IP over Satellite,three methods to solve those problems,such as ex— tension of initial window,selective acknowledgment,and fast retransmit/fast recovery are given,the 

protocol spoofing based on SSCOP is discussed also,therefore the efficiency and security of TCP 

/IP over satellite are increased. Key words:TCP;slow start;congestion control;RTT;protocol spoofing;SSCOP 

. :. 丘 

由于卫星通信具有覆盖地域广泛、传输速率比 

较高、组网灵活等优点,被许多行业、企业用于数据 

通信、话音通信和可视通信等方面.另外,卫星通信 

与同等带宽专线相比,在大区域高速网络建设上具 

有费用低廉、建设周期短等优点.随着Internet技术 

的迅猛发展,TCP/n'技术成为数据通信系统的主流 

技术.所以许多ISP企业利用卫星通信系统构造自 

收稿日期:2002一o4—05 作者简介:呼大明(1968一),男,哈尔滨工业大学博士研究生 己的骨干网络,避开了地面线路的瓶颈和高昂费用 

问题.在远程医疗、远程教育、远程可视通信等诸多 

领域获得了广泛应用【1—1. 

但是TCP/IP在卫星通信系统中应用又面临许 多技术问题,主要集中在TCP作为传输控制协议在 

链路误码率(BER)较高、时延比较大和应用中信道 

不对称的特性下,很难表现出在地面网络中的优 21. 

TCP协议在卫星链路上的数据往返时间 

(RTT-Round Trip Ti

me,开始计算数据发出到收 维普资讯 http://www.cqvip.com 第3期 呼大明等:卫星TCP/[P的拥塞控制与协议欺骗 29 

到确认之间的往返时延)比较长,由TCP的工作方 式可以看出,数据通信的最大速率是受限的.同步卫 

星信道,从发送端发出数据到接收端收到数据所需 

的单跳时延是270ms;它的传输延时远远大于地面 信道的传输延时.在TCP协议中,最大接收窗口为64k 

字节,同步卫星信道的双跳时延是560IllS.最大数据 

传输速率为64 k×8/560:0.94Mbps.理论上卫星 

信道的发送速率大于0.94Mbps.用户实际可以获取 

的最大速率不会超过0.94 Mbps,这是TCP工作机 制形成的.IAB(Intemet Architecture Board,Internet 

活动委员会)在建议RFC1072中给出了Internet通 

信中数据管道(Pipe)的定义:Pipe=Bit—Rate RTT【”. 

卫星通信系统在速率为36 Mbps时,数据管道 为:36 MbpsX 0.56s=20.16Mb.按照IAB的描述,这 

是典型的长粗管道(Long Fat Pipe).这种管道的主 

要表现是:TCP/IP的最大吞吐速率受到限制,TCP 

协议的拥塞控制和流量恢复策略的性能降低【1]. 

2 TCP的拥塞控制策略 

TCP在拥塞控制方面有两种策略:拥塞避免算 

法(Congestion Avoidance)、慢启动算法(Slow Start). 

2.1 慢启动算法 

在TCP协议中,为了避免在通信开始就可能造 成拥塞,采用慢启动策略.在RFC2414中慢启动算 

法的初始窗口(Initial Window,IW)值定为1.慢启动 

的时间(Slow Start Time)为:RTTXlog 2 ,其中,RTT 

为传输的往返时间, 是在建立连接开始时设置的 

慢启动门限(Slow Start Threshold.ssthresh).按照TCP 

规定,则有 

=ssthresh=max(Flight Size/2,2XSMSS) 根据网络统计的结果,平均每个发送数据包长 

度为512 bytes,即SMSS=512 bytes.慢启动门限初始 

值为64 kbytes,即W =64 bytes.在卫星通信系统 

中,RTT=560ms,可以得出在卫星通信系统中使用 

TCP/IP协议时,慢启动时间为3.5s左右.远远大于 

地面线路系统中使用TCP/Ie时的启动时间. 

当发送端窗口大于慢启动门限窗口时,就进入 了拥塞避免算法的工作过程.窗口尺寸增加的速度 

会十分缓慢,并不是按照TCP原有预计的那样呈指 

数增长,而是表现出线性增长.在相当长的时间内, 卫星通信系统在低于峰值速率的情况下工作.如果 

通信中产生错误,要重传数据包,就更难以在峰值速 

率下工作. 2.2 拥塞避免算法 

一旦拥塞现象出现,发送端的拥塞控制窗口减 

为一半(至少减少2个基本长度的数据包).发送端 

最大尺寸SMSS(Sender Maximum Segment Size)同 拥塞控制窗口尺寸CWND(Congestion Window).以 

及拥塞控制窗El尺寸增加量(CWND+)之间的关系 

公式如下: 

CWND+=SMSS X SMSS/CWND 按照TCP协议规定,当拥塞控制窗口尺寸为Jv 时,如果发生拥塞,拥塞窗口尺寸变为Jv/2.要把拥塞 

窗口恢复到Jv.必须在收端连续收到N/2个正确的数 

据包.在卫星通信系统中延时比较大、信道质量比较 

差.当拥塞出现时,随着窗口尺寸不断下降,系统通 信效率会随之进一步恶化.可以参见下面的例子. 

设CWND的初始值为64,当拥塞出现时, C、^,ND+:32.要使CWND+变成64.就必须连续 

地正确接收32个数据包.恢复时间为:32×560ms= 

17.92s.卫星通信系统都是作为各个局域网联网骨干 

链路而使用的.对于局域网系统,这样大的恢复时间太 长,通信效率必然下降.另外,在卫星链路上不止有一 

个IP Link,一旦出现拥塞现象就会引起许多IP Link 

上的拥塞窗口尺寸下降.通信效率会呈指数下降. 

3 IETF的解决方案 

IETF(Intemet Engineering Task Force)传输工 

作组对于TCP存在的问题,提出了一些解决方案. 

尽管这些建议并不是完全针对卫星通信的,但在一 

定程度上对于IP over VSAT还是有很大帮助的.主 要有: 

1)RFC1323t31用于延时比较大、信道带宽比较 大时,TCP带来的效率下降: 

2)RFC2581t41,2001t ̄,用于解决初始窗口尺 

寸、拥塞控制、快速重传、快速恢复; 3)RFC2582恫描述了选择确认SACK(Selective 

Acknow1.edgement)工作机理. 

对于卫星通信起作用的部分在于:扩展初始窗 

口,选择确认和快速重传与快速恢复. 

3.1 扩展初始窗口 在RFC2581t ̄中,为解决慢启动时间过长问 

题,重新设计了初始窗口的定义: 

W,=rain{4 X SMSS,max(2 X SMSS,4380)} 上面公式的单位为字节.在这种条件下慢启动 

的时间为 维普资讯 http://www.cqvip.com 30 哈尔滨理工大学学报 第7卷 

Slow Stun Time=RTT×log2 一RTT×log2 W, 其中, 一为可使用的最大窗口尺寸, ,为初 

始窗口尺寸. 3.2选择确认的使用 

在卫星通信中,数据重传对信道造成的冲击是 

很大的.每进行一次重传,都可以看成是重复占用信 道的行为.在RFC2582E ̄中,采用SACK的方法就 

是在传输了一定数量的数据包后,重传有错误的数 

据包,而不是重传所有的数据包.TCP SACK是一 

个数据发现算法,其中接收方能够有选择地示意哪 个数据块(数据段)没有收到.这允许接收方仅精确 

地重传这些遗漏的分组,从而有效地降低了不必要 

的重传.TCP SACK适合于具有中等丢失率(低于 窗口大小的50%)的长延迟网络环境,对于线路丢 

失率较严重的网络,在SACK基础上改进的前向 

ACK、FACK建议比较适合. 

由于对信道冲击比较小,特别是在TDMfl"DMA 

系统中,入向信道是竞争方式工作的.采用选择确认 

方案后,重传的概率有明显下降. 3-3 快速重传和快速恢复 

在IETF的RFC文档中有许多是关于快速重传 

和快速恢复描述的.TCP在发送端根据重复确认的 

返回情况来监测和修补数据丢失.快速重传算法在 

连续收到3个相同的确认之后,就认为数据发生丢 

失,而不等待数据传输计数器超时结果.TCP动作是 

立即进行重发,同时将窗口减半,慢启动门限设置为 减小后的窗口大小,拥塞控制窗口比慢启动门限大3. 

当发送端收到一个新的确认信息后,将拥塞窗口的 

大小设置为慢启动门限,同时转入拥塞避免. 在快速重传算法重新发送被认为是丢失的数据 

时,快速恢复算法控制着新数据仍在不断地发送.直 

到新数据传输产生错误. 

上述的各种方法只是在TCP局部进行了一定 的改善.从卫星通信的角度来看,TCP/W over VSAT 

还要在卫星通信系统做大量工作使II)协议更有效 地工作起来.采用协议欺骗(Protocol Spoofing)是一