网络层重点协议-IP协议(结构分析)

IP协议数据报格式

一.4位版本号

用来表示IP协议的版本,现有的IP协议只有两个版本IPv4和IPv6

二.4位首部长度

IP协议数据报报头的长度

三.8位服务类型

3位优先权字段(已经弃用),4位TOS字段,和1位保留 字段(必须置为0)。4位TOS分别表示:最小延时(转递一个数据报的时间尽可能短),最大吞吐量(一定时间内传输的数据量尽可能多),最高可靠性(在传输过程中最不容易丢包),最小成本(在传输过程中消耗的硬件资源最低)。 这四者相互冲突,只能选择一个。

四.16位总长度

IP数据报整体的长度,这里的总长度只是限制了一个IP数据报的长度,但IP协议自身支持拆包组包机制,当IP数据报需要携带比较长的数据时,IP协议会自动的把一个数据报拆分成多个数据报,接收方在接收时会将多个数据报合并成一个数据报

由16位总长度和4位首部长度相减就可以得到IP数据报载荷的长度,即UDP/TCP数据报的长度

五.16位标识

由于IP协议自身支持拆包组包机制,接收方在合并数据报的时候就需要知道哪些数据报是一个数据报中的内容需要合并,可以通过16位标识这个属性判断

16位标识相同的数据报就说明是一个数据报的内容,就可以进行合并

六.3位标志字段

第一位保留(保留的意思是现在不用,但是还没想好说不定以后要用到),还有一位表示是否允许拆包

七.13位片偏移

在合并数据报的时候要按先后顺序合并,13位片偏移这个属性就代表了包的先后顺序,前一个包的片偏移较小,后一个包的片偏移较大

八.8位生存时间

类似于一个计数器,表示数据报在网络中的最大转发次数,一般是64,避免数据报在网络中被无限的转发,每当数据报被转发一次就减一

九.8位协议

表示上层协议的类型

十.首部校验和

用于在传输IP数据报时校验IP数据报的报头是否传递正确,不用校验载荷,因为载荷是TCP/UDP数据报,里面有"校验和"属性,会自己检查传输是否正确,不需要IP协议检查

关于TCP/UDP数据报推荐看TCP数据报结构分析(面试重点)UDP数据报结构分析(面试重点)

十一.32位源IP地址

表示发送方的IP地址

十二.32位目的IP地址

表示接收方的IP地址

相关推荐
扶疏52513 分钟前
keepalived及lvs
网络·lvs
MartinYeung521 分钟前
[论文学习]AgentDojo:用于评估LLM智能体提示注入攻击与防御的动态环境
网络·学习
流浪0011 小时前
Linux系统22:——文件(六):目标文件与ELF深度解析:从编译到加载的全景揭秘
linux·运维·服务器
白狐_7981 小时前
【408计算机网络|第01章|408-CN-01】计算机网络概述与体系结构:性能指标、分层、OSI与TCP/IP
网络协议·tcp/ip·计算机网络
白狐_7982 小时前
【408计算机网络|第03章·上|408-CN-03A】数据链路层(上):组帧、差错控制与可靠传输
网络·网络协议·计算机网络
其实防守也摸鱼2 小时前
镜像校验完成iso完整操作流程(Windows 环境,适配 Ubuntu 22.04 / 24.04)
linux·服务器·windows·学习·ubuntu·教程
老赵的博客2 小时前
工控机之udp远程控制
网络·网络协议·udp
努力努力再努力wz2 小时前
【分布式系统与 RPC 框架系列】从单机瓶颈到远程调用:一文理解分布式架构与 RPC 原理
linux·网络·c++·分布式·网络协议·rpc·架构
沉默de荒年 对月影成2 小时前
机房断电搞崩服务器 | 人大金仓 V8 全量备份跨实例完整恢复实录
运维·服务器·oracle
GIS数据转换器3 小时前
智慧灌区管理平台
大数据·服务器·网络·数据库·人工智能·生活