< draft-thubert-6lo-bier-dispatch-03.txt   draft-thubert-6lo-bier-dispatch-04.txt >
6lo P. Thubert, Ed. 6lo P. Thubert, Ed.
Internet-Draft Cisco Internet-Draft Cisco
Intended status: Standards Track Z. Brodard Intended status: Standards Track Z. Brodard
Expires: January 25, 2018 Ecole Polytechnique Expires: July 20, 2018 Ecole Polytechnique
H. Jiang H. Jiang
G. Texier G. Texier
Telecom Bretagne Telecom Bretagne
July 24, 2017 January 16, 2018
A 6loRH for BitStrings A 6loRH for BitStrings
draft-thubert-6lo-bier-dispatch-03 draft-thubert-6lo-bier-dispatch-04
Abstract Abstract
This specification extends the 6LoWPAN Routing Header to signal This specification extends the 6LoWPAN Routing Header to signal
BitStrings such as utilized in Bit Index Explicit Replication and its BitStrings such as utilized in Bit Index Explicit Replication and its
Traffic Engineering variant. Traffic Engineering variant.
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 http://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 January 25, 2018. This Internet-Draft will expire on July 20, 2018.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2018 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 Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
skipping to change at page 3, line 40 skipping to change at page 3, line 40
leftmost octet in the BitString. leftmost octet in the BitString.
3. Applicability 3. Applicability
BIER and other bit-indexed methods that would leverage BitStrings BIER and other bit-indexed methods that would leverage BitStrings
will generally require additional information in the packet to will generally require additional information in the packet to
complement the BitString. For instance, BIER has the concept of a complement the BitString. For instance, BIER has the concept of a
BFR-id and an Entropy value in the BIER header. Since those BFR-id and an Entropy value in the BIER header. Since those
additional fields depend on the bit-indexed method, they are expected additional fields depend on the bit-indexed method, they are expected
to be transported separately from the BitString. This specification to be transported separately from the BitString. This specification
concentrates on the BitString alone. concentrates on the BitString and a group identifier which enables a
network to grow beyond the size of one bitString.
Within the context of "the Deterministic Networking (DetNet) Within the context of "the Deterministic Networking (DetNet)
Architecture" [I-D.ietf-detnet-architecture] ), the "BIER-TE-based Architecture" [I-D.ietf-detnet-architecture] ), the "BIER-TE-based
OAM, Replication and Elimination" OAM, Replication and Elimination"
[I-D.thubert-bier-replication-elimination] document details how BIER- [I-D.thubert-bier-replication-elimination] document details how BIER-
TE can be leveraged to activate the Deterministic Networking TE can be leveraged to activate the Deterministic Networking
Replication and Elimination functions in a manner that is abstract to Replication and Elimination functions in a manner that is abstract to
the data plane forwarding information. An adjacency, which is the data plane forwarding information. An adjacency, which is
represented by a bit in the BIER header, can be mapped in the data represented by a bit in the BIER header, can be mapped in the data
plane to an Ethernet hop, a Label Switched Path, or it may correspond plane to an Ethernet hop, a Label Switched Path, or it may correspond
skipping to change at page 5, line 16 skipping to change at page 5, line 16
When groups are used, it may be that a packet is sent to different When groups are used, it may be that a packet is sent to different
groups at the same time. In that case, multiple BIER-6LoRH headers groups at the same time. In that case, multiple BIER-6LoRH headers
can be prepended to a same packet, each one for a different group. can be prepended to a same packet, each one for a different group.
As the packet flows along the multicast distribution tree, a BIER- As the packet flows along the multicast distribution tree, a BIER-
6LoRH header that has no more destination in a given branch may be 6LoRH header that has no more destination in a given branch may be
removed to make the packet shorter. removed to make the packet shorter.
4.2. Bloom Filters 4.2. Bloom Filters
A Bloom Filter can be seen as a compression technique for the A Bloom Filter can be seen as an additional compression technique for
BitString. A Bloom Filter may generate false positives, which, in the bitString representation. A Bloom Filter may generate false
the case of BIER, result in undue forwarding of a packet down a path positives, which, in the case of BIER, result in undue forwarding of
where no listener exists. a packet down a path where no listener exists.
As an example, the Constrained-Cast [I-D.bergmann-bier-ccast] As an example, the Constrained-Cast [I-D.ietf-roll-ccast]
specification employs Bloom Filters as a compact representation of a specification employs Bloom Filters as a compact representation of a
match or non-match for elements in a set that may be larger than the match or non-match for elements in a set that may be larger than the
number of bits in the BitString. number of bits in the BitString.
In the case of a Bloom Filter, a number of Hash functions must be run In the case of a Bloom Filter, a number of Hash functions must be run
to obtain a multi-bit signature of an encoded element. This to obtain a multi-bit signature of an encoded element. This
specification uses the 5-bits Control field to signal an Identifier specification uses the 5-bits Control field to signal an Identifier
of the set of Hash functions being used to generate a certain of the set of Hash functions being used to generate a certain
BitString, so as to enable the migration from a set of Hash functions BitString, so as to enable the migration from a set of Hash functions
to the next. to the next.
4.3. Types of BIER-6LoRH header 4.3. Types of BIER-6LoRH header
The Type of a BIER-6LoRH header indicates the size of words used to The Type of a BIER-6LoRH header indicates the size of the BitString
build the BitString and whether the BitString is operated as an and whether the BitString is operated as an uncompressed bit-by-bit
uncompressed bit-by-bit mapping, or as a Bloom filter. mapping, or as a Bloom filter.
+---------+--------------+----------------------+----------------+ +--------------+--------------+----------------------+--------------+
| Type | Encoding | Control field | BitString Size | | BitString | Encoding | Control field | BitString |
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | Type | | | Size |
| 15 | bit-by-bit | Group ID | 8 bits | +--------------+--------------+----------------------+--------------+
| 16 | bit-by-bit | Group ID | 16 bits | | 15 | bit-by-bit | Group ID | 8 bits |
| 17 | bit-by-bit | Group ID | 32 bits | +--------------+--------------+----------------------+--------------+
| 18 | bit-by-bit | Group ID | 64 bits | | 16 | bit-by-bit | Group ID | 16 bits |
| 19 | bit-by-bit | Group ID | 128 bits | +--------------+--------------+----------------------+--------------+
+---------+--------------+----------------------+----------------+ | 17 | bit-by-bit | Group ID | 48 bits |
| 20 | Bloom filter | Hash function Set ID | 8 bits | +--------------+--------------+----------------------+--------------+
| 21 | Bloom filter | Hash function Set ID | 16 bits | | 18 | bit-by-bit | Group ID | 96 bits |
| 22 | Bloom filter | Hash function Set ID | 32 bits | +--------------+--------------+----------------------+--------------+
| 23 | Bloom filter | Hash function Set ID | 64 bits | | 19 | bit-by-bit | Group ID | 160 bits |
| 24 | Bloom filter | Hash function Set ID | 128 bits | +--------------+--------------+----------------------+--------------+
+---------+--------------+----------------------+----------------+ | 20 | Bloom filter | Hash function Set ID | 8 bits |
+--------------+--------------+----------------------+--------------+
| 21 | Bloom filter | Hash function Set ID | 16 bits |
+--------------+--------------+----------------------+--------------+
| 22 | Bloom filter | Hash function Set ID | 48 bits |
+--------------+--------------+----------------------+--------------+
| 23 | Bloom filter | Hash function Set ID | 96 bits |
+--------------+--------------+----------------------+--------------+
| 24 | Bloom filter | Hash function Set ID | 160 bits |
+--------------+--------------+----------------------+--------------+
Figure 2: The BIER-6LoRH Types Table 1: The BIER-6LoRH Types
In order to address a potentially large number of devices, the In order to address a potentially large number of devices, the
BitString may grow very large. Yet, the maximum frame size for a BitString may grow very large. Yet, the maximum frame size for a
given MAC layer may limit the number of bits that can be dedicated to given MAC layer may limit the number of bits that can be dedicated to
routing. With this specification, a number of BIER-6LoRH headers of routing. With this specification, a number of BIER-6LoRH headers of
a same type (bit-by-bit or Bloom filter) may be placed contiguously a same type (bit-by-bit or Bloom filter) may be placed contiguously
in the packet. This results in a larger BitString that is the in the packet. This results in a larger BitString that is the
concatenation of the BitStrings in the individual headers in the concatenation of the BitStrings in the individual headers in the
order they are appearing in the packet. order they are appearing in the packet.
skipping to change at page 7, line 25 skipping to change at page 7, line 29
8. Acknowledgments 8. Acknowledgments
9. References 9. References
9.1. Normative References 9.1. Normative References
[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, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC4944] Montenegro, G., Kushalnagar, N., Hui, J., and D. Culler, [RFC4944] Montenegro, G., Kushalnagar, N., Hui, J., and D. Culler,
"Transmission of IPv6 Packets over IEEE 802.15.4 "Transmission of IPv6 Packets over IEEE 802.15.4
Networks", RFC 4944, DOI 10.17487/RFC4944, September 2007, Networks", RFC 4944, DOI 10.17487/RFC4944, September 2007,
<http://www.rfc-editor.org/info/rfc4944>. <https://www.rfc-editor.org/info/rfc4944>.
[RFC6550] Winter, T., Ed., Thubert, P., Ed., Brandt, A., Hui, J., [RFC6550] Winter, T., Ed., Thubert, P., Ed., Brandt, A., Hui, J.,
Kelsey, R., Levis, P., Pister, K., Struik, R., Vasseur, Kelsey, R., Levis, P., Pister, K., Struik, R., Vasseur,
JP., and R. Alexander, "RPL: IPv6 Routing Protocol for JP., and R. Alexander, "RPL: IPv6 Routing Protocol for
Low-Power and Lossy Networks", RFC 6550, Low-Power and Lossy Networks", RFC 6550,
DOI 10.17487/RFC6550, March 2012, DOI 10.17487/RFC6550, March 2012,
<http://www.rfc-editor.org/info/rfc6550>. <https://www.rfc-editor.org/info/rfc6550>.
[RFC8025] Thubert, P., Ed. and R. Cragie, "IPv6 over Low-Power [RFC8025] Thubert, P., Ed. and R. Cragie, "IPv6 over Low-Power
Wireless Personal Area Network (6LoWPAN) Paging Dispatch", Wireless Personal Area Network (6LoWPAN) Paging Dispatch",
RFC 8025, DOI 10.17487/RFC8025, November 2016, RFC 8025, DOI 10.17487/RFC8025, November 2016,
<http://www.rfc-editor.org/info/rfc8025>. <https://www.rfc-editor.org/info/rfc8025>.
[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, <http://www.rfc-editor.org/info/rfc8138>. April 2017, <https://www.rfc-editor.org/info/rfc8138>.
9.2. Informative References 9.2. Informative References
[I-D.bergmann-bier-ccast]
Bergmann, O., Bormann, C., Gerdes, S., and H. Chen,
"Constrained-Cast: Source-Routed Multicast for RPL",
draft-bergmann-bier-ccast-02 (work in progress), October
2016.
[I-D.eckert-bier-te-arch] [I-D.eckert-bier-te-arch]
Eckert, T., Cauchie, G., Braun, W., and M. Menth, "Traffic Eckert, T., Cauchie, G., Braun, W., and M. Menth, "Traffic
Engineering for Bit Index Explicit Replication BIER-TE", Engineering for Bit Index Explicit Replication BIER-TE",
draft-eckert-bier-te-arch-05 (work in progress), June draft-eckert-bier-te-arch-06 (work in progress), November
2017. 2017.
[I-D.ietf-6tisch-architecture] [I-D.ietf-6tisch-architecture]
Thubert, P., "An Architecture for IPv6 over the TSCH mode Thubert, P., "An Architecture for IPv6 over the TSCH mode
of IEEE 802.15.4", draft-ietf-6tisch-architecture-11 (work of IEEE 802.15.4", draft-ietf-6tisch-architecture-13 (work
in progress), January 2017. in progress), November 2017.
[I-D.ietf-bier-architecture] [I-D.ietf-bier-architecture]
Wijnands, I., Rosen, E., Dolganow, A., Przygienda, T., and Wijnands, I., Rosen, E., Dolganow, A., Przygienda, T., and
S. Aldrin, "Multicast using Bit Index Explicit S. Aldrin, "Multicast using Bit Index Explicit
Replication", draft-ietf-bier-architecture-07 (work in Replication", draft-ietf-bier-architecture-08 (work in
progress), June 2017. progress), September 2017.
[I-D.ietf-detnet-architecture] [I-D.ietf-detnet-architecture]
Finn, N., Thubert, P., Varga, B., and J. Farkas, Finn, N., Thubert, P., Varga, B., and J. Farkas,
"Deterministic Networking Architecture", draft-ietf- "Deterministic Networking Architecture", draft-ietf-
detnet-architecture-02 (work in progress), June 2017. detnet-architecture-04 (work in progress), October 2017.
[I-D.ietf-roll-ccast]
Bergmann, O., Bormann, C., Gerdes, S., and H. Chen,
"Constrained-Cast: Source-Routed Multicast for RPL",
draft-ietf-roll-ccast-01 (work in progress), October 2017.
[I-D.thubert-6tisch-4detnet] [I-D.thubert-6tisch-4detnet]
Thubert, P., "6TiSCH requirements for DetNet", draft- Thubert, P., "6TiSCH requirements for DetNet", draft-
thubert-6tisch-4detnet-01 (work in progress), June 2015. thubert-6tisch-4detnet-01 (work in progress), June 2015.
[I-D.thubert-bier-replication-elimination] [I-D.thubert-bier-replication-elimination]
Thubert, P., Brodard, Z., and H. Jiang, "BIER-TE-based Thubert, P., Brodard, Z., and H. Jiang, "BIER-TE-based
OAM, Replication and Elimination", draft-thubert-bier- OAM, Replication and Elimination", draft-thubert-bier-
replication-elimination-00 (work in progress), September replication-elimination-01 (work in progress), July 2017.
2016.
[RFC6282] Hui, J., Ed. and P. Thubert, "Compression Format for IPv6 [RFC6282] Hui, J., Ed. 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,
DOI 10.17487/RFC6282, September 2011, DOI 10.17487/RFC6282, September 2011,
<http://www.rfc-editor.org/info/rfc6282>. <https://www.rfc-editor.org/info/rfc6282>.
[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, <http://www.rfc-editor.org/info/rfc7102>. 2014, <https://www.rfc-editor.org/info/rfc7102>.
[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,
<http://www.rfc-editor.org/info/rfc7228>. <https://www.rfc-editor.org/info/rfc7228>.
Authors' Addresses Authors' Addresses
Pascal Thubert (editor) Pascal Thubert (editor)
Cisco Systems Cisco Systems
Village d'Entreprises Green Side Village d'Entreprises Green Side
400, Avenue de Roumanille 400, Avenue de Roumanille
Batiment T3 Batiment T3
Biot - Sophia Antipolis 06410 Biot - Sophia Antipolis 06410
FRANCE FRANCE
 End of changes. 27 change blocks. 
54 lines changed or deleted 62 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/