目录
TCP是基于连接,面向字节流传输数据的安全 可靠的传输层协议,他有很多机制来确保传输中的
安全,例如校验和、序列号、确认应答、超时重传、连接管理、拥塞控制等等一系列的机制来确保
传输中的完全。同时也因为这些机制的限制,使得TCP的性能大打折扣。
今天就来聊一聊什么是拥塞控制
拥塞控制
拥塞控制是TCP为了保障数据传输的安全所实现的一种机制,其中包含了有四中算法,分别是:慢开始算法,拥塞避免算法、快重传算法、快恢复算法。
慢开始:
就是为了防止有大量数据涌入到网络中,造成网络的拥堵,TCP会先试探性的传送数据包到网络
中,然后慢慢增大发送数量,即从小到大增大拥塞窗口。
例如:第一次发送一个,第二次发送2个,第三次发送4个..........
拥塞避免:
都知道指数的增长是非常快的,所以为了防止拥塞窗口无限制的增加下去所导致的网络拥堵,所以
又在拥塞窗口上增设了上限,当拥塞窗口超过这个上限的时候,每次加只一,而不在是成倍的增
加。如果这时有任意一个数据包超时,则会让窗口上限降为当前拥塞窗口的一半,并执行快恢复。
快恢复:
当发送方连续三次收到了同样的确认时,就将门限降低到当前拥塞窗口的一半,并将当前的门限值
作为开始的值,然后执行拥塞避免。
快重传:
在接收方,要求每次接收到数据包都应该对最后一个已收到的数据包进行确认,发送方只要一
连收到三个重复确认就应当立即重传对方尚未收到的数据包