| < draft-ietf-bier-evpn-02.txt | draft-ietf-bier-evpn-03.txt > | |||
|---|---|---|---|---|
| BIER Z. Zhang | BIER Z. Zhang | |||
| Internet-Draft A. Przygienda | Internet-Draft A. Przygienda | |||
| Intended status: Standards Track Juniper Networks | Intended status: Standards Track Juniper Networks | |||
| Expires: May 7, 2020 A. Sajassi | Expires: October 18, 2020 A. Sajassi | |||
| Cisco Systems | Cisco Systems | |||
| J. Rabadan | J. Rabadan | |||
| Nokia | Nokia | |||
| November 4, 2019 | April 16, 2020 | |||
| EVPN BUM Using BIER | EVPN BUM Using BIER | |||
| draft-ietf-bier-evpn-02 | draft-ietf-bier-evpn-03 | |||
| Abstract | Abstract | |||
| This document specifies protocols and procedures for forwarding | This document specifies protocols and procedures for forwarding | |||
| broadcast, unknown unicast and multicast (BUM) traffic of Ethernet | broadcast, unknown unicast and multicast (BUM) traffic of Ethernet | |||
| VPNs (EVPN) using Bit Index Explicit Replication (BIER). | VPNs (EVPN) using Bit Index Explicit Replication (BIER). | |||
| Requirements Language | Requirements Language | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| skipping to change at page 1, line 42 ¶ | skipping to change at page 1, line 42 ¶ | |||
| 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 7, 2020. | This Internet-Draft will expire on October 18, 2020. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2019 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 | |||
| 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 | |||
| 1.1. Terminologies . . . . . . . . . . . . . . . . . . . . . . 3 | 1.1. Terminologies . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 2. Use of the PMSI Tunnel Attribute . . . . . . . . . . . . . . 4 | 2. Use of the PMSI Tunnel Attribute . . . . . . . . . . . . . . 4 | |||
| 2.1. Auxiliary Information . . . . . . . . . . . . . . . . . . 5 | 2.1. IP Based Tunnel and BIER PHP . . . . . . . . . . . . . . 5 | |||
| 2.2. Explicit Tracking . . . . . . . . . . . . . . . . . . . . 6 | 2.2. Explicit Tracking . . . . . . . . . . . . . . . . . . . . 6 | |||
| 2.2.1. Using IMET/SMET routes . . . . . . . . . . . . . . . 6 | 2.2.1. Using IMET/SMET routes . . . . . . . . . . . . . . . 6 | |||
| 2.2.2. Using S-PMSI/Leaf A-D Routes . . . . . . . . . . . . 6 | 2.2.2. Using S-PMSI/Leaf A-D Routes . . . . . . . . . . . . 6 | |||
| 2.3. MPLS Label in PTA . . . . . . . . . . . . . . . . . . . . 7 | 2.3. MPLS Label in PTA . . . . . . . . . . . . . . . . . . . . 7 | |||
| 3. Multihoming Split Horizon . . . . . . . . . . . . . . . . . . 8 | 3. Multihoming Split Horizon . . . . . . . . . . . . . . . . . . 8 | |||
| 4. Data Plane . . . . . . . . . . . . . . . . . . . . . . . . . 8 | 4. Data Plane . . . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 4.1. Encapsulation and Transmission . . . . . . . . . . . . . 8 | 4.1. Encapsulation and Transmission . . . . . . . . . . . . . 8 | |||
| 4.1.1. At a BFIR that is an Ingress PE . . . . . . . . . . . 8 | 4.1.1. At a BFIR that is an Ingress PE . . . . . . . . . . . 8 | |||
| 4.1.2. At a BFIR that is a P-tunnel Segmentation Point . . . 10 | 4.1.2. At a BFIR that is a P-tunnel Segmentation Point . . . 10 | |||
| 4.2. Disposition . . . . . . . . . . . . . . . . . . . . . . . 11 | 4.2. Disposition . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 4.2.1. At a BFER that is an Egress PE . . . . . . . . . . . 11 | 4.2.1. At a BFER that is an Egress PE . . . . . . . . . . . 11 | |||
| 4.2.2. At a BFER that is a P-tunnel Segmentation Point . . . 11 | 4.2.2. At a BFER that is a P-tunnel Segmentation Point . . . 11 | |||
| 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 6. Security Considerations . . . . . . . . . . . . . . . . . . . 11 | 6. Security Considerations . . . . . . . . . . . . . . . . . . . 12 | |||
| 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 12 | 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 12 | |||
| 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 | 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 | |||
| 8.1. Normative References . . . . . . . . . . . . . . . . . . 12 | 8.1. Normative References . . . . . . . . . . . . . . . . . . 12 | |||
| 8.2. Informative References . . . . . . . . . . . . . . . . . 13 | 8.2. Informative References . . . . . . . . . . . . . . . . . 13 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 14 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
| 1. Introduction | 1. Introduction | |||
| [RFC7432] and [RFC8365] specify the protocols and procedures for | [RFC7432] and [RFC8365] specify the protocols and procedures for | |||
| Ethernet VPNs (EVPNs). For broadcast, unknown unicast and multicast | Ethernet VPNs (EVPNs). For broadcast, unknown unicast and multicast | |||
| skipping to change at page 5, line 25 ¶ | skipping to change at page 5, line 25 ¶ | |||
| o "Flags". When the tunnel type is BIER, two of the flags in the | o "Flags". When the tunnel type is BIER, two of the flags in the | |||
| PTA Flags field are meaningful. Details about the use of these | PTA Flags field are meaningful. Details about the use of these | |||
| flags can be found in Section 2.2. | flags can be found in Section 2.2. | |||
| * "Leaf Info Required per Flow (LIR-pF)" | * "Leaf Info Required per Flow (LIR-pF)" | |||
| [I-D.ietf-bess-mvpn-expl-track] | [I-D.ietf-bess-mvpn-expl-track] | |||
| * "Leaf Info Required Bit (LIR)" | * "Leaf Info Required Bit (LIR)" | |||
| o "Auxiliary Information". This is optional, present if the total | ||||
| length of the PTA is larger then the sum of lengths of the fields | ||||
| before this one. It is in the form of a series of TLVs. | ||||
| Note that if a PTA specifying "BIER" is attached to an IMET, S-PMSI | Note that if a PTA specifying "BIER" is attached to an IMET, S-PMSI | |||
| A-D, or per-region I-PMSI A-D route, the route MUST NOT be | A-D, or per-region I-PMSI A-D route, the route MUST NOT be | |||
| distributed beyond the boundaries of a BIER domain. That is, any | distributed beyond the boundaries of a BIER domain. That is, any | |||
| routers that receive the route must be in the same BIER domain as the | routers that receive the route must be in the same BIER domain as the | |||
| originator of the route. If the originator is in more than one BIER | originator of the route. If the originator is in more than one BIER | |||
| domain, the route must be distributed only within the BIER domain in | domain, the route must be distributed only within the BIER domain in | |||
| which the BFR-Prefix in the PTA uniquely identifies the originator. | which the BFR-Prefix in the PTA uniquely identifies the originator. | |||
| As with all MVPN routes, distribution of these routes is controlled | As with all MVPN routes, distribution of these routes is controlled | |||
| by the provisioning of Route Targets. | by the provisioning of Route Targets. | |||
| 2.1. Auxiliary Information | 2.1. IP Based Tunnel and BIER PHP | |||
| For the "Auxiliary Information", one TLV is defined in this document | ||||
| - Tunnel Encapsulation TLV. The value part of the TLV is a Tunnel | ||||
| TLV as defined in [I-D.ietf-idr-tunnel-encaps]. | ||||
| This MAY be used when VXLAN/NVGRE/GENEVE encapsulation with an IP | When VXLAN/NVGRE/GENEVE is used for EVPN, by default the outer IP | |||
| header (and UDP header in case of VXLAN/GENVE) is the BIER payload. | header (and UDP header in case of VXLAN/GENVE) is not included in the | |||
| Normally that is not needed with BIER, except when BIER PHP [I- | BIER payload, except when it is known apriori that BIER PHP [I- | |||
| D.ietf-bier-php] is used and the encapsulation (after BIER header is | D.ietf-bier-php] is used in the BIER domain and the encapsulation | |||
| popped) between the BIER Penultimate Hop and the egress PE does not | (after BIER header is popped) between the BIER Penultimate Hop and | |||
| have a way to indicate the next header is VXLAN/NVGRE/GENEVE. In | the egress PE does not have a way to indicate the next header is | |||
| that case the full VXLAN/NVGRE/GENEVE encapsulation with an IP header | VXLAN/NVGRE/GENEVE. In that case the full VXLAN/NVGRE/GENEVE | |||
| MUST be used. The tunnel type (VXLAN/NVGRE/GENEVE), endpoint, and | encapsulation with an IP header MUST be included in the BIER payload. | |||
| some tunnel specific information MAY be specified in the Tunnel TLV | A well-known IP multicast address (to be assigned by IANA) is used as | |||
| or MAY be provisioned on PEs. The tunnel endpoint MUST be an IP | the destination address and the egress PEs MUST be set up to receive | |||
| multicast address and the receiving egress PE MUST be set up to | and process packets addressed to the address. The address is used | |||
| receive and process packets addressed to the address. The same | for all BDs, and the inner VXLAN/NVGRE/GENEVE header will be used to | |||
| multicast address can be used for all BDs, as the the inner | identify BDs. | |||
| VXLAN/NVGRE/GENEVE header will be used to identify BDs. | ||||
| 2.2. Explicit Tracking | 2.2. Explicit Tracking | |||
| When using BIER to transport an EVPN BUM data packet through a BIER | When using BIER to transport an EVPN BUM data packet through a BIER | |||
| domain, an ingress PE functions as a BFIR (see [RFC8279]). The BFIR | domain, an ingress PE functions as a BFIR (see [RFC8279]). The BFIR | |||
| must determine the set of BFERs to which the packet needs to be | must determine the set of BFERs to which the packet needs to be | |||
| delivered. This can be done in either of two ways in the following | delivered. This can be done in either of two ways in the following | |||
| two sections. | two sections. | |||
| 2.2.1. Using IMET/SMET routes | 2.2.1. Using IMET/SMET routes | |||
| skipping to change at page 11, line 48 ¶ | skipping to change at page 11, line 45 ¶ | |||
| This document requests two assignments in "BIER Next Protocol | This document requests two assignments in "BIER Next Protocol | |||
| Identifiers" registry, with the following two recommended values: | Identifiers" registry, with the following two recommended values: | |||
| o 7: Payload is VXLAN encapsulated (no IP/UDP header) | o 7: Payload is VXLAN encapsulated (no IP/UDP header) | |||
| o 8: Payload is NVGRE encapsulated (no IP header) | o 8: Payload is NVGRE encapsulated (no IP header) | |||
| o 9: Payload is GENEVE encapsulated (no IP/UDP header) | o 9: Payload is GENEVE encapsulated (no IP/UDP header) | |||
| This document requests one assignment of a multicast address for the | ||||
| case discussed in Section 2.1. Preferrably this is assigned from the | ||||
| Local Network Control Block (224.0.0/24). | ||||
| 6. Security Considerations | 6. Security Considerations | |||
| To be updated. | To be updated. | |||
| 7. Acknowledgements | 7. Acknowledgements | |||
| The authors thank Eric Rosen for his review and suggestions. | The authors thank Eric Rosen for his review and suggestions. | |||
| Additionally, much of the text is borrowed verbatim from [RFC8556]. | Additionally, much of the text is borrowed verbatim from [RFC8556]. | |||
| 8. References | 8. References | |||
| 8.1. Normative References | 8.1. Normative References | |||
| [I-D.ietf-bess-evpn-bum-procedure-updates] | [I-D.ietf-bess-evpn-bum-procedure-updates] | |||
| Zhang, Z., Lin, W., Rabadan, J., Patel, K., and A. | Zhang, Z., Lin, W., Rabadan, J., Patel, K., and A. | |||
| Sajassi, "Updates on EVPN BUM Procedures", draft-ietf- | Sajassi, "Updates on EVPN BUM Procedures", draft-ietf- | |||
| bess-evpn-bum-procedure-updates-07 (work in progress), | bess-evpn-bum-procedure-updates-08 (work in progress), | |||
| August 2019. | November 2019. | |||
| [I-D.ietf-bess-evpn-igmp-mld-proxy] | [I-D.ietf-bess-evpn-igmp-mld-proxy] | |||
| Sajassi, A., Thoria, S., Patel, K., Drake, J., and W. Lin, | Sajassi, A., Thoria, S., Patel, K., Drake, J., and W. Lin, | |||
| "IGMP and MLD Proxy for EVPN", draft-ietf-bess-evpn-igmp- | "IGMP and MLD Proxy for EVPN", draft-ietf-bess-evpn-igmp- | |||
| mld-proxy-04 (work in progress), September 2019. | mld-proxy-04 (work in progress), September 2019. | |||
| [I-D.ietf-bess-evpn-optimized-ir] | [I-D.ietf-bess-evpn-optimized-ir] | |||
| Rabadan, J., Sathappan, S., Lin, W., Katiyar, M., and A. | Rabadan, J., Sathappan, S., Lin, W., Katiyar, M., and A. | |||
| Sajassi, "Optimized Ingress Replication solution for | Sajassi, "Optimized Ingress Replication solution for | |||
| EVPN", draft-ietf-bess-evpn-optimized-ir-06 (work in | EVPN", draft-ietf-bess-evpn-optimized-ir-06 (work in | |||
| progress), October 2018. | progress), October 2018. | |||
| [I-D.ietf-bess-mvpn-expl-track] | [I-D.ietf-bess-mvpn-expl-track] | |||
| Dolganow, A., Kotalwar, J., Rosen, E., and Z. Zhang, | Dolganow, A., Kotalwar, J., Rosen, E., and Z. Zhang, | |||
| "Explicit Tracking with Wild Card Routes in Multicast | "Explicit Tracking with Wild Card Routes in Multicast | |||
| VPN", draft-ietf-bess-mvpn-expl-track-13 (work in | VPN", draft-ietf-bess-mvpn-expl-track-13 (work in | |||
| progress), November 2018. | progress), November 2018. | |||
| [I-D.ietf-idr-tunnel-encaps] | [I-D.ietf-idr-tunnel-encaps] | |||
| Patel, K., Velde, G., and S. Ramachandra, "The BGP Tunnel | Patel, K., Velde, G., and S. Ramachandra, "The BGP Tunnel | |||
| Encapsulation Attribute", draft-ietf-idr-tunnel-encaps-14 | Encapsulation Attribute", draft-ietf-idr-tunnel-encaps-15 | |||
| (work in progress), September 2019. | (work in progress), December 2019. | |||
| [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>. | |||
| [RFC6625] Rosen, E., Ed., Rekhter, Y., Ed., Hendrickx, W., and R. | [RFC6625] Rosen, E., Ed., Rekhter, Y., Ed., Hendrickx, W., and R. | |||
| Qiu, "Wildcards in Multicast VPN Auto-Discovery Routes", | Qiu, "Wildcards in Multicast VPN Auto-Discovery Routes", | |||
| RFC 6625, DOI 10.17487/RFC6625, May 2012, | RFC 6625, DOI 10.17487/RFC6625, May 2012, | |||
| <https://www.rfc-editor.org/info/rfc6625>. | <https://www.rfc-editor.org/info/rfc6625>. | |||
| skipping to change at page 13, line 42 ¶ | skipping to change at page 13, line 47 ¶ | |||
| 8.2. Informative References | 8.2. Informative References | |||
| [I-D.boutros-bess-evpn-geneve] | [I-D.boutros-bess-evpn-geneve] | |||
| Boutros, S., Sajassi, A., Drake, J., Rabadan, J., and S. | Boutros, S., Sajassi, A., Drake, J., Rabadan, J., and S. | |||
| Aldrin, "EVPN control plane for Geneve", draft-boutros- | Aldrin, "EVPN control plane for Geneve", draft-boutros- | |||
| bess-evpn-geneve-04 (work in progress), March 2019. | bess-evpn-geneve-04 (work in progress), March 2019. | |||
| [I-D.ietf-bier-php] | [I-D.ietf-bier-php] | |||
| Zhang, Z., "BIER Penultimate Hop Popping", draft-ietf- | Zhang, Z., "BIER Penultimate Hop Popping", draft-ietf- | |||
| bier-php-03 (work in progress), October 2019. | bier-php-04 (work in progress), October 2019. | |||
| [I-D.keyupate-bess-evpn-virtual-hub] | [I-D.keyupate-bess-evpn-virtual-hub] | |||
| Patel, K., Sajassi, A., Drake, J., Zhang, Z., and W. | Patel, K., Sajassi, A., Drake, J., Zhang, Z., and W. | |||
| Henderickx, "Virtual Hub-and-Spoke in BGP EVPNs", draft- | Henderickx, "Virtual Hub-and-Spoke in BGP EVPNs", draft- | |||
| keyupate-bess-evpn-virtual-hub-02 (work in progress), | keyupate-bess-evpn-virtual-hub-02 (work in progress), | |||
| September 2019. | September 2019. | |||
| [I-D.zzhang-bess-mvpn-evpn-cmcast-enhancements] | [I-D.zzhang-bess-mvpn-evpn-cmcast-enhancements] | |||
| Zhang, Z., Kebler, R., Lin, W., and E. Rosen, "MVPN/EVPN | Zhang, Z., Kebler, R., Lin, W., and E. Rosen, "MVPN/EVPN | |||
| C-Multicast Routes Enhancements", draft-zzhang-bess-mvpn- | C-Multicast Routes Enhancements", draft-zzhang-bess-mvpn- | |||
| End of changes. 14 change blocks. | ||||
| 35 lines changed or deleted | 30 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/ | ||||