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

《TCP/IP详解 卷一:协议》第5章的IPv4数据报的IHL字段解释

首先说明一下,这里并不解释整个IPv4数据报各个字段的含义,仅仅针对IHL字段作解释。

我们先看下IPv4数据报格式

对于IHL字段,

《TCP/IP详解 卷一:协议》这么解释:

IPv4数据报。头部大小可变,4位的IHL字段被限制为15个32位字(60)字节。

这种翻译让人一头雾水。我们看下英文原文:

The IPv4 datagram. The header is of variable size, limited to fifteen 32-bit words (60 bytes) by the 4-bit IHL field.

同样也一头雾水,但能看出来,中文翻译有问题,有点词不达意。

我们再看下RFC0791文档(RFC 791 - Internet Protocol)的说法:

Internet Header Length is the length of the internet header in 32 bit words, and thus points to the beginning of the data. Note that the minimum value for a correct header is 5.

好了,现在该明白了。

IHL:Internet Header Length,互联网标头长度。

IHL字段占4位,取值是可变的,范围是[5, 15],这个字段表示IPv4数据报头部长度。

最小值为十进制的5,最大值为十进制15。

取值为5,表示5*32位=160位=20字节;

取值为15,表示15*32位=480位=60字节;


 

相关文章:

《TCP/IP详解 卷一:协议》第5章的IPv4数据报的IHL字段解释

首先说明一下,这里并不解释整个IPv4数据报各个字段的含义,仅仅针对IHL字段作解释。 我们先看下IPv4数据报格式 对于IHL字段, 《TCP/IP详解 卷一:协议》这么解释: IPv4数据报。头部大小可变,4位的IHL字段…...

想去银行的背完这些软件测试面试题,你就稳了...

前言 最近呢有很多的小伙伴问我有没有什么软件测试的面试题,由于我之前一直在忙工作上的事情,没有时间整理面试题,刚好最近休息了一下,顺便整理了一些面试题,现在就把整理的面试题分享给大家,废话就不多说…...

目标检测(Object Detection): 你需要知道的一些概念

文章目录 NMS 非极大值抑制目的步骤 mAP(Mean Average Precision)步骤 Feature Pyramid Network 特征金字塔结构一阶段检测器Single-Stage Detectors"Anchor-based"的代表RetinaNetAnchor-free 的代表FCOS NMS 非极大值抑制 目的 去除网络输…...

〔001〕虚幻 UE5 发送 get、post 请求、读取 json 文件

✨ 目录 🎈 安装 varest 扩展🎈 开启 varest 扩展🎈 发送 get 请求🎈 发送 post 请求🎈 读取 json 文件🎈 安装 varest 扩展 打开 虚幻商城,搜索 varest 关键字进行检索, varest 是一个 api 调用插件,支持 http/https 请求,也支持 json 文件的读取,最关键是该…...

一条 SQL 是如何在 MyBatis 中执行的

前言 MyBatis 执行 SQL 的核心接口为 SqlSession 接口,该接口提供了一些 CURD 及控制事务的方法,另外还可以通过 SqlSession 先获取 Mapper 接口的实例,然后通过 Mapper 接口执行 SQL,Mapper 接口方法的执行最终还是委托到 SqlSe…...

《低代码指南》——维格云机器人常见报错怎么解决?

在使用维格机器人调用维格表的API过程中,可能会出现机器人执行结果未达到预期的情况,此时可能是机器人运行出现了问题;通过点击这个机器人右上角的“运行历史”可以查看运行记录,通过对运行记录的分析,可以推断出问题所在,然后进行修改。 而对于运行历史的分析,主要是针…...

哈夫曼树c语言版

一、哈夫曼树概念 哈夫曼树又称最优树给定N个权值作为N个叶子结点,构造一棵二叉树,若该树的带权路径长度达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。哈夫曼树是带权路径长度最短的树,权值较大…...

食堂系统登录报错

因为数据库没有任何用户数据,所以会报错,需要添加admin用户 D:\env\jdk1.8.0_341\bin\java.exe -XX:TieredStopAtLevel1 -noverify -Dspring.output.ansi.enabledalways -Dcom.sun.management.jmxremote -Dspring.jmx.enabledtrue -Dspring.liveBeansVie…...

uniapp原生插件之乐橙摄像机播放插件(子账号云台对讲版)

插件介绍 乐橙摄像机播放插件(云台对讲版),集成视频播放,对讲模式、云台控制 插件地址 乐橙摄像机播放插件(子账号云台对讲版) - DCloud 插件市场 超级福利 uniapp 插件购买超级福利 插件申请权限 麦克风权限(可参考示例项目&#xff…...

Http代理与socks5代理有何区别?如何选择?(一)

了解SOCKS和HTTP代理之间的区别对于优化您的在线活动至关重要,无论您是技术娴熟的个人、现代互联网用户还是企业所有者。在使用代理IP时,您需要先了解这两种协议之间的不同。 一、了解HTTP代理 HTTP(超文本传输协议)代理专门设计…...

system verilog VSCode Windows 配置简述

system verilog VSCode Windows 配置简述 本文章的目的并非完全在 VSCode 中进行 system verilog 编程,而是以 vivado 为核心,将 VSCode 作为编译器。 配置步骤 安装 ctags choco install universal-ctags如果你没有安装 chocolatey,见 i…...

Linux中的Shell编程

Linux中的Shell编程 shell编程快速入门 为什么要学习Shell编程? 1.Linux运维工程师在进行服务器集群管理时,需要编写Shell程序来进行服务器管理。 2.对于JavaEE和Python程序员来说,工作的需要,你的老大会要求你编写一些Shell脚本…...

图像特征Vol.1:计算机视觉特征度量|第二弹:【统计区域度量】

目录 一、前言二、统计区域度量2.1:图像矩特征2.1.1:原始矩/几何矩2.1.2:中心距2.1.3:归一化的中心矩2.1.4:不变矩——Hu矩2.1.5:OpenCv实现矩特征及其应用 2.2:点度量特征2.3:全局直…...

将图像的锯齿状边缘变得平滑的方法

项目背景 使用PaddleSeg 192x192 模型分割出来的目标有锯齿状边缘,想通过传统算法将这种锯齿状边缘的变得平滑,虽然试了很过方法,但是效果还是不太理想 常用的集中方法 当使用分割算法(如分水岭分割、阈值分割等)分…...

【MySQL索引与优化篇】数据库设计实操(含ER模型)

数据库设计实操(含ER模型) 文章目录 数据库设计实操(含ER模型)1. ER模型1.1 概述1.2 建模分析1.3 ER 模型的细化1.4 ER 模型图转换成数据表1. 一个实体转换成一个数据库表2. 一个多对多的关系转换成一个数据表3. 通过外键来表达1对…...

OpenCV—自动驾驶实时道路车道检测(完整代码)

自动驾驶汽车是人工智能领域最具颠覆性的创新之一。在深度学习算法的推动下,它们不断推动我们的社会向前发展,并在移动领域创造新的机遇。自动驾驶汽车可以去传统汽车可以去的任何地方,并且可以完成经验丰富的人类驾驶员所做的一切。但正确地训练它是非常重要的。自动驾驶汽…...

PostGIS轨迹分析——简化轨迹

需求 对轨迹线进行简化,并将原始轨迹上的两个特征点拉取到简化后的轨迹上 简化线 红色线是简化后的轨迹线,蓝色线是原始轨迹,有两个特征点 知识点: st_makeline函数将点连成线st_simplify简化线函数,其中第二个参数为坐标系的单位,0.002度大概代表0.002x1.11x10^5≈22…...

量化交易-应对市场闪崩

金融交易世界虽然提供了无与伦比的机会,但也并非没有陷阱。其中一个陷阱是闪崩现象,尤其是在算法交易领域。这些快速且常常无法解释的市场下跌可能会在几分钟内消除数十亿美元的价值。了解它们的起源、影响和预防策略对于参与算法交易的任何人都至关重要。本文深入研究了闪存…...

在Vue3+ElementPlus项目中使用具有懒加载的el-tree树形控件

前言 有时遇到一些需求就是在使用树形控件时,服务端并没有一次性返回所有数据,而是返回首层节点列表。然后点击展开首层节点中的某个节点,再去请求该节点的子节点列表,那么就得用上懒加载的机制了。在此以ElementPlus的树形控件为…...

高浓度工业废水处理设备有哪些

高浓度工业废水处理设备主要有以下几种: 水解酸化池:将有机废水通过水解、酸化作用,使其成为更易于生化降解的有机物。厌氧池:通过厌氧反应降解有机废水,产生沼气等可再利用资源。好氧池:将经过水解酸化或…...

别再乱算相似度了!用Python实战二元变量聚类:从Jaccard系数到病人分组

医疗数据分析实战:用Python实现基于Jaccard系数的病人症状聚类在医疗数据分析领域,如何从海量病人症状数据中发现潜在规律一直是临床研究的难点。传统方法往往依赖医生经验或简单统计,而现代数据挖掘技术为我们提供了更科学的解决方案。本文将…...

自制BLE112串口编程器:基于Bootloader的免调试器烧录方案

1. 项目概述:为BLE112模块打造一款免调试器的RS232编程器在嵌入式开发,特别是早期的蓝牙低功耗(BLE)模块应用中,我们常常会遇到一个棘手的问题:官方开发工具链的依赖和限制。以Silicon Labs(当时…...

Python基础语法:常用内置函数

round():四舍五入 # 省略 ndigits print(round(3.14)) # 输出 3(int) print(round(3.66)) # 输出 4# 指定 ndigits print(round(3.14159, 2)) # 输出 3.14(float) print(round(3.666, 2)) # 输出 3.67# …...

为什么软件开发偏爱 Linux?深度剖析 Linux 相较于 Windows 的核心优势

引言 在软件开发的世界里,一个有趣的现象是:无论是大型互联网公司的服务器集群,还是资深程序员的个人开发机,Linux 操作系统的身影无处不在。与之形成鲜明对比的是,尽管 Windows 在个人消费市场占据绝对主导地位&…...

别再死记硬背了!用5个生活化比喻彻底搞懂Linux进程的fork、exec和wait

别再死记硬背了!用5个生活化比喻彻底搞懂Linux进程的fork、exec和wait想象你正在厨房准备一顿大餐。菜谱上写着"切菜"、"炒菜"、"装盘"等步骤,但突然发现需要同时处理多道菜品——这时候,你会本能地让家人分工…...

同步带装配工艺要点与损伤防控策略

一、引言在工业精密传动系统中,盖茨同步带凭借高精度、高效率、无滑差的优势,成为自动化设备、精密机床、输送产线的核心传动部件。多数企业在运维中,普遍将同步带异常磨损、断齿、断带等故障归咎于工况恶劣或产品质量问题,却忽略…...

【Lindy营销自动化工作流终极指南】:20年实战验证的7大反脆弱性设计原则,92%企业漏掉的关键衰减阈值

更多请点击: https://intelliparadigm.com 第一章:Lindy营销自动化工作流的基本范式与历史验证 Lindy效应指出,一个事物的预期剩余寿命与其当前年龄成正比——在营销自动化领域,Lindy范式体现为:经时间检验仍被广泛采…...

CentOS 8/Stream 8系统DNF换源后,安装软件还是慢?试试这几个排查命令和优化技巧

CentOS 8/Stream 8系统DNF换源后安装缓慢的深度排查与优化指南当你已经按照教程将CentOS 8/Stream 8的DNF源切换为国内镜像,却发现软件安装速度依然不尽如人意时,这种体验确实令人沮丧。作为长期使用CentOS系统的技术专家,我完全理解这种&quo…...

Charles弱网测试六维参数实战:从丢包率到DNS延迟的精准复现

1. 为什么弱网测试不能只靠“模拟3G”按钮点一下就完事做移动端或Web前端的同学,大概率都听过这句话:“上线前跑一遍Charles,切个2G网络测下加载。”——听起来很专业,实际一查日志,发现90%的团队连Charles的Throttlin…...

从Figma设计到Python GUI:Tkinter-Designer如何重塑可视化开发范式

从Figma设计到Python GUI:Tkinter-Designer如何重塑可视化开发范式 【免费下载链接】Tkinter-Designer An easy and fast way to create a Python GUI 🐍 项目地址: https://gitcode.com/gh_mirrors/tk/Tkinter-Designer 在Python GUI开发领域&am…...