While reviewing the format document I realized that we didn't describe handling of ICMPv6 error messages. Since the 6lowpan headers may be compressed it is necessary to uncompress the original IP and transport headers before sending the ICMP error message.
Here is my proposed text for a new section 12... 12. Handling ICMPv6 messages ICMPv6 (RFC2463) is used to report errors and carry IP layer information and functions such as diagnostics. There are two groups of ICMPv6 messages: error messages and informational messages. Each message consists of a type field (if the high order bit is 0 it is an error message), a code and checksum field. These fields are followed by the ICMPv6 message body. For ICMPv6 error messages (Type <128) the message body shall contain as much of the original (offending) IP message without exceeded the minimum IPv6 MTU. As described in the preceding section (Header Compression), the original IPv6 and Transport (TCP or UDP) headers may be compressed via HC1 and HC2 encoding. So that the destination node of an ICMPv6 error message can properly process the message the source node must decompress the IPv6 and transport headers before sending the ICMPv6 message. This is necessary because the original MAC addresses and the HC1 and HC2 encoding headers will be lost and the recipient would have no ability to reconstruct the original message nor compute the proper checksum. The ICMPv6 message itself is carried inside and IPv6 packet and this packet may be transmitted over the 6LoWPAN network utilizing header compression. ICMPv6 messages that are larger than the available payload of the 6LoWPAN network will need to be fragmented. Assuming the maximum frame overhead, maximum link layer security and including a 6LoWPAN Mesh Header, Fragmentation Header and Dispatch Header, sending the uncompressed IPv6 and transport headers should still allow for 25 octets of the original packet payload. Packets using short addresses, no security, and just a 6LoWPAN Dispatch header will be able to carry 61 octets of the original packet. _______________________________________________ 6lowpan mailing list [email protected] https://www1.ietf.org/mailman/listinfo/6lowpan
