CUBIC TCP
它相比BIC TCP更加平缓和具有数学上的意义,其中的窗口大小是一个自上次拥塞事件以来的时间的三次函数,拐点被设置为拥塞事件发生时的窗口大小。因为它是一个三次函数,所以它有两个阶段进行窗口增加。第一部分是一个凹函数,将窗口大小快速提升至最后拥塞事件发生时的大小。第二个部分为一个凸函数,CUBIC探针以较缓和的速度寻求更大的带宽。CUBIC会在凹凸增长区域花费大量时间,以允许网络在CUBIC开始寻求更多带宽前达到稳定。
CUBIC是一个为具有高带宽和高延迟的长胖网络(LFN)优化的TCP拥塞控制实现。[1]
CUBIC与标准的TCP流的另一个主要区别是,它不依赖于ACK的接收来增加窗口大小,CUBIC的窗口大小只依赖于最后的拥塞事件。在标准的TCP中,极短的RTT将更快的收到ACK,它们的拥塞窗口将比其他较长RTT的流更快增长。CUBIC使数据流之间更加公平,因为窗口的增长与RTT(往返时延)无关。
CUBIC TCP在Linux内核2.6.19及更高版本中被实现并默认使用。
参见
- TCP拥塞避免算法
- 传输控制协议(TCP) - 发展过程
- SCTP
- BIC TCP
参考资料
- 页面存档备份,存于 S. Ha, I. Rhee, & L. Xu, "CUBIC: A New TCP-Friendly High-Speed TCP Variant", PDF copy of journal article
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.