网络协议数据报文格式
重复
16
24
类型为 2 的 OSPF 首部 (24 bytes)
接口 MTU
选项
全0
报文序号
链路状态通告(LSA)首部 (20 bytes)
31 bits I M MS
链路状态请求
0
(LSR)报文:
类型为 3 的 OSPF 首部 (24 bytes)
重复
链路类型 链路状态 ID 通告路由器
链路状态更新(LSU)报文:
3、IP 分组格式(RFC 791)
20 ~ 60 bytes
IP 协议头
0
4
8
16
版本 头长 服务类型
标识
标志
生存时间
协议
源 IP 地址
目的 IP 地址
选项
数据
总长度 分片偏移
首部校验和
协议:1=ICMP
31 bits
6=TCP
标志(3 bits):
89=OSPF 17=UDP
保留 不分片 还有分片
这些协议之间的 PDU 封装并不是严格按照低层 PDU 封装高层 PDU 的方式进行的,
附图 3-2 显示了 Ethernet 帧、ARP 分组、IP 分组、ICMP 报文、TCP 报文段、UDP 数据
报、RIP 报文、OSPF 报文和 FTP 报文之间的封装关系。
TCP 报文段
UDP 数据报
TCP 首部 数据:FTP
(LSU) 5 链路状态确认报文
(LSAck)
HELLO 报文:
0
重复
16
24
类型为 1 的 OSPF 首部 (24 bytes)
31 bits
Hello 间隔
网络掩码 选项
路由器失效间隔
优先级
指定路由器(DR)IP 地址 备份指定路由器(BDR)IP 地址
邻居 IP 地址
数据库描述
0
源自文库
(DBD)报文:
31 bits
类型:
0 回送应答 8 回送请求
ICMP 目的不可达报文:
0
8
16
类型(3) 代码(0~15)
未用(全 0)
校验和
31 bits
交付失败的 IP 分组的首部和数据部分的前 8 个字节
代码:
0 网络不可达 1 主机不可达 2 协议不可达 3 端口不可达
4 需分片但被禁止 5 源路由失败 6 目的网络未知 7 目的主机未知
不分片(D): 0=可以分片 1=不能分片
填充
还有分片(M): 0=最后的分片 1=还有更多分片
4、ARP 分组格式(RFC 826) 操作代码值 1 表示 ARP 请求分组,操作代码值 2 表示 ARP 响应分组。
0
8
硬件类型(0x0001)
16 协议类型(0x0800)
硬件长度
协议长度
操作代码
发送方硬件地址
发送方硬件地址
发送方协议地址
发送方协议地址
目标硬件地址
目标硬件地址
目标 IP 地址
31 bits
硬件类型: 0x0001=以太网 0x0800=IP 协议
5、ICMP 报文格式(RFC 792)
ICMP 回送请求和回送应答报文:
0
8
16
类型(8,0) 代码(0)
校验和
标识符
序号
可选数据
协议数据报文格式
1、TCP/IP 协议层次 TCP/IP 协议分为四层结构,每一层完成特定的功能,包括多个协议。本课程实验中
相关协议的层次分布如附图 3-1 所示。
应用层 运输层 网际层 网络接口层
RIP、OSPF、FTP TCP、UDP IP、ARP、ICMP 底层协议(Ethernet)
附图 3-1 TCP/IP 协议层次
UDP 首部 数据:RIP
Ethernet 帧
IP 分组 帧首部
IP 首部
数据:ICMP、TCP、UDP、OSPF
数据:ARP、IP
附图 3-2 各协议 PDU 间的封装关系
2、Ethernet 帧格式
最新的 IEEE 802.3 标准(2002 年)中定义 Ethernet 帧格式如下:
Bytes 6
8、OSPF 报文格式(RFC 2328)
24bytes
OSPF 首部
数据
0
8
16
版本(2) 类型(1~5)
源路由器 IP 地址
区域标识
校验和
报文长度 认证类型
认证(8 bytes)
31 bits
类型:
1 HELLO 报文 2 数据库描述报文
(DBD) 3 链路状态请求报文
(LSR) 4 链路状态更新报文
寿命
选项
类型
类型:
校验和
标识 通告路由器
序号
长度
1 路由器链路 2 网络链路 3 汇总链路到网络 4 汇总链路到 ASBR 5 外部链路
目的端口地址
窗口大小 紧急指针
选项及填充
31 bits 控制比特:
URG ACK PSH RST SYN FIN
URG
紧急指针字段有效
ACK
确认字段有效
PSH
请求推操作
RST
连接复位
SYN
同步序号
FIN
终止连接
7、RIP 报文格式(版本 1-RFC 1058,版本 2-RFC2453)
RIP 请求报文在某些 RIP 路由表项超时或路由器刚接入互联网时发送,请求报文可 以询问特定路由或所有路由。路由器在回应请求报文时发送携带被询问路由信息的 RIP 响应报文,也可以定期(30 秒)发送携带整个路由表信息的 RIP 响应报文。
ICMP 超时报文:
0
8
16
类型(11) 代码(0,1)
未用(全 0)
校验和
超时 IP 分组的首部和数据部分的前 8 个字节
31 bits
代码:
0 TTL 超时 1 分片重组超时
6、TCP 报文段格式(RFC 793)
20 ~ 60 bytes
TCP 协议头
数据
0 头长
16 源端口地址
序号 确认号 保留 控制比特 校验和
0
8
16
命令(1、2) 版本(1)
全0
协议族(2)
全0
重复
网络地址 全0
全0
到该网络的距离
31 bits
命令:
1 请求 2 响应
重复
0
8
16
命令(1、2) 版本(2)
协议族
网络地址
子网掩码
下一跳地址
到该网络的距离
全0 路由标记
31 bits
命令:
1 请求 2 响应
注:RIPv2 认证报文 的协议族字段值为 0xFFFF
6
2
46 ~ 1500
4
目的 MAC 地址
源 MAC 地址 类型/长度
数据
FCS
其中,类型/长度值小于 1536(0x0600)时表示数据字段的长度,大于等于 1536 (0x0600)时表示数据字段的协议类型。类型/长度值 0x0800 表示帧中封装的数据为 IP 分组,类型值 0x0806 表示帧中封装的数据为 ARP 分组。
0
类型为 4 的 OSPF 首部 (24 bytes)
重复
LSA 数量
LSA (5 种类型)
31 bits 31 bits
链路状态确认(LSAck)报文:
0 类型为 5 的 OSPF 首部 (24 bytes)
LSA 首部 (20 bytes)
31 bits
链路状态通告(LSA)首部:
0
16
24
31 bits