tcpip性能(整理)

1)自适应性TCP加速技术
 传输窗口大小,即在收到回应之前一次发送的数据量,会直接影响到TCP的性能。相反,性能又与回程时间成正比,因为协议需要(通过ACK包表明数据已被成功接收的信号)确保数据投送到位。

    在最糟糕的情况下,一个端点会等待另一端点回应数据的传输情况,从而使网络闲置的时间变长。当传输窗口变得很小时,这种现象便会发生,但此现象并不能准确反映线路速度和延迟情况。

    使情况变得更加复杂的是,TCP会根据响应速度调整自己的窗口大小。连接的距离越长,窗口就越小。如果响应的速度非常缓慢,TCP 协议就可能永远也不选择最大的窗口尺寸,这意味着许多广域网连接的完整容量永远也不会被完全利用。因此,TCP协议可能导致广域网性能的恶化,甚至在带宽 仍然非常充足时,性能的恶化也在所难免。同样,重传也会严重影响TCP的性能,要知道1%的包丢失可能导致最多80%的性能损失。

自适应性TCP加速方案可以利用自我调节式的技术来解决这些问题。这种技术能够自动改变终端主机的行为方式,而且对于参与传输的应用、网络和最终用户计算机来说都是完全透明的。窗口的大小是根据测得的连接可用带宽来确定的,从而避免了带宽的闲置与浪费。

自适应性TCP加速技术将被用于下一代的广域网优化设备中,使用时只需在广域网连接的各个端点处各加装一台设备即可。

 为了防止给共享同一连接的其他设备造成影响并降低其性能,该技术可以根据用户定义好的策略和包丢失情况自动调节传输参数。这些策略是利用广域网优化设备 的管理软件定义出来的,而设备则可对策略进行解释和实施。同时,该技术可以自行选择TCP窗口的大小,从而实现最高的传输速率并在广域网连接发生包丢失时 将重传数据包的数量减至最小。

自适应性TCP加速技术还第一次使用了动态设置大窗口(在适当的范围内)、选择性ACK和TCP Fast Start等技术来改善性能。选择性ACK可以回应数据的接收情况并且允许对丢失的数据立即进行重传,从而避免了TCP重传算法带来的延迟问题。TCP Fast Start也是一种算法,它可以加速TCP发送窗口的增长速度,从而实现了可用带宽的快速利用。

2)TCP Fast Start
A Technique For Speeding Up Web Transfers (1998)

3)选择性ACK

4)TCP/IP帧头压缩

5)cdma20001x网络优化
cdma20001x网络优化的主要目标是使系统达到最大的吞吐量、最小的传输延迟,从而充分发挥cdma20001x的无线传输优势,在一定程度上提高无线数据网络的性能,保证其无线数据业务的实现。该网络的优化可以分为两个方面:无线网络的优化和分组网络的优化。

  无线网络的优化方法总体上与IS-95CDMA网络优化类似,但数据传输对无线环境的要求更高,并要对前向链路和反向链路的cdma20001x相关参数进行优化。本文主要侧重介绍cdma20001x的分组网络优化。

  分组网络的优化主要是为了在现有的无线环境下,针对无线环境TCP传输特性与有线环境的差异性,通过对TCP参数的优化以及采用TCP优化、缓存设备等,提高cdma20001x无线数据传输性能。

  cdma20001x分组网络是采用TCP/IP协议的一种计算机网络,其传输层主要采用TCP和UDP协议。TCP是一种面向连接的,用于在 各种网络条件下可靠地传输数据的传输控制协议,而UDP是非连接的数据报文协议。从优化的角度看,TCP的参数设置对数据传输性能有较大影响。

  TCP采用基于窗口的拥塞控制机制,目前最常用的有4种拥塞控制算法:慢启动、拥塞避免、快速重传和快速恢复。这些拥塞控制算法的目的主要是在 有线网络条件下,避免产生不合理的大量的网络流量。在无线链路上运行TCP/IP时,TCP拥塞控制有许多不同于有线传输的情况。在无线链路上,由于无线 信号丢失、切换等造成误比特率明显比有线链路高,这样TCP的某些算法就不是很理想了。当数据在无线信道上传输时,就会出现延迟、带宽振荡和不对称等在有 线信道传输时TCP算法中未曾考虑过的因素。而TCP/IP帧头压缩、选择性确认和MTU尺寸的优化这些TCP参数的设置又会对cdma20001x网络 的性能产生较大的影响。

根据理论及实际测试的结果,TCP参数的设置原则如下:关闭TCP/IP帧头压缩功能;允许选择性证实功能;假如TCP数据段错误 率过高,可设法降低MTU的大小;允许在第二个重复的ACK响应收到后就开始快速重传;尽量使ACK的延时最小化,在接收端每收到一段数据就回一个响应。 在具体的网络优化过程中,TCP参数优化设置在实施时还要结合实际情况进行。

由于无线链路和有线链路对TCP参数的要求不同,而TCP是一种端到端的传输控制协议,其控制参数很难兼顾无线和有线网络。有线网络与无线网络 对数据包丢失的处理也有所不同。例如,有线网络认为丢包主要是由于网络拥塞,一旦发生丢包,TCP就会将发送窗口减少一半,以减少拥塞。但如果丢包是发生 在无线网络上,实际上更有可能是由于无线信道的瞬间快衰落造成的,这种衰落可能很快就恢复了,这时如果使TCP窗口减少,就会降低数据吞吐量。为了达到较 好的优化效果,可以通过以下两种途径对cdma20001x数据分组网络进行优化。

  传输层优化。可以在有线和无线网络之间增加一种基于传输层的无线网关装置,通过对有线和无线链路分别处理,提高数据吞吐量和传输效率。

  应用层优化。可通过增加一种对应用层进行优化的设备,通过缓存、数据压缩以及协议调整、重新编码的方法,改进应用层的效率。

  此外,由于目前互联网上各种应用服务器都由不同的内容提供商控制,因而所采用的服务器设备、操作系统各不相同。为了确保cdma20001x网 络的数据性能,网络运营商必须提供完整的解决方案。由于有线网络的丢包率比无线网络低得多,因此只需在无线链路两端采用选择性确认即可。具体来说,就是在 cdma20001x分组网络的PDSN后增加一个无线网关设备。它应具备旁路功能,当其发生故障和负荷过大时,无线网络仍能保证提供业务。无线网关可以 将cdma20001x终端到应用服务器的TCP链路分为两段,在有线链路仍采用常规的TCP机制,而面向无线侧则采用选择性确认。无线网关还可以根据需 要适当调整MTU的大小,减小确认响应延时等。另外,由于无线网络的时延变化很大,很容易超时,根据TCP的拥塞控制机制,一旦超时就会重新开始慢启动, 这就会降低传输效率。无线网关可以较准确地算出无线链路TCP的往返时间,减少慢启动,提高传输效率。通过无线网关对TCP传输路径的分段处理,可以使无 线网络的数据吞吐量得到明显提高。

  对于cdma20001x网络,还可以基于应用层进行优化。通过将用户经常访问的内容放在缓存中以及对未压缩的图形和文本文件进行压缩都可以提 高访问速度。在访问Web页面时所采用的HTTP版本对访问速度也有影响。可以在应用优化服务器上将HTTP1.0的多个连接请求转换成HTTP1.1的 一个连接请求,提高网络的实际吞吐量。

6)性能优化

  ●TCP窗口大小


  影响网络性能的TCP参数有许多,但最重要的是TCP窗口的大小。它决定了在给定时间里一个系统可以传输多少数据。每个TCP包都有一个头信息,头信 息中有一定“窗口”域用来指明该系统接受数据缓冲区的大小。窗口大可以使远程系统传输较多的数据,窗口小则限制了传输的数据量,从而影响了网络的性能。因 此要想最大限度地利用网络,应该选择适当的窗口大小,使之与可用宽带相匹配。若TCP窗口过小,终端用户将无法充分地利用网络上的可用宽带;如果TCP窗 口过大,可能会导致错误恢复方面的问题,这样也会大大降低网络性能。

  一般来说,所有系统都有一缺省的TCP窗口大小。有些应用允许使用系统级的API,根据每个连接来设置TCP窗口大小。准确地选择适合网络的TCP窗 口的大小并非易事,需要许多测量和计算。当然这些计算是针对连接的,因此如果有许多来自不同网络的连接时,可能会感到无所适从,这时最好使用缺省设置(因 为适合某一网络的TCP窗口大小可能不适用于另外一个网络)。因此,当网上的所有用户大体相似,并且所有的终端结点(包括服务器和客户端)以同样的方式设 置时,高速设置才真正地体现出它的价值。


  ●传输数据量


  在决定TCP窗口大小时,两个最重要的参数是往返延迟和端到端的带宽。这两个参数决定了在任何给定的时间里在网上(正在传输中)的数据的多少。

  延迟是指数据从一个系统到另外一个系统所需的时间(包括网上传输时间和两个系统的处理时间)。数据在网上传输的时间越长,那么在任何给定的时间里网上可容纳的数据就越多。往返延迟(包括数据传输的时间和返回接收应答的时间)是一个更重要的参数。

  同样端到端的带宽也会影响在网上的数据量。如果带宽为1Mbps,那么每秒能发送1MB的数据。端到端的带宽是网络连接的咽喉。如果有一个 100Mbps的网卡,而远程系统使用64kbps的ISDN,那么端到端连接的最大带宽为64kbps。此外,往返延迟应包括两者之间传输时间的总和。

  将往返延迟乘以端到端的带宽,就是在任何TCP虚电路上的最大数据量。这个值实际上决定了TCP窗口的大小,如果设定一个较小的值,发送端将受到远程 系统窗口大小的限制,而无法发挥网络的潜力。因为当TCP窗口被充满时,发送端必须停止发送数据,直到收到接收应答为止。但如果正确设置窗口大小,发送端 就可以不停地发送数据,因为当所有的数据传完时,接收应答正好出现。

  测量往返延迟很容易,ping远程系统,最好在正常工作日多做几次,选择最常见的延迟时间。ping时最好选择常见大小的包。网上的设备越多延迟越长,因此测量网络十分重要。


  ●最大段大小(MSS)系数


  只注意到网上的数据量,并不能确定TCP窗口值的大小。必须了解连接使用的最大段大小(MSS)。因为TCP的延迟接收应答,算法规定必须收到两个完整的TCP包时才能发送接收应答。

  实际上,缺省窗口大小应为MSS的4倍。如果接受窗口为MSS的2倍的话,发送端必须等待接收应答;如果接受窗口为MSS的4倍的话,发送者至少可以 发送四个包,在头两个包的接收应答返回时,最后一个包刚刚发送。如果网络延迟较长时,接受窗口的大小应为MSS的6倍或8倍。

  一般来说,延迟为2毫秒的10Mbps以太网应使用4倍MSS的窗口大小,其他情况下使用该值会大大影响网络性能。

  当窗口过大时,TCP很难恢复丢失的数据。如一个远程的Web服务器得知某一客户的窗口大小为131kB,那么即使网上同时可传输的数据只有4kB, 它也会试图传送131kB,这样就会有127kB的数据在服务器和客户端之间的某一路由器处排队。如果数据丢失需要重传,需重传的数据必须排在后面,结果 客户端认为连接不可恢复就会放弃该连接。另外,客户端不断地重复向服务器发送接收应答,也可能导致服务器中断连接。有时为了窗口更加高效,可能需要移动服 务器以便于改变网络结构。

  TCP窗口域只有16位,因此其最大值为65535。如果网络传输速度慢但有很大的容量,优化的窗口大小可能超过它,这时需要使用TCP窗口的高级选项。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值