【技术实现步骤摘要】
【国外来华专利技术】分组丢失容忍传输控制协议拥塞控制
本公开内容总体涉及网络流量管理,更具体地,涉及容忍分组丢失的传输控制协议(“TCP”)拥塞控制。
技术介绍
传统的TCP对分组丢失非常敏感。例如,利用TCPNewReno的拥塞控制机制,路径中仅0.1%的随机分组丢失可能导致吞吐量下降20-30%。这是TCP在涉及有损链路(例如,连接不良的无线链路)的路径上表现不佳的主要原因。不能容忍TCP的丢失从根本上是VanJacobson的拥塞控制和拥塞避免(VJ-CCCA)算法的副产物,在该算法上建立TCP中的拥塞控制及其所有调制解调器变体。1988年,Jacobson描述了在ARPANET中观察到的“拥塞崩溃”问题,在此期间,由于拥堵,吞吐量下降了一千多倍。Jacobson概述了VJ-CCCA作为一种补救措施,它仍然是当今传统TCP拥塞控制机制的基础。Jacobson的算法将观察到的分组丢失视为网络拥塞的信号,并将解决网络拥塞问题的全部责任赋予端点。VJ-CCCA的工作原理是根据链路本身可靠的假设,减慢端点活动以响应数据分组丢失。VJ-CCCA的目标是通过避免拥塞崩溃来保护互联网本身。当网络和路由基础设施处于起步阶段时,这些设计选择适合于当时的条件,具有很少的过载保护和非常基本的流量管理。当时的大多数主机基本上直接连接到主干网,并且没有ISP。因此,网络稳定性完全取决于主机的行为。此外,链路基于具有低误码率的物理连接,因此传输错误相对较少。Jacobson算法及其后续的变体在其引入之后长时间工作良好,并且向互联网提供稳定性。但随着过去十年左右互联网的发展和商业化,人们看到这种强有 ...
【技术保护点】
1.一种计算机实现的方法,包括:在发送端点计算机和接收端点计算机之间的传输控制协议(“TCP”)会话期间,所述发送端点计算机监视当数据被发送到接收端点计算机时所发送的数据量和数据丢失模式;所述发送端点计算机基于监视的所发送的数据量和数据丢失模式周期性地确定是正在以低于、等于还是高于路径容量发送数据;并且所述发送端点计算机响应于确定是正在以低于、等于还是高于路径容量发送数据,周期性地动态调整向所述接收端点计算机发送数据的速率。
【技术特征摘要】
【国外来华专利技术】2016.12.27 US 15/391,3351.一种计算机实现的方法,包括:在发送端点计算机和接收端点计算机之间的传输控制协议(“TCP”)会话期间,所述发送端点计算机监视当数据被发送到接收端点计算机时所发送的数据量和数据丢失模式;所述发送端点计算机基于监视的所发送的数据量和数据丢失模式周期性地确定是正在以低于、等于还是高于路径容量发送数据;并且所述发送端点计算机响应于确定是正在以低于、等于还是高于路径容量发送数据,周期性地动态调整向所述接收端点计算机发送数据的速率。2.根据权利要求1所述的方法,还包括:在所述TCP会话期间,首先执行路径特性测量阶段,在该阶段期间,根据TCP慢启动过程来调节向所述接收端点计算机发送数据的速率,随后,在发送了特定量的数据之后,执行路径拥塞监视和速率控制阶段,在该阶段期间,所述发送端点计算机响应于确定是正在以低于、等于还是高于路径容量发送数据,周期性地动态调整向所述接收端点计算机发送数据的速率。3.根据权利要求2所述的方法,还包括:在所述路径特性测量阶段期间,所述发送端点计算机跟踪观察到的产生自所述TCP慢启动过程的拥塞窗口(“cwnd”)、发送的数据、丢失的数据、和最大选择性确认(“SACK”)缺口尺寸;并且在所述路径拥塞监视和速率控制阶段期间,所述发送端点计算机利用在所述路径特性测量阶段期间所跟踪的信息开始对向所述接收端点计算机发送数据的速率的初始动态调整。4.根据权利要求2所述的方法,还包括:在所述路径拥塞监视和速率控制阶段期间,所述发送端点计算机在所述TCP会话的每一管理周期中动态调整向所述接收端点计算机发送数据的速率。5.根据权利要求4所述的方法,其中:所述TCP会话的每个管理周期等于一个平滑往返时间(“srtt”)。6.根据权利要求2所述的方法,还包括:在所述路径拥塞监视和速率控制阶段期间,所述发送端点计算机跟踪在每个管理周期期间观察到的发送的字节、丢失的字节、和SACK缺口模式;并且所述发送端点计算机利用所跟踪的在先前管理周期期间观察到的发送的字节、丢失的字节、和SACK缺口模式来动态调整在后续管理周期中向所述接收端点计算机发送数据的速率。7.根据权利要求2所述的方法,还包括:在所述路径拥塞监视和速率控制阶段期间,在每个特定管理周期期间,所述发送端点计算机基于在所述特定管理周期期间发送的数据量、在所述特定管理周期期间新丢失的数据量、以及关于SACK缺口和在所述特定管理周期期间重传它们的尝试的信息,确定在下一个管理周期中向所述接收端点计算机发送多少数据。8.根据权利要求1所述的方法,还包括:所述发送端点计算机跟踪由来自所述接收端点计算机的SACK标识的新报告的丢失字节;所述发送端点计算机跟踪所标识的SACK缺口最后被发送到所述接收端点计算机的时间;基于跟踪的新报告的丢失字节、跟踪的所标识的SACK缺口最后被重传到所述接收端点计算机的时间、发送到所述接收端点计算机的数据量、和先前路径拥塞状态,周期性地确定当前路径拥塞状态;并且所述发送端点计算机基于周期性确定的当前路径拥塞状态,周期性地调整向所述接收端点计算机发送数据的速率。9.根据权利要求1所述的方法,还包括:所述发送端点计算机跟踪来自所述接收端点计算机的关于传入SACK的信息,所述关于传入SACK的信息还包括SACK缺口、由SACK标识的新报告的丢失字节和所标识的SACK缺口最后被重传到所述接收端点计算机的时间;并且当所述发送端点计算机将SACK缺口重传到所述接收端点计算机时,遵循如下优先级:超出当前确认(“ACK”)点的第一个SACK缺口,以前从未从最旧到最新被完整重传的SACK缺口,以及已经被完整重传但在特定时间量内并未从最旧到最新被重传的SACK缺口。10.根据权利要求1所述的方法,还包括:所述发送端点计算机跟踪所标识的SACK缺口最后被重传到所述接收端点计算机的时间来作为...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。