One document matched: draft-oflynn-6lowpan-icmphc-00.txt
6lowpan C. O'Flynn
Internet-Draft Atmel Corporation
Intended status: Informational July 26, 2010
Expires: January 27, 2011
ICMPv6/ND Compression for 6LoWPAN Networks
draft-oflynn-6lowpan-icmphc-00
Abstract
Compression for ICMPv6 Messages, specifically designed for
6lowpan-nd.
Status of this Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on January 27, 2011.
Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
O'Flynn Expires January 27, 2011 [Page 1]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
Table of Contents
1. Background . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. ICMPv6 Compression Format . . . . . . . . . . . . . . . . . . 3
3. LOWPAN_ICMPHC Encoding . . . . . . . . . . . . . . . . . . . . 3
3.1. GENERIC LOWPAN_ICMPHC Encoding . . . . . . . . . . . . . . 4
3.2. NON-GENERIC LOWPAN_ICMPHC Encoding . . . . . . . . . . . . 4
3.2.1. A and B bit usage . . . . . . . . . . . . . . . . . . 5
4. LOWPAN_ICMPOC Encoding . . . . . . . . . . . . . . . . . . . . 6
4.1. HIJK Usage . . . . . . . . . . . . . . . . . . . . . . . . 7
5. Examples of Compressed/Uncompressed ICMPv6 Messages . . . . . 9
5.1. RFC2463 Messages . . . . . . . . . . . . . . . . . . . . . 10
5.1.1. Destination Unreachable Message . . . . . . . . . . . 10
5.1.2. Time Exceeded Message . . . . . . . . . . . . . . . . 10
5.2. RFC4861 Messages . . . . . . . . . . . . . . . . . . . . . 11
5.2.1. Router Solcitation Message . . . . . . . . . . . . . . 11
5.2.2. Router Advertisement Message . . . . . . . . . . . . . 12
5.2.3. Neighbor Solicitation Message . . . . . . . . . . . . 12
5.2.4. Neighbor Advertisement Message . . . . . . . . . . . . 14
5.3. RFC4861 Options . . . . . . . . . . . . . . . . . . . . . 15
5.3.1. Source/Target Link-Layer Address . . . . . . . . . . . 15
5.3.2. Prefix Information . . . . . . . . . . . . . . . . . . 16
5.3.3. MTU Header . . . . . . . . . . . . . . . . . . . . . . 17
5.3.4. Redirect Header . . . . . . . . . . . . . . . . . . . 18
5.4. 6lowpan-nd Options . . . . . . . . . . . . . . . . . . . . 19
5.4.1. Address Registration Option . . . . . . . . . . . . . 19
5.4.2. 6LoWPAN Context Prefix Option . . . . . . . . . . . . 20
5.4.3. Authoritive Border Router . . . . . . . . . . . . . . 21
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 22
7. Security Considerations . . . . . . . . . . . . . . . . . . . 22
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 22
9. Informative References . . . . . . . . . . . . . . . . . . . . 22
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 23
O'Flynn Expires January 27, 2011 [Page 2]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
1. Background
This document was written VERY quickly. It does not yet go over
exhaustively how each option works, see the examples (Section 5)
section for more details.
2. ICMPv6 Compression Format
The ICMPv6 compression has two parts. The first is the ICMPv6 header
compression, the second is the ICMPv6 options compression. In
6lowpan-hc-07, the Next Header Compression (NHC) field is shown as
fitting in as follows:
+-------------+-------------+-------------+-----------------+--------
| LOWPAN_IPHC | In-line | LOWPAN_NHC | In-line Next | Payload
| Encoding | IP Fields | Encoding | Header Fields |
+-------------+-------------+-------------+-----------------+--------
This is thus extended, where the LOWPAN_NHC is just the LOWPAN_ICMPHC
field. However it may additionally have LOWPAN_ICMPOC (OC = Option
Compression) fields after it. As an ICMPv6 message may have multiple
options, each option that is compressed will have a LOWPAN_ICMPOC
header. Thus a buffer with two ICMPv6 options would look like:
+-------------+-------------+-------------+-----------------+--
| LOWPAN_IPHC | In-line |LOWPAN_ICMPHC| In-line ICMPv6 |
| Encoding | IP Fields | Encoding | Header Fields |
+-------------+-------------+-------------+-----------------+--
--------------+---------------+---------------+---------------+-----
LOWPAN_ICMPOC | Inline Option | LOWPAN_ICMPOC | Inline Option |Payload
Encoding #1 | Fields for #1 | Encoding #2 | Fields for #2 |
--------------+---------------+---------------+---------------+-----
The payload could be additional ICMP data, or could be uncompressed
ICMP options.
3. LOWPAN_ICMPHC Encoding
The LOWPAN_ICMPHC header has two forms. The first is a 'generic'
compression format, which is a single octet. The second is a
specific form which compresses certain frequently occuring ICMPv6
messages better than the generic format.
The format is as follows:
O'Flynn Expires January 27, 2011 [Page 3]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
0 1 2 3 4 5 6 7
+---+---+---+---+---+---+---+---+
| 1 | 1 | 1 | 1 | 1 | G | X | X |
+---+---+---+---+---+---+---+---+
G: Generic Compress Format Flag:
1: LOWPAN_ICMPHC is a GENERIC format
0: LOWPAN_ICMPHC is a NON-GENERIC format
XX: Depends on the GENERIC flag. See two sections below.
3.1. GENERIC LOWPAN_ICMPHC Encoding
The format is as follows:
0 1 2 3 4 5 6 7
+---+---+---+---+---+---+---+---+
| 1 | 1 | 1 | 1 | 1 | 1 | R | C |
+---+---+---+---+---+---+---+---+
R: Reserved Octets Elided:
1: 4 Octets have been elided, at an offset of 4 octets from the
start of the ICMPv6 Header.
0: No Change
C: Code Elided:
1: Code field in the ICMPv6 header has been elided, and is zero.
0: No Change
The GENERIC form takes advantage of two factors: many ICMPv6 messages
have 4 reserved octets at a specific location, and many ICMPv6
messages do not use the CODE field. When using the GENERIC ICMPHC
there is NO option compression used. Option compression is only
possible when using the NON-GENERIC ICMP compression.
3.2. NON-GENERIC LOWPAN_ICMPHC Encoding
The format is as follows:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| 1 | 1 | 1 | 1 | 1 | 0 | RSV | TYPE | A | B | NUMOPTS |
O'Flynn Expires January 27, 2011 [Page 4]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
RSV: Reserved Field, Do not use
TYPE: Type of ICMPv6 Message to Follow
000: RESERVED.
001: RFC4861 Router Solicitation
010: RFC4861 Router Advertisement
011: RFC4861 Neighbor Solicitation
100: RFC4861 Neighbor Advertisement
101: RFC4861 Redirect
A: Usage depends on TYPE field
B: Usage depends on TYPE field
NUMOPTS: Number of ICMPv6 Compressed Options that will follow. Used
so 6lowpan-icmphc knows when to stop processing!
3.2.1. A and B bit usage
TYPE = Router Solicitation
A: Not Used
B: Not Used
TYPE = Router Advertisement
A: Reachable Time Compression:
1: Reachable time field elided. Assume reachable time is zero.
0: Reachable time field inlined.
B: Retrans Time Compression:
1: Retrans time field elided. Assume retrans time is zero.
0: Retrans time field inlined.
TYPE = Neighbor Solicitation or Neighbor Advertisement. In this case
O'Flynn Expires January 27, 2011 [Page 5]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
A and B are combined to form a 2-bit field AB:
00: No changes to TARGET ADDRESS field, included in-line.
01: TARGET ADDRESS field is elided. Target address is same as
destination IPv6 address from IPv6 Header.
10: TARGET ADDRESS field is elided. Target address is same as
source IPv6 address from IPv6 Header.
11: Reserved.
TYPE = Redirect
A: TARGET ADDRESS field compression:
1: Target address field elided, assume target address is same
as destination address field.
0: Target address field inlined.
B: Not used
4. LOWPAN_ICMPOC Encoding
As mentioned option compression is only possible with NON-GENERIC
ICMPHC format.
The option compression format is as follows:
0 1 2 3 4 5 6 7
+---+---+---+---+---+---+---+---+
| OPTTYPE | H | I | J | K |
+---+---+---+---+---+---+---+---+
OPTTYPE is the OPTION TYPE. Defined values are:
0000: Reserved
0001: Source Link-layer Address (RFC4861)
0010: Target Link-layer Address (RFC4861)
0011: Prefix Information (RFC4861)
0100: Redirected Header (RFC4861)
O'Flynn Expires January 27, 2011 [Page 6]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
0101: MTU (RFC4861)
0110: Address Registration (6lowpan-nd)
0111: 6LoWPAN Context (6lowpan-nd)
1000: Authoritative Border Router (6lowpan-nd)
H: Depends on the OPTTYPE Field
I: Depends on the OPTTYPE Field
J: Depends on the OPTTYPE Field
K: Depends on the OPTTYPE Field
4.1. HIJK Usage
OPTTYPE = Source Link-Layer Address or Target Link-Layer Address.
HI: L2 Address Source:
00: L2 Address and Address Length Inline
01: L2 Address taken from L2 Source
10: L2 Address taken from L2 Dest
J: Length Compression:
0: Disabled
1: Enabled (only valid if HI = 00). Length compression removes
any trailing zeros from the option, to a maximum of 15. It
then splits the 'length' field up into two nibbles, and writes
the number of trailing zeros removed in the upper nibble of the
length field.
K: Not used
OPTTYPE = Prefix Information
H: On-Link/Autoconfiguration Flag Compression:
1: 'L', 'A', and 6 bits of reserved space elided. When
reconstructing option set L=0, A=1
O'Flynn Expires January 27, 2011 [Page 7]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
0: 'L', 'A', and 6 bits of reserved space inlined
I: Valid Lifetime Compression:
1: Valid lifetime elided, assumed to be infinite (0xFFFFFFFF)
0: Valid Lifetime inlined
J: Preferred Lifetime Compression:
1: Preferred lifetime elided, assumed to be same as valid.
0: Preferred Lifetime inlined
K: Prefix length compression
1: Prefix length is elided, assumed to be 64 bits
0: Prefix length inlined
OPTTYPE = Redirected Header
H: Not Used
I: Not Used
J: Not Used
K: Not Used
OPTTYPE = MTU
H: MTU Compression:
1: MTU is 1260
0: MTU is contained in next two bytes
I: Not Used
J: Not Used
K: Not Used
OPTTYPE = Address Registration
H: EUI64 Compression:
O'Flynn Expires January 27, 2011 [Page 8]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
1: EUI64 Elided, copy from destination L2 Address
0: EUI64 Inlined
I: Registered Address Compression (Only valid if 'Registered
Address Present Flag' is set):
1: Registered address elided, take from NA or NS TARGET address
0: Registered address inlined
J: Registered Address Present Flag:
1: Registered address present, so length field is 4
0: Registered address not present, so length field is 2
K: Not Used
OPTTYPE = 6LoWPAN Context
H: Context Length Compression:
1: Context length is elided, assumed to be 64
0: Context length is inlined
I: Not Used
J: Not Used
K: Not Used
OPTTYPE = Authorative Boarder Router
H: Not Used
I: Not Used
J: Not Used
K: Not Used
5. Examples of Compressed/Uncompressed ICMPv6 Messages
O'Flynn Expires January 27, 2011 [Page 9]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
5.1. RFC2463 Messages
5.1.1. Destination Unreachable Message
Uncompressed
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Code | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Unused |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| As much of invoking packet |
+ as will fit without the ICMPv6 packet +
| exceeding the minimum IPv6 MTU [IPv6] |
Compressed: 4 Octet Savings
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 1 1 1 1 1 1 1| Type | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| As much of invoking packet |
+ as will fit without the ICMPv6 packet +
| exceeding the minimum IPv6 MTU [IPv6] |
5.1.2. Time Exceeded Message
Uncompressed
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Code | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Unused |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| As much of invoking packet |
+ as will fit without the ICMPv6 packet +
| exceeding the minimum IPv6 MTU [IPv6] |
O'Flynn Expires January 27, 2011 [Page 10]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
Compressed: 4 Octet Savings
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 1 1 1 1 1 1 1| Type | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| As much of invoking packet |
+ as will fit without the ICMPv6 packet +
| exceeding the minimum IPv6 MTU [IPv6] |
5.2. RFC4861 Messages
5.2.1. Router Solcitation Message
Uncompressed
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Code | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options ...
+-+-+-+-+-+-+-+-+-+-+-+-
Compressed with GENERIC: 4 Octect Savings
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 1 1 1 1 1 1 1| Type | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options ...
+-+-+-+-+-+-+-+-+-+-+-+-
Compressed with NON-GENERIC: 4 Octect Savings
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 1 1 1 1 0 0 0 0 0 1 0 0 X X X| Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options ...
+-+-+-+-+-+-+-+-+-+-+-+-
O'Flynn Expires January 27, 2011 [Page 11]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
5.2.2. Router Advertisement Message
Maximum Saving: 8 Octets. Minimum Saving: 0 Octets.
Uncompressed
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Code | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Cur Hop Limit |M|O| Reserved | Router Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reachable Time |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Retrans Timer |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options ...
+-+-+-+-+-+-+-+-+-+-+-+-
Compressed: 8 Octet Savings
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 1 1 1 1 0 0 0 0 1 0 1 1 X X X| Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Cur Hop Limit |M|O| Reserved | Router Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options ...
+-+-+-+-+-+-+-+-+-+-+-+-
5.2.3. Neighbor Solicitation Message
Uses NON-GENERIC header compression. Maximum Saving: 20 Octets.
Minimum Saving: 4 Octets
O'Flynn Expires January 27, 2011 [Page 12]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
Uncompressed
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Code | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Target Address +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options ...
+-+-+-+-+-+-+-+-+-+-+-+-
Compressed: 4 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 1 1 1 1 0 0 0 0 1 1 0 0 X X X| Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Target Address +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options ...
+-+-+-+-+-+-+-+-+-+-+-+-
O'Flynn Expires January 27, 2011 [Page 13]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
Compressed: 20 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 1 1 1 1 0 0 0 0 1 1 0 1 X X X| Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options ...
+-+-+-+-+-+-+-+-+-+-+-+-
5.2.4. Neighbor Advertisement Message
Uses NON-GENERIC header compression. Maximum Saving: 19 Octets.
Minimum Saving: 3 Octets
Uncompressed
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Code | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|R|S|O| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Target Address +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Options ...
+-+-+-+-+-+-+-+-+-+-+-+-
O'Flynn Expires January 27, 2011 [Page 14]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
Compressed: 3 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 1 1 1 1 0 0 0 1 0 0 0 0 X X X| Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|R|S|O| Reserved| |
+-+-+-+-+-+-+-+-+ |
| |
+ +
| Target Address |
+ +
| |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | Options ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Compressed: 19 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 1 1 1 1 0 0 0 1 0 0 1 0 X X X| Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|R|S|O| Reserved| Options ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
5.3. RFC4861 Options
5.3.1. Source/Target Link-Layer Address
Uncompressed, 8-byte L2 Address
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length = 2 | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| Link-Layer Address |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| Padding |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
O'Flynn Expires January 27, 2011 [Page 15]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
Compressed: 15 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+
|0 0 0 1 0 1 0 0|
+-+-+-+-+-+-+-+-+
Compressed: 6 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 0 1 0 0 1 0| 6 | 2 | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| Link-Layer Address |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
5.3.2. Prefix Information
Uncompressed
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Prefix Length |L|A| Reserved1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Valid Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Preferred Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Prefix +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
O'Flynn Expires January 27, 2011 [Page 16]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
Compressed: 7 Octet Saving (112 bit prefix)
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 1 1 0 0 0 0| Prefix Length |L|A| Reserved1 | Valid Lifetime
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Valid Lifetime Continued | Pref Lifetime
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Preferred Lifetime Continued | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| |
+ +
| Prefix |
+ +
| |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+
Compressed: 22 Octet Saving (64 bit prefix)
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 0 1 1 1 1 1 1| |
+-+-+-+-+-+-+-+-+ +
| Prefix |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
5.3.3. MTU Header
Uncompressed
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MTU |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
O'Flynn Expires January 27, 2011 [Page 17]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
Compressed: 5 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 1 0 1 0 0 0 0| MTU |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Compressed: 7 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+
|0 1 0 1 1 0 0 0|
+-+-+-+-+-+-+-+-+
5.3.4. Redirect Header
Uncompressed
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ IP header + data ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Compressed: 6 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 1 0 0 0 0 0 0| Length | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| |
~ IP header + data ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
O'Flynn Expires January 27, 2011 [Page 18]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
5.4. 6lowpan-nd Options
5.4.1. Address Registration Option
Uncompressed
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Status | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Registration Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ EUI-64 +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Registered Address (Optional) +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Compressed: 4 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 1 1 0 0 0 X 0| Status | Registration Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ EUI-64 +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Registered Address (Optional) +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
O'Flynn Expires January 27, 2011 [Page 19]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
Compressed: 28 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 1 1 0 1 1 1 0| Status | Registration Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
5.4.2. 6LoWPAN Context Prefix Option
Uncompressed 112-bit Context
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length |Context Length | Res |C| CID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Valid Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Context Prefix +
| |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | Padding |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Compressed 112-bit Context: 5 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 1 1 1 0 0 0 0|Context Length | Res |C| CID | Valid Lifetime
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Valid Lifetime | |
+-+-+-+-+-+-+-+-+ +
| |
+ Context Prefix +
| |
+ +-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
O'Flynn Expires January 27, 2011 [Page 20]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
Uncompressed 64-bit Context
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length |Context Length | Res |C| CID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Valid Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Context Prefix +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Compressed 64-bit Context: 4 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0 1 1 1 1 0 0 0| Res |C| CID | Valid Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Context Prefix +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
5.4.3. Authoritive Border Router
Uncompressed
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length = 3 | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved | Version Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ 6LBR Address +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
O'Flynn Expires January 27, 2011 [Page 21]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
Compressed: 5 Octet Saving
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1 0 0 0 0 0 0 0| Version Number | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| |
+ +
| |
+ 6LBR Address +
| |
+ +-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
6. Acknowledgements
Thanks to Zach Shelby and Daniel Gavelle for various comments.
7. Security Considerations
None
8. IANA Considerations
This memo includes no request to IANA.
All drafts are required to have an IANA considerations section (see
the update of RFC 2434 [I-D.narten-iana-considerations-rfc2434bis]
for a guide). If the draft does not require IANA to do anything, the
section contains an explicit statement that this is the case (as
above). If there are no requirements for IANA, the section will be
removed during conversion into an RFC by the RFC Editor.
9. Informative References
[I-D.ietf-6lowpan-nd]
Shelby, Z., Chakrabarti, S., and E. Nordmark, "Neighbor
Discovery Optimization for Low-power and Lossy Networks",
draft-ietf-6lowpan-nd-11 (work in progress), July 2010.
[I-D.narten-iana-considerations-rfc2434bis]
Narten, T. and H. Alvestrand, "Guidelines for Writing an
O'Flynn Expires January 27, 2011 [Page 22]
Internet-Draft draft-oflynn-6lowpan-icmp-hc July 2010
IANA Considerations Section in RFCs",
draft-narten-iana-considerations-rfc2434bis-09 (work in
progress), March 2008.
Author's Address
Colin Patrick O'Flynn
Atmel Corporation
Colorado Springs, Colorado
USA
Email: colin.oflynn@atmel.com
O'Flynn Expires January 27, 2011 [Page 23]
| PAFTECH AB 2003-2026 | 2026-04-22 05:46:00 |