当前位置: 首页 > news >正文

【计网】ICMP、IP、Ethernet PDU之间的封装关系

TCP/IP体系结构

应用层RIP、OSPF、FTP
运输层TCP、UDP
网际层IP、ARP、ICMP
网络接口层底层协议(Ethernet)

数据链路层

Ethernet报文格式

6Byte6Byte2Byte46~1500Byte4Byte
目的MAC地址源MAC地址类型/长度数据FCS

其中,类型 / 长度值小于 1536(0x0600)时表示数据字段的长度,大于等于 1536(0x0600)时表示数据字段的协议类型。类型 / 长度值 0x0800 表示帧中封装的数据为 IP 分组,类型值 0x0806 表示帧中封装的数据为 ARP 分组

Ethernet II 类型以太网帧的最小长度为 64 字节(6+6+2+46+4)最大长度为 1518 字节(6+6+2+1500+4)。其中前 12 字节分别标识出发送数据帧的源节点 MAC 地址和接收数据帧的目标节点 MAC 地址。

接下来的 2 个字节(类型)标识出以太网帧所携带的上层数据类型,如下

  • IPv4: 0x0800
  • ARP:0x0806
  • PPPoE:0x8864
  • 802.1Q tag: 0x8100
  • IPV6: 0x86DD
  • MPLS Label:0x8847

 4 个字节的帧校验序列(Frame. Check Sequence,FCS)

PPP 帧格式

STP 协议格式

  • 目的 mac 地址 ― 目的地址是一个固定的桥的组播地址(0x0180c2000000)
  • 源 MAC 地址 ― 即发送该配置消息的桥 MAC 地址
  • 长度 / 类型 ― 这里表示帧长
  •  LLC Header ― 固定的链路头 - 0x424203
  • Payload ― BPDU 数据

网络层

IP 报文

类型:IP 报文的类型为 0x0800;

Version:4 比特;表示版本;目前为 4;即 0100

IHL:Internet Header Length 首部长度;占 4 比特。是头部占 32 比特的数字,包括可选项。普通 IP 数据报(没有任何选项),该字段的值是 5,即 160 比特 = 20 字节。此字段最大值为 60 字节;

服务类型(Type of Service ,TOS)字段:占 8 比特。其中前 3 比特为优先权子字段(Precedence,现已被忽略)。第 8 比特保留未用。第 4 至第 7 比特分别代表延迟、吞吐量、可靠性和花费。当它们取值为 1 时分别代表要求最小时延、最大吞吐量、最高可靠性和最小费用。这 4 比特的服务类型中只能置其中 1 比特为 1。可以全为 0,若全为 0 则表示一般服务。服务类型字段声明了数据报被网络系统传输时可以被怎样处理。例如:TELNET 协议可能要求有最小的延迟,FTP 协议(数据)可能要求有最大吞吐量,SNMP 协议可能要求有最高可靠性,NNTP(Network News Transfer Protocol,网络新闻传输协议)可能要求最小费用,而 ICMP 协议可能无特殊要求(4 比特全为 0)。实际上,大部分主机会忽略这个字段,但一些动态路由协议如 OSPF(Open Shortest Path First Protocol)、IS-IS(Intermediate System to Intermediate System Protocol)可以根据这些字段的值进行路由决策。

总长度字段:占 16 比特。指明整个数据报的长度(以字节为单位)。最大长度为 65535 字节。

标识字段:占 16 比特。用来唯一地标识主机发送的每一份数据报。通常每发一份报文,它的值会加 1。

标志位字段:占 3 比特。标志一份数据报是否要求分段

段偏移字段:占 13 比特。如果一份数据报要求分段的话,此字段指明该段偏移距原始数据报开始的位置

生存期(TTL:Time to Live)字段:占 8 比特。用来设置数据报最多可以经过的路由器数。由发送数据的源主机设置,通常为 32、64、128 等。每经过一个路由器,其值减 1,直到 0 时该数据报被丢弃

协议字段:占 8 比特。指明 IP 层所封装的上层协议类型,如 ICMP(1)、IGMP(2) 、TCP(6)、UDP(17)等

ARP 协议报文

以太网类型为 0x0806 代表 ARP 协议

Ethernet  

IP

ICMP、IP、Ethernet PDU封装关系

IP分组IP首部数据载荷:ICMP
Ethernet帧帧首部数据载荷:IP

相关文章:

  • 微服务架构详解
  • 基于ASP.NET+MySQL实现待办任务清单系统
  • 宁德时代区块链+数字孪生专利解析:去中心化身份认证重构产业安全底座
  • Jupyter Notebook为什么适合数据分析?
  • Linux56 YUM源配置
  • C语言_可变参数_LOG宏
  • 《AI大模型应知应会100篇》第49篇:大模型应用的成本控制策略
  • 5.6 react组件化开发基础
  • ABAQUS三维CT重建插件CT2Model3D V2版本
  • 前端取经路——JavaScript修炼:悟空的九大心法
  • kaggle注册问题
  • Kafka Consumer的auto.offset.reset参数有哪些配置?适用场景?
  • 原子操作的is_lock_free() 接口说明
  • Apache Doris与StarRocks对比
  • postgresql-15 更改默认存储路径
  • SQL Server 备份加密和解密还原
  • vue2 provide 后 inject 数据不是响应式的,不实时更新
  • 光纤失效模式及其影响
  • 【中间件】brpc之工作窃取队列
  • 【2025年】基于电脑的jdk1.8通过idea创建springboot2.x版本(非常简洁快速)
  • 上海飞银川客机触地复飞后备降西安,亲历者:不少乘客都吐了
  • 上海畅通“外转内”,外贸优品成“香饽饽”
  • 张家口一景区观光魔毯疑失控致游客被甩出,涉事景区改造升级重新开园才3天
  • 月薪3万文科友好,“AI训练师”真有那么赚?
  • 言短意长|今年五一假期的一个新变化
  • “五一”假期国铁集团计划日均开行旅客列车超1.2万列