首页 > 其他分享 >IP数据报

IP数据报

时间:2024-10-12 20:59:50浏览次数:9  
标签:首部 IP MTU 分片 长度 数据

IP数据报的格式

一个IP分组(或称IP数据报)由首部和数据部分组成。首部前一部分的长度固定,共20B,是所有IP分组必须具有的。在首部固定部分的后面是一些可选字段,其长度可变,用来提供错误检测及安全等机制。IP数据报的格式如图4.5所示。

img

  1. 版本。占4位。指IP的版本,IPv4数据报中该字段值是4。
  2. 首部长度。占4位。以4B为单位,最大可表示的首部长度为60B(15×4B)。最常用的首部长度是20B(5×4B),该字段值是4,此时不使用任何可选字段。

IP首部前两个字节往往以0x45开头,解题时可用于定位 IP数据报的开始位置。

  1. 总长度。占16位。指首部和数据之和的长度,单位为字节,因此数据报的最大长度为\(2^{16}\)-1=65535B。以太网帧的最大传送单元(MTU)为1500B,因此当一个IP数据报封装成帧时,数据报的总长度(首部加数据)一定不能超过下面的数据链路层的MTU值。

  2. 标识。占16位。它是一个计数器,每产生一个数据报就加1,并赋值给标识字段。但它并不是“序号”(因为IP是无连接服务)。当一个数据报的长度超过网络的MTU时,必须分片,此时每个数据报片都复制一次标识号,以便能正确地重装成原来的数据报。

  3. 标志(Flag)。占3位。标志字段的最低位为MF,MF=1表示后面还有分片,MF=0表示最后一个分片。标志字段中间的一位是DF,只有当DF=0时才允许分片。

  4. 片偏移。占13位。它指出较长的数据报在分片后,某片在原数据报中的相对位置,片偏移以8B为偏移单位。除最后一个分片外,每个分片的长度一定是8B的整数倍。

  5. 生存时间(TTL)。占8位。数据报在网络中可通过的路由器数的最大值,标识数据报在网络中的寿命,以确保数据报不会永远在网络中循环。路由器在转发数据报前,先将TTL减1。若TTL被减为0,则该数据报必须丢弃。

  6. 协议。占8位。指出此数据报携带的数据使用何种协议,即数据报的数据部分应上交给哪个协议进行处理,如TCP、UDP等。其中值为6表示TCP,值为17表示 UDP。

  7. 首部检验和。占16位。它只检验数据报的首部,但不包括数据部分。这是因为数据报每经过一个路由器,都要重新计算首部检验和(有些字段,如生存时间、总长度、标志、片偏移、源/目的地址都可能发生变化)。不检验数据部分可减少计算的工作量。

  8. 源地址字段。占4B,标识发送方的IP地址。

  9. 目的地址字段。占4B,标识接收方的IP地址。

在IP 数据报首部中有三个关于长度的标记,即首部长度、总长度、片偏移,它们的基本单位分别为4B、1B、8B(需要记住)。题中常出现这几个长度之间的加减运算。

首部校验和的计算

在发送方,首先将IP数据报首部划分为许多16位字的序列,并把检验和字段置零。用反码算数运算把所有16位字相加后,将得到的和的反码写入检验和字段。接收方在接到数据报后,把首部的所有16位字在使用反码算数运算相加一次,将得到的和取反码,即得到接收方检验和的计算结果,若首部未发生任何变化,则此结果必为0,于是就保留这个数据报,否则就认为出差错,将这个数据报丢弃。

img

反码算数运算:与普通算数运算的唯一区别就是,当最高位产生进位时,要进行一个回卷操作,即将最高位进位加到最低位,直到不再产生新的最高位进位为止

下面我们来举一个实际例子,对1101,1011进行校验

(1011) + (1101) = (1000) 进1,将这个进位加到结果的末位,得到(1001),再取反码,于是校验和就是(0110)

下面进行校验

(1011) + (1101) + (0110) = (1110)进1,将这个进位加到结果的末位得到(1111),再取反码得到0,说明没有发生错误

IP数据报的分片

一个链路层数据帧能承载的最大数据量称为最大传送单元(MTU)。因为IP数据报被封装在链路层的帧中,因此链路层的MTU严格地限制了 IP数据报的长度,而且在IP 数据报的源与目的地路径上的各段链路可能使用不同的链路层协议,有不同的 MTU。例如,以太网的 MTU为1500B,而许多广域网的MTU不超过576B。当IP数据报的总长度大于链路 MTU时,就需要将IP数据报中的数据分装在多个较小的IP数据报中,这些较小的数据报称为片。

IP分片涉及一定的计算。例如,一个长4000B的IP 数据报(首部 20B,数据部分3980B)到达一个路由器,需要转发到一条MTU为1500B的链路上。这意味着原始数据报中的3980B数据必须分配到3个独立的片中(每片也是一个IP数据报),每片的数据部分依次为1480B、1480B和1020B。假定原始数据报的标识号为777,则分成的3片如图4.6所示。可见,因为偏移值的单位是8B,所以除最后一个片外,其他所有片中的数据部分都为8B的倍数。

img

注意这里仅对载荷部分进行了分片,原来的首部直接扔掉了

标签:首部,IP,MTU,分片,长度,数据
From: https://www.cnblogs.com/AH20/p/18461493

相关文章

  • JavaScript 异步编程入门
    最近开始不断学习实践JavaScript,出于性能测试的敏感,首先研究了JavaScript的异步编程实践,目前看跟之前学过的Java和Go都不太一样。使用的语法上相对更加复杂,也可能因为我实践得还太少。异步编程异步编程是一种在程序执行过程中,不阻塞主线程的任务处理方式。相较于同步编程......
  • jsp大学生勤工助学信息管理系统9gisv--程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表企业,学生,勤工俭学,留言咨询,应聘信息开题报告内容一、课题背景及意义随着高等教育的成本上升,大学生勤工助学成为缓解经济压力、提升实践能力的重要途径。然......
  • jsp大学生就业信息检索系统dvt4m程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用人单位,学生,招聘信息,应聘信息,就业信息开题报告内容一、选题背景与意义随着高等教育的快速发展,大学生就业问题日益成为社会关注的焦点。然而,现有的就业信......
  • jsp大学生兼职网站5kl80--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表学生,企业,兼职信息,应聘信息,岗位类型开题报告内容一、项目背景随着高等教育的普及和就业市场的竞争加剧,越来越多的大学生选择参与兼职工作,以积累实践经验、......
  • jsp大学生求职招聘系统86336--程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表企业,招聘信息,用户,应聘信息,录取结果开题报告内容一、研究背景与意义随着互联网技术的不断发展,大学生就业招聘系统成为企业与求职者之间的重要桥梁。该系统......
  • jsp大学生就业招聘系统6u6j7--程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,企业,企业信息,招聘信息,应聘信息,录取信息,就业信息开题报告内容一、研究背景与意义随着高等教育的普及,大学生数量逐年增加,就业市场竞争日益激烈。传统......
  • STM32与ESP32串口数据发送以及网页端数据实时显示和远程遥控
    目标:实现网页端速度实时显示以及可以通过点击页面按键达到对小车的位移方位控制。一、ESP32代码首先,需要让ESP32连接到WiFi,这样才能为后续的操作做准备。ssid="xxxxxx"password="xxxxxx"#WIFI连接defwifi_connect():wlan=network.WLAN(network.STA_IF)#STA模式......
  • NOIP 模拟赛:2024-10-12
    T1:break忘了写,于是-20pts离散化,若一个段被\(\ge3\)个线段覆盖,无解;否则答案为\(2^{cnt}\),\(cnt\)为连通块个数。T2:推式子题,注意轮数\(\le\logn\)即可。T3:T4:一种新的树的生成方式。这个数据范围,一眼状压。考虑一颗以\(u\)为根的树\(T\)怎么生成:枚举\(u\)的......
  • jsp大学生兼职系统wwl6i(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表学生,企业,工作类型,兼职招聘,投简信息,企业认证开题报告内容一、项目背景当前,随着教育成本的增加和就业压力的增大,越来越多的大学生选择在校期间参与兼职工作......
  • jsp大学生家教服务管理系统875n5(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表家教老师,求聘家长,优秀老师,家教预约,家教评价,复习链接开题报告内容一、研究背景随着教育需求的日益增长,大学生家教作为一种新兴的教育服务模式,正逐渐成为广......