TCP是面向连接的可靠传输协议 — 在完成了传输基本工作上,保障传递的可靠性。每一次完整的数据传输都必须经过建立连接,数据传输和终止连接三个过程,这三个过程称为TCP的三次握手 TCP三次握手的过程 第一次连接是a主机向b主机发送确认信息,等待b主机可以确认收到信息 第二次是b主机在收到a主机的信息之后,再发送一个包给a以确认与a之间可以自己可以接收信息 第三次握手是a收到b的包并向b发送确认包,在此包发送以后,b确认a也能收到b所发送的数据,a与b完成3次握手并开始传输数据 TCP的四次断开 所谓四次挥手(Four-Way Wavehand )即终止TCP连接,就是指断开一个TCP连接时,需要客户端和服务端总共发送4个包以确认连接的断开 第一次挥手:Client发送一个FIN,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态。 第二次挥手:Server收到FIN后,发送一个ACK给Client,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号),Server进入CLOSE_WAIT状态。 第三次挥手:Server发送一个FIN!,用来关闭Server到Client的数据传送,Server进入LAST_ACK状态。 第四次挥手:Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK给Server,确认序号为收到序号+1,Server进入CLOSED状态,完成四次挥手
|