三次握手:
目的:建立通信
过程:
1、客户端发送SYN请求连接,seq报文序号发送给服务器
2、服务器返回SYN请求连接、ACK确认、seq报文序号、ack=clint_seq+1确认接收到了请求
3、客户端核对ack确认序号和ACK对方是否确认,如果ACK=1, ack=seq+1,表示服务器已接收。客户端返回ACK=1,ack=server_seq+1,之后开始传输数据
四次挥手:
过程:
1、客户端发送关闭连接FIN,告诉服务器没有消息要发送了。不着急关闭,如果有数据没发送完,可以继续发送,先发送ACK确认是否收到。
2、服务器发送ACK告诉客服端,已经收到要断开的请求,如果自己处理完信息,会告诉客户端。客户端进入FIN_WAIT状态,等待接收服务器发送的FIN报文
3、服务器发送完之后,向客户端发送FIN报文,告诉客户端可以关闭连接
4、客户端不相信网络,发送ACK确认告诉服务器收到了关闭信息。客户端进入TIME_WAIT状态。如果服务器没有收到ACK重传,如果收到端口连接。客户端在等待2ms之后如果没有收到回复就正常关闭