三次握手和四次挥手
三次握手的目的:确认服务端和客户端的发送、接收能力是正常的,建立连接。即服务端确认客户端的发送和接收能力OK,客户端确认服务端的接收和发送能力OK。
第一次握手,服务端确认客户端的发送是OK
第二次握手,客户端确认服务端的发送是OK的,接收到的数据包是第一次握手时的问题答案,证明服务端的接收也是OK的。此时服务端不能证明客户端的接收是OK的
第三次握手,服务端接收到的是第二次握手问题的答案,证明客户端的接收能力OK。
至此,三次握手是确定双方收发均正常的最少握手次数。
四次挥手的目的是断开连接
第一次,客户端发送释放连接的FIN报文,保证客户端没有数据发了
第二次,服务端收到第一次挥手 的报文后回复确认报文,处于关闭等待状态,等待服务端的数据发完
第三次,服务端发送连接释放报文
第四次,客户端接收到第三次挥手的报文后,回复确认。在经过2个MSL后释放TCP连接,服务端在收到报文后立即释放连接。