Zum Hauptinhalt springen

4. Maximum Transmission Unit (maximale Übertragungseinheit)

IEEE 802.15.4 上 IPv6 数据包的 MTU 大小为 1280 个八位字节 (Octets). 然而, 完整的 IPv6 数据包无法适应一个 IEEE 802.15.4 帧. 802.15.4 协议数据单元 (Protocol Data Units) 具有不同的大小, 取决于存在多少开销 [ieee802.15.4]. 从最大物理层数据包大小 127 个八位字节 (aMaxPHYPacketSize) 和最大帧开销 25 (aMaxFrameOverhead) 开始, 介质访问控制层 (Media Access Control Layer) 的最终最大帧大小为 102 个八位字节. 链路层安全 (Link-Layer Security) 会施加进一步的开销, 在最坏情况下 (AES-CCM-128 情况下为 21 个八位字节的开销, 而 AES-CCM-32 和 AES-CCM-64 分别为 9 和 13), 仅剩下 81 个八位字节可用. 这显然远低于 IPv6 的最小数据包大小 1280 个八位字节, 并且根据 IPv6 规范 [RFC2460] 第 5 节, muss (MUST) 在 IP 层之下的层提供分片和重组适配层 (Fragmentation and Reassembly Adaptation Layer). 这样的层在下面的第 5 节中定义.

此外, 由于 IPv6 报文头长度为 40 个八位字节, 这仅为上层协议 (如 UDP) 留下 41 个八位字节. 后者在报文头中使用 8 个八位字节, 这仅为应用数据 (Application Data) 留下 33 个八位字节. 此外, 如上所述, 需要一个分片和重组层, 它将使用更多的八位字节.

上述考虑导致以下两个观察结果:

  1. muss (MUST) 提供适配层以符合 IPv6 最小 MTU 的要求. 然而, 预计 (a) IEEE 802.15.4 的大多数应用不会使用如此大的数据包, 以及 (b) 较小的应用负载 (Application Payloads) 与适当的报文头压缩 (Header Compression) 结合将产生适合单个 IEEE 802.15.4 帧的数据包. 此适配层的理由不仅仅是为了 IPv6 合规性, 因为某些应用交换 (例如, 配置或供应 (Provisioning)) 产生的数据包大小很可能需要少量分片.

  2. 即使上述空间计算显示了最坏情况, 它确实指出报文头压缩几乎是不可避免的. 由于我们预计 IP over IEEE 802.15.4 的大多数 (如果不是全部) 应用将使用报文头压缩, 因此在下面的第 10 节中对其进行了定义.