TCP的头部结构:
- 源端口号:16位,表示数据发送者的端口号。
- 目标端口号:16位,表示数据接收者的端口号。
- 序列号:32位,用于标识从TCP源端向目的端发送的字节流,它表示在这个报文段中的的第一个数据字节。
- 确认序列号:32位,只有ACK标志位为1时,确认序列号字段才有效。它含有期望收到对方下一个报文段的数据的第一个字节的序列号。
- 头部长度:4位,给出了头部长度,以32位为单位。
- 保留:6位,为将来使用而保留,目前未被使用。
- 控制位:其中包括URG,ACK,PSH,RST,SYN,FIN等6个标志位。
- 窗口大小:16位,指定了本段所能接收的最大窗口大小。
- 校验和:16位,用于检测头部和数据部分是否发生错误。
- 急救指针:16位,仅在URG标记为1时有效,否则通常设置为0。
- 选项:可变长,如果存在的话,用于一些额外的功能。
UDP的头部结构:
- 源端口号:16位,表示数据发送者的端口号。
- 目标端口号:16位,表示数据接收者的端口号。
- 长度:16位,包括UDP头部和数据部分的总长度。
- 校验和:16位,用于检测头部和数据部分是否发生错误。