IP的首部长度,总长度,标识,地址
1. 版本
版本字段占4bit,指IP协议的版本。通信双方使用的IP协议的版本必须一致。版本有IPV4 和IPV6
2. 首部长度
首部长度字段占4bit,可表示的最大数值是15个单位(一个单位为4字节),因此IP的首部长度的最大值是60字节。当IP分组的首部长度不是4字节的整数倍时,必须利用最后一个填充字段加以填充。这样,数据部分永远在4字节的整数倍时开始,这样在实现起来会比较方便。首部长度限制为60字节的缺点是有时(如采用源站选路时)不够用。但这样做的用意是要用户尽量减少额外的开销。
3. 服务类型
服务类型字段共8bit长,用来获得更好的服务,其意义见图6的上面部分所示。
服务类型字段的前三个比特表示优先级,它可使数据报具有8个优先级中的一个。
第4个比特是D比特,表示要求有更低的时延。第5个比特是T比特,表示要求有更高的吞吐量。第6个比特是R比特,表示要求有更高的可靠性,即在数据报传的过程中,被结点交换机丢弃的概率要更小些。第7个比特是C比特,是新增加的,表示要求选择价格更低廉的路由。最后一个比特目前尚未使用。
4. 总长度
总长度指首部和数据之和的长度,单位为字节。总长度字段为16bit,因此数据报的最大长度为65535字节。这在当前是够用的。
当很长的数据报要分段进行传送时,“总长度”不是指未分段前的数据报长度,而是指分段后每个段的首部长度与数据长度的总和。
5. 标识
标识字段的意义和OSI的IPDU中的数据单元标识符的意义一样,是为了使分段后的各数据报段最后能准确地重装成为原来的数据报。请注意:这里的“标识”并没有顺序号的意思,因为IP是无连接服务,数据报不存在按序接收的问题。
6. 标志
标志字段占3bit。目前只有前两个比特有意义。
标志字段中的最低位记为MF(More Fragment)。MF=1即表示后面还有分段的数据报。MF=0表示这已是若干数据报段中的最后一个。
标志字段中间的一位记为DF(Don’t Fragment)。只有当DF=0时才允许分段。
7. 段偏移
段偏移字段的意义和OSI的IPDU中规定的相似,只是表示的单位不同。这里是以8个字节为偏移单位。可见IP数据报的段偏移字段(13bit长)和OSI的IPDU的段偏移字段(16bit长)是相当的。
8. 寿命
寿命字段记为TTL(Time To Live),其单位为秒。寿命的建议值是32秒。但也可设定为3-4秒,或甚至255秒。
9. 协议
协议字段占8bit,它指出此数据携带的运输层数据是使用何种协议,以便目的主机的IP层知道应将此数据报上交给哪个进程。常用的一些协议和响应的协议字段值(写在协议后面的括弧中)是:UDP(17),TCP(6),ICMP(1),GGP(3),EGP(8),IGP(9),OSPF(89),以及ISO的TP4(29)。
10. 首部检验和
此字段只检验数据报的首部,不包括数据部分。不见眼数据部分是因为数据报每经过一个结点,结点处理机就要重新计算一下首部检验和(一些字段,如寿命、标志、段偏移等都可能发生变化)。如将数据部分一起检验,计算的工作量就太大了。
首部校验和(16bit)字段只校验数据报的首部,不包括数据部分。这里不采用CRC检验码而采用简单的计算方法
实现对IP分组首部的差错检测
计算校验和时,该字段置全0
采用反码算数运算求和,和的反码作为首部校验和字段
逐跳计算、逐跳校验
11. 地址
源站IP地址字段和目的站IP地址字段都各占4字节。
IP的首部长度,总长度,标识,地址相关推荐
- 网络协议 一 网络层( 版本、首部长度、区分服务、总长度、 标识、标志、片偏移生存时间、协议、首部校验和)
目录 网络层 版本,首部长度,区分服务 总长度 标识.标志 [实践]ping 的几个用法.wireshark抓包 片偏移 生存时间 [实践]根据TTL追踪经过路由器 协议,首部校验和 [实践]Wire ...
- 网络协议从入门到底层原理(4)网络层(版本、首部长度、区分服务、总长度、 标识、标志、片偏移生存时间、协议、首部校验和)
网络协议从入门到底层原理 网络层 网络层首部 - 版本.首部长度.区分服务 网络层首部 - 总长度 网络层首部 - 标识.标志 [实践]ping 的几个用法.wireshark抓包 网络层首部 - 片 ...
- IP数据报首部检验和的详细计算过程
目录 IP数据报检验的计算过程 引入 检验原理 题目案例及分析 题目要求 分析 计算过程图解 总结 IP数据报检验的计算过程 本篇文章只介绍IP数据报的检验过程,不对原理做过多讲解.内容通俗易懂,请放 ...
- 关于IP协议首部长度的计算
看到<TCP/IP详解>IP协议中提到IP数据报首部长度是一个4比特字段,因此首部最长是60个字节.最小是20个字节.那么这个怎么算的呢? 我的理解是这样的 先看下IP数据报报格式及首部中 ...
- 【计算机网络】——习题解析:UDP 用户数据报的首部十六进制表示是:06 32 00 45 00 1C E2 17,试求源端口、目的端口、 用户数据报的总长度、数据部分长度等
UDP 用户数据报的首部十六进制表示是:06 32 00 45 00 1C E2 17,试求源端口.目的端口. 用户数据报的总长度.数据部分长度.这个用户数据报是从客户发送给服务器发送给客户?使用 U ...
- 一个UDP用户数据报的首部的十六进制表示是06 32 00 45 00 1C E2 17。求源端口、目的端口、用户数据报总长度、数据部分长度。
在UDP首部中 源端口占2个字节,即06 32 ,化为十进制是1586.(下面括号外数字代表进制) (06 32)16=(00000110 00110010)₂=2+16+32+512+1024=(1 ...
- arcgis 分区 属性值_如何使用ArcGIS计算分区河流(管线)总长度
1. 概述 已知有一个河流的线图层(HydroL)和多个不同用地类型的图层(WoodyA表示绿化用地,ResidentialA表示公共用地,BoundaryA表示其他类型用地),目标是获得每个分区内的 ...
- arcgisengine计算线要素总长度_ArcGIS |如何利用一个工具快速计算城市道路网密度...
格网统计是为了从更精细的角度定量分析各种地理要素在空间上的分布特征,通常选择格网为研究单元,统计地理要素的一种手段.通俗的讲,使用四边形或者六边形组成的格网统计各类空间指标.它的使用范围相当广泛,比如 ...
- 如何使用ArcGIS计算分区河流(管线)总长度
1. 概述 已知有一个河流的线图层(HydroL)和多个不同用地类型的图层(WoodyA表示绿化用地,ResidentialA表示公共用地,BoundaryA表示其他类型用地),目标是获得每个分区内的 ...
最新文章
- kalivm 虚拟机访问win文件夹_利用vmware搭建属于自己的win虚拟环境
- dnet 并行编程学习总结
- MY_Log,无缝替换原生Log,支持日志输出到文件、FirePHP
- python qq模块_Python的nonebot模块如何获取命令发出者的QQ?
- 复盘从一个监控主机到核心路由沦陷
- Matlab怎样将传递函数转换成差分方程
- HADOOP实践101:在Hadoop集群中添加机器和删除机器
- matlab调用库函数,Matlab调用函数的详细操作
- php查找二维数组值,根据二维数组某个字段的值查找数组
- 【李宏毅2020 ML/DL】P23 Transformer | Self-attention, Multi-head Self-attention
- 检查用户是否有访问权限
- 题目2-括号配对问题
- MVC中使用Tuple完成匿名类数据存储
- PyQt实现读取文件内容并绘制曲线
- Python之数据容器
- 移动版rtx 4060和RX7600M XT差距 rtx4060和RX7600M XT参数对比
- 如何用建木CI一键部署Java构件到Nexus
- 掌握“盘带技术”——比较磁盘存储和磁带存储
- php随机生成汉字、随机字符串
- python2练习题——迭代出1~100以内8的倍数