idnits 2.17.1 draft-chen-bess-srv6-service-bypass-sid-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** There are 2 instances of too long lines in the document, the longest one being 37 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (July 13, 2020) is 1375 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Unused Reference: 'RFC4271' is defined on line 294, but no explicit reference was found in the text == Unused Reference: 'RFC8200' is defined on line 299, but no explicit reference was found in the text == Outdated reference: A later version (-15) exists of draft-ietf-bess-srv6-services-03 == Outdated reference: A later version (-28) exists of draft-ietf-spring-srv6-network-programming-16 Summary: 1 error (**), 0 flaws (~~), 5 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group H. Chen 3 Internet-Draft China Telecom 4 Intended status: Standards Track Y. Gu 5 Expires: January 14, 2021 H. Wang 6 Huawei 7 July 13, 2020 9 SRv6 SID Bypass Functions 10 draft-chen-bess-srv6-service-bypass-sid-00 12 Abstract 14 This document introduces the SRv6 SID Bypass Functions to enhance 15 reliability and prevent traffic loop in fast reroute(FRR) scenario. 17 Requirements Language 19 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 20 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 21 document are to be interpreted as described in RFC 2119 [RFC2119]. 23 Status of This Memo 25 This Internet-Draft is submitted in full conformance with the 26 provisions of BCP 78 and BCP 79. 28 Internet-Drafts are working documents of the Internet Engineering 29 Task Force (IETF). Note that other groups may also distribute 30 working documents as Internet-Drafts. The list of current Internet- 31 Drafts is at https://datatracker.ietf.org/drafts/current/. 33 Internet-Drafts are draft documents valid for a maximum of six months 34 and may be updated, replaced, or obsoleted by other documents at any 35 time. It is inappropriate to use Internet-Drafts as reference 36 material or to cite them other than as "work in progress." 38 This Internet-Draft will expire on January 14, 2021. 40 Copyright Notice 42 Copyright (c) 2020 IETF Trust and the persons identified as the 43 document authors. All rights reserved. 45 This document is subject to BCP 78 and the IETF Trust's Legal 46 Provisions Relating to IETF Documents 47 (https://trustee.ietf.org/license-info) in effect on the date of 48 publication of this document. Please review these documents 49 carefully, as they describe your rights and restrictions with respect 50 to this document. Code Components extracted from this document must 51 include Simplified BSD License text as described in Section 4.e of 52 the Trust Legal Provisions and are provided without warranty as 53 described in the Simplified BSD License. 55 Table of Contents 57 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 58 2. SRv6 SID Bypass Functions . . . . . . . . . . . . . . . . . . 3 59 2.1. End.DX2L . . . . . . . . . . . . . . . . . . . . . . . . 3 60 3. Control Plane Processing . . . . . . . . . . . . . . . . . . 4 61 4. Data Plane Processing . . . . . . . . . . . . . . . . . . . . 5 62 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 63 6. Security Considerations . . . . . . . . . . . . . . . . . . . 6 64 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 6 65 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6 66 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 67 9.1. Normative References . . . . . . . . . . . . . . . . . . 6 68 9.2. Informative References . . . . . . . . . . . . . . . . . 7 69 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7 71 1. Introduction 73 In SRv6 EVPN VPWS all-active scenario, a router or switch (CE1) is 74 dual-homed to enterprise site (PE1 and PE2). SRv6 EVPN VPWS service 75 is run between enterprise sites (PE1, PE2, and CPE). When one PE 76 fails, services can be rapidly switched to the other PE, minimizing 77 the impact on services. 79 As shown in Figure 1, deploy fast reroute(FRR) service on PE1 and 80 PE2. When the AC(attachment circuit) link on PE1 fails, PE1 receives 81 downlink traffic and can bypass it to the PE2 device for forwarding. 82 PE2 is also the same. If the AC side links on PE1 and PE2 fail 83 together, a brief traffic loop between PE1 and PE2 occurs. The 84 traffic loop will waste the forwarding resources of the equipment and 85 cause performance pressure. The length of the traffic loop depends 86 on the convergence of the control plane. That is, PE1 withdraws the 87 per-EVI Ethernet A-D route advertised to PE2. The FRR backup path on 88 PE2 is destroyed. PE2 does not send traffic to PE1. In order to 89 solve the above problem, this document defines the SRv6 SID Bypass 90 Functions that will be contained in the SRv6 SID Information Sub-TLV 91 [I-D.ietf-bess-srv6-services], and to be advertised with per-EVI 92 Ethernet A-D routes. 94 +-----+ 95 | CE2 | 96 +-----+ 97 | 98 +-----+ 99 |EVPL1| Local/Remote 100 -------------------| PE3 | Ethernet Tag ID->100/200 101 | +-----+ 102 | / \ 103 | / \ 104 SRv6 EVPN ELINE / \ 105 | / \ 106 | / \ 107 | +-----+SRv6 Bypass +-----+ 108 --------- | PE1 | Tunnel | PE2 | 109 L/R Ethernet |EVPL1|-------------|EVPL1| L/R Ethernet 110 Tag ID->200/100 +-----+ +-----+ Tag ID->200/100 111 \ / 112 \ / 113 ESI1 ESI1 114 \ Trunk / 115 +\-----/+ 116 | \ / | 117 +---+---+ 118 | 119 +-----+ 120 | CE1 | 121 +-----+ 123 Figure 1: Basic Networking of the SRv6 EVPN VPWS All-Active Scenario 125 2. SRv6 SID Bypass Functions 127 2.1. End.DX2L 129 The "Endpoint with decapsulation and Layer-2 cross-connect to an 130 local outgoing L2 interface (OIF) only" (End.DX2L for short) is a 131 variant of the endpoint behavior. Allocation is expected from IANA 132 for an End.DX2L function codepoint from the "SRv6 Endpoint Behaviors" 133 sub-registry. 135 One of the applications of the End.DX2L behavior is the L2VPN/EVPN 136 VPWS [RFC7432][RFC8214] use-case. 138 The End.DX2L SID MUST be the last segment in a SR Policy, and it is 139 associated with one outgoing interface I. 141 When N receives a packet destined to S and S is a local End.DX2L SID, 142 N does: 144 S01. When an SRH is processed { 145 S02. If (Segments Left != 0) { 146 S03. Send an ICMP Parameter Problem to the Source Address, 147 Code 0 (Erroneous header field encountered), 148 Pointer set to the Segments Left field. 149 Interrupt packet processing and discard the packet. 150 S04. } 151 S05. Proceed to process the next header in the packet 152 S06. } 154 When processing the Upper-layer header of a packet matching a FIB 155 entry locally instantiated as an SRv6 End.DX2L SID, the following is 156 done: 158 S01. If (Upper-Layer Header type != 143) { 159 S02. Process as per Section 4.1.1 of [I-D.ietf-spring-srv6-network-programming] 160 S03. } 161 S04. Remove the outer IPv6 Header with all its extension headers and forward the Ethernet frame to the OIF I. 162 S05. If (OIF I is down) { 163 S06. Interrupt packet processing and discard the packet. 164 S07. } 166 3. Control Plane Processing 168 As shown in Figure 1: 170 o 1. PE1 advertises per-EVI Ethernet A-D routes to PE2 and PE3. 171 The route carries the SRv6 Service SID (SID Type=2, End.DX2) sid1 172 and SRv6 Service Bypass SID sid11 allocated by the EVPL1 service 173 on PE1. 175 o 2. The PE2 device receives the per-EVI Ethernet A-D route 176 advertised by PE1 and finds that it is the same as the Local/ 177 Remote Ethernet Tag ID and ESI1 of its own EVPL1. PE2 considers 178 it to be a dual-homing relationship with PE1. PE2 uses the SRv6 179 Service Bypass SID to establish an SRv6 bypass path to PE1. The 180 tunnel is marked as sid11. The SRv6 Service Bypass SID takes 181 effect when its EVPL Local/Remote Ethernet Tag ID and ESI are the 182 same as the per-EVI Ethernet A-D route received. 184 o 3. The EVPL1 Local/Remote Ethernet Tag ID of the PE3 device 185 matches PE1. PE3 uses the SRv6 Service SID to establish an EVPN 186 VPWS service to PE1. The service is marked as sid1. PE3's EVPL1 187 Local/Remote Ethernet Tag ID and ESI are different from the per- 188 EVI Ethernet A-D routes received. PE3 should ignore this 189 attribute. 191 o 4. In the same way, PE2 advertises per-EVI Ethernet A-D routes to 192 PE1 and PE3. The routes carry the SRv6 Service SID sid2 and SRv6 193 Service Bypass SID sid22 allocated by EVPL1 services on PE2. 195 o 5. Finally, the primary path from PE1 to CE1 is the local AC port 196 and the bypass path is the SRv6 tunnel labeled by sid22. The 197 primary path from PE2 to CE1 is the local AC port and the bypass 198 path is the SRv6 tunnel labeled by sid11. Paths from PE3 to PE1 199 and PE2 are marked as sid1 and sid2. 201 4. Data Plane Processing 203 This section will describe the processes of the downlink Layer 2 204 packet forwarding cases. 206 As shown in Figure 1: 208 o 1. After receiving a Layer 2 packet sent by the CE2, PE3 209 encapsulates the packet with the EVPL1 sid1 as the destination 210 IPv6 of the SRH header, and forwards the packet to PE1. 212 o 2. After receiving a Layer 2 packet sent by the PE3, PE1 parses 213 the EVPL1 sid1 of the SRH header and forwards it according to the 214 function End.DX2 of sid1. When the primary path from PE1 to CE1 215 fails, PE1 encapsulates the packet with the EVPL1 bypass sid22 as 216 the destination IPv6 of the SRH header, and forwards the packet to 217 PE2. 219 o 3. After receiving a Layer 2 packet sent by the PE1, PE2 parses 220 the EVPL1 bypass sid22 of the SRH header and forwards it according 221 to the function End.DX2L of sid22. When the primary path from PE2 222 to CE1 fails, PE2 discards the packet and successfully breaks the 223 loop. 225 o 4. As above, if PE2 receives a Layer 2 packet from PE3, EVPL1 226 bypass sid11 can also been used to break the loop. 228 5. IANA Considerations 230 TBD 232 6. Security Considerations 234 TBD 236 7. Contributors 238 The following individuals gave significant contributions to this 239 document: 241 Shunwan Zhuang 242 Huawei Technologies 244 Email: zhuangshunwan@huawei.com 246 Chongyang Hu 247 Huawei Technologies 249 Email: huchongyang@huawei.com 251 Bingshe Liu 252 Huawei Technologies 254 Email: liubingshe@huawei.com 256 8. Acknowledgements 258 The authors would like to thank xxx for the discussion and review of 259 this document. 261 9. References 263 9.1. Normative References 265 [I-D.ietf-bess-srv6-services] 266 Dawra, G., Filsfils, C., Raszuk, R., Decraene, B., Zhuang, 267 S., and J. Rabadan, "SRv6 BGP based Overlay services", 268 draft-ietf-bess-srv6-services-03 (work in progress), July 269 2020. 271 [I-D.ietf-spring-srv6-network-programming] 272 Filsfils, C., Camarillo, P., Leddy, J., Voyer, D., 273 Matsushima, S., and Z. Li, "SRv6 Network Programming", 274 draft-ietf-spring-srv6-network-programming-16 (work in 275 progress), June 2020. 277 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 278 Requirement Levels", BCP 14, RFC 2119, 279 DOI 10.17487/RFC2119, March 1997, 280 . 282 [RFC7432] Sajassi, A., Ed., Aggarwal, R., Bitar, N., Isaac, A., 283 Uttaro, J., Drake, J., and W. Henderickx, "BGP MPLS-Based 284 Ethernet VPN", RFC 7432, DOI 10.17487/RFC7432, February 285 2015, . 287 [RFC8214] Boutros, S., Sajassi, A., Salam, S., Drake, J., and J. 288 Rabadan, "Virtual Private Wire Service Support in Ethernet 289 VPN", RFC 8214, DOI 10.17487/RFC8214, August 2017, 290 . 292 9.2. Informative References 294 [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A 295 Border Gateway Protocol 4 (BGP-4)", RFC 4271, 296 DOI 10.17487/RFC4271, January 2006, 297 . 299 [RFC8200] Deering, S. and R. Hinden, "Internet Protocol, Version 6 300 (IPv6) Specification", STD 86, RFC 8200, 301 DOI 10.17487/RFC8200, July 2017, 302 . 304 Authors' Addresses 306 Huanan Chen 307 China Telecom 308 109, West Zhongshan Road, Tianhe District 309 Guangzhou 510000 310 China 312 Email: chenhuan6@chinatelecom.cn 314 Yunan Gu 315 Huawei 316 Huawei Bld., No.156 Beiqing Rd. 317 Beijing 100095 318 China 320 Email: guyunan@huawei.com 321 Haibo Wang 322 Huawei 323 Huawei Bld., No.156 Beiqing Rd. 324 Beijing 100095 325 China 327 Email: rainsword.wang@huawei.com