解答TCP在高时延和丢包的网络中传输效率差的原因

原创 2018年04月16日 12:22:04

在这个数字世界中,数字数据的快速和可靠移动,包括全球范围内的大规模数据传送,对于几乎所有行业的业务成功都变得至关重要。

然而,传统的TCP协议具有固有的性能瓶颈,特别是对于具有高往返时间(RTT)和丢包的高带宽网络上最为显著。

TCP固有的传输性能瓶颈主要是由TCP的加性增/乘性减(AIMD)拥塞避免算法引起的,TCP拥塞算法缓慢地探测网络的可用带宽,增加传输速率直到检测到分组丢失,然后指数地降低传输速率。

TCP的这种拥塞算法是为了避免Internet整体拥塞而设计的,因为在互联网的早期,数据传送网络都是基于电缆固定网络,传输中出现丢包就可以100%的认为是传输通道出现了拥塞。然而在今天的网络情况下,WIFI/移动蜂窝网络等无线传输网络本身就具有天然的丢包可能性,这些与网络拥塞无关的其它分组丢失同样降低了传输速率。

事实上,TCP AIMD算法本身也会造成丢包,导致网络出现瓶颈。在提高传输速率直到发生丢失时,AIMD过于激进地探测可用带宽导致丢包。在某些情况下,这种由于激进探测带宽引发的丢包损耗实际上超过了来自其它原因(例如物理介质或交叉业务突发)的损耗,并且以不可预测的损耗比将"无损耗通信信道"变为"不可靠的信道"。

TCP AIMD中基于丢包的拥塞控制对网络端到端传输吞吐量具有致命的影响:当一个分组丢失需要重传时,TCP大幅降低发送数据甚至停止发送数据到接收应用,直到重传确认。所有的网络应用传输性能都会受到TCP这种拥塞算法的影响,但是对于大批量数据的传输而言,尤其致命。

TCP中可靠性(重传)与拥塞控制的这种耦合对文件传输造成严重的人为吞吐量损失,这从基于TCP的传统文件传输协议(如广域网上的FTP、HTTP、CIFS、NFS )的性能较差可见一斑。

下面条形图显示了在使用TCP (黄色显示)的文件传输技术的OC-1 (51 Mbps)链路上,在各种数据包丢失和网络延迟条件下可实现的最大吞吐量。TCP连接吞吐量有一个严格的理论限制,它仅取决于网络RTT和数据包丢失。请注意,增加更多带宽不会改变TCP有效吞吐量。文件传输速度没有提高,昂贵的带宽也没有得到充分利用。



吞吐量 反应时间 延时 抖动 丢包 概念解释

1、吞吐量  吞吐量,顾名思义,就是进入和送出的数据总量;   2、反应时间 所谓反应时间是液晶电视各像素点对输入信号反应的速度,及像素由亮转暗或由暗转亮所需要的时间。反应时间过长则在观看动态画...
  • wen0605
  • wen0605
  • 2013年06月14日 17:23
  • 7398

计算机网络和因特网--分组交换网中的时延,丢包和吞吐量

一、分组交换网中的时延概述 节点总时延中最为重要的包括节点处理时延、排队时延、传输时延、传播时延 1、处理时延检查分组首部和决定将该分组导向何处所需要的时间,还包括其他因素,如检查比特级错误。2、...
  • yyc794990923
  • yyc794990923
  • 2017年04月11日 22:24
  • 1058

TCP时延问题

Q:TCP时延问题是由什么原因产生? A:TCP延时确认(Delayed Ack)机制导致的。 Q:TCP延时确认机制作用? A:TCP在处理交互数据流(即Int...
  • weiyuefei
  • weiyuefei
  • 2016年03月13日 16:23
  • 1015

网络丢包的四大原因和修复方法

网络丢包的四大原因和修复方法 网络链接阻塞 解决方法 (路由器/交换机/防火墙/等等)的设备性能 解决方法 网络设备上的软件问题(bug) 解决方法 硬件或网络缆线的毛病...
  • duandianR
  • duandianR
  • 2017年08月23日 23:49
  • 10774

UDP可靠传输协议UDX,为什么在高延迟,丢包率较高的环境下,不受延迟及丢包影响原理讨论及深思

UDP可靠传输协议UDX,为什么在高延迟,丢包率较高的环境下,不受延迟及丢包影响原理讨论及深思...
  • wwwllg
  • wwwllg
  • 2013年11月03日 05:55
  • 9854

数据中心TCP优化:同时满足低时延和高吞吐量

大的数据中心有成千上万台服务器,服务器之间大都用TCP来协作并传输数据,最终为用户提供服务。那数据中心的TCP工作得如何呢? 斯坦福大学和微软的两人对Bing服务的6000多台服务器集群在TCP方面的...
  • coloriy
  • coloriy
  • 2015年08月05日 10:56
  • 1289

TCP传输过程中丢包问题

TCP协议本身是保证传输的数据完整性不会丢数据的。 如果通信中发现缺少数据或者丢包, 那么,最大的可能在于程序发送的过程或者接收的过程出现问题。 例如服务器给客户端发大量数据,Send的频率...
  • zgaoq
  • zgaoq
  • 2017年03月27日 23:32
  • 1829

HoloWAN Recorder网络延迟丢包抖动测试工具,下载地址和使用方法

HoloWAN Recorder可以测量网络的延迟、丢包以及网络抖动。 测量结果可以通过图表展现网络状况。 并且可以录制一段时间内的网络状况,配合HoloWAN进行网络回放模拟。 可以用于进行网络抖动...
  • u011212861
  • u011212861
  • 2016年06月27日 17:49
  • 697

TCP通信丢包主要问题及具体问题分析

今天在公司问老大,公司的项目底层,是使用的TCP,因为可靠,自动断线重连,在底层都实现了,但是我记得TCP也会有掉包的问题,所以这文章就诞生了——关于TCP掉包的问题,TCP是基于不可靠的网络实现可靠...
  • LANGZI7758521
  • LANGZI7758521
  • 2016年10月11日 17:14
  • 2575

网络丢包分析

一、丢包原因  网络丢包原因很多,但是一般都是链路问题: 骨干拥塞 链路某个交换机背板坏了 交换机负载不均导致  此外,还有主机本身原因: 系统CPU负载高,数据包到网卡后CPU不能及时处理,但是缓冲...
  • hankerzero
  • hankerzero
  • 2017年03月27日 22:53
  • 1213
收藏助手
不良信息举报
您举报文章:解答TCP在高时延和丢包的网络中传输效率差的原因
举报原因:
原因补充:

(最多只允许输入30个字)