IP报文格式大全,plus版本,网络工程师收藏!

网络东西不好懂 2024-07-24 03:33:12

互联网协议(IP,Internet Protocol)是互联网中的核心协议,它定义了数据包如何在网络间传输。IP报文(或数据包)是传输层发送到网络层的数据单元,包含了数据和控制信息。

IP报文结构

IP报文由两个主要部分组成:头部(Header)和数据(Data)。IP头部包含了路由和传输控制信息,而数据部分则是实际要传输的负载。

IP头部的基本格式

IP头部通常有20字节的基本长度,包含以下字段:

「版本」(Version):4位

版本字段占4位,表示IP协议的版本号。目前常用的版本有IPv4(版本号为4)和IPv6(版本号为6)。IPv4是当前使用最广泛的版本。

「头部长度」(IHL,Internet Header Length):4位

头部长度字段占4位,表示IP头部的长度,以32位字(4字节)为单位。最小值为5,表示20字节的头部,没有选项字段。最大值为15,表示60字节的头部,包含选项字段。

「服务类型」(Type of Service):8位

服务类型字段占8位,用于定义报文的优先级和QoS(Quality of Service)参数。包括优先级(Precedence)、延迟(Delay)、吞吐量(Throughput)、可靠性(Reliability)等子字段。

「总长度」(Total Length):16位

总长度字段占16位,表示整个IP报文(头部+数据)的长度,以字节为单位。最大值为65535字节。

「标识」(Identification):16位

标识字段占16位,用于唯一标识IP报文,尤其在进行分片传输时,所有分片的标识字段相同,便于接收方重组报文。

「标志」(Flags):3位

标志字段占3位,用于控制和标记分片。包括DF(Don't Fragment)位和MF(More Fragments)位。DF位指示不允许分片,MF位指示是否有更多分片。

「分片偏移」(Fragment Offset):13位

分片偏移字段占13位,表示当前分片相对于原始报文起始位置的偏移量,以8字节为单位。

「生存时间」(TTL,Time to Live):8位

生存时间字段占8位,表示报文在网络中的最大存活时间。每经过一个路由器,该值减1,减为0时,报文被丢弃,防止数据包在网络中无限循环。

「协议」(Protocol):8位

协议字段占8位,表示封装在IP报文中的上层协议,如TCP(值为6)、UDP(值为17)等。

「头部校验和」(Header Checksum):16位

头部校验和字段占16位,用于检验IP头部的完整性。发送方计算并填入该值,接收方重新计算校验和并与该字段进行比较,若不一致则报文出错。

「源IP地址」(Source Address):32位

源IP地址字段占32位,表示发送报文的主机IP地址。

「目的IP地址」(Destination Address):32位

目的IP地址字段占32位,表示接收报文的主机IP地址。

此外,根据具体应用需求,IP头部还可以包含选项(Options)字段,增加头部的长度和复杂度。

IP头部选项字段

IP头部选项字段是可选的,用于扩展IP报文功能。常见的选项有:

安全性选项:指定报文的安全级别。时间戳选项:记录报文经过的路由器的时间。路由记录选项:记录报文经过的路由器地址。松散源路由选项:指定报文必须经过的中间路由器,但不强制顺序。严格源路由选项:指定报文必须按顺序经过的中间路由器。选项字段格式

每个选项字段由选项类型(1字节)、选项长度(1字节)和选项数据(可变长度)组成。选项类型的最高两位用于控制选项的处理方式(复制到所有分片、仅限首片等)。

IP报文格式大全

华为官方出了一个网站,记录了IP报文格式大全,很全面:

https://support.huawei.com/enterprise/zh/doc/EDOC1100174722

不过友好性不高,对此瑞哥特地整理了一下,大家可以直观的查看,作为学习和查阅都是不错的选择!

本文档支持点击协议地图直接跳转,比如这里我们在协议地图上点击“UDP”:

文档下载

本公众号后台回复暗号 “「文档」”

0 阅读:0

网络东西不好懂

简介:感谢大家的关注