网络TCP连接,如图所示,网络数据传输的过程
TCP客户端向服务端进行连接时需要三次握手,断开连接时需要四次挥手,断开可以是客户端断开或者是服务端断开两种。
一、TCP连接的时候:
第一次,户端首先向服务端发送请求报文SYN;
第二次,服务端接受时发送SYN+ACK,并为客户端分配一个资源。
第三次,客服端收到SYN+ACK,发送一个ACK,同时分配一个资源,用于数据传输,即可进行数据的传输。
二、断开时候:
假设客户端断开
第一次,客户端向服务端申请断开FIN
第二次,服务端收到客户端的请求,但是要确保自己已经传输完成,所以会先发一个ACK表示已经收到客户端的请求,客户端进入等待,直到收到服务端新发来的消息。
第三次,服务端传输完数据发送FIN给客户端。
第四次,客服端收到服务端发来的FIN,发送ACK,服务端收到ACK就断开,客户端等待2MSL(2个最大报文段生存时间)就断开连接,则断开此次的连接。