FTPTCP参数的选择和优化.docx

上传人:b****5 文档编号:28895800 上传时间:2023-07-20 格式:DOCX 页数:9 大小:427.90KB
下载 相关 举报
FTPTCP参数的选择和优化.docx_第1页
第1页 / 共9页
FTPTCP参数的选择和优化.docx_第2页
第2页 / 共9页
FTPTCP参数的选择和优化.docx_第3页
第3页 / 共9页
FTPTCP参数的选择和优化.docx_第4页
第4页 / 共9页
FTPTCP参数的选择和优化.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

FTPTCP参数的选择和优化.docx

《FTPTCP参数的选择和优化.docx》由会员分享,可在线阅读,更多相关《FTPTCP参数的选择和优化.docx(9页珍藏版)》请在冰豆网上搜索。

FTPTCP参数的选择和优化.docx

FTPTCP参数的选择和优化

 

上海移动GPRS端到端数据业务性能评估与优化

FTP业务TCP参数的选择和优化

2007年5月21日

摘要

在GPRS网络中,FTP,接收邮件等大数据量TCP传输业务的性能主要由无线信道的性能决定,但由于GPRS信道的特殊性(长时延,时延变化大,可用带宽可能发生变化等),TCP参数的选择对TCP的性能也会产生影响。

我们使用上海GPRS网络中的FTP测试服务器,对不同的TCP参数进行了一系列测试,分析了各参数对TCP性能的影响,从中选择了一组适合GPRS特性的TCP参数。

FTP测试服务器:

服务器操作系统:

Solaris8

FTP服务器软件:

proftpd

1.测试环境和设备4

2.影响GPRS传输性能的TCP特性4

3.TCP参数的选择和分析4

.最大分段长度(MSS)和路径MTU发现(PMTU)5

.TCP接收和发送窗口的尺寸(rcvbuf,sndbuf)7

.TCP慢启动初始窗口的尺寸(tcp_slow_start_initial)7

.SelectiveAcknowledgments(SACK)10

.TCP时间戳选项(timestampoption)11

.TCP快速恢复算法参数11

4.结论13

1.测试环境和设备

我们在上海GPRS网络的FTP测试服务器上进行了测试和优化:

FTP测试服务器:

服务器操作系统:

Solaris8

FTP服务器软件:

proftpd

测试终端:

class10(4+2)GPRS卡。

为了同时测试EDGE性能,我们同时使用了class10(4+2)的EDGE手机进行了测试。

2.影响GPRS传输性能的TCP特性

以下TCP参数可能会对GPRS的TCP传输性能产生影响

最大分段长度(MSS)和路径MTU发现(PMTU)

TCP接收和发送窗口的尺寸(rcvbuf,sndbuf)

TCP慢启动初始窗口的尺寸(tcp_slow_start_initial)

SelectiveAcknowledgments(SACK)

TCP时间戳选项(timestampoption)

TCP快速恢复算法参数

我们对以上TCP参数进行了测试和分析,从中选择出了一组适合GPRS网络环境的参数。

3.TCP参数的选择和分析

3.1.最大分段长度(MSS)和路径MTU发现(PMTU)

当前的TCP协议栈大多数都缺省支持路径MTU发现(PMTU)。

在开启PMTU的情况下,TCP协议栈根据接口的MTU值设定MSS,并将IP包头的DF位设为1,这样,当数据包在传输路径上遇到较小的接口MTU值,需要拆分时,路由设备将向源主机发送一个错误提示,源主机会根据这个提示减少MSS值。

最终,源主机会找到一个适合整个传输路径的MSS值。

在上海GPRSFTP服务器上,PMTU已经打开,但FTP软件将MSS值设定在1024Bytes,这样,在实际FTP传输中,MSS为1024,但在数据丢包重传时,又会使用系统缺省值1460,这样会产生两个问题影响传输效率:

使用较小的分段(1024)传输数据会产生较多的数据包,会增加传输时延

使用MSS1460重传丢失的数据包(1024)会导致一部分数据重复发送,降低了传输效率。

如下图所示:

针对以上问题,我们重新设置了FTP软件,MSS值使用PMTU发现的MSS值(1460),以提高传输效率,解决了以上的两个问题。

3.2.TCP接收和发送窗口的尺寸(rcvbuf,sndbuf)

FTPServer的缺省接收和发送窗口尺寸为(8k),考虑导EDGE开通后传输带宽大大增加,8k的窗口尺寸偏小。

针对这个问题,我们将FTPServer的接收和发送窗口尺寸增加导32k。

3.3.TCP慢启动初始窗口的尺寸(tcp_slow_start_initial)

TCP在启动时,以这个值作为初始的拥塞窗口尺寸,然后在收到ACK后增加拥塞窗口的尺寸,直到到达拥塞避免阶段。

由于GPRS网络的包时延较大,TCP慢启动需要较长的时间,为了使TCP能尽早以最大带宽发送数据,应该使用较大的慢启动初始窗口尺寸。

此外,由于GPRS网络时延可能会在较大的范围内发生变化,少数情况下,太大的时延会导致虚假超时现象(Spurioustimeouts)。

在这种情况下,TCP协议会认为数据包已丢失,再次启动慢启动过程。

较大的慢启动初始窗口可以使传输尽快恢复到最高速率。

Solaris系统中初始窗口的取值范围为1~4。

以下两图分别显示了初始窗口值为2和4时的FTP通过率,从中可以看出,取值为4时,FTP传输启动和恢复的速度明显快于取值为2时。

初始窗口值为2时的FTP通过率

 

初始窗口值为4时的FTP通过率

但如果初始窗口尺寸设置大较大,可能导致传输频繁的拥塞,影响传输的效率,下图显示了初始窗口尺寸为4时的次序号-时间图,从图中可以看出,TCP在慢启动后的一段时间后达到拥塞控制阶段,没有发生频繁拥塞的情况。

初始窗口尺寸为4是较为合适的选择。

3.4.SelectiveAcknowledgments(SACK)

SACK可以在TCP可选头结构中确认(ACK)虽多4块的数据,这样当传输过程中多个数据分段丢失时,发送端可以在一个回程时间内(RTT)重传多个数据块,提高重传效率。

SACK功能应该打开。

3.5.TCP时间戳选项(timestampoption)

TCP时间戳选项在TCP选项头中加入了数据包的时间戳,以使主机能更精确的估计数据包的时延。

但此选项会使每个TCP数据包多处12bytes的选项头,也就是多了%的额外负载。

我们测试了TCP时间戳选项打开的传输速率,发现时间戳选项并没有带来明显的好处,不建议打开此选项。

3.6.TCP快速恢复算法参数

缺省情况下,TCP协议栈会在收到3个duack(重复ack)后启动慢启动算法,我们测试了将此参数(tcp_dupack_fast_retransmit)改为2的情况,看是否能减少网络拥塞。

下图显示了tcp_dupack_fast_retransmit为2和3时的FTP通过率:

 

tcp_dupack_fast_retransmit为2时的FTP通过率

 

tcp_dupack_fast_retransmit为3时的FTP通过率

根据测试结果,tcp_dupack_fast_retransmit为2和3时,系统通过率变化不大,因此建议保持缺省值3。

4.结论

根据以上的分析和测试,我们给出了一组适合GPRS环境的TCP参数值:

最大分段长度(MSS)和路径MTU发现(PMTU)

打开服务器的PMTU功能,使用PMTU的发现值作为MSS值(1460)

TCP接收和发送窗口的尺寸(rcvbuf,sndbuf)

将FTP服务器的TCP接收和发送窗口的尺寸设为32K或更高

TCP慢启动初始窗口的尺寸(tcp_slow_start_initial)

TCP慢启动初始窗口的尺寸设置为4

SelectiveAcknowledgments(SACK)

打开SACK功能

TCP时间戳选项(timestampoption)

关闭TCP时间戳选项

TCP快速恢复算法参数

保持tcp_dupack_fast_retransmit的缺省值3

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1