idnits 2.17.1 draft-ietf-idr-deprecate-as-set-confed-set-01.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 : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Using lowercase 'not' together with uppercase 'MUST', 'SHALL', 'SHOULD', or 'RECOMMENDED' is not an accepted usage according to RFC 2119. Please use uppercase 'NOT' together with RFC 2119 keywords (if that is what you mean). Found 'MUST not' in this paragraph: Network operators MUST NOT generate any new announcements containing AS_SETs or AS_CONFED_SETs. If they have already announced routes with AS_SETs or AS_CONFED_SETs in them, then they MUST withdraw those routes and re-announce routes for the component prefixes (i.e., the more-specific routes subsumed by the previously aggregated route) without AS_SETs or AS_CONFED_SETs in the updates. A sending router MUST not generate a BGP UPDATE with AS_SET or AS_CONFED_SET. A receiving router MUST treat the announced routes in a BGP UPDATE with AS_SET or AS_CONFED_SET as withdrawn routes. (Using the creation date from RFC4271, updated by this document, for RFC5378 checks: 2006-01-13) (Using the creation date from RFC5065, updated by this document, for RFC5378 checks: 2003-08-27) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (October 29, 2019) is 1641 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) No issues found here. Summary: 0 errors (**), 0 flaws (~~), 2 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group W. Kumari 3 Internet-Draft Google, Inc. 4 Obsoletes: 6472 (if approved) K. Sriram 5 Updates: 4271 5065 (if approved) L. Hannachi 6 Intended status: Standards Track USA NIST 7 Expires: May 1, 2020 October 29, 2019 9 Deprecation of AS_SET and AS_CONFED_SET in BGP 10 draft-ietf-idr-deprecate-as-set-confed-set-01 12 Abstract 14 BCP 172 (i.e., RFC 6472) recommends not using AS_SET and 15 AS_CONFED_SET in the Border Gateway Protocol. This document advances 16 this recommendation to a standards requirement in BGP; it proscribes 17 the use of the AS_SET and AS_CONFED_SET types of path segments in the 18 AS_PATH. This is done to simplify the design and implementation of 19 BGP and to make the semantics of the originator of a route clearer. 20 This will also simplify the design, implementation, and deployment of 21 various BGP security mechanisms. This document (if approved) updates 22 RFC 4271 and RFC 5065 by eliminating AS_SET and AS_CONFED_SET types, 23 and obsoletes RFC 6472. 25 Status of This Memo 27 This Internet-Draft is submitted in full conformance with the 28 provisions of BCP 78 and BCP 79. 30 Internet-Drafts are working documents of the Internet Engineering 31 Task Force (IETF). Note that other groups may also distribute 32 working documents as Internet-Drafts. The list of current Internet- 33 Drafts is at https://datatracker.ietf.org/drafts/current/. 35 Internet-Drafts are draft documents valid for a maximum of six months 36 and may be updated, replaced, or obsoleted by other documents at any 37 time. It is inappropriate to use Internet-Drafts as reference 38 material or to cite them other than as "work in progress." 40 This Internet-Draft will expire on May 1, 2020. 42 Copyright Notice 44 Copyright (c) 2019 IETF Trust and the persons identified as the 45 document authors. All rights reserved. 47 This document is subject to BCP 78 and the IETF Trust's Legal 48 Provisions Relating to IETF Documents 49 (https://trustee.ietf.org/license-info) in effect on the date of 50 publication of this document. Please review these documents 51 carefully, as they describe your rights and restrictions with respect 52 to this document. Code Components extracted from this document must 53 include Simplified BSD License text as described in Section 4.e of 54 the Trust Legal Provisions and are provided without warranty as 55 described in the Simplified BSD License. 57 Table of Contents 59 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 60 2. Requirements Language . . . . . . . . . . . . . . . . . . . . 3 61 3. Recommendation to Network Operators . . . . . . . . . . . . . 3 62 4. Updates to Existing RFCs . . . . . . . . . . . . . . . . . . 4 63 5. Security Considerations . . . . . . . . . . . . . . . . . . . 4 64 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 65 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5 66 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 67 8.1. Normative References . . . . . . . . . . . . . . . . . . 5 68 8.2. Informative References . . . . . . . . . . . . . . . . . 5 69 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 71 1. Introduction 73 BCP 172 [RFC6472] makes a recommendation for not using AS_SET (see 74 [RFC4271]) and AS_CONFED_SET (see [RFC5065]) in the Border Gateway 75 Protocol (BGP). This document advances the BCP recommendation to a 76 standards requirement in BGP; it proscribes the use of the AS_SET and 77 AS_CONFED_SET types of path segments in the AS_PATH. 79 The AS_SET path segment in the AS_PATH attribute (Sections 4.3 and 80 5.1.2 of [RFC4271]) is created by a router that is performing route 81 aggregation and contains an unordered set of Autonomous Systems 82 (ASes) that the update has traversed. The AS_CONFED_SET path segment 83 (see [RFC5065]) in the AS_PATH attribute is created by a router that 84 is performing route aggregation and contains an unordered set of 85 Member AS Numbers in the local confederation that the update has 86 traversed. It is very similar to AS_SETs but is used within a 87 confederation. 89 By performing aggregation, a router is combining multiple existing 90 routes into a single new route. The aggregation together with the 91 use of AS_SET blurs the semantics of origin AS for the prefix being 92 announced. Therefore, the aggregation with AS_SET (or AS_CONFED_SET) 93 can cause operational issues, such as not being able to authenticate 94 a route origin for the aggregate prefix in new BGP security 95 technologies such as those that take advantage of X.509 extensions 96 for IP addresses and AS identifiers [RFC3779] [RFC6480] [RFC6811] 98 [RFC8205]. This in turn could result in reachability problems for 99 the aggregated prefix and its components (i.e., more-specific 100 prefixes). The aggregation as described above could also create 101 traffic engineering issues, because the precise path information for 102 the component prefixes are not preserved. 104 From analysis of past Internet routing data, it is apparent that 105 aggregation that involves AS_SETs is very seldom used in practice on 106 the public Internet [Analysis] and when it is used, it is often used 107 incorrectly -- only a single AS in the AS_SET are by far the most 108 common cases. Also, very often the same AS appears in the 109 AS_SEQUENCE and the AS_SET in the BGP update. The occurrence of 110 reserved AS numbers ([IANA-SP-ASN]) is also somewhat frequent. 111 Because the aggregation involving AS_SETs is very rarely used, the 112 reduction in table size provided by this is extremely small, and any 113 advantage thereof is outweighed by additional complexity in BGP. As 114 noted above, AS_SETs also pose impediments to implementation of new 115 BGP security technologies. 117 In the past, AS_SET had been used in a few rare cases to allow route 118 aggregation where two or more providers could form the same aggregate 119 prefix, using the exact match of the other's aggregate prefix in some 120 advertisement and configuring the aggregation differently elsewhere. 121 The key to configuring this correctly was to form the aggregate at 122 the border in the outbound BGP policy and omit prefixes from the AS 123 that the aggregate was being advertised to. The AS_SET therefore 124 allowed this practice without the loss of BGP's AS_PATH loop 125 protection. This use of AS_SET served a purpose that fell in line 126 with the original intended use. Without the use of AS_SET, 127 aggregates must always contain only less-specific prefixes (not less 128 than or equal to) and must never aggregate an exact match. 130 2. Requirements Language 132 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 133 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 134 "OPTIONAL" in this document are to be interpreted as described in BCP 135 14 [RFC2119] [RFC8174] when, and only when, they appear in all 136 capitals, as shown here. 138 3. Recommendation to Network Operators 140 Network operators MUST NOT generate any new announcements containing 141 AS_SETs or AS_CONFED_SETs. If they have already announced routes 142 with AS_SETs or AS_CONFED_SETs in them, then they MUST withdraw those 143 routes and re-announce routes for the component prefixes (i.e., the 144 more-specific routes subsumed by the previously aggregated route) 145 without AS_SETs or AS_CONFED_SETs in the updates. A sending router 146 MUST not generate a BGP UPDATE with AS_SET or AS_CONFED_SET. A 147 receiving router MUST treat the announced routes in a BGP UPDATE with 148 AS_SET or AS_CONFED_SET as withdrawn routes. 150 If a network operator wishes to consider a BGP UPDATE with AS_SET or 151 AS_CONFED_SET for path selection, they MAY have a feature (knob) in 152 the router to opt to do so. The operator should understand the full 153 implications of choosing this option. 155 Route aggregation that was previously performed by proxy aggregation 156 without the use of AS_SETs is still possible under some conditions. 157 When doing this, operators MUST form the aggregate at the border in 158 the outbound BGP policy and omit any prefixes from the AS that the 159 aggregate is being advertised to. As with any change, the operator 160 should understand the full implications of the change. 162 It is worth noting that new BGP security technologies (such as those 163 that take advantage of X.509 extensions for IP addresses and AS 164 identifiers [RFC3779] [RFC6480] [RFC6811] [RFC8205]) might not 165 support routes with AS_SETs/AS_CONFED_SETs in them, and may treat 166 routes containing them as infeasible even before the updated BGP in 167 this document is implemented. 169 4. Updates to Existing RFCs 171 This document eliminates AS_PATH segment type 1, namely, AS_SET that 172 is specified in Section 4.3 of [RFC4271]. That is, in a future 173 specification of BGP -- one that would obsolete RFC 4271 -- the use 174 of AS_SET will not be specified. 176 This document also eliminates AS_PATH segment type 4, namely, 177 AS_CONFED_SET that is specified in Section 3 of [RFC5065]. That is, 178 in a future specification of Autonomous System Confederations for BGP 179 -- one that would obsolete RFC 5065 -- the use of AS_CONFED_SET will 180 not be specified. 182 5. Security Considerations 184 This document obsoletes the use of aggregation techniques that create 185 AS_SETs or AS_CONFED_SETs. Obsoleting these path segment types from 186 BGP and removal of the related code from implementations would 187 potentially decrease the attack surface for BGP. Deployments of new 188 BGP security technologies [RFC6480] [RFC6811] [RFC8205] benefit 189 greatly if AS_SET and AS_CONFED_SET are not used in BGP. 191 6. IANA Considerations 193 This document requires no IANA actions. 195 7. Acknowledgements 197 The authors would like to thank Jeffery Haas, John Heasley, Job 198 Snijders, Jared Mauch, Jakob Heitz, Keyur Patel, Douglas Montgomery, 199 Randy Bush, Susan Hares, John Scudder, Curtis Villamizar, Danny 200 McPherson, Chris Morrow, Tom Petch, Ilya Varlashkin, Enke Chen, Tony 201 Li, Florian Weimer, John Leslie, Paul Jakma, Rob Austein, Russ 202 Housley, Sandra Murphy, Steve Bellovin, Steve Kent, Steve Padgett, 203 Alfred Hoenes, and Alvaro Retana for comments and suggestions. 205 8. References 207 8.1. Normative References 209 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 210 Requirement Levels", BCP 14, RFC 2119, 211 DOI 10.17487/RFC2119, March 1997, 212 . 214 [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A 215 Border Gateway Protocol 4 (BGP-4)", RFC 4271, 216 DOI 10.17487/RFC4271, January 2006, 217 . 219 [RFC5065] Traina, P., McPherson, D., and J. Scudder, "Autonomous 220 System Confederations for BGP", RFC 5065, 221 DOI 10.17487/RFC5065, August 2007, 222 . 224 8.2. Informative References 226 [Analysis] 227 Hannachi, L. and K. Sriram, "Detailed analysis of AS_SETs 228 in BGP updates", NIST Robust Inter-domain Routing Project 229 Website , October 2019, 230 . 233 [IANA-SP-ASN] 234 "Special-Purpose Autonomous System (AS) Numbers", 235 . 238 [RFC3779] Lynn, C., Kent, S., and K. Seo, "X.509 Extensions for IP 239 Addresses and AS Identifiers", RFC 3779, 240 DOI 10.17487/RFC3779, June 2004, 241 . 243 [RFC6472] Kumari, W. and K. Sriram, "Recommendation for Not Using 244 AS_SET and AS_CONFED_SET in BGP", BCP 172, RFC 6472, 245 DOI 10.17487/RFC6472, December 2011, 246 . 248 [RFC6480] Lepinski, M. and S. Kent, "An Infrastructure to Support 249 Secure Internet Routing", RFC 6480, DOI 10.17487/RFC6480, 250 February 2012, . 252 [RFC6811] Mohapatra, P., Scudder, J., Ward, D., Bush, R., and R. 253 Austein, "BGP Prefix Origin Validation", RFC 6811, 254 DOI 10.17487/RFC6811, January 2013, 255 . 257 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 258 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 259 May 2017, . 261 [RFC8205] Lepinski, M., Ed. and K. Sriram, Ed., "BGPsec Protocol 262 Specification", RFC 8205, DOI 10.17487/RFC8205, September 263 2017, . 265 Authors' Addresses 267 Warren Kumari 268 Google, Inc. 269 1600 Amphitheatre Parkway 270 Mountain View, CA 94043 271 US 273 Phone: +1 571 748 4373 274 Email: warren@kumari.net 276 Kotikalapudi Sriram 277 USA NIST 278 100 Bureau Drive 279 Gaithersburg, MD 20899 280 US 282 Phone: +1 301 975 3973 283 Email: sriram.ietf@gmail.com 284 Lilia Hannachi 285 USA NIST 286 100 Bureau Drive 287 Gaithersburg, MD 20899 288 US 290 Phone: +1 301 975 3259 291 Email: lilia.hannachi@nist.gov