TCP传输控制协议是面向连接的可靠的传输层协议,在进行数据传输之前,需要在传输数据的两端(客户端和服务器端)创建一个连接,这个连接由一对插口地址唯一标识,即是在IP报文首部的源IP地址、目的IP地址,以及TCP数据报首部的源端口地址和目的端口地址。TCP首部结构如下:
其中在TCP连接和断开连接过程中的关键部分如下:
1.源端口号:即发送方的端口号,在TCP连接过程中,对于客户端,端口号往往由内核分配,无需进程指定;
2.目的端口号:即发送目的的端口号;
3.序号:即为发送的数据段首个字节的序号;
3.确认序号:在收到对方发来的数据报,发送确认时期待对方下一次发送的数据序号;
4.SYN:用于发送连接请求;
5.ACK:确认序号有效;
6.FIN:断开连接。