draft-ietf-bess-srv6-services-03.txt | draft-ietf-bess-srv6-services-04.txt | |||
---|---|---|---|---|
BESS Working Group G. Dawra, Ed. | BESS Working Group G. Dawra, Ed. | |||
Internet-Draft LinkedIn | Internet-Draft LinkedIn | |||
Intended status: Standards Track C. Filsfils | Intended status: Standards Track C. Filsfils | |||
Expires: January 12, 2021 Cisco Systems | Expires: January 31, 2021 Cisco Systems | |||
R. Raszuk | R. Raszuk | |||
Bloomberg LP | Bloomberg LP | |||
B. Decraene | B. Decraene | |||
Orange | Orange | |||
S. Zhuang | S. Zhuang | |||
Huawei Technologies | Huawei Technologies | |||
J. Rabadan | J. Rabadan | |||
Nokia | Nokia | |||
July 11, 2020 | July 30, 2020 | |||
SRv6 BGP based Overlay services | SRv6 BGP based Overlay services | |||
draft-ietf-bess-srv6-services-03 | draft-ietf-bess-srv6-services-04 | |||
Abstract | Abstract | |||
This draft defines procedures and messages for SRv6-based BGP | This draft defines procedures and messages for SRv6-based BGP | |||
services including L3VPN, EVPN and Internet services. It builds on | services including L3VPN, EVPN and Internet services. It builds on | |||
RFC4364 "BGP/MPLS IP Virtual Private Networks (VPNs)" and RFC7432 | RFC4364 "BGP/MPLS IP Virtual Private Networks (VPNs)" and RFC7432 | |||
"BGP MPLS-Based Ethernet VPN". | "BGP MPLS-Based Ethernet VPN". | |||
Status of This Memo | Status of This Memo | |||
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 January 12, 2021. | This Internet-Draft will expire on January 31, 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 2, line 32 ¶ | skipping to change at page 2, line 32 ¶ | |||
3.2. SRv6 Service Data Sub-Sub-TLVs . . . . . . . . . . . . . 7 | 3.2. SRv6 Service Data Sub-Sub-TLVs . . . . . . . . . . . . . 7 | |||
3.2.1. SRv6 SID Structure Sub-Sub-TLV . . . . . . . . . . . 7 | 3.2.1. SRv6 SID Structure Sub-Sub-TLV . . . . . . . . . . . 7 | |||
4. Encoding SRv6 SID information . . . . . . . . . . . . . . . . 9 | 4. Encoding SRv6 SID information . . . . . . . . . . . . . . . . 9 | |||
5. BGP based L3 service over SRv6 . . . . . . . . . . . . . . . 10 | 5. BGP based L3 service over SRv6 . . . . . . . . . . . . . . . 10 | |||
5.1. IPv4 VPN Over SRv6 Core . . . . . . . . . . . . . . . . . 11 | 5.1. IPv4 VPN Over SRv6 Core . . . . . . . . . . . . . . . . . 11 | |||
5.2. IPv6 VPN Over SRv6 Core . . . . . . . . . . . . . . . . . 12 | 5.2. IPv6 VPN Over SRv6 Core . . . . . . . . . . . . . . . . . 12 | |||
5.3. Global IPv4 over SRv6 Core . . . . . . . . . . . . . . . 12 | 5.3. Global IPv4 over SRv6 Core . . . . . . . . . . . . . . . 12 | |||
5.4. Global IPv6 over SRv6 Core . . . . . . . . . . . . . . . 12 | 5.4. Global IPv6 over SRv6 Core . . . . . . . . . . . . . . . 12 | |||
6. BGP based Ethernet VPN (EVPN) over SRv6 . . . . . . . . . . . 12 | 6. BGP based Ethernet VPN (EVPN) over SRv6 . . . . . . . . . . . 12 | |||
6.1. Ethernet Auto-discovery route over SRv6 Core . . . . . . 13 | 6.1. Ethernet Auto-discovery route over SRv6 Core . . . . . . 13 | |||
6.1.1. Per-ES A-D route . . . . . . . . . . . . . . . . . . 14 | 6.1.1. Ethernet A-D per ES route . . . . . . . . . . . . . . 14 | |||
6.1.2. Per-EVI A-D route . . . . . . . . . . . . . . . . . . 14 | 6.1.2. Ethernet A-D per EVI route . . . . . . . . . . . . . 14 | |||
6.2. MAC/IP Advertisement route over SRv6 Core . . . . . . . . 14 | 6.2. MAC/IP Advertisement route over SRv6 Core . . . . . . . . 14 | |||
6.2.1. MAC/IP Advertisement route with MAC Only . . . . . . 15 | 6.2.1. MAC/IP Advertisement route with MAC Only . . . . . . 15 | |||
6.2.2. MAC/IP Advertisement route with MAC+IP . . . . . . . 16 | 6.2.2. MAC/IP Advertisement route with MAC+IP . . . . . . . 16 | |||
6.3. Inclusive Multicast Ethernet Tag Route over SRv6 Core . . 16 | 6.3. Inclusive Multicast Ethernet Tag Route over SRv6 Core . . 16 | |||
6.4. Ethernet Segment route over SRv6 Core . . . . . . . . . . 18 | 6.4. Ethernet Segment route over SRv6 Core . . . . . . . . . . 18 | |||
6.5. IP prefix route over SRv6 Core . . . . . . . . . . . . . 18 | 6.5. IP prefix route over SRv6 Core . . . . . . . . . . . . . 18 | |||
6.6. EVPN multicast routes (Route Types 6, 7, 8) over SRv6 | 6.6. EVPN multicast routes (Route Types 6, 7, 8) over SRv6 | |||
core . . . . . . . . . . . . . . . . . . . . . . . . . . 19 | core . . . . . . . . . . . . . . . . . . . . . . . . . . 19 | |||
7. Implementation Status . . . . . . . . . . . . . . . . . . . . 19 | 7. Implementation Status . . . . . . . . . . . . . . . . . . . . 19 | |||
8. Error Handling . . . . . . . . . . . . . . . . . . . . . . . 19 | 8. Error Handling . . . . . . . . . . . . . . . . . . . . . . . 19 | |||
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 20 | 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 20 | |||
9.1. BGP Prefix-SID TLV Types registry . . . . . . . . . . . . 20 | 9.1. BGP Prefix-SID TLV Types registry . . . . . . . . . . . . 20 | |||
9.2. SRv6 Service Sub-TLV Types registry . . . . . . . . . . . 21 | 9.2. SRv6 Service Sub-TLV Types registry . . . . . . . . . . . 21 | |||
9.3. SRv6 Service Data Sub-Sub-TLV Types registry . . . . . . 21 | 9.3. SRv6 Service Data Sub-Sub-TLV Types registry . . . . . . 21 | |||
10. Security Considerations . . . . . . . . . . . . . . . . . . . 21 | 10. Security Considerations . . . . . . . . . . . . . . . . . . . 21 | |||
11. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 22 | 11. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 22 | |||
12. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 22 | 12. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 22 | |||
13. References . . . . . . . . . . . . . . . . . . . . . . . . . 24 | 13. References . . . . . . . . . . . . . . . . . . . . . . . . . 24 | |||
13.1. Normative References . . . . . . . . . . . . . . . . . . 24 | 13.1. Normative References . . . . . . . . . . . . . . . . . . 24 | |||
13.2. Informative References . . . . . . . . . . . . . . . . . 27 | 13.2. Informative References . . . . . . . . . . . . . . . . . 26 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 27 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 27 | |||
1. Introduction | 1. Introduction | |||
SRv6 refers to Segment Routing [RFC8402] instantiated on the IPv6 | SRv6 refers to Segment Routing [RFC8402] instantiated on the IPv6 | |||
dataplane [RFC8754]. | dataplane [RFC8754]. | |||
SRv6 based BGP services refers to the L3 and L2 overlay services with | SRv6 based BGP services refers to the L3 and L2 overlay services with | |||
BGP as control plane and SRv6 as dataplane. | BGP as control plane and SRv6 as dataplane. | |||
skipping to change at page 10, line 21 ¶ | skipping to change at page 10, line 21 ¶ | |||
As an example, for the EVPN VPWS service prefix described further in | As an example, for the EVPN VPWS service prefix described further in | |||
Section 6.1.2, the function part of the SRv6 SID is encoded in the | Section 6.1.2, the function part of the SRv6 SID is encoded in the | |||
MPLS Label field of the NLRI and the SID value in the SRv6 Services | MPLS Label field of the NLRI and the SID value in the SRv6 Services | |||
TLV carries only the locator part with the SRv6 SID Structure Sub- | TLV carries only the locator part with the SRv6 SID Structure Sub- | |||
Sub-TLV. The SRv6 SID Structure sub-sub-TLV defines the lengths of | Sub-TLV. The SRv6 SID Structure sub-sub-TLV defines the lengths of | |||
locator block, locator node and function parts (arguments are not | locator block, locator node and function parts (arguments are not | |||
applicable for the End.DX2 behavior). Transposition Offset indicates | applicable for the End.DX2 behavior). Transposition Offset indicates | |||
the bit position and Transposition Length indicates the number of | the bit position and Transposition Length indicates the number of | |||
bits that are being taken out of the SID and put into label field. | bits that are being taken out of the SID and put into label field. | |||
In yet another example, for the EVPN Per-ES A-D route described | In yet another example, for the EVPN Ethernet A-D per ES route | |||
further in Section 6.1.1, only the argument of the SID needs to be | described further in Section 6.1.1, only the argument of the SID | |||
signaled. This argument part of the SRv6 SID MAY be transposed in | needs to be signaled. This argument part of the SRv6 SID MAY be | |||
the ESI Label field of the ESI Label Extended Community and the SID | transposed in the ESI Label field of the ESI Label Extended Community | |||
value in the SRv6 Services TLV is set to 0 with the SRv6 SID | and the SID value in the SRv6 Services TLV is set to 0 with the SRv6 | |||
Structure Sub-Sub-TLV. The SRv6 SID Structure sub-sub-TLV defines | SID Structure Sub-Sub-TLV. The SRv6 SID Structure sub-sub-TLV | |||
the lengths of locator block, locator node, function and argument | defines the lengths of locator block, locator node, function and | |||
parts. The offset and length of argument part SID value moved to | argument parts. The offset and length of argument part SID value | |||
label field is set in transposition offset and length of SID | moved to label field is set in transposition offset and length of SID | |||
structure TLV. The receiving router is then able to put together the | structure TLV. The receiving router is then able to put together the | |||
entire SRv6 Service SID (e.g. for the End.DT2M behavior) placing the | entire SRv6 Service SID (e.g. for the End.DT2M behavior) placing the | |||
label value received in the ESI Label field of the Per-ES A-D route | label value received in the ESI Label field of the Ethernet A-D per | |||
into the correct transposition offset and length in the SRv6 SID with | ES route into the correct transposition offset and length in the SRv6 | |||
the End.DT2M behavior received for a EVPN Route Type 3 value. | SID with the End.DT2M behavior received for a EVPN Route Type 3 | |||
value. | ||||
5. BGP based L3 service over SRv6 | 5. BGP based L3 service over SRv6 | |||
BGP egress nodes (egress PEs) advertise a set of reachable prefixes. | BGP egress nodes (egress PEs) advertise a set of reachable prefixes. | |||
Standard BGP update propagation schemes[RFC4271], which may make use | Standard BGP update propagation schemes[RFC4271], which may make use | |||
of route reflectors [RFC4456], are used to propagate these prefixes. | of route reflectors [RFC4456], are used to propagate these prefixes. | |||
BGP ingress nodes (ingress PEs) receive these advertisements and may | BGP ingress nodes (ingress PEs) receive these advertisements and may | |||
add the prefix to the RIB in an appropriate VRF. | add the prefix to the RIB in an appropriate VRF. | |||
Egress PEs which supports SRv6 based L3 services advertises overlay | Egress PEs which supports SRv6 based L3 services advertises overlay | |||
skipping to change at page 14, line 5 ¶ | skipping to change at page 14, line 5 ¶ | |||
+---------------------------------------+ | +---------------------------------------+ | |||
| RD (8 octets) | | | RD (8 octets) | | |||
+---------------------------------------+ | +---------------------------------------+ | |||
|Ethernet Segment Identifier (10 octets)| | |Ethernet Segment Identifier (10 octets)| | |||
+---------------------------------------+ | +---------------------------------------+ | |||
| Ethernet Tag ID (4 octets) | | | Ethernet Tag ID (4 octets) | | |||
+---------------------------------------+ | +---------------------------------------+ | |||
| MPLS label (3 octets) | | | MPLS label (3 octets) | | |||
+---------------------------------------+ | +---------------------------------------+ | |||
6.1.1. Per-ES A-D route | 6.1.1. Ethernet A-D per ES route | |||
Per-ES A-D route for SRv6 overlay is advertised as follows: | Ethernet A-D per ES route for SRv6 overlay is advertised as follows: | |||
o BGP next-hop: IPv6 address of an egress PE | o BGP next-hop: IPv6 address of an egress PE | |||
o Ethernet Tag ID: set as per [RFC7432] | o Ethernet Tag ID: set as per [RFC7432] | |||
o MPLS Label: set as per [RFC7432] | o MPLS Label: set as per [RFC7432] | |||
o ESI label extended community ESI label field: carries the Argument | o ESI label extended community ESI label field: carries the Argument | |||
part of the SRv6 SID when ESI filtering approach is used along | part of the SRv6 SID when ESI filtering approach is used along | |||
with the Transposition Scheme of encoding (Section 4) and | with the Transposition Scheme of encoding (Section 4) and | |||
otherwise set to Implicit NULL. | otherwise set to Implicit NULL. | |||
A Service SID enclosed in a SRv6 L2 Service TLV within the BGP | A Service SID enclosed in a SRv6 L2 Service TLV within the BGP | |||
Prefix-SID attribute is advertised along with the A-D route. The | Prefix-SID attribute is advertised along with the A-D route. The | |||
behavior of the Service SID thus signaled is entirely up to the | behavior of the Service SID thus signaled is entirely up to the | |||
originator of the advertisement. When ESI filtering approach is | originator of the advertisement. When ESI filtering approach is | |||
used, the Service SID is used to signal Arg.FE2 SID argument for | used, the Service SID is used to signal Arg.FE2 SID argument for | |||
applicable End.DT2M SIDs. When local-bias approach is used, the | applicable End.DT2M SIDs. When local-bias approach is used, the | |||
Service SID MAY be of value 0. | Service SID MAY be of value 0. | |||
6.1.2. Per-EVI A-D route | 6.1.2. Ethernet A-D per EVI route | |||
Per-EVI A-D route for SRv6 overlay is advertised as follows: | Ethernet A-D per EVI route for SRv6 overlay is advertised as follows: | |||
o BGP next-hop: IPv6 address of an egress PE | o BGP next-hop: IPv6 address of an egress PE | |||
o Ethernet Tag ID: Set as per [RFC7432], [RFC8214] and | o Ethernet Tag ID: Set as per [RFC7432] and [RFC8214] | |||
[I-D.ietf-bess-evpn-vpws-fxc] | ||||
o MPLS Label: carries the Function part of the SRv6 SID when the | o MPLS Label: carries the Function part of the SRv6 SID when the | |||
Transposition Scheme of encoding (Section 4) is used and otherwise | Transposition Scheme of encoding (Section 4) is used and otherwise | |||
set to Implicit NULL. | set to Implicit NULL. | |||
A Service SID enclosed in a SRv6 L2 Service TLV within the BGP | A Service SID enclosed in a SRv6 L2 Service TLV within the BGP | |||
Prefix-SID attribute is advertised along with the A-D route. The | Prefix-SID attribute is advertised along with the A-D route. The | |||
behavior of the Service SID thus signaled is entirely up to the | behavior of the Service SID thus signaled is entirely up to the | |||
originator of the advertisement. In practice, the behavior is | originator of the advertisement. In practice, the behavior is | |||
END.DX2, END.DX2V or END.DT2U. | END.DX2, END.DX2V or END.DT2U. | |||
skipping to change at page 24, line 34 ¶ | skipping to change at page 24, line 24 ¶ | |||
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-05 (work in progress), April 2020. | mld-proxy-05 (work in progress), April 2020. | |||
[I-D.ietf-bess-evpn-prefix-advertisement] | [I-D.ietf-bess-evpn-prefix-advertisement] | |||
Rabadan, J., Henderickx, W., Drake, J., Lin, W., and A. | Rabadan, J., Henderickx, W., Drake, J., Lin, W., and A. | |||
Sajassi, "IP Prefix Advertisement in EVPN", draft-ietf- | Sajassi, "IP Prefix Advertisement in EVPN", draft-ietf- | |||
bess-evpn-prefix-advertisement-11 (work in progress), May | bess-evpn-prefix-advertisement-11 (work in progress), May | |||
2018. | 2018. | |||
[I-D.ietf-bess-evpn-vpws-fxc] | ||||
Sajassi, A., Brissette, P., Uttaro, J., Drake, J., Lin, | ||||
W., Boutros, S., and J. Rabadan, "EVPN VPWS Flexible | ||||
Cross-Connect Service", draft-ietf-bess-evpn-vpws-fxc-01 | ||||
(work in progress), June 2019. | ||||
[I-D.ietf-bess-rfc5549revision] | [I-D.ietf-bess-rfc5549revision] | |||
Litkowski, S., Agrawal, S., ananthamurthy, k., and K. | Litkowski, S., Agrawal, S., ananthamurthy, k., and K. | |||
Patel, "Advertising IPv4 Network Layer Reachability | Patel, "Advertising IPv4 Network Layer Reachability | |||
Information with an IPv6 Next Hop", draft-ietf-bess- | Information with an IPv6 Next Hop", draft-ietf-bess- | |||
rfc5549revision-04 (work in progress), July 2020. | rfc5549revision-04 (work in progress), July 2020. | |||
[I-D.ietf-spring-srv6-network-programming] | [I-D.ietf-spring-srv6-network-programming] | |||
Filsfils, C., Camarillo, P., Leddy, J., Voyer, D., | Filsfils, C., Camarillo, P., Leddy, J., Voyer, D., | |||
Matsushima, S., and Z. Li, "SRv6 Network Programming", | Matsushima, S., and Z. Li, "SRv6 Network Programming", | |||
draft-ietf-spring-srv6-network-programming-16 (work in | draft-ietf-spring-srv6-network-programming-16 (work in | |||
End of changes. 14 change blocks. | ||||
31 lines changed or deleted | 25 lines changed or added | |||
This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |