【问题标题】:Pseudo header fields for IPV6 packetsIPV6 数据包的伪标头字段
【发布时间】:2013-07-06 16:28:08
【问题描述】:

我正在计算 IPV6 数据包的校验和值。

在扩展头的情况下,如何计算伪地址的目标地址和长度字段的值?

【问题讨论】:

    标签: c network-programming ipv6


    【解决方案1】:

    RFC 2460 section 8.1 指定了所有这些。一些亮点:

    当使用更改目标地址的扩展标头时确定伪标头目标地址时,您使用收件人将看到的目标地址:

    如果 IPv6 数据包包含路由标头,则目标地址 伪标头中使用的是最终目的地的标头。在 始发节点,该地址将在 路由头;在收件人处,该地址将在 IPv6 标头的目标地址字段。

    在确定上层数据包长度时,您不计算任何扩展标头,只计算最终(上层)标头及其数据:

    伪报头中的上层数据包长度是 上层报头和数据(例如,TCP 报头加上 TCP 数据)。 一些上层协议携带自己的长度信息(例如, UDP 头中的 Length 字段);对于此类协议,即 伪标头中使用的长度。其他协议(如 TCP)可以 不携带自己的长度信息,在这种情况下使用的长度 在伪报头中是来自 IPv6 报头的有效负载长度,减去 IPv6 标头之间存在的任何扩展标头的长度 和上层header。

    【讨论】:

      猜你喜欢
      • 2012-10-26
      • 1970-01-01
      • 2012-04-08
      • 2023-03-21
      • 2021-12-02
      • 2013-01-23
      • 2015-12-17
      • 1970-01-01
      • 2018-01-24
      相关资源
      最近更新 更多