数据封装格式---帧、包

数据链路层数据的封装格式—帧

一般数据帧的结构:
在这里插入图片描述
帧起始字段:帧来了
地址字段:目的/源地址
长度类型:帧的大小以及帧的类型
数据字段:承载上层的IP数据
校验字段:看帧是否完整

802.3以太网数据帧结构:
数据封装格式---帧、包_第1张图片

前导码:在异步10M和更低速率的以太网中同步时钟。(以太网的快速版本是同步的,所以这个字段在以太网快速版本中是多余的)

帧起始定界符:标志帧的开始

目的地址和源地址:目的地址可分为单地址、组地址和广播地址,单地址的最高比特位为“0”,组地址的最高比特位为“1”,广播地址全为“1”。通过次高位的的不同来区分全局地址和局部地址,局部地址的次高位为“1”,由网络管理员指定,只用于本网中。全局地址的次高位为“0”,由IEEE统一分配,保证在世界上的唯一性。

长度/类型 : 在多数情况下,这是用来确定头部后面的数据类型。TCP/IP网络使用的常见值包括IPV4(0x0800)、IPV6(0x86DD)、ARP(0x0806)。0x8100表示一个 Q标签帧(可携带一个“虚拟局域网”或802.1q标签的VLAN ID)。
注意:最初IEEE(802.3)规范将长度/类型字段作为长度字段而不是类型字段使用。因此,这个字段被重载(可用于多个目的)。关键是看字段值。目前,如果字段值大于或等于1536,则该字段表示类型,它是由标准分配的超过1536的值。如果字段值等于或小于1500,则该字段表示长度。

数据域:用于存放被传输的数据

填充域:802.3规定,有效帧从目的地址到校验和字段的最短长度为64字节,当数据域长度小于46字节时,就使用本字段的填充来满足最短帧的要求。

校验和:使用32位CRC校验。

网络层的封装格式—包数据封装格式---帧、包_第2张图片
数据封装格式---帧、包_第3张图片

IPV6的数据包头较IPV4的数据包头简化了,上图中,黄色部分表示两者功能和名字都相同的部分,红色表示V6简化了的部分,蓝色表示两者功能相同但名字不同的部分,灰色表示V6新加的部分。

版本:数据包的IP版本

报头长度:数据包头的长度,单位为32bit

服务类型:用来指定特殊的数据处理方式

数据包长度:字节为单位,描述报头+数据的总长度

标记符:通常与标记位和分片偏移一起用于数据包的分段,它为同一数据包的各个分段打上相同的标记,让接收方知道那些数据片段是同一个数据包的。

标记位:一共是3位,第1位保留,第2位是DF(不分段)位,当DF=1时,表示,该数据包是没有做分割处理的,是一个完整的数据包。第3位是MF(更多分段)位,表示数据是不是最后片段,所以一个分割了数据包中只有最后一个片段的MF位为0,告诉接收者,这就是最后一个了,组装数据吧。

分片偏移:分片数据的首部到数据报首部的距离。

生存时间:用于防环的,数据包每经过一台路由器,TTL值就会减1,当TTL值为0时,数据包就会被丢弃。

协议:指出了数据包中的数据类型。

常见类型:
1—ICMP(网际消息控制协议)
2—IGMP(网际组管理协议)
6—TCP (传输控制协议)
17—UDP(用户数据报协议)
45–IDRP(域间路由选择协议)
46–RSVP(资源预留协议)
47–GRE (通用路由封装)
54–NHRP(NBMA网络下一跳解析协议)
88–EIGRP(增强内部网关协议)
89–OSPF(开放式最短路径优先协议)

报头校验和:是针对IP数据报头的纠错字段
数据包发送者计算得到的16位二进制补码和,接收者将会连同原始的校验和一同重新进行16位二进制补码和运算。如果计算的值全为1,则表明传输过程中没有发生错误。

源地址:发送者的IP地址

目的地址:目标的IP地址

可选项:这一项属于附加项,当要对路由做一些记录时,可以用这一项来实现。
共有四个选项:

  1. 松散源路径选择,它给出了一串路由器接口的IP序列,数据传输时要按照这个IP序列传输,但是在相继IP之间允许经过多台路由器。
  2. 严格源路径选择,它也给出了一串路由器接口的IP序列,不同于松散选路的是,数据传输时,必须严格按照路由表转发,下一跳不在路由表中,就会报错。
  3. 路由记录,数据离开一台路由器,会给该路由器提供记录出接口IP的空间。记录数据传输的路径。
  4. 时间戳,记录数据到过的路由器和到达各个路由器的时间。

填充项:数据报头的长度必须位32bit的倍数(最小位20字节,最大为60字节),所以,为了满足这一要求,填充项负责将可选项不够32bit的空间补上。

你可能感兴趣的:(数据封装格式---帧、包)