后端面试网络(一)拥塞控制与超时重传

2021-03-22  本文已影响0人  Luxifer路西菲尔

1、基本重传

RTO:机器设定定时器,当发送方设定一个定时时间,发送一个包后启动计时,当超过一定时间后没有收到ack包,则进行重传

2、带有时间戳的超时与重传

RTT机制:

发送方带有一个时间戳写入协议扩展字段中

接收方收到后,返回ack,发送方收到ack包如果吻合那么记录一个当前时间戳

当前时间戳减去之前的时间戳大于一定阈值或者没有ack认为需要重传

3、快速重传机制:

当接收端收到期待序号后续的分组数据包的时候,直接发送现有的ack,发送端收到n个重复ack后,重发缺失数据。

4、窗口管理机制:

网络传输以滑动窗口进行,接收端如果窗口大小为0,发送端将等待,直到接收端发送一个窗口更新消息ack(包含新窗口大小)

为了避免接收端发送的窗口更新消息丢失造成两者都进行等待,因此规定发 送端定时RTO发送窗口探测,接收端必须返回ack

tcp延时确认机制:

网络中由于tcpip头部包含重复信息,为了减少网络传输流量,使用延时确认ack机制,以期望携带更多的信息。

nagle算法:

网络中nagle算法规定,当网络传输中有数据在传输时,就不能传输小于一定阈值的报文,必须在传输的报文都收到ack后将小的报文整合到一起进行发送。

5、拥塞控制:

慢启动机制:

当一个新的tcp连接建立时候或者重传超时的时候,或者发送端长时间处于空闲状态会执行慢启动,具体做法为一个a因子,每次收到ack则将cwd翻倍,再次发送,直到有丢包时候将因子a置为一半。

拥塞避免:

拥塞避免意思为线性增长cwd,不是慢启动的指数增长。

快重传:

快速回复:

发生快速重传的时候,将现在的窗口时间减少为一半,然后开始执行拥塞避免。

如果看完觉得有所收获的话,记得点赞关注哦,后续会写一些平时面试时候基础知识点与项目经验,谢谢大家!

上一篇下一篇

猜你喜欢

热点阅读