上海贝尔阿尔卡特光网络事业部王海舟
多业务传输平台(MSTP)中的以太网功能具有时延小、QoS高等特点,越来越多地被用作文件服务器之间的传送媒介。服务器之间通过MSTP设备提供100Mbit/s或者1000Mbit/s以太网接口进行高速文件传输,终端用户也能通过这些接口实现对服务器的高速访问。但是,在使用过程中,使用者发现有些设备并不能提供标称的带宽,比如在用FTP工具进行文件下载时,设备提供100Mbit/s的标称带宽,但FTP工具只显示30Mbit/s左右的下载速度,用户从而会认为MSTP设备存在问题。本文从计算机的TCPWindowSize和MSTP设备的处理时延两方面入手,分析二者对MSTP以太网带宽的影响,并通过IPERF对分析结果进行验证,给使用者科学的解释,排除他们的疑虑。
一、网络结构和配置
如图1所示建立简单的点对点连接,PC1和PC2通过网线分别连接到设备MSTP1和MSTP2,以太网端口均设置为100Mbit/s全双工,两设备之间通过光纤跳线连接。
在MSTP1和MSTP2之间创建一个VC-12-50V(50个VC-12虚级联,相当于约100Mbit/s带宽)的以太网通道,以PC1为文件服务器、PC2为用户终端,通过FTP工具从PC1下载文件。
二、TCPWindowSize对以太网带宽的影响
计算机之间使用TCP/IP协议进行通信,该协议的检错、纠错功能以及拥塞控制功能保证了数据传送服务的可靠性。但是,在一定条件下,这些功能的实现在提高数据传输效率的同时是以降低传输速率为代价的。
TCPWindowSize用于TCP/IP通信的拥塞控制,它实现控制的原理如下:一对主机在TCPWindow Size为64kB的TCP/IP连接上进行通信,为等待来自接收机的确认通知,发送机在发送64kB数据之后必须停止发送。只有在发送机获知所有数据已经被接收之后才能发送另一个64kB;如果发送机接收到只有前32kB被接收的确认通知,那么发送机只能发送另一个32kB。这样,当在传送链路中遇到处理速度的瓶颈时,TCP Window Size能使传输速率降低到一定水平从而避免拥塞发生。通过设置PC的收发缓冲区大小可设置TCP Window Size。
在图1的配置中,除了PC1和PC2之间文件传输需要占用带宽外,没有其他的应用抢占带宽,而且在传输链路中除了提供带宽的MSTP设备外,没有其他的设备,也就没有形成带宽瓶颈的物理因素。因此,在理论上,PC1和PC2应当拥有100%的带宽。造成只有30%带宽利用率的原因可能是PC的TCPWindowSize太小,在这种高速传输过程中,为了避免拥塞发生而降低了数据传输速率,导致使用者感觉是MSTP设备没有提供足够的带宽。
三、设备处理时延对以太网带宽的影响
在图1中,设备处理时延就是MSTP1和MSTP2对信号进行处理的时间总和,主要包括MAC层面的物理信号处理时间,二层交换处理时间以及Ethernet信号封装成SDH信号(EOS)的处理时间(包括GFP封装处理时间,GFP帧映射成SDH帧处理时间),其中EOS处理时间占主导地位。
严格的说,设备处理时延是不影响自身以太网带宽的,通过以太网仪表可以验证这一说法。将图1中连接到PC上的网线连到以太网仪表上,然后测试MSTP设备以太网端口的吞吐量,可以得到100%的吞吐量。而且MSTP设备在处理以太网信号时,大多能补偿几十毫秒的差分延时,因此几毫秒的设备处理时延不足以使经过MSTP设备的信号出错。
但是设备处理时延会影响PC对信号的处理速度。基于TCP/IP进行通信的PC,在未接到来自接收机的确认通知之前,将会停止发送下一个数据包(超时重发机制除外)。设备处理时延越大,发送机需要等待的时间就越长,从而降低了数据的发送速率。其实也可将设备的处理时延当成传播时延来理解:传播时延与传播距离成线性关系(在图1中,假设设备处理时延足够小,但是传播距离足够长),遥远距离的主机间通信,即使有足够的带宽,也会感觉到明显的信号延迟,这种感觉对使用者来说等同于带宽不够的感觉。
四、利用IPERF验证
多大的TCPWindowSize以及多大的设备处理时延能够使用户获得理想的带宽?理论上来说,设备处理时延越小越好,但TCPWindow Size并不是越大越好。因为TCP Window Size越大,一次发送的数据包就越多,在没有差错时,这种传送效率是很高的,但若因为某些原因导致重发,这种大量数据包的重发和确认就会导致效率低下。不同的操作系统,缺省的TCP Window Size通常是4kB或者8kB。
通过网络性能测量工具IPERF,可以验证上述分析,也可以为想获取的带宽寻找到相应的TCPWindowSize。在PC1和PC2上分别安装IPERF的服务端软件和客户端软件,通过IPERF修改TCPWindow Size和输入环行时间(RTD)两个参数来测试网络带宽性能。其中,RTD是指数据在网络上传送以及返回所需总时间,最简单的办法就是通过从一端计算机上“ping”另一端计算机,从返回的ICMP回应报文中获取时间。在图1中,由于没有路由器或者交换机的存在,而且传输距离非常短,因此可认为RTD取决于MSTP设备的处理时延,而该时延主要由EOS处理时间决定。在验证测试中,MSTP设备提供的带宽是100Mbit/s,通过“Ping”得到的RTD是4ms。表1是在不同的TCP Window Size设置下所获得的实际带宽。
换用处理时延小(约1ms)的设备,在TCPWindowSize为8kB时,实际带宽达到94.3Mbit/s;当TCPWindow Size为64kB时,实际带宽达到了97.5Mbit/s。
五、结束语
本文分析了造成MSTP设备以太网带宽利用率低的原因,并通过验证为使用者避免该现象提供了切实可行的方法,即在设备处理时延一定时,通过修改计算机上TCPWindowSize来获取理想的带宽;另一方面,若MSTP设备的处理时延做得足够小,则可忽略TCPWindow Size的影响,对MSTP设备的真实应用具有一定的指导意义。
延伸阅读:以太网技术大全(1)
光纤以太网 光纤以太网产品可以借助以太网设备采用以太网数据包格式实现WAN通信业务。从10M、100M、千兆到万兆以太网,以太网技术的发展,在速率呈数量级增长的同时,其应用领域也在不断拓宽。光纤以太网、无线局域网、端到端的以太网、多层交换与负载均衡、网络处理器、运营商级宽带技术、以太网安全、以太网测试以及基于以太网的IP存储等等。