| < draft-ietf-roll-turnon-rfc8138-08.txt | draft-ietf-roll-turnon-rfc8138-09.txt > | |||
|---|---|---|---|---|
| ROLL P. Thubert, Ed. | ROLL P. Thubert, Ed. | |||
| Internet-Draft L. Zhao | Internet-Draft L. Zhao | |||
| Updates: 8138 (if approved) Cisco Systems | Updates: 8138 (if approved) Cisco Systems | |||
| Intended status: Standards Track 8 July 2020 | Intended status: Standards Track 27 July 2020 | |||
| Expires: 9 January 2021 | Expires: 28 January 2021 | |||
| A RPL DODAG Configuration Option for the 6LoWPAN Routing Header | A RPL DODAG Configuration Option for the 6LoWPAN Routing Header | |||
| draft-ietf-roll-turnon-rfc8138-08 | draft-ietf-roll-turnon-rfc8138-09 | |||
| Abstract | Abstract | |||
| This document updates RFC 8138 and RFC 6550 by defining a bit in the | This document updates RFC 8138 by defining a bit in the RPL DODAG | |||
| RPL DODAG Configuration Option to indicate whether RFC 8138 | Configuration Option to indicate whether compression is used within | |||
| compression is used within the RPL Instance, and specify the behavior | the RPL Instance, and specify the behavior of RFC 8138-capable nodes | |||
| of RFC 8138-capable nodes when the bit is set and reset. | when the bit is set and reset. | |||
| 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 | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on 9 January 2021. | This Internet-Draft will expire on 28 January 2021. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2020 IETF Trust and the persons identified as the | Copyright (c) 2020 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents (https://trustee.ietf.org/ | Provisions Relating to IETF Documents (https://trustee.ietf.org/ | |||
| license-info) in effect on the date of publication of this document. | license-info) in effect on the date of publication of this document. | |||
| Please review these documents carefully, as they describe your rights | Please review these documents carefully, as they describe your rights | |||
| skipping to change at page 2, line 20 ¶ | skipping to change at page 2, line 20 ¶ | |||
| 2.2. Glossary . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2.2. Glossary . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 2.3. Requirements Language . . . . . . . . . . . . . . . . . . 4 | 2.3. Requirements Language . . . . . . . . . . . . . . . . . . 4 | |||
| 3. The RPL DODAG Configuration Option . . . . . . . . . . . . . 4 | 3. The RPL DODAG Configuration Option . . . . . . . . . . . . . 4 | |||
| 4. Updating RFC 8138 . . . . . . . . . . . . . . . . . . . . . . 5 | 4. Updating RFC 8138 . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 5. Transition Scenarios . . . . . . . . . . . . . . . . . . . . 5 | 5. Transition Scenarios . . . . . . . . . . . . . . . . . . . . 5 | |||
| 5.1. Coexistence . . . . . . . . . . . . . . . . . . . . . . . 6 | 5.1. Coexistence . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 5.2. Inconsistent State While Migrating . . . . . . . . . . . 6 | 5.2. Inconsistent State While Migrating . . . . . . . . . . . 6 | |||
| 5.3. Rolling Back . . . . . . . . . . . . . . . . . . . . . . 6 | 5.3. Rolling Back . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 | 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 7. Security Considerations . . . . . . . . . . . . . . . . . . . 7 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 7 | |||
| 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 8 | 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 9. Normative References . . . . . . . . . . . . . . . . . . . . 8 | 9. Normative References . . . . . . . . . . . . . . . . . . . . 7 | |||
| 10. Informative References . . . . . . . . . . . . . . . . . . . 8 | 10. Informative References . . . . . . . . . . . . . . . . . . . 8 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
| 1. Introduction | 1. Introduction | |||
| The packet compression technique defined in [RFC8138] can only be | The packet compression technique defined in [RFC8138] can only be | |||
| activated in a RPL [RFC6550] network when all the nodes support it. | activated in a RPL [RFC6550] network when all the nodes support it. | |||
| Otherwise, a non-capable node acting as leaf-only would fail to | Otherwise, a non-capable node acting as leaf-only would fail to | |||
| communicate, and acting as a router it would drop the compressed | communicate, and acting as a router it would drop the compressed | |||
| packets and black-hole a portion of the network. | packets and black-hole a portion of the network. | |||
| skipping to change at page 4, line 38 ¶ | skipping to change at page 4, line 38 ¶ | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Type = 0x04 |Opt Length = 14| Flags |A| ... | | | Type = 0x04 |Opt Length = 14| Flags |A| ... | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | |||
| | ... | | | ... | | |||
| Figure 1: DODAG Configuration Option (Partial View) | Figure 1: DODAG Configuration Option (Partial View) | |||
| This specification defines a new flag "Enable RFC8138 Compression" | This specification defines a new flag "Enable RFC8138 Compression" | |||
| (T). The "T" flag is set to turn-on the use of the compression of | (T). The "T" flag is set to turn-on the use of the compression of | |||
| RPL artifacts with [RFC8138] within the DODAG. The new "T" flag is | RPL artifacts with [RFC8138] within the DODAG. The new "T" flag is | |||
| encoded in one of the reserved bits in the RPL DODAG Configuration | encoded in the Flags field in the RPL DODAG Configuration Option. | |||
| Option. The suggested bit position of the "T" flag is indicated in | The suggested bit position of the "T" flag is indicated in Section 6. | |||
| Section 6. | ||||
| /[RFC6550] states, [RFC6550] states, when referring to the DODAG | [RFC6550] states, when referring to the DODAG Configuration Option, | |||
| Configuration Option, that "Nodes other than the DODAG Root MUST NOT | that "Nodes other than the DODAG Root MUST NOT modify this | |||
| modify this information when propagating the DODAG Configuration | information when propagating the DODAG Configuration option". | |||
| option". Therefore, even a legacy parent propagates the "T" flag as | Therefore, a legacy parent propagates the "T" flag as set by the Root | |||
| set by the Root whether it supports this specification or not. So | whether it supports this specification or not. So when the "T" flag | |||
| when the "T" flag is set, it is transparently flooded to all the | is set, it is transparently flooded to all the nodes in the DODAG. | |||
| nodes in the DODAG. | ||||
| Section 6.3.1. of [RFC6550] defines a 3-bit Mode of Operation (MOP) | Section 6.3.1 of [RFC6550] defines a 3-bit Mode of Operation (MOP) in | |||
| in the DIO Base Object. The new "T" flag is defined only for MOP | the DIO Base Object. For MOP values 0 to 6, the use of compression | |||
| value between 0 to 6. | depends on the "T" flag as specified in this document. A MOP value | |||
| of 7 and above MUST use compression by default and ignore the setting | ||||
| of the "T" flag. | ||||
| 4. Updating RFC 8138 | 4. Updating RFC 8138 | |||
| A node SHOULD source packets in the compressed form using [RFC8138] | A node SHOULD source packets in the compressed form using [RFC8138] | |||
| if and only if the "T" flag is set. This behaviour can be overridden | if and only if the "T" flag is set. This behaviour can be overridden | |||
| by e.g., configuration or network management. Overriding may be | by e.g., configuration or network management. Overriding may be | |||
| needed e.g., to cope with a legacy implementations of the Root that | needed e.g., to cope with a legacy implementations of the Root that | |||
| supports [RFC8138] but not this specification and cannot set the "T" | supports [RFC8138] but not this specification and cannot set the "T" | |||
| flag. | flag. | |||
| skipping to change at page 6, line 25 ¶ | skipping to change at page 6, line 25 ¶ | |||
| able to handle compressed packets in the compressed form. A node | able to handle compressed packets in the compressed form. A node | |||
| that cannot do so may remain connected to the network as a RUL, but | that cannot do so may remain connected to the network as a RUL, but | |||
| how the node is modified to turn into a RUL is out of scope. | how the node is modified to turn into a RUL is out of scope. | |||
| 5.2. Inconsistent State While Migrating | 5.2. Inconsistent State While Migrating | |||
| When the "T" flag is turned on by the Root, the information slowly | When the "T" flag is turned on by the Root, the information slowly | |||
| percolates through the DODAG as the DIO gets propagated. Some nodes | percolates through the DODAG as the DIO gets propagated. Some nodes | |||
| will see the flag and start sourcing packets in the compressed form | will see the flag and start sourcing packets in the compressed form | |||
| while other nodes in the same RPL DODAG are still not aware of it. | while other nodes in the same RPL DODAG are still not aware of it. | |||
| Conversely, in non-storing mode, the Root will start using [RFC8138] | In non-storing mode, the Root will start using [RFC8138] with a | |||
| with a Source Routing Header 6LoRH (SRH-6LoRH) that routes all the | Source Routing Header 6LoRH (SRH-6LoRH) that routes all the way to | |||
| way to the parent router or to the leaf. | the parent router or to the leaf. | |||
| To ensure that a packet is forwarded across the RPL DODAG in the form | To ensure that a packet is forwarded across the RPL DODAG in the form | |||
| in which it was generated, it is required that all the RPL nodes | in which it was generated, it is required that all the RPL nodes | |||
| support [RFC8138] at the time of the switch. | support [RFC8138] at the time of the switch. | |||
| Setting the "T" flag is ultimately the responsibility of the Network | Setting the "T" flag is ultimately the responsibility of the Network | |||
| Administrator. The expectation is that the network management or | Administrator. The expectation is that the network management or | |||
| upgrading tools in place enable the Network Administrator to know | upgrading tools in place enable the Network Administrator to know | |||
| when all the nodes that may join a DODAG were migrated. In the case | when all the nodes that may join a DODAG were migrated. In the case | |||
| of a RPL instance with multiple Roots, all nodes that participate to | of a RPL instance with multiple Roots, all nodes that participate to | |||
| skipping to change at page 7, line 19 ¶ | skipping to change at page 7, line 19 ¶ | |||
| as follows: | as follows: | |||
| +---------------+---------------------------------+-----------+ | +---------------+---------------------------------+-----------+ | |||
| | Bit Number | Capability Description | Reference | | | Bit Number | Capability Description | Reference | | |||
| +---------------+---------------------------------+-----------+ | +---------------+---------------------------------+-----------+ | |||
| | 2 (suggested) | Turn on RFC8138 Compression (T) | THIS RFC | | | 2 (suggested) | Turn on RFC8138 Compression (T) | THIS RFC | | |||
| +---------------+---------------------------------+-----------+ | +---------------+---------------------------------+-----------+ | |||
| Table 1: New DODAG Configuration Option Flag | Table 1: New DODAG Configuration Option Flag | |||
| The DODAG Configuration Option Flags defined so far will be obsolete | ||||
| for RPL Mode of Operation (MOP) above and including 7. | ||||
| IANA is requested to update the name of the Registry from "DODAG | ||||
| Configuration Option Flags" to "DODAG Configuration Option Flags for | ||||
| RPL MOP 0..6". | ||||
| When MOP values of 7 and more are defined, a new registry will be | ||||
| needed. | ||||
| 7. Security Considerations | 7. Security Considerations | |||
| First of all, it is worth noting that with [RFC6550], every node in | First of all, it is worth noting that with [RFC6550], every node in | |||
| the LLN that is RPL-aware can inject any RPL-based attack in the | the LLN that is RPL-aware can inject any RPL-based attack in the | |||
| network. A trust model has to be put in place in an effort to | network. A trust model has to be put in place in an effort to | |||
| exclude rogue nodes from participating to the RPL and the 6LoWPAN | exclude rogue nodes from participating to the RPL and the 6LoWPAN | |||
| signaling, as well as from the data packet exchange. This trust | signaling, as well as from the data packet exchange. This trust | |||
| model could be at a minimum based on a Layer-2 Secure joining and the | model could be at a minimum based on a Layer-2 Secure joining and the | |||
| Link-Layer security. This is a generic RPL and 6LoWPAN requirement, | Link-Layer security. This is a generic RPL and 6LoWPAN requirement, | |||
| see Req5.1 in Appendix of [RFC8505]. | see Req5.1 in Appendix of [RFC8505]. | |||
| skipping to change at page 8, line 40 ¶ | skipping to change at page 8, line 30 ¶ | |||
| [RFC7102] Vasseur, JP., "Terms Used in Routing for Low-Power and | [RFC7102] Vasseur, JP., "Terms Used in Routing for Low-Power and | |||
| Lossy Networks", RFC 7102, DOI 10.17487/RFC7102, January | Lossy Networks", RFC 7102, DOI 10.17487/RFC7102, January | |||
| 2014, <https://www.rfc-editor.org/info/rfc7102>. | 2014, <https://www.rfc-editor.org/info/rfc7102>. | |||
| [RFC8138] Thubert, P., Ed., Bormann, C., Toutain, L., and R. Cragie, | [RFC8138] Thubert, P., Ed., Bormann, C., Toutain, L., and R. Cragie, | |||
| "IPv6 over Low-Power Wireless Personal Area Network | "IPv6 over Low-Power Wireless Personal Area Network | |||
| (6LoWPAN) Routing Header", RFC 8138, DOI 10.17487/RFC8138, | (6LoWPAN) Routing Header", RFC 8138, DOI 10.17487/RFC8138, | |||
| April 2017, <https://www.rfc-editor.org/info/rfc8138>. | April 2017, <https://www.rfc-editor.org/info/rfc8138>. | |||
| [RFC8505] Thubert, P., Ed., Nordmark, E., Chakrabarti, S., and C. | ||||
| Perkins, "Registration Extensions for IPv6 over Low-Power | ||||
| Wireless Personal Area Network (6LoWPAN) Neighbor | ||||
| Discovery", RFC 8505, DOI 10.17487/RFC8505, November 2018, | ||||
| <https://www.rfc-editor.org/info/rfc8505>. | ||||
| [UNAWARE-LEAVES] | ||||
| Thubert, P. and M. Richardson, "Routing for RPL Leaves", | ||||
| Work in Progress, Internet-Draft, draft-ietf-roll-unaware- | ||||
| leaves-18, 12 June 2020, <https://tools.ietf.org/html/ | ||||
| draft-ietf-roll-unaware-leaves-18>. | ||||
| 10. Informative References | 10. Informative References | |||
| [RFC6553] Hui, J. and JP. Vasseur, "The Routing Protocol for Low- | [RFC6553] Hui, J. and JP. Vasseur, "The Routing Protocol for Low- | |||
| Power and Lossy Networks (RPL) Option for Carrying RPL | Power and Lossy Networks (RPL) Option for Carrying RPL | |||
| Information in Data-Plane Datagrams", RFC 6553, | Information in Data-Plane Datagrams", RFC 6553, | |||
| DOI 10.17487/RFC6553, March 2012, | DOI 10.17487/RFC6553, March 2012, | |||
| <https://www.rfc-editor.org/info/rfc6553>. | <https://www.rfc-editor.org/info/rfc6553>. | |||
| [RFC7228] Bormann, C., Ersue, M., and A. Keranen, "Terminology for | [RFC7228] Bormann, C., Ersue, M., and A. Keranen, "Terminology for | |||
| Constrained-Node Networks", RFC 7228, | Constrained-Node Networks", RFC 7228, | |||
| DOI 10.17487/RFC7228, May 2014, | DOI 10.17487/RFC7228, May 2014, | |||
| <https://www.rfc-editor.org/info/rfc7228>. | <https://www.rfc-editor.org/info/rfc7228>. | |||
| [RFC8505] Thubert, P., Ed., Nordmark, E., Chakrabarti, S., and C. | ||||
| Perkins, "Registration Extensions for IPv6 over Low-Power | ||||
| Wireless Personal Area Network (6LoWPAN) Neighbor | ||||
| Discovery", RFC 8505, DOI 10.17487/RFC8505, November 2018, | ||||
| <https://www.rfc-editor.org/info/rfc8505>. | ||||
| [UNAWARE-LEAVES] | ||||
| Thubert, P. and M. Richardson, "Routing for RPL Leaves", | ||||
| Work in Progress, Internet-Draft, draft-ietf-roll-unaware- | ||||
| leaves-18, 12 June 2020, <https://tools.ietf.org/html/ | ||||
| draft-ietf-roll-unaware-leaves-18>. | ||||
| [USEofRPLinfo] | [USEofRPLinfo] | |||
| Robles, I., Richardson, M., and P. Thubert, "Using RPI | Robles, I., Richardson, M., and P. Thubert, "Using RPI | |||
| Option Type, Routing Header for Source Routes and IPv6-in- | Option Type, Routing Header for Source Routes and IPv6-in- | |||
| IPv6 encapsulation in the RPL Data Plane", Work in | IPv6 encapsulation in the RPL Data Plane", Work in | |||
| Progress, Internet-Draft, draft-ietf-roll-useofrplinfo-40, | Progress, Internet-Draft, draft-ietf-roll-useofrplinfo-40, | |||
| 25 June 2020, <https://tools.ietf.org/html/draft-ietf- | 25 June 2020, <https://tools.ietf.org/html/draft-ietf- | |||
| roll-useofrplinfo-40>. | roll-useofrplinfo-40>. | |||
| Authors' Addresses | Authors' Addresses | |||
| End of changes. 12 change blocks. | ||||
| 48 lines changed or deleted | 38 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/ | ||||