源端口:占16比特,写入源端口号,用来标识发送该TCP报文段的应用进程。
目的端口:占16比特,写入目的端口号,用来标识接收该TCP报文段的应用进程。
确认标志位ACK:取值为1时确认号字段才有效;取值为0时确认号字段无效,TCP规定,在连接建立后所有传送的TCP报文段都必须把ACK置为1。
保留:占6比特,保留位今后使用,但目前应置为0.
窗口:占16比特,以字节位单位。指出发送本报文段的一方的接收窗口。窗口值作为接收方让发送方设置其发送窗口的依据,这是以接收方的接收能力来控制发送方的能力,称为流量控制。
校验和:占16比特,检查范围包括TCP报文段的首部和数据载荷两部分。在计算校验和时,要在TCP报文段的前面加上12字节的伪首部。
通知标志位SYN:在TCP连接建立时用来同步序号。
终止标志位FIN:用来释放TCP连接;
复位标志位RST:用来复位TCP连接
推送标志位PSH:接收方的TCP收到该标志位为1的报文段会尽快上交应用进程,而不必等到接收缓存都填满后再向上交付。
紧急标志位URG:取值为1时紧急指针字段有效,取值为0时紧急指针字段无效。
紧急指针:占16比特。以字节为单位,用来指明紧急数据的长度,当发送方又紧急数据时,可将紧急数据插队到发送缓存的最前面,并立刻封装到一个TCP报文段中进行发送,紧急指针指出本报文段数据载荷部分包含了多长的紧急数据,紧急数据之后是普通数据。
填充:由于选项的长度可变,因此使用填充来确保报文段首部能被4整除(因为数据偏移字段,也就是首部长度字段,是以4字节为单位的)。