网络tcp流控制和拥塞控制
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络tcp流控制和拥塞控制相关的知识,希望对你有一定的参考价值。
名词解释
MTU:最大传输单元(硬件规定),指的是ip头+data的最大字节数(数据包超过该值会分片,主要为UDP协议)
TTL:数据报的寿命(经过一个路由器减1,工作在ip层)
RTO:重传超时时间
cwnd:发送窗口
rwnd:接受窗口
流控制
目的:
防止发送方速率太快,接受端承受不了(点对点流空)
原理:
a. 通过滑动窗口实现(滑动窗口协议工作在传输层)
b. 发送方根据收到ack中下一字节的序号n和接受方窗口大小m,以及目前发送字节序号x,算出还可以发送的字节数
发送窗口的第一个字节序号 = ack中期望的下一个字节序号
总结:
a. 发送窗口只有收到接受端的确认,才会移动发送窗口的左边界
b. 接受窗口只有在前面所有数据报都确认,才会移动接受窗口的左边界
c. 应用程序可以通过api接口更改rwnd大小;tcp协议栈在下次发送时将新窗口大小发给发送方,对端按照新窗口大小设置发送窗口大小,减缓发送速率
拥塞控制
以上是关于网络tcp流控制和拥塞控制的主要内容,如果未能解决你的问题,请参考以下文章