面试官问你TCP协议的三次握手过程和四次挥手过程,该如何回答!

TCP协议的三次握手过程:

面试官问你TCP协议的三次握手过程和四次挥手过程,该如何回答!
TCP在建立连接的时候,需要经历三次握手的过程
第一次握手是由客户端向服务器端发起的,这是用来去发一个建立的请求,那么这个报文中SYN位被标记为:1,所以我们把它常叫做一个SYN包
第二次握手是由服务器向客户端发起的,是来确认服务器的一个请求连接的,这个报文中我们的ACK位还有SYN位都被标记为:1,所以我们也把它叫做一个SYN-ACK报文
第三次握手同样是客户端发给服务器的,这是对服务器的上一个报文的一个确认报文,那么这个报文中的ACK被标记为:1,所以我们也把它叫做ACK包

TCP协议的四次挥手过程:

面试官问你TCP协议的三次握手过程和四次挥手过程,该如何回答!
当TCP协议完成了数据的发送之后就会尝试去断开连接,此时它就会经历四次挥手的过程
第一次挥手是客户端向服务器发起的,这个时候客户端已经完成了数据发送,会发起一个包进行一个连接端口的请求,那么这个报文中,他的一个FIN位被标记为:1,所以我们把它叫做一个FIN包
第二次挥手是服务器发给客户端的,这个报文是用来确认上一个客户端用来断开连接请求的一个报文,所以它是一个ACK报文
第三次挥手同样是服务器发给客户端的,那么这个时候服务器的数据也发送完毕的话,它也向客户端发起有一个断开连接的申请,那么在这个报文中一个FIN同样也被标记为:1,所以它也是一个FIN包
第四次挥手是客户端发给服务器的,是用来确认服务器的上一个断开连接的一个请求报文,所以这次挥手也是一个ACK报文,

猜你喜欢

转载自blog.51cto.com/13541307/2506298