TCP的三次握手和四次挥手

90 阅读1分钟

自己对知识的了解,留作面试用,如有错误请指正

三次握手:

主动方发送SYN包请求连接,被动方若同意发送SYN+ACK包,主动发收到后发送ACK包,连接建立

为什么要三次:

解决网络通信不可靠的问题,怕对方没收到所以再发一遍引起错误

四次挥手

1、主动方发送FIN包表示要关闭连接

2、被动方收到后发送ACK包,进入关闭等待状态(表示主动方到被动方的连接已经释放,接收不到对方发的数据,但是TCP连接是双向的,自己可以发)

3、被动方向主动方发送连接释放请求,发送FIN包,进入最后确认状态

4、主动方收到后回复ACK包确认应答,进入超时等待状态,没有被动方的重发请求就关闭。被动方收到后也确认关闭。