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

IPv4头部和IPv6头部

  IPv4和IPv6是互联网协议(IP)中的两个主要版本,它们在数据包头部(Header)结构上存在显著差异。以下是IPv4头部和IPv6头部的主要结构和区别:

IPv4头部结构

  IPv4(Internet Protocol Version 4)的头部较为复杂,长度可变,最小为20字节,最大为60字节。IPv4头部包含以下主要字段:

  1. Version(版本号):4位,表示协议版本号,IPv4的值为4。
  2. Header Length(头部长度):4位,IHL表示IPv4头部的长度,单位为32位字(即4字节)。
  3. Differentiated Services Code Point(区分服务字段,DSCP):用于标识服务类别(服务等级),实现基于优先级的流量控制和QoS(服务质量)。不同的DSCP值定义不同的流量优先级,如AF(Assured Forwarding,保证转发)和EF(Expedited Forwarding,加速转发)。
    常见DSCP值:
  • 000000: Best Effort(默认,尽力而为服务)
  • 001010: AF11(保证转发1类,低)
  • 101110: EF(加速转发,通常用于实时通信)
  1. Explicit Congestion Notification(显示拥塞通知,ENC):ECN位用于标记网络中的拥塞情况,支持主动拥塞通知而不丢弃数据包。
  • 00: Non-ECN Capable Transport(不支持ECN)
  • 01: ECN Capable Transport (ECT(0))(支持ECN,未检测到拥塞)
  • 10: ECN Capable Transport (ECT(1))(支持ECN,未检测到拥塞)
  • 11: Congestion Experienced(检测到拥塞)
  1. Total Length(总长度):16位,表示整个IP数据包(包括头部和数据部分)的总长度,单位为字节,所以IPv4数据报的最大长度(包括头部)为65535字节。通过这个字段和IHL字段,可以知道数据报的数据部分从哪里开始,以及他的场长度。
  2. Identification(标识):16位,用于标识分片的数据包。
  3. Flags(标志位):3位,包含用于分片的标志信息,如“不分片”和“更多分片”。
  4. Fragment Offset(分片偏移量):13位,表示数据包分片后每片在原始数据中的位置。
  5. Time to Live(生存时间,TTL):8位,表示数据包可以在网络中传输的最大跳数。即一个数据报可经过的路由器数量上限。发送方将该值初始化为某个值(一般建议64),每台路由器在转发数据报时将该值减1。当这个字段值达到0时,该数据报被丢弃,并使用一个ICMP消息通知发送方。
  6. Protocol(协议):8位,指定上层协议类型,表示数据报有效载荷部分的数据类型。 如TCP(6)或UDP(17)。
  7. Header Checksum(头部校验和):16位,用于验证IPv4头部的完整性。初始值设置为0,之后对头部字段计算16位二进制反码和。
  8. Source Address(源地址):32位,表示发送端的IPv4地址。
  9. Destination Address(目的地址):32位,表示接收端的IPv4地址。
  10. Options(选项):可选字段,长度可变,用于携带额外的控制信息。

IPv6头部结构

  IPv6(Internet Protocol Version 6)的头部比IPv4简单,固定为40字节,减少了处理开销。IPv6头部包含以下主要字段:

  1. Version(版本号):4位,表示协议版本号,IPv6的值为6。
  2. Traffic Class(流量类别):8位,用于定义数据包的优先级和QoS。
  3. Flow Label(流标签):20位,用于标识需要特殊处理的数据流(如实时服务)。
  4. Payload Length(有效载荷长度):16位,表示数据部分的长度(不包含头部),单位为字节。
  5. Next Header(下一个头部):8位,指示数据包中下一个扩展头部或上层协议类型(如TCP或UDP)。
  6. Hop Limit(跳数限制):8位,类似于IPv4中的TTL字段,表示数据包可以传输的最大跳数。
  7. Source Address(源地址):128位,表示发送端的IPv6地址。
  8. Destination Address(目的地址):128位,表示接收端的IPv6地址。

IPv4与IPv6头部的主要区别

  • 地址长度:IPv4使用32位地址,IPv6使用128位地址。
  • 头部长度:IPv4头部长度可变(20-60字节),IPv6头部长度固定为40字节。
  • 分片处理:IPv4头部包含分片相关字段(标识、标志位、分片偏移量),IPv6将分片处理移至扩展头部。
  • 校验和:IPv4头部包含校验和字段,IPv6取消了校验和,减轻了路由器处理负担。
  • 扩展性:IPv6通过扩展头部简化了基本头部,增强了灵活性,而IPv4需要通过“选项”字段扩展功能。
      IPv6头部结构更加简洁,设计目标是提高效率并简化路由设备的处理。IPv4则更为复杂,主要为了适应早期网络环境下的灵活需求。
http://www.lryc.cn/news/465942.html

相关文章:

  • 从零开始手把手带你训练LLM保姆级教程,草履虫都能学会!零基础看完这篇就足够了~
  • strcat函数追加字符串
  • 每月洞察:App Store 和 Google Play 的主要更新
  • 【python openai function2json小工具】
  • super()和super().__init__()的解释
  • 【C++】—— 多态(下)
  • idea 2023 配置 web service
  • MYSQL数据库SQL+DQL
  • Java中的异常Throwable
  • Day4顺序表c++代码实现
  • 将图片转换成base64格式
  • 征服ES(ElasticSearch)的慢查询实战
  • 如何才能从普通程序员转行AI大模型?
  • 【番外】软件设计师中级笔记关于数据库技术更新笔记问题
  • 【代码】约瑟夫问题——故事背景
  • 什么是事件冒泡和事件捕获
  • 高端优质建站公司具备哪些优势?2024高端建站公司哪家好
  • word删除空白页 | 亲测有效
  • YashanDB学习-服务启停
  • 在未排序的整数数组找到最小的缺失正整数
  • TCP连接管理机制:三次握手四次挥手
  • 1022. 宠物小精灵之收服
  • 人工智能生成内容(AI-Generated Content)
  • 深度学习:强化学习(Reinforcement Learning, RL)详解
  • C语言笔记20
  • 基于SSM+微信小程序的房屋租赁管理系统(房屋2)
  • selenium案例——爬取哔哩哔哩排行榜
  • HTML5教程(三)- 常用标签
  • 【HCIE-Datacom考试战报】2024-08-21 深圳 SRv6
  • 【京准电钟】“安全卫士”:卫星时空安全隔离防护装置