< draft-thubert-6lo-rpl-nhc-00.txt   draft-thubert-6lo-rpl-nhc-01.txt >
6lo P. Thubert, Ed. 6lo P. Thubert, Ed.
Internet-Draft Cisco Internet-Draft Cisco
Updates: 6282 (if approved) August 28, 2014 Updates: 6282 (if approved) August 28, 2014
Intended status: Standards Track Intended status: Standards Track
Expires: February 27, 2015 Expires: February 27, 2015
A compression mechanism for the RPL option A compression mechanism for the RPL option
draft-thubert-6lo-rpl-nhc-00 draft-thubert-6lo-rpl-nhc-01
Abstract Abstract
This document proposes a compression mechanism for the RPL option. This document proposes a compression mechanism for the RPL option.
This operation saves up to 48 bits in each frame compared to RFC This operation saves up to 48 bits in each frame compared to RFC
6553. 6553.
Status of this Memo Status of this Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
skipping to change at page 5, line 23 skipping to change at page 5, line 23
The SenderRank is the result of the DAGRank operation on the rank of The SenderRank is the result of the DAGRank operation on the rank of
the sender, here the DAGRank operation is defined in section 3.5.1 the sender, here the DAGRank operation is defined in section 3.5.1
as: as:
DAGRank(rank) = floor(rank/MinHopRankIncrease) DAGRank(rank) = floor(rank/MinHopRankIncrease)
If MinHopRankIncrease is set to a multiple of 256, it appears that If MinHopRankIncrease is set to a multiple of 256, it appears that
the least significant 8 bits of the SenderRank will be all zeroes and the least significant 8 bits of the SenderRank will be all zeroes and
can be elided, in which case the SenderRank can be compressed into can be elided, in which case the SenderRank can be compressed into
one octet. one octet. This idea is leveraged in [RFC6552] that uses a
MinHopRankIncrease of 256 by default.
[RFC6553] defines an encoding for the RPL information as a RPL option [RFC6553] defines an encoding for the RPL information as a RPL option
located in a Hop-by-hop header. The RPL_NHC provides a compressed located in a Hop-by-hop header. The RPL_NHC provides a compressed
form for that the RPL information and is constructed as follows: form for that the RPL information and is constructed as follows:
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
| 1 | 0 | I | K | O | R | F |NH | | 1 | 0 | I | K | O | R | F |NH |
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
The RPL_NHC is immediately followed by the RPLInstanceID, unless it The RPL_NHC is immediately followed by the RPLInstanceID, unless it
is elided, and then the SenderRank, which is either compressed into is elided, and then the SenderRank, which is either compressed into
one octet or fully inlined as the whole 2 octets. Bits in the one octet or fully inlined as the whole 2 octets. Bits in the
RPL_NHC indicate whether the RPLInstanceID is elided and/or the RPL_NHC indicate whether the RPLInstanceID is elided and/or the
SenderRank is compressed: SenderRank is compressed:
skipping to change at page 6, line 9 skipping to change at page 6, line 9
RPLInstanceID as specified in [RFC6550] section 5.1. RPLInstanceID as specified in [RFC6550] section 5.1.
K: 1-bit. If it is set, the SenderRank is be compressed into one K: 1-bit. If it is set, the SenderRank is be compressed into one
octet, and the lowest significant octet is elided. If it is octet, and the lowest significant octet is elided. If it is
not set, the SenderRank, is fully inlined as 2 octets. not set, the SenderRank, is fully inlined as 2 octets.
In the following case, the RPLInstanceID is the Global RPLInstanceID In the following case, the RPLInstanceID is the Global RPLInstanceID
0, and the MinHopRankIncrease is a multiple of 256 so the least 0, and the MinHopRankIncrease is a multiple of 256 so the least
significant octet is all zeroes and can be elided: significant octet is all zeroes and can be elided:
0 1 2 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|0|1|1|O|R|F|N| SenderRank | |1|0|1|1|O|R|F|N| SenderRank |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
In the following case, the RPLInstanceID is the Global RPLInstanceID In the following case, the RPLInstanceID is the Global RPLInstanceID
0, but both octets of the SenderRank are significant so it can not be 0, but both octets of the SenderRank are significant so it can not be
compressed: compressed:
0 1 2 0 1 2
skipping to change at page 6, line 44 skipping to change at page 6, line 44
In the following case, the RPLInstanceID is not the Global In the following case, the RPLInstanceID is not the Global
RPLInstanceID 0, and both octets of the SenderRank are significant: RPLInstanceID 0, and both octets of the SenderRank are significant:
0 1 2 3 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 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|O|R|F|N| RPLInstanceID | SenderRank | |1|0|0|0|O|R|F|N| RPLInstanceID | SenderRank |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Depending on the RPLInstanceID and the MinHopRankIncrease, the Depending on the RPLInstanceID and the MinHopRankIncrease, the
proposed format Squeezes the RPL information in 16 to 32 bits, which proposed format thus squeezes the RPL information in 16 to 32 bits,
compares to 64 bits when using a Hop-by-hop option with the RPL which compares to 64 bits when using a Hop-by-hop option with the RPL
option as specified in [RFC6553]. option as specified in [RFC6553].
6. Security Considerations 6. Security Considerations
Using a compressed format as opposed to the full inline RPL option is Using a compressed format as opposed to the full inline RPL option is
logically equivalent and does not create an opening for a new threat logically equivalent and does not create an opening for a new threat
when compared to [RFC6553]. when compared to [RFC6553].
7. IANA Considerations 7. IANA Considerations
This document updates IANA registry for the LOWPAN_NHC defined in This document updates IANA registry for the LOWPAN_NHC defined in
[RFC6282] and assigns the previously unassigned: [RFC6282] and assigns the previously unassigned:
10IOKRFN: RPL Information [this] 10IOKRFN: RPL Information [this]
Capital letters in bit positions represent class-specific bit Capital letters in bit positions represent class-specific bit
assignments. N indicates whether or not additional LOWPAN_NHC assignments. IOKRF represents variables specific to RPL Information
encodings follow, as defined in Section 4.2. IOKRF represents compression defined in Section 5. N indicates whether or not
variables specific to RPL Information compression defined in Section additional LOWPAN_NHC encodings follow, as defined in Section 4.2 of
5. [RFC6553].
8. Acknowledgements 8. Acknowledgements
The author wishes to thank Laurent Toutain and Carsten Bormann for The author wishes to thank Laurent Toutain and Carsten Bormann for
suggesting this work . suggesting this work .
9. References 9. References
9.1. Normative References 9.1. Normative References
[IEEE802154] [IEEE802154]
IEEE standard for Information Technology, "IEEE std. IEEE standard for Information Technology, "IEEE std.
802.15.4, Part. 15.4: Wireless Medium Access Control 802.15.4, Part. 15.4: Wireless Medium Access Control
(MAC) and Physical Layer (PHY) Specifications for Low-Rate (MAC) and Physical Layer (PHY) Specifications for Low-Rate
Wireless Personal Area Networks", June 2011. Wireless Personal Area Networks", June 2011.
[ISA100.11a] [ISA100.11a]
ISA, "ISA100, Wireless Systems for Automation", May 2008, ISA/ANSI, "Wireless Systems for Industrial Automation:
< http://www.isa.org/Community/ Process Control and Related Applications - ISA100.11a-2011
- IEC 62734", 2011, <http://www.isa.org/Community/
SP100WirelessSystemsforAutomation>. SP100WirelessSystemsforAutomation>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2460] Deering, S.E. and R.M. Hinden, "Internet Protocol, Version [RFC2460] Deering, S.E. and R.M. Hinden, "Internet Protocol, Version
6 (IPv6) Specification", RFC 2460, December 1998. 6 (IPv6) Specification", RFC 2460, December 1998.
[RFC6282] Hui, J. and P. Thubert, "Compression Format for IPv6 [RFC6282] Hui, J. and P. Thubert, "Compression Format for IPv6
Datagrams over IEEE 802.15.4-Based Networks", RFC 6282, Datagrams over IEEE 802.15.4-Based Networks", RFC 6282,
 End of changes. 7 change blocks. 
12 lines changed or deleted 14 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/