IPv4数据报的格式


IPv4数据报的格式
图片来源于网络
作用:说明IP协议所具有的功能
IP数据报 = 首部 + 数据
首部=固定部分(20B)+ 可变部分(0B–40B)

首部各字段的意义:
1.IP数据报首部的固定部分中的各字段
1)版本  占4位
  • 通信双方使用的IP协议版本必须一致
  • 目前有IPv4和IPv6两个版本(v:version,版本),本节的数据报格式指IPv4数据报格式

2)首部长度  占4位   单位:4字节  考点
4位二进制可以表示十进制的范围(0000–1111,即0–15),
请思考:
1.首部长度最大可达到多少个字节? 
15 x 4字节=60字节  (因为单位为4字节)
那首部长度最小是多少呢?
20字节
因为首部=固定部分(20B+ 可变部分(0B–40B  首部有一个固定部分,它至少占20个字节。
2.已知一个IP数据报中的首部长度字段内容是0101,请问该IP数据报的首部长度大小是?
  • 第一步:0101转化为十进制5
  • 第二步:十进制值乘以单位4字节,得出答案。即5x4字节=20字节
3)区分服务  占8位,用来获取相关服务。一般情况下不怎么用。
4总长度   考点
  • 总长度=首部长度+数据长度  
  • 占16位    单位:字节(B)

问:
1.已知首部长度字段取值为0101,总长度字段的取值为0011111111111100,请问根据这些条件,你能获得那些信息?
可直接求出首部长度=20字节,总长度=1020字节(二进制转十进制,带上单位即可)
间接得出数据长度,数据长度=总长度首部长度=1000

2.什么是分片?   要重点理解哦~

IPv4数据报的格式
图片来自B站博主@湖科大教书匠
观察上图可知,发送方发送的应用层报文需要从上至下经过一层一层的封装,最终在物理层变成比特流,通过物理层交付给接收方。
每一层的封装都是将上层的交付的内容作为本层的数据部分,再加上本层的首部,于是就构成了本层的报文,即本层的报文=上一层的报文+本层的首部
由于数据链路层有MTU(数据链路层报文的数据字段的最大长度,一般规定为1500B)的限制,导致了网络层的报文过长时(总长度>1500B),就要进行分片处理。

如何进行分片处理?
数据部分根据需要分割成多个小的部分,每一个小的部分再加上原始数据报首(但必须修改有关字段的值),使小的部分的总长度小于1500B即可。
5)标识   占16位。标识产生的数据报。
作用:
  • 区别不同的数据报
  • 相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。

6)标志   占3位    考点
a. 标志字段的最低位记为MFMF=1,表示“还有分片”的数据报。
MF=0表示这已是若干数据报片中的最后一个
b. 标志字段的中间的一位记为DF,表示不能分片。DF=0时才允许分片
7)片偏移   占13位    重难点
  • 于数据报的分片处理,表示相对于用户数据字段的起点,该片从何处开始。 
  • 片偏移8个字节为偏移单位,也就是说,除最后一个数据报片外,每个分片的长度一定是8字节的整倍数。

8)生存时间 (TTL)  占8位    考点
  • 表明数据报在网络中的寿命
  • 由发出的数据报源点设置这个字段。
  • 防止无法交付的数据报无限制地在互联网中兜圈子,白白消耗网络资源
  • 单位:跳数,指数据报最多可在互联网中经过多少个路由器。
  • 路由器在每次转发数据报之前就把TTL1
  • TTL=0时,路由器将会丢弃该数据报。

9)协议   占8位    考点
协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个协议进行处理
IPv4数据报的格式
图片来自B站博主@湖科大教书匠
10)首部校验和  占16位。用于检验数据报的首部,不含数据部分。
(11)源地址  占32位
12)目的地址  占32位
2.IP数据报首部的可变部分
是一个选项字段,用于排错、测量以及安全措施,为了增加IP数据报的功能。
3.使用wireshark对IP数据报的抓包结果:
IPv4数据报的格式
来自CSDN博主@tobing的“Wireshark分析IP数据报”文章里的图片

注:图片均来自网络,侵删!

END

原文始发于微信公众号(计算机408):IPv4数据报的格式

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/261216.html

(0)
码上实战的头像码上实战

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!