报文格式

MAC帧格式:

字段
目的地址 6字节
源地址 6字节
类型 2字节,标志上一层使用什么协议。例:0x0800表示使用IP协议
数据 为上一层IP层

IP报文格式:

字段
版本 4 位,IP协议版本
首部长度 4 位,单位是4字节,也最常用;最大长度为60字节
区分服务 8 位,用来获得更好的服务
总长度 16 位,首部和数据之和的长度,单位为字节。
标识 16 位,相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报
标志 3位,目前只有两位有意义。最低位MF,MF=1表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。中间一位DF(Don’t Fragment),“不能分片”。当DF=0时才允许分片
片偏移 13位,较长的分组在分片后,某片在原分组中的相对位置
生存时间 数据报在网络中的寿命
协议 8 位,携带的数据使用何种协议
首部校验和 16位,检验数据报的首部
源地址 32 位
目的地址 32 位
可选字段
填充
数据部分

TCP报文格式:

字段
源端口 2 字节
目的端口 2 字节
序号 4 字节,TCP连接中传送的字节流中的每一个字节都按顺序编号。首部中的序号字段值指的是本报文段所发送的数据的第一个字节的序号
确认号 4 字节,期望收到对方下一个报文段的第一个数据字节的序号
数据偏移 4 位,TCP报文段的数据起始处距离TCP报文段的起始处有多远
保留 6 位, 保留,目前应为 0
URG URG=1 紧急指针有效
ACK ACK = 1 确认字段有效
PSH 接收方收到 PSH=1 的报文,尽快交付接收应用进程
RST RST=1 TCP连接出现差错,必须释放连接,重新建立运输连接
SYN 建立连接时用来同步序号。SYN=1 而 ACK=0 时,表明这是一个连接请求报文。对方同意建立连接,则响应的报文中使用 SYN=1 和 ACK=1
FIN FIN=1 释放连接
窗口 2字节,发送本报文段的一方的接收窗口
检验和 2字节,检验范围包括首部和数据两部分
紧急指针 2字节,紧急数据的字节数。即使窗口为零也可以发送紧急数据
选项
填充

UDP报文格式:

字段
源端口 2 字节
目的端口 2 字节
长度
校验和

HTTP格式:

字段 说明
GET GET方法要求服务器将URL定位的资源放在响应报文的数据部分,回送给client。
HOST 请求的主机名,允许多个域名同处于一个IP地址,即虚拟主机
user-agent 产生请求的浏览器类型

猜你喜欢

转载自blog.csdn.net/yuberhu/article/details/79818769