您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > FTP速率慢原因分析及处理指导书(华为)
FTP下载速率慢原因分析及处理指导书内部公开2020-1-10华为机密,未经许可不得扩散第1页,共18页目录1背景描述...................................................................................................................................22TCP相关知识点.......................................................................................................................22.1TCP传输的最大报文段...............................................................................................22.2TCP发送报文的确认...................................................................................................32.3滑动窗口与接收缓冲区...............................................................................................32.4发送缓冲区...................................................................................................................32.5慢启动与拥塞避免算法...............................................................................................33ADSL模板中交织与快速的区别............................................................................................43.1Channelmode-通道模式............................................................................................43.2Unitofinterleaveddelay-交织延迟单位...................................................................54一例FTP下载慢情况的分析....................................................................................................64.1缩短线路时延.............................................................................................................104.2增大滑动窗口和发送缓冲区的容量.........................................................................105佛山网通现网测试的结果.....................................................................................................135.1ADSL/ADSL2+FTP下载速率测试(突出改变时延带来的影响)........................145.2ADSL下载速率测试(突出改变缓冲区带来的影响)...........................................155.3ADSL2+下载速率测试(同样是突出改变缓冲区带来的影响)..........................166结论.........................................................................................................................................17FTP下载速率慢原因分析及处理指导书内部公开2020-1-10华为机密,未经许可不得扩散第2页,共18页FTP下载速率慢原因分析及处理指导书1背景描述在DSLAM的应用中,经常用到FTP下载来测试ADSL的带宽。我们在测试时经常会发现FTP下载速率比ADSL的带宽小很多,本文就是从原理入手逐步分析问题的原因。首先强调一点,FTP下载速率肯定不会大于通道的带宽,因为ADSL通道就好比运载货物的列车,我们只可能尽量的装满它,但绝不会超过它;甚至使用多个FTP同时下载,每个FTP下载速度的总和也不会大于通道的带宽(测试标准中均建议使用多个FTP同时下载)。其次,FTP下载是一个端到端的处理过程。下载速率涉及到端到端整个业务流程的每个环节,包括了硬件性能、线路带宽、线路时延,缓冲区算法等。使用FTP下载是一种比较方便(或者说常规应用中也没有比它更好的)的方式来判断带宽的方法,不过我们要尽可能排除一切瓶颈,使FTP下载速度接近通道的带宽。2TCP相关知识点问题分析涉及到的TCP知识点介绍一下。熟悉TCP的人可以跳过此节,太不熟悉TCP的人请直接参考TCP/IP相关资料,此处不做过多的基本知识介绍。2.1TCP传输的最大报文段TCP下载大文件时,需要把大文件切割为一系列报文段进行发送。如果每个报文段的容量过小,则会影响到发送效率。在以太网上传输时,以太网最大帧长为1518字节,去除以太网帧头及校验,以太网帧的净荷为1500字节。IP报文头最小字节数为20,TCP报文头最小字节数为20,TCP报文最大净荷就为1460字节了。在TCP连接建立时,协商出来的最大报文段为1460字节。假设FTP下载的发送缓冲区为8Kbytes。在下载大文件时,发送报文数据大小序列一般为:1460,1460,1460,1460,1460,892或1460,1460,1176,1460,1460,1176,一般不会发送小数据的报文。FTP下载速率慢原因分析及处理指导书内部公开2020-1-10华为机密,未经许可不得扩散第3页,共18页2.2TCP发送报文的确认在一个TCP报文中包含有发送序列号和确认序列号。发送序列号是对自己发送数据的一个编号,一次连接中发送的数据会连续编号,通过发送序列号对发送的数据进行标志。确认序列号用于通知对方,对方送过来的数据中小于此序列号的报文都被正确接收(包括不会乱序,不会丢失报文)。2.3滑动窗口与接收缓冲区滑动窗口是数据接收方控制数据传输流量的重要手段,此值反映的也是TCP接收缓冲区的大小。数据接收方通过此值告知对方自己的接收缓冲区大小,让发送方根据此值调整发送策略。发送方已经发送但还没有被确认的数据字节,加上即将要发送的数据字节数之和大于对方的滑动窗口,则发送方会停止发送报文。除非发送方收到了新的确认报文,或收到对方滑动窗口扩大后,前面所说的限制被打破,才可能继续发送报文。滑动窗口会动态调整的。当应用层从接收缓冲区取走数据时滑动窗口就会扩大,接收缓冲区收到新的报文时滑动窗口会减少。当滑动窗口变化时,会依据一定的策略向对方发送滑动窗口更新通告,算法可参考TCP/IP相关文档。2.4发送缓冲区发送缓冲区的大小会影响到发送策略。在对方滑动窗口足够大的情况下,发送端发送的未被确认的数据大小不能超过发送缓冲区的大小。一旦到达发送缓冲区大小的临界点,则发送端停止发送。这是因为已发送但还没有被确认的数据还会继续滞留在发送缓冲区中,占用了空间。只要是没有被确认的数据都可能会重传,发送缓冲区不会将这些数据从缓冲区中清除,否则需要重传时找不到这些数据。我们可以想想,应用层发送数据时只会send一次,TCP层的重传就靠自己了,所以原始的数据不会在TCP发送缓冲区中被清除掉。2.5慢启动与拥塞避免算法如果发送缓冲区和接收缓冲区(滑动窗口)都足够大,那么发送端是否会尽量发送数据呢?如果中间网络出现拥塞或丢包,快速发送报文会造成不断的重传,传输效率FTP下载速率慢原因分析及处理指导书内部公开2020-1-10华为机密,未经许可不得扩散第4页,共18页会更低。TCP会采用拥塞避免算法和慢启动来调整发送策略,避免传输线路上的数据拥塞。一旦发现有拥塞现象(超时或收到重复确认),发送方会降低发送速度。3ADSL模板中交织与快速的区别3.1Channelmode-通道模式Fast:快速方式,纠错能力一般,但延迟较小,适用于那些对延迟敏感的业务,比如视频点播、可视电话等。Interleaved:交织方式,纠错能力较强,随着深度越深,纠错能力越强,但相应的延迟就越大,这种方式适用于那些对可靠性要求较高但不太在意延迟的业务。下面简单介绍一下快速、交织的处理过程;比如首先假定上层来的顺序比特流如下:B6B5B4B3B2B1A8A7A6A5A4A3A2A1→→一般没有交织的情况下(如快速方式),线路是按照上层来的比特流顺序进行传送,这样前面的比特先被传送,并且先到接收端,相应的时延较小,但误码的可能性就较大,比如如果线路上遇到脉冲干扰等,这些干扰持续的时间较短,但会致使连续的比特错误,如下:B6B5B4B3B2B1A8A7A6A5A4A3A2A1→→由于以上是按照上层来的比特流顺序进行传送的,这样这些连续的比特错误到达接收端也是连续的,达到一定程度,线路本身的差错控制码(如FEC)等也将无能为力,最终产生线路误码,只能由高层协议的重传协议来保证了。在交织情况下,线路没有按照上层来的比特流顺序进行传送,而是按照码字间隔的传送它们的比特,这是通过一个交织器,让比特流横向进、纵向出来完成的,如下为交织器的工作原理:横向进↑纵向出→→→A8A7A6A5A4A3A2A1B8B7B6B5B4B3B2B1FTP下载速率慢原因分析及处理指导书内部公开2020-1-10华为机密,未经许可不得扩散第5页,共18页C8C7C6C5C4C3C2C1经过交织器处理后线路上传送的比特流顺序将为:B5A5C4B4A4C3B3A3C2B2A2C1B1A1→→到达接收端后交织器以相反的方式处理,纵向进、横向出,最后结果如下:纵向进↓横向出A8A7A6A5A4A3A2A1→→→B8B7B6B5B4B3B2B1C8C7C6C5C4C3C2C1可以很明显的看出,通过交织处理后,同样的脉冲干扰引起的错误现在分布在了不同的码字当中,这样在各个码字当中自行进行差错控制就容易多了;但从另外一方面也可以看出,在接收端,码字A只有等三个码字都到了才能接收到最后一个比特,才能算接收完毕,这明显加大了延迟。这一延时对于不需要确认的数据传输(比如UDP连接)是没有影响的,仅最开始那一下,但是对需要对方应答时(比如TCP连接),这种延时将会明显降低了传输速率,因为发送一个报文经过一段时延才能到达对方,而对方的确认报文又要经过一个时延才能达到,有时交织方式的FTP下载速率甚至会降低到快速方式的1/3左右。3.2Unitofinterleaveddelay-交织延迟单位DMT:直接以深度为单位,叫做交织深度interleaveddepthMS:直接以时间ms为单位,叫做交织延迟interleaveddelay交织深度就是上面介绍的那个交织器的纵向深度,或者说同时有几个码字进行交织处理;而交织延迟其实就是交织处理后体现的直接结果,以此
本文标题:FTP速率慢原因分析及处理指导书(华为)
链接地址:https://www.777doc.com/doc-2872743 .html