目录
一、TCP报文段格式
二、最大报文长度 MSS
一、TCP报文段格式
长度:前20个字节固定 + 后4n个字节(报文段格式不固定)
1、源端和目的端:各2个字节
作用:指明TCP链接的发送
2、序号 4字节
作用:TCP按字节流顺序编号,每一个字节都有一个编号,也称为段序号,范围是0-2^32-1
3、确认号:4字节
作用:表明前n个数据全部确认收到,下一次发送方要从第n个开始发送
4、数据偏移 4字节
作用:指明首部长度,其实就是数据位置;一个单位代表4字节,TCP首部最长为4*15=60字节
5、保留位 6字节
作用:留给以后用的,没用,不用管
6、紧急位URG 1bit位
作用:指明该报文很紧急,优先发送
7、紧急指针
作用:指明紧急
8、确认位ACK 1位
作用:指明接收方的确认报文是否有效,只有ACK为1时有效
9、推送PSH 1位
作用:尽快推送报文给对方进程
10、复位RST 1位
作用:指明TCP链接有错误,需要重建TCP链接
11、同步SYN 1位
作用:建立TCP链接,发送方发请求报文(同步位=1, 确认位=0),接受方发送 接受链接报文(同步位=1, 确认位=1)
12、终止FIN 1位
作用:要释放TCP链接
13、窗口字段 2字节(重点!)
作用:指明自己的窗口大小
14、检验和 2字节
作用,检验首部和数据,方法为16位求和法,加上12伪首部
15、选项 0~40字节
作用:拓展功能
常用选项:扩大窗口3字节(用以扩大窗口)、 时间戳10字节(用以计算往返时间RTT)
二、最大报文长度 MSS
MMS:指明每个TCP报文段中,数据的长度,注意仅仅是数据,不包括20字节首部
MMS默认值为536字节 = 566 - IP首部20字节 - TCP首部20字节