三次握手
第一次握手:主机A发送位码为syn=1,随机产生seq number=1234567的数据包到服务器,主机B由SYN=1知道,A要求建立联机;
第二次握手:主机B收到请求后要确认联机信息,向A发送ack number=(主机A的seq+1),syn=1,ack=1,随机产生seq=7654321的包
第三次握手:主机A收到后检查ack number是否正确,即第一次发送的seq number+1,以及位码ack是否为1,若正确,主机A会再发送ack number=(主机B的seq+1),ack=1,主机B收到后确认seq值与ack=1则连接建立成功。
四次挥手
为什么有4次挥手呢,4次挥手的作用就是断开连接,之所以要断开连接是因为TCP/IP协议是要占用端口的,而计算机的端口是有限的,所以一次传输完成之后是要断开连接的,断开连接的方式就是4次挥手。
1、客户端 A 发送一个 FIN ,用来关闭客户 A 到服务器 B 的数据传送。
2、服务器 B 收到这个 FIN ,它发回一个 ACK ,确认序号为收到的序号加 1。和 SYN 一样,一个FIN 将占用一个序号。
3、服务器 B 关闭与客户端 A 的连接,发送一个 FIN 给客户端 A 。
4、客户端 A 发回 ACK 报文确认,并将确认序号设置为收到序号加 1 。
