< draft-ietf-bier-te-arch-07.txt   draft-ietf-bier-te-arch-08.txt >
Network Working Group T. Eckert, Ed. Network Working Group T. Eckert, Ed.
Internet-Draft Futurewei Internet-Draft Futurewei
Intended status: Standards Track G. Cauchie Intended status: Standards Track G. Cauchie
Expires: September 10, 2020 Bouygues Telecom Expires: January 14, 2021 Bouygues Telecom
M. Menth M. Menth
University of Tuebingen University of Tuebingen
March 9, 2020 July 13, 2020
Tree Engineering for Bit Index Explicit Replication (BIER-TE) Tree Engineering for Bit Index Explicit Replication (BIER-TE)
draft-ietf-bier-te-arch-07 draft-ietf-bier-te-arch-08
Abstract Abstract
This memo introduces per-packet stateless strict and loose path This memo introduces per-packet stateless strict and loose path
steered replication and forwarding for Bit Index Explicit Replication steered replication and forwarding for Bit Index Explicit Replication
packets (RFC8279). This is called BIER Tree Engineering (BIER-TE). packets (RFC8279). This is called BIER Tree Engineering (BIER-TE).
BIER-TE can be used as a path steering mechanism in future Traffic BIER-TE can be used as a path steering mechanism in future Traffic
Engineering solutions for BIER (BIER-TE). Engineering solutions for BIER (BIER-TE).
BIER-TE leverages RFC8279 and extends it with a new semantic for bits BIER-TE leverages RFC8279 and extends it with a new semantic for bits
skipping to change at page 2, line 48 skipping to change at page 2, line 48
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 September 10, 2020. This Internet-Draft will expire on January 14, 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 Provisions Relating to IETF Documents
(https://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
skipping to change at page 3, line 37 skipping to change at page 3, line 37
2. Components . . . . . . . . . . . . . . . . . . . . . . . . . 9 2. Components . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1. The Multicast Flow Overlay . . . . . . . . . . . . . . . 10 2.1. The Multicast Flow Overlay . . . . . . . . . . . . . . . 10
2.2. The BIER-TE Controller . . . . . . . . . . . . . . . . . 10 2.2. The BIER-TE Controller . . . . . . . . . . . . . . . . . 10
2.2.1. Assignment of BitPositions to adjacencies of the 2.2.1. Assignment of BitPositions to adjacencies of the
network topology . . . . . . . . . . . . . . . . . . 11 network topology . . . . . . . . . . . . . . . . . . 11
2.2.2. Changes in the network topology . . . . . . . . . . . 11 2.2.2. Changes in the network topology . . . . . . . . . . . 11
2.2.3. Set up per-multicast flow BIER-TE state . . . . . . . 11 2.2.3. Set up per-multicast flow BIER-TE state . . . . . . . 11
2.2.4. Link/Node Failures and Recovery . . . . . . . . . . . 12 2.2.4. Link/Node Failures and Recovery . . . . . . . . . . . 12
2.3. The BIER-TE Forwarding Layer . . . . . . . . . . . . . . 12 2.3. The BIER-TE Forwarding Layer . . . . . . . . . . . . . . 12
2.4. The Routing Underlay . . . . . . . . . . . . . . . . . . 12 2.4. The Routing Underlay . . . . . . . . . . . . . . . . . . 12
3. BIER-TE Forwarding . . . . . . . . . . . . . . . . . . . . . 12 2.5. Traffic Engineering Considerations . . . . . . . . . . . 12
3.1. The Bit Index Forwarding Table (BIFT) . . . . . . . . . . 12 3. BIER-TE Forwarding . . . . . . . . . . . . . . . . . . . . . 13
3.1. The Bit Index Forwarding Table (BIFT) . . . . . . . . . . 13
3.2. Adjacency Types . . . . . . . . . . . . . . . . . . . . . 14 3.2. Adjacency Types . . . . . . . . . . . . . . . . . . . . . 14
3.2.1. Forward Connected . . . . . . . . . . . . . . . . . . 14 3.2.1. Forward Connected . . . . . . . . . . . . . . . . . . 15
3.2.2. Forward Routed . . . . . . . . . . . . . . . . . . . 14 3.2.2. Forward Routed . . . . . . . . . . . . . . . . . . . 15
3.2.3. ECMP . . . . . . . . . . . . . . . . . . . . . . . . 14 3.2.3. ECMP . . . . . . . . . . . . . . . . . . . . . . . . 15
3.2.4. Local Decap . . . . . . . . . . . . . . . . . . . . . 15 3.2.4. Local Decap . . . . . . . . . . . . . . . . . . . . . 16
3.3. Encapsulation considerations . . . . . . . . . . . . . . 15 3.3. Encapsulation considerations . . . . . . . . . . . . . . 16
3.4. Basic BIER-TE Forwarding Example . . . . . . . . . . . . 15 3.4. Basic BIER-TE Forwarding Example . . . . . . . . . . . . 16
3.5. Forwarding comparison with BIER . . . . . . . . . . . . . 18 3.5. Forwarding comparison with BIER . . . . . . . . . . . . . 19
3.6. Requirements . . . . . . . . . . . . . . . . . . . . . . 18 3.6. Requirements . . . . . . . . . . . . . . . . . . . . . . 19
4. BIER-TE Controller BitPosition Assignments . . . . . . . . . 19 4. BIER-TE Controller BitPosition Assignments . . . . . . . . . 20
4.1. P2P Links . . . . . . . . . . . . . . . . . . . . . . . . 19 4.1. P2P Links . . . . . . . . . . . . . . . . . . . . . . . . 20
4.2. BFER . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.2. BFER . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.3. Leaf BFERs . . . . . . . . . . . . . . . . . . . . . . . 19 4.3. Leaf BFERs . . . . . . . . . . . . . . . . . . . . . . . 20
4.4. LANs . . . . . . . . . . . . . . . . . . . . . . . . . . 20 4.4. LANs . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.5. Hub and Spoke . . . . . . . . . . . . . . . . . . . . . . 21 4.5. Hub and Spoke . . . . . . . . . . . . . . . . . . . . . . 22
4.6. Rings . . . . . . . . . . . . . . . . . . . . . . . . . . 21 4.6. Rings . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.7. Equal Cost MultiPath (ECMP) . . . . . . . . . . . . . . . 22 4.7. Equal Cost MultiPath (ECMP) . . . . . . . . . . . . . . . 23
4.8. Routed adjacencies . . . . . . . . . . . . . . . . . . . 25 4.8. Routed adjacencies . . . . . . . . . . . . . . . . . . . 26
4.8.1. Reducing BitPositions . . . . . . . . . . . . . . . . 25 4.8.1. Reducing BitPositions . . . . . . . . . . . . . . . . 26
4.8.2. Supporting nodes without BIER-TE . . . . . . . . . . 25 4.8.2. Supporting nodes without BIER-TE . . . . . . . . . . 26
4.9. Reuse of BitPositions (without DNR) . . . . . . . . . . . 25 4.9. Reuse of BitPositions (without DNR) . . . . . . . . . . . 26
4.10. Summary of BP optimizations . . . . . . . . . . . . . . . 27 4.10. Summary of BP optimizations . . . . . . . . . . . . . . . 28
5. Avoiding loops and duplicates . . . . . . . . . . . . . . . . 28 5. Avoiding loops and duplicates . . . . . . . . . . . . . . . . 29
5.1. Loops . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5.1. Loops . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.2. Duplicates . . . . . . . . . . . . . . . . . . . . . . . 28 5.2. Duplicates . . . . . . . . . . . . . . . . . . . . . . . 29
6. BIER-TE Forwarding Pseudocode . . . . . . . . . . . . . . . . 28 6. BIER-TE Forwarding Pseudocode . . . . . . . . . . . . . . . . 29
7. Managing SI, subdomains and BFR-ids . . . . . . . . . . . . . 31 7. Managing SI, subdomains and BFR-ids . . . . . . . . . . . . . 32
7.1. Why SI and sub-domains . . . . . . . . . . . . . . . . . 32 7.1. Why SI and sub-domains . . . . . . . . . . . . . . . . . 33
7.2. Bit assignment comparison BIER and BIER-TE . . . . . . . 33 7.2. Bit assignment comparison BIER and BIER-TE . . . . . . . 34
7.3. Using BFR-id with BIER-TE . . . . . . . . . . . . . . . . 33 7.3. Using BFR-id with BIER-TE . . . . . . . . . . . . . . . . 34
7.4. Assigning BFR-ids for BIER-TE . . . . . . . . . . . . . . 34 7.4. Assigning BFR-ids for BIER-TE . . . . . . . . . . . . . . 35
7.5. Example bit allocations . . . . . . . . . . . . . . . . . 35 7.5. Example bit allocations . . . . . . . . . . . . . . . . . 36
7.5.1. With BIER . . . . . . . . . . . . . . . . . . . . . . 35 7.5.1. With BIER . . . . . . . . . . . . . . . . . . . . . . 36
7.5.2. With BIER-TE . . . . . . . . . . . . . . . . . . . . 36 7.5.2. With BIER-TE . . . . . . . . . . . . . . . . . . . . 37
7.6. Summary . . . . . . . . . . . . . . . . . . . . . . . . . 37 7.6. Summary . . . . . . . . . . . . . . . . . . . . . . . . . 38
8. BIER-TE and Segment Routing . . . . . . . . . . . . . . . . . 37 8. BIER-TE and Segment Routing . . . . . . . . . . . . . . . . . 38
9. Security Considerations . . . . . . . . . . . . . . . . . . . 38 9. Security Considerations . . . . . . . . . . . . . . . . . . . 39
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 39 10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 40
11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 39 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 40
12. Change log [RFC Editor: Please remove] . . . . . . . . . . . 39 12. Change log [RFC Editor: Please remove] . . . . . . . . . . . 40
13. References . . . . . . . . . . . . . . . . . . . . . . . . . 44 13. References . . . . . . . . . . . . . . . . . . . . . . . . . 45
13.1. Normative References . . . . . . . . . . . . . . . . . . 44 13.1. Normative References . . . . . . . . . . . . . . . . . . 45
13.2. Informative References . . . . . . . . . . . . . . . . . 44 13.2. Informative References . . . . . . . . . . . . . . . . . 45
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 45 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 46
1. Introduction 1. Introduction
BIER-TE shares architecture, terminology and packet formats with BIER BIER-TE shares architecture, terminology and packet formats with BIER
as described in [RFC8279] and [RFC8296]. This document describes as described in [RFC8279] and [RFC8296]. This document describes
BIER-TE in the expectation that the reader is familiar with these two BIER-TE in the expectation that the reader is familiar with these two
documents. documents.
In BIER-TE, BitPositions (BP) indicate adjacencies. The BIFT of each In BIER-TE, BitPositions (BP) indicate adjacencies. The BIFT of each
BFR is only populated with BP that are adjacent to the BFR in the BFR is only populated with BP that are adjacent to the BFR in the
skipping to change at page 12, line 44 skipping to change at page 12, line 44
underlay. BIER-TE forwarding uses the Routing underlay for underlay. BIER-TE forwarding uses the Routing underlay for
forward_routed adjacencies which copy BIER-TE packets to not- forward_routed adjacencies which copy BIER-TE packets to not-
directly-connected BFRs (see below for adjacency definitions). directly-connected BFRs (see below for adjacency definitions).
If the BFR intends to support FRR for BIER-TE, then the BIER-TE If the BFR intends to support FRR for BIER-TE, then the BIER-TE
forwarding plane needs to receive fast adjacency up/down forwarding plane needs to receive fast adjacency up/down
notifications: Link up/down or neighbor up/down, e.g. from BFD. notifications: Link up/down or neighbor up/down, e.g. from BFD.
Providing these notifications is considered to be part of the routing Providing these notifications is considered to be part of the routing
underlay in this document. underlay in this document.
2.5. Traffic Engineering Considerations
Traffic Engineering ([I-D.dt-teas-rfc3272bis]) provides performance
optimization of operational IP networks while utilizing network
resources economically and reliably. The key elements needed to
effect TE are policy, path steering and resource management. These
elements require support at the control/controller level and within
the forwarding plane.
Policy decisions are made within the BIER-TE control plane, i.e.,
within BIER-TE Controllers. Controllers use policy when composing
BitStrings (BFR flow state) and BFR BIFT state. The mapping of user/
IP traffic to specific BitStrings/BIER-TE flows is made based on
policy. The specifics details of BIER-TE policies and how a
controller uses such are out of scope of this document.
Path steering is supported via the definition of a BitString.
BitStrings used in BIER-TE are composed based on policy and resource
management considerations. When composing BIER-TE BitStrings, a
Controller MUST take into account the resources available at each BFR
and for each BP when it is providing congestion loss free services
such as for Rate Controlled Service Disciplines (RCSD). Resource
availability could be provided for example via routing protocol
information, but may also be obtained via a BIER-TE control protocol.
The resource usage of the BIER-TE traffic admitted by the BIER-TE
controller can be solely tracked on the BIER-TE Controller based on
local accounting as long as no forward_routed adjacencies are used
(see below for definition of forward_routed adjacencies). When
forward_routed adjacencies are used, the paths selected by the
underlying routing protocol need to be tracked as well.
Resource management has implications on the forwarding plane beyond
the BIER-TE defined steering of packets. This includes allocation of
buffers to guarantee the worst case requirements of admitted RCSD
trafic and potential policing and/or rate-shaping mechanisms,
typically done via various forms of queuing. This level of resource
control, while optional, is important in networks that wish to
support congestion management policies to control or regulate the
offered traffic to deliver different levels of service and alleviate
congestion problems, or those networks that wish to control latencies
experienced by specific traffic flows.
3. BIER-TE Forwarding 3. BIER-TE Forwarding
3.1. The Bit Index Forwarding Table (BIFT) 3.1. The Bit Index Forwarding Table (BIFT)
The Bit Index Forwarding Table (BIFT) exists in every BFR. For every The Bit Index Forwarding Table (BIFT) exists in every BFR. For every
subdomain in use, it is a table indexed by SI:BitPosition and is subdomain in use, it is a table indexed by SI:BitPosition and is
populated by the BIER-TE control plane. Each index can be empty or populated by the BIER-TE control plane. Each index can be empty or
contain a list of one or more adjacencies. contain a list of one or more adjacencies.
BIER-TE can support multiple subdomains like BIER. Each one with a BIER-TE can support multiple subdomains like BIER. Each one with a
skipping to change at page 39, line 19 skipping to change at page 40, line 19
11. Acknowledgements 11. Acknowledgements
The authors would like to thank Greg Shepherd, Ijsbrand Wijnands, The authors would like to thank Greg Shepherd, Ijsbrand Wijnands,
Neale Ranns, Dirk Trossen, Sandy Zheng, Lou Berger and Jeffrey Zhang Neale Ranns, Dirk Trossen, Sandy Zheng, Lou Berger and Jeffrey Zhang
for their reviews and suggestions. for their reviews and suggestions.
12. Change log [RFC Editor: Please remove] 12. Change log [RFC Editor: Please remove]
draft-ietf-bier-te-arch: draft-ietf-bier-te-arch:
08: Incorporated (with hopefully acceptable fixes) for Lou
suggested section 2.5, TE considerations.
Fixes are primarily to the point to a) emphasize that BIER-TE does
not depend on the routing underlay unless forward_routed
adjacencies are used, and b) that the allocation and tracking of
resources does not explicitly have to be tied to BPs, because they
are just steering labels. Instead, it would ideally come from
per-hop resource management that can be maintained only via local
accounting in the controller.
07: Further reworking text for Lou. 07: Further reworking text for Lou.
Renamed BIER-PE to BIER-TE standing for "Tree Engineering" after Renamed BIER-PE to BIER-TE standing for "Tree Engineering" after
votes from BIER WG. votes from BIER WG.
Removed section 1.1 (introduced by version 06) because not Removed section 1.1 (introduced by version 06) because not
considered necessary in this doc by Lou (for framework doc). considered necessary in this doc by Lou (for framework doc).
Added [RFC editor pls. remove] Section to explain name change to Added [RFC editor pls. remove] Section to explain name change to
future reviewers. future reviewers.
skipping to change at page 44, line 34 skipping to change at page 45, line 44
<https://www.rfc-editor.org/info/rfc8279>. <https://www.rfc-editor.org/info/rfc8279>.
[RFC8296] Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A., [RFC8296] Wijnands, IJ., Ed., Rosen, E., Ed., Dolganow, A.,
Tantsura, J., Aldrin, S., and I. Meilik, "Encapsulation Tantsura, J., Aldrin, S., and I. Meilik, "Encapsulation
for Bit Index Explicit Replication (BIER) in MPLS and Non- for Bit Index Explicit Replication (BIER) in MPLS and Non-
MPLS Networks", RFC 8296, DOI 10.17487/RFC8296, January MPLS Networks", RFC 8296, DOI 10.17487/RFC8296, January
2018, <https://www.rfc-editor.org/info/rfc8296>. 2018, <https://www.rfc-editor.org/info/rfc8296>.
13.2. Informative References 13.2. Informative References
[I-D.dt-teas-rfc3272bis]
Farrel, A., "Overview and Principles of Internet Traffic
Engineering", draft-dt-teas-rfc3272bis-11 (work in
progress), May 2020.
[I-D.ietf-bier-multicast-http-response] [I-D.ietf-bier-multicast-http-response]
Trossen, D., Rahman, A., Wang, C., and T. Eckert, Trossen, D., Rahman, A., Wang, C., and T. Eckert,
"Applicability of BIER Multicast Overlay for Adaptive "Applicability of BIER Multicast Overlay for Adaptive
Streaming Services", draft-ietf-bier-multicast-http- Streaming Services", draft-ietf-bier-multicast-http-
response-03 (work in progress), February 2020. response-03 (work in progress), February 2020.
[I-D.ietf-roll-ccast] [I-D.ietf-roll-ccast]
Bergmann, O., Bormann, C., Gerdes, S., and H. Chen, Bergmann, O., Bormann, C., Gerdes, S., and H. Chen,
"Constrained-Cast: Source-Routed Multicast for RPL", "Constrained-Cast: Source-Routed Multicast for RPL",
draft-ietf-roll-ccast-01 (work in progress), October 2017. draft-ietf-roll-ccast-01 (work in progress), October 2017.
[I-D.qiang-detnet-large-scale-detnet]
Qiang, L., Geng, X., Liu, B., Eckert, T., Geng, L., and G.
Li, "Large-Scale Deterministic IP Network", draft-qiang-
detnet-large-scale-detnet-05 (work in progress), September
2019.
[ICC] Reed, M., Al-Naday, M., Thomos, N., Trossen, D., [ICC] Reed, M., Al-Naday, M., Thomos, N., Trossen, D.,
Petropoulos, G., and S. Spirou, "Stateless multicast Petropoulos, G., and S. Spirou, "Stateless multicast
switching in software defined networks", IEEE switching in software defined networks", IEEE
International Conference on Communications (ICC), Kuala International Conference on Communications (ICC), Kuala
Lumpur, Malaysia, 2016, May 2016, Lumpur, Malaysia, 2016, May 2016,
<https://ieeexplore.ieee.org/document/7511036>. <https://ieeexplore.ieee.org/document/7511036>.
[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,
 End of changes. 10 change blocks. 
49 lines changed or deleted 114 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/