打开抖音互联网会发生什么(2)| 青训营笔记

117 阅读2分钟

这是我参与「第三届青训营 -后端场」笔记创作活动的第4篇笔记

1.7 网络传输-先请求DNS

image.png

1.8 TCP

TCP三次握手

服务端新建套接字,绑定地址信息后开始监听,进入LISTEN状态。客户端新建套接字绑定地址信息后调用connect,发送连接请求SYN,并进入SYN_SENT状态,等待服务器的确认。服务端一旦监听到连接请求,就会将连接放入内核等待队列中,并向客户端发送SYN和确认报文段ACK,进入SYN_RECD状态。客户端收到SYN+ACK报文后向服务端发送确认报文段ACK,并进入ESTABLISHED状态,开始读写数据。服务端一旦收到客户端的确认报文,就进入ESTABLISHED状态,就可以进行读写数据了

TCP流量控制

所谓流量控制,为了控制发送方发送速率,保证接收方来得及接收。 实现方式:滑动窗口机制 接收方发送的确认报文中的窗口字段可以用来控制发送方窗口大小,从而影响发送方的发送速率。将窗口字段设置为 0,则发送方不能发送数据

  • TCP接受方利用自己的接受窗口的大小来限制发送方发送窗口的大小
  • TCP发送方收到接收方的零窗口通知后,应启动持续计时器。持续计时器超时后,向接收方发送零窗口探测报文

为什么老问你TIME_WAIT?

如果主动关闭方进入CLOSED状态后,被动关闭方发送FIN包后没有得到ACK确认,超时后就会重传一个FIN包。如果客户端没有TIME_WAIT状态而直接进入CLOSED状态释放资源,下次启动新的客户端就可能使用了与之前客户端相同的地址信息,有两个危害,第一种是这个刚启动的新的客户端绑定地址成功时,就会收到了一个重传的FIN包,对新连接就会造成影响。第二种是如果该新客户端向相同的服务端发送SYN连接请求,但是此时服务端处于LAST_ACK状态,要求收到的是ACK而不是SYN,因此就会发送RST重新建立请求。
参考文章链接:blog.csdn.net/qq_44443986…

网络架构怎么给抖音提质

  • 网络提速
  • 网络稳定

image.png