企业面试季:TCP、UDP你说必须知道的知识

UDP和TCP的区别

UDP与TCP最大不同之处在于UDP是无面向对象连接的,在数据传递之前不需要确认对方是否可以连接,不保证其数据有效性!没有任何控制流量的办法,不过其优点也很突出那就是轻便高效。

TCP则不同,每次连接或者断开连接的时候都需要进行握手,确保双方都知道对方的状态,而且在数据的传输过程中,其实可以控制流量,通过算法保证传递数据的有效性。

“三次握手,四次挥手”的理解?

1.1三次握手

客户端与服务器之间进行正常连接的时候,TCP客户端会发出一个SYN的消息,而服务器端会使用SYN+ACK作为回答告诉客户端自己已经接到这个消息,客户端再次以ACK消息响应。服务器知道客户端收到自己到底回答了,这样可靠的TCP便建立起来了。

建立连接时,客户端发送SYN包到服务器,等待服务器响应。(SYN 同步序列编号,是建立连接时使用的握手信号)。

服务器收到SYN包,使用ACK包进行确认应答,同时自己也会发送一个SYN包,即发送SYN+ACK包。

客户端收到服务器的SYN包,向服务器发送确认包ACK。此包发送完毕,代表TCP连接完成,完成了三次握手。

 企业面试季:TCP、UDP你说必须知道的知识

三次握手图解

1.2四次挥手

四次挥手是释放TCP连接的握手过程。

当传输结束的时候,客户端向服务端发送报文FIN等待服务器确认,并且自己主动停止发送数据。

服务器接到了客户端释放报文后,会发送ACK包表示自己知道其请求。

注意:虽然这个时候是收尾阶段,服务器与客户端都已经释放了,但服务器还在发送数据,客户端依旧会接收!

服务器将最后的数据发送完毕后,就向客户端发送连接释放报文FIN,等待客户端确认。

客户端收到服务器连接释放报文后,发出ACK包表示确认。此时客户端会进入TIME_WAIT状态,该状态将持续2MSL(最大报文段生存时间,指报文段在网络中生存的时间,超时将被抛弃)时间,若该时间段内没有服务器重发请求的话,就进入关闭状态,当服务端接收到ACK应答后,立即进入关闭状态。

企业面试季:TCP、UDP你说必须知道的知识 

三次握手与四次挥手图解

长按二维码,关注我们

企业面试季:TCP、UDP你说必须知道的知识

新睿云,让云服务触手可及

云主机|云存储|云数据库|云网络

企业面试季:TCP、UDP你说必须知道的知识

企业面试季:TCP、UDP你说必须知道的知识

企业面试季:TCP、UDP你说必须知道的知识

企业面试季:TCP、UDP你说必须知道的知识

企业面试季:TCP、UDP你说必须知道的知识

企业面试季:TCP、UDP你说必须知道的知识


企业面试季:TCP、UDP你说必须知道的知识

相关文章:

  • 2021-12-04
  • 2022-01-08
  • 2021-07-09
  • 2021-06-24
猜你喜欢
  • 2021-07-02
  • 2022-12-23
  • 2021-11-09
  • 2022-12-23
  • 2022-02-23
  • 2021-12-31
相关资源
相似解决方案