IP 协议的相关特性

P(Internet Protocol,网际协议)是 TCP/IP 协议族中的核心协议之一,主要负责在网络中对数据包进行寻址和路由。以下是 IP 协议的主要特性:

一、IP 协议头部结构

  • IPv4(重点)

IPv4 头部最小为 20 字节 ,最多可达 60 字节(含选项字段)。结构如下(按 32 位字对齐):

字段(位数) 含义 说明
Version (4 bits) 4位版本号 指定 IP 协议的版本,对于 IPv4来说,就是 4
IHL (Internet Header Length, 4 bits) 4位首部长度 表示 IP 头部的长度,也就是 length*4 的字节数。4 bit表示的最大的数字是 15,因此 IP 头部的最大长度是 60 字节
Type of Service / DSCP + ECN (8 bits) 8位服务类型 / 区分服务 3 位优先权字段(已经弃用)、4 位 TOS 字段、1 位保留字段(必须置为0)。4 位 TOS 分别表示:最小延迟、最大吞吐量、最高可靠性、最小成本。这四者相互冲突,只能选择一个。对于 ssh/telnet 这样的应用程序,最小延迟比较重要;对于 ftp 这样的程序,最大吞吐量比较重要。
Total Length (16 bits) 16位总长度 整个 IP 数据报长度(首部 + 数据),单位为 字节,最大 65535 字节
Identification (16 bits) 16位标识 用于标识属于同一数据报的分片,便于重组。唯一的标志主机发送的报文,如果IP报文在数据链路层被分片了,那么每一个片里面的这个 id 都是一样的。
Flags (3 bits) 3位标志位 • 第 1 位:保留(必须为 0,保留的意思是现在不用,但是以后说不定要用) • 第 2 位(DF):如果是 1 表示禁止分片,这时候如果报文长度超过 MTU,IP模块就会丢弃报文。 • 第 3 位(MF):表示 "更多分片",如果分片了的化,最后一个分片置为 1, 其他是 0.类似一个结束标志
Fragment Offset (13 bits) 13位分片偏移 当前分片在原始数据报中的位置(以 8 字节 为单位)
Time to Live (TTL, 8 bits) 8位生存时间 每经过一个路由器减 1,为 0 时丢弃并发送 ICMP 超时报文,防止无限路由循环
Protocol (8 bits) 8位上层协议 指示载荷使用的协议: • 1 = ICMP • 6 = TCP • 17 = UDP • 其他见 IANA 协议号列表
Header Checksum (16 bits) 16位首部校验和 利用 CRC 进行校验仅校验 IP 首部(不包括数据,来鉴别头部是否损坏,每跳重新计算(因 TTL 改变)
Source IP Address (32 bits) 32位源 IP 地址 发送方的 IPv4 地址
Destination IP Address (32 bits) 32位目的 IP 地址 接收方的 IPv4 地址
Options (0--40 bytes, 可选) 选项字段 如记录路由、时间戳、严格源路由等(很少使用,影响性能)
Padding 填充 保证首部是 32 位对齐
  • IPv6

Pv6 简化了头部结构,固定为 40 字节,提高路由效率。不再包含校验和和分片字段(分片由扩展头处理)。

字段(位数) 含义 说明
Version (4 bits) 版本号 固定为 6
Traffic Class (8 bits) 流类别 类似 IPv4 的 ToS,用于 QoS(前 6 位 DSCP,后 2 位 ECN)
Flow Label (20 bits) 流标签 用于标识属于同一"流"的数据包,支持实时业务(如 VoIP)
Payload Length (16 bits) 有效载荷长度 不包括 IPv6 首部,仅数据 + 扩展头长度(最大 65535 字节)
Next Header (8 bits) 下一首部 类似 IPv4 的 Protocol 字段: • 若无扩展头,则指示上层协议(TCP/UDP/ICMPv6) • 若有扩展头,则指向下个扩展头类型
Hop Limit (8 bits) 跳数限制 等同于 IPv4 的 TTL,每跳减 1,为 0 则丢弃
Source Address (128 bits) 源 IPv6 地址 发送方地址
Destination Address (128 bits) 目的 IPv6 地址 接收方地址

二、无连接(Connectionless)

  • IP 协议在发送数据前不需要建立连接

  • 每个数据包(IP数据报)独立处理,可能通过不同路径到达目的地

三、不可靠(Unreliable)

  • IP 协议不保证数据包的可靠传输

  • 不需要提供确认、重传、排序或错误恢复机制

  • 若需要实现可靠性,需依赖上层协议(如 TCP)

四、尽力而交互(Best-effort Delivery)

  • IP 尽最大努力将数据包送达目标,但不保证成功。

  • 如果发生丢包、乱序或损坏,IP本身不会纠正

五、支持异构网络连

  • IP可以在各种物理网络(以太网、Wi-Fi、PPP等)上传输数据

  • 通过统一的 IP 地址格式和封装机制,实现不同网络之间的互联互通

六、使用 IP 地址进行逻辑寻址

  • 每台主机分配一个唯一的 IP 地址(IPv4 或 IPv6)

  • 路由器根据目的 IP 地址决定转发路径

七、分片与重组(Fragmentation & Reassembly)

  • 当数据包大小超过链路 MTU(最大传输单元时),IP 可对其进行分片

  • 分片在目的主机处重组(IPv4),而 IPv6 通常避免中间节点分片,由源端处理。

八、协议版本

  • IPv4: 32位地址,约 43 亿地址空间,广泛使用

  • IPv6:128位地址,极大扩展地址空间,增强安全性、自动配置等

九、支持广播、组播和单播

  • 单播(Unicast):一对一通信

  • 广播(Broadcast):一对全体(限于本地网络,IPv4 支持,IPv6 不支持)

  • 组播(Multicast):一堆一组(特定组成员),提高效率。

相关推荐
安科士andxe7 小时前
深入解析|安科士1.25G CWDM SFP光模块核心技术,破解中长距离传输痛点
服务器·网络·5g
YJlio9 小时前
1.7 通过 Sysinternals Live 在线运行工具:不下载也能用的“云端工具箱”
c语言·网络·python·数码相机·ios·django·iphone
CTRA王大大10 小时前
【网络】FRP实战之frpc全套配置 - fnos飞牛os内网穿透(全网最通俗易懂)
网络
儒雅的晴天10 小时前
大模型幻觉问题
运维·服务器
testpassportcn10 小时前
AWS DOP-C02 認證完整解析|AWS DevOps Engineer Professional 考試
网络·学习·改行学it
通信大师11 小时前
深度解析PCC策略计费控制:核心网产品与应用价值
运维·服务器·网络·5g
Tony Bai12 小时前
告别 Flaky Tests:Go 官方拟引入 testing/nettest,重塑内存网络测试标准
开发语言·网络·后端·golang·php
消失的旧时光-194313 小时前
从 0 开始理解 RPC —— 后端工程师扫盲版
网络·网络协议·rpc
默|笙13 小时前
【Linux】fd_重定向本质
linux·运维·服务器
叫我龙翔14 小时前
【计网】从零开始掌握序列化 --- JSON实现协议 + 设计 传输\会话\应用 三层结构
服务器·网络·c++·json