图一、TCP报文结构
图二、TCP连接 三次握手
第一次:主机A(客服端)先初始化 SYN(同步比特)为1,并初始化一个SEQ(序号),传送给主机B(服务端);
(补充1:服务端B收到syn为1的报文请求后,就会在服务端初始化环境 和 变量)
(补充2:TCP连接中,被传送的数据 每个字节都别编上了一个序号,SEQ序号段的值 就是储存了本报文第一个字节的序号)
第二次:主机B(服务端)收到请求,返回syn(同步比特)为1,ACK(确认比特)= SEQ +1 ,并初始化新SEQ 返回给主机A(客服端)
(补充:客户端B收到syn为1的报文请求后,就会在服务端初始化环境 和 变量)
第三次:主机A(客户端)返回ACK(确认比特)= 新SEQ+1, 此是确认连接
图三、TCP终止连接 四次握手
附:概念理解
套接字:socket --- 为了使多主机,多线程通讯时不发生混乱,为了区别不同的应用程序进程和连接,许多计算机操作系统为应用程序与TCP/IP协议交互提供了称为套接字(Socket)的接口。(也就是说 IP+port 即是 一对套接字)
TCP:
Transmission Control Protocol,传输控制协议
UDP:
User Data Protocol,用户数据报协议
面向连接,面向无连接