| < draft-ietf-bier-php-00.txt | draft-ietf-bier-php-01.txt > | |||
|---|---|---|---|---|
| BIER Z. Zhang | BIER Z. Zhang | |||
| Internet-Draft Juniper Networks | Internet-Draft Juniper Networks | |||
| Intended status: Standards Track November 16, 2018 | Intended status: Standards Track November 28, 2018 | |||
| Expires: May 20, 2019 | Expires: June 1, 2019 | |||
| BIER Penultimate Hop Popping | BIER Penultimate Hop Popping | |||
| draft-ietf-bier-php-00 | draft-ietf-bier-php-01 | |||
| Abstract | Abstract | |||
| Bit Index Explicit Replication (BIER) can be used as provider tunnel | Bit Index Explicit Replication (BIER) can be used as provider tunnel | |||
| for MVPN/GTM [RFC6514] [RFC7716] or EVPN BUM [RFC7432]. It is | for MVPN/GTM [RFC6514] [RFC7716] or EVPN BUM [RFC7432]. It is | |||
| possible that not all routers in the provider network support BIER | possible that not all routers in the provider network support BIER | |||
| and there are various methods to handle BIER incapable transit | and there are various methods to handle BIER incapable transit | |||
| routers. However the MVPN/EVPN PEs are assumed to be BIER capable - | routers. However the MVPN/EVPN PEs are assumed to be BIER capable - | |||
| they are BFIRs/BFERs. This document specifies a method to allow BIER | they are BFIRs/BFERs. This document specifies a method to allow BIER | |||
| incapable routers to act as MVPN/EVPN PEs with BIER as the transport, | incapable routers to act as MVPN/EVPN PEs with BIER as the transport, | |||
| skipping to change at page 1, line 45 ¶ | skipping to change at page 1, line 45 ¶ | |||
| 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 May 20, 2019. | This Internet-Draft will expire on June 1, 2019. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2018 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 | |||
| (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 2, line 26 ¶ | skipping to change at page 2, line 26 ¶ | |||
| 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. Terminologies . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Terminologies . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 3. Specifications . . . . . . . . . . . . . . . . . . . . . . . 3 | 3. Specifications . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 4. Security Considerations . . . . . . . . . . . . . . . . . . . 4 | 4. Security Considerations . . . . . . . . . . . . . . . . . . . 4 | |||
| 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5 | 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 7.1. Normative References . . . . . . . . . . . . . . . . . . 5 | 7.1. Normative References . . . . . . . . . . . . . . . . . . 5 | |||
| 7.2. Informative References . . . . . . . . . . . . . . . . . 6 | 7.2. Informative References . . . . . . . . . . . . . . . . . 6 | |||
| Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7 | Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 1. Terminologies | 1. Terminologies | |||
| Familiarity with BIER/MVPN/EVPN protocols and procedures is assumed. | Familiarity with BIER/MVPN/EVPN protocols and procedures is assumed. | |||
| Some terminologies are listed below for convenience. | Some terminologies are listed below for convenience. | |||
| skipping to change at page 3, line 27 ¶ | skipping to change at page 3, line 27 ¶ | |||
| so that the upstream BFR can pop the BIER header and send the payload | so that the upstream BFR can pop the BIER header and send the payload | |||
| "natively" (note that the upstream BFR can be connected directly or | "natively" (note that the upstream BFR can be connected directly or | |||
| indiretly via a tunnel to the PE). This is similar to MPLS PHP | indiretly via a tunnel to the PE). This is similar to MPLS PHP | |||
| though it is the BIER header that is popped. In case of MPLS | though it is the BIER header that is popped. In case of MPLS | |||
| encapsulation, even the signaling is similar - a BIER incapable | encapsulation, even the signaling is similar - a BIER incapable | |||
| router signals as if it supported BIER, but to request PHP at the | router signals as if it supported BIER, but to request PHP at the | |||
| penultimate hop, it signals an Implicit Null label instead of a | penultimate hop, it signals an Implicit Null label instead of a | |||
| regular BIER label as the Label Range Base in its BIER MPLS | regular BIER label as the Label Range Base in its BIER MPLS | |||
| Encapsulation sub-TLV. | Encapsulation sub-TLV. | |||
| In order for the PE to be able to correctly forward the packets | The transition of an existing MVPN/EVPN deployment with traditional | |||
| resulting from the PHP, certain conditions must be met, as specified | provider tunnels to using BIER with some PEs not capable of receiving | |||
| in Section 3. | BIER packets can be incremental. All PEs are first upgraded to | |||
| support BIER at least in the control plane, with those not capable of | ||||
| BIER forwarding requesting PHP. Then BIER capable ingress PEs | ||||
| independently and incrementally switch to BIER transport. | ||||
| While the above text uses MVPN/EVPN as example, BIER PHP is | While the above text uses MVPN/EVPN as example, BIER PHP is | |||
| applicable to any scenario where the multicast flow overlay edge | applicable to any scenario where the multicast flow overlay edge | |||
| router does not support BIER. | router does not support BIER. | |||
| This works well if a BIER incapable PE only needs to receive | This works well if a BIER incapable PE only needs to receive | |||
| multicast traffic. If it needs to send multicast traffic as well, | multicast traffic. If it needs to send multicast traffic as well, | |||
| then it must Ingress Replicate to a BIER capable helper PE, who will | then it must Ingress Replicate to a BIER capable helper PE, who will | |||
| in turn relay the packet to other PEs. The helper PE is either a | in turn relay the packet to other PEs. The helper PE is either a | |||
| Virtual Hub as specified in [RFC7024] for MVPN and [I-D.keyupate- | Virtual Hub as specified in [RFC7024] for MVPN and [I-D.keyupate- | |||
| bess-evpn-virtual-hub] for EVPN, or an AR-Replicator as specified in | bess-evpn-virtual-hub] for EVPN, or an AR-Replicator as specified in | |||
| [I-D.ietf-bess-evpn-optimized-ir] for EVPN. | [I-D.ietf-bess-evpn-optimized-ir] for EVPN. | |||
| 3. Specifications | 3. Specifications | |||
| The procedures in this section can be applied only if, by means | The procedures in this section apply only if, by means outside the | |||
| outside the scope of this document, it is known that one of the | scope of this document, it is known that the payload after BIER | |||
| following conditions is met. | header is MPLS packet with downstream-assigned label at top of stack | |||
| (i.e., the Proto field in the BIER header is 1). For example, a | ||||
| o The payload after BIER header is IPv4 or IPv6 (i.e., the Proto | label from a Domain-wide Common Block (DCB) is used as specified in | |||
| field in the BIER header is 4 or 6). | [I-D.ietf-bess-mvpn-evpn-aggregation-label]. | |||
| Notice that in this case the Destination Address in the IPv4/IPv6 | ||||
| header must be in the address space for the BIER layer. | ||||
| o The payload after BIER header is MPLS packet with downstream- | ||||
| assigned label at top of stack (i.e., the Proto field in the BIER | ||||
| header is 1). For example, a label from a Domain-wide Common | ||||
| Block (DCB) is used as specified in [I-D.zzhang-bess-mvpn-evpn- | ||||
| aggregation-label]. | ||||
| A BIER incapable router, if acting as a multicast flow overlay | A BIER incapable router, if acting as a multicast flow overlay | |||
| router, MUST signal its BIER information as specified in [RFC8401] or | router, MUST signal its BIER information as specified in [RFC8401] or | |||
| [I-D.ietf-bier-ospf-bier-extensions] or [I-D.ietf-bier-idr- | [I-D.ietf-bier-ospf-bier-extensions] or [I-D.ietf-bier-idr- | |||
| extensions], with a PHP sub-sub-TLV included in the BIER sub-TLV | extensions], with a PHP sub-sub-TLV included in the BIER sub-TLV | |||
| attached to the BIER incapable router's BIER prefix to request BIER | attached to the BIER incapable router's BIER prefix to request BIER | |||
| PHP from other BFRs. The sub-sub-TLV's type is TBD, and the length | PHP from other BFRs. The sub-sub-TLV's type is TBD, and the length | |||
| is 0. | is 0. | |||
| With MPLS encapsulation, the BIER incapable multicast flow overlay | With MPLS encapsulation, the BIER incapable multicast flow overlay | |||
| skipping to change at page 5, line 33 ¶ | skipping to change at page 5, line 27 ¶ | |||
| The author wants to thank Eric Rosen and Antonie Przygienda for their | The author wants to thank Eric Rosen and Antonie Przygienda for their | |||
| review, comments and suggestions. The author also wants to thank | review, comments and suggestions. The author also wants to thank | |||
| Senthil Dhanaraj for his suggestion of requesting PHP if a BFER does | Senthil Dhanaraj for his suggestion of requesting PHP if a BFER does | |||
| not support certain BSL. | not support certain BSL. | |||
| 7. References | 7. References | |||
| 7.1. Normative References | 7.1. Normative References | |||
| [I-D.ietf-bess-evpn-optimized-ir] | ||||
| Rabadan, J., Sathappan, S., Lin, W., Katiyar, M., and A. | ||||
| Sajassi, "Optimized Ingress Replication solution for | ||||
| EVPN", draft-ietf-bess-evpn-optimized-ir-06 (work in | ||||
| progress), October 2018. | ||||
| [I-D.ietf-bier-idr-extensions] | [I-D.ietf-bier-idr-extensions] | |||
| Xu, X., Chen, M., Patel, K., Wijnands, I., and T. | Xu, X., Chen, M., Patel, K., Wijnands, I., and T. | |||
| Przygienda, "BGP Extensions for BIER", draft-ietf-bier- | Przygienda, "BGP Extensions for BIER", draft-ietf-bier- | |||
| idr-extensions-05 (work in progress), March 2018. | idr-extensions-05 (work in progress), March 2018. | |||
| [I-D.ietf-bier-ospf-bier-extensions] | ||||
| Psenak, P., Kumar, N., Wijnands, I., Dolganow, A., | ||||
| Przygienda, T., Zhang, Z., and S. Aldrin, "OSPFv2 | ||||
| Extensions for BIER", draft-ietf-bier-ospf-bier- | ||||
| extensions-18 (work in progress), June 2018. | ||||
| [I-D.keyupate-bess-evpn-virtual-hub] | ||||
| Patel, K., Sajassi, A., Drake, J., Zhang, Z., and W. | ||||
| Henderickx, "Virtual Hub-and-Spoke in BGP EVPNs", draft- | ||||
| keyupate-bess-evpn-virtual-hub-01 (work in progress), | ||||
| October 2018. | ||||
| [I-D.zzhang-bess-mvpn-evpn-aggregation-label] | [I-D.zzhang-bess-mvpn-evpn-aggregation-label] | |||
| Zhang, Z., Rosen, E., Lin, W., Li, Z., and I. Wijnands, | Zhang, Z., Rosen, E., Lin, W., Li, Z., and I. Wijnands, | |||
| "MVPN/EVPN Tunnel Aggregation with Common Labels", draft- | "MVPN/EVPN Tunnel Aggregation with Common Labels", draft- | |||
| zzhang-bess-mvpn-evpn-aggregation-label-01 (work in | zzhang-bess-mvpn-evpn-aggregation-label-01 (work in | |||
| progress), April 2018. | progress), April 2018. | |||
| [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, | |||
| <https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| skipping to change at page 6, line 39 ¶ | skipping to change at page 6, line 16 ¶ | |||
| 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>. | |||
| [RFC8401] Ginsberg, L., Ed., Przygienda, T., Aldrin, S., and Z. | [RFC8401] Ginsberg, L., Ed., Przygienda, T., Aldrin, S., and Z. | |||
| Zhang, "Bit Index Explicit Replication (BIER) Support via | Zhang, "Bit Index Explicit Replication (BIER) Support via | |||
| IS-IS", RFC 8401, DOI 10.17487/RFC8401, June 2018, | IS-IS", RFC 8401, DOI 10.17487/RFC8401, June 2018, | |||
| <https://www.rfc-editor.org/info/rfc8401>. | <https://www.rfc-editor.org/info/rfc8401>. | |||
| [RFC8444] Psenak, P., Ed., Kumar, N., Wijnands, IJ., Dolganow, A., | ||||
| Przygienda, T., Zhang, J., and S. Aldrin, "OSPFv2 | ||||
| Extensions for Bit Index Explicit Replication (BIER)", | ||||
| RFC 8444, DOI 10.17487/RFC8444, November 2018, | ||||
| <https://www.rfc-editor.org/info/rfc8444>. | ||||
| 7.2. Informative References | 7.2. Informative References | |||
| [I-D.ietf-bess-evpn-optimized-ir] | ||||
| Rabadan, J., Sathappan, S., Lin, W., Katiyar, M., and A. | ||||
| Sajassi, "Optimized Ingress Replication solution for | ||||
| EVPN", draft-ietf-bess-evpn-optimized-ir-06 (work in | ||||
| progress), October 2018. | ||||
| [I-D.keyupate-bess-evpn-virtual-hub] | ||||
| Patel, K., Sajassi, A., Drake, J., Zhang, Z., and W. | ||||
| Henderickx, "Virtual Hub-and-Spoke in BGP EVPNs", draft- | ||||
| keyupate-bess-evpn-virtual-hub-01 (work in progress), | ||||
| October 2018. | ||||
| [RFC6513] Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/ | [RFC6513] Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/ | |||
| BGP IP VPNs", RFC 6513, DOI 10.17487/RFC6513, February | BGP IP VPNs", RFC 6513, DOI 10.17487/RFC6513, February | |||
| 2012, <https://www.rfc-editor.org/info/rfc6513>. | 2012, <https://www.rfc-editor.org/info/rfc6513>. | |||
| [RFC6514] Aggarwal, R., Rosen, E., Morin, T., and Y. Rekhter, "BGP | [RFC6514] Aggarwal, R., Rosen, E., Morin, T., and Y. Rekhter, "BGP | |||
| Encodings and Procedures for Multicast in MPLS/BGP IP | Encodings and Procedures for Multicast in MPLS/BGP IP | |||
| VPNs", RFC 6514, DOI 10.17487/RFC6514, February 2012, | VPNs", RFC 6514, DOI 10.17487/RFC6514, February 2012, | |||
| <https://www.rfc-editor.org/info/rfc6514>. | <https://www.rfc-editor.org/info/rfc6514>. | |||
| [RFC7024] Jeng, H., Uttaro, J., Jalil, L., Decraene, B., Rekhter, | [RFC7024] Jeng, H., Uttaro, J., Jalil, L., Decraene, B., Rekhter, | |||
| End of changes. 10 change blocks. | ||||
| 41 lines changed or deleted | 35 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/ | ||||