idnits 2.17.1 draft-ietf-isis-rfc3277bis-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 16. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 352. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 322. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 329. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 335. 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 : ---------------------------------------------------------------------------- ** The abstract seems to contain references ([RFC3277]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust Copyright Line does not match the current year -- 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 20, 2007) is 6031 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: 'RFC 4724' is defined on line 297, but no explicit reference was found in the text -- Possible downref: Non-RFC (?) normative reference: ref. 'ISO 8473' -- Obsolete informational reference (is this intentional?): RFC 3137 (Obsoleted by RFC 6987) -- Obsolete informational reference (is this intentional?): RFC 3784 (Obsoleted by RFC 5305) Summary: 2 errors (**), 0 flaws (~~), 2 warnings (==), 10 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 INTERNET-DRAFT Danny McPherson 2 Arbor Networks 3 Naiming Shen 4 Cisco Systems 5 Expires: April 2008 October 20, 2007 6 Intended Status: Proposed Standard 8 IS-IS Transient Blackhole Avoidance 9 11 Status of this Memo 13 By submitting this Internet-Draft, each author represents that any 14 applicable patent or other IPR claims of which he or she is aware 15 have been or will be disclosed, and any of which he or she becomes 16 aware will be disclosed, in accordance with Section 6 of BCP 79. 18 Internet-Drafts are working documents of the Internet Engineering 19 Task Force (IETF), its areas, and its working groups. Note that 20 other groups may also distribute working documents as Internet- 21 Drafts. 23 Internet-Drafts are draft documents valid for a maximum of six months 24 and may be updated, replaced, or obsoleted by other documents at any 25 time. It is inappropriate to use Internet-Drafts as reference 26 material or to cite them other than as "work in progress." 28 The list of current Internet-Drafts can be accessed at 29 http://www.ietf.org/1id-abstracts.html 31 The list of Internet-Draft Shadow Directories can be accessed at 32 http://www.ietf.org/shadow.html 34 Copyright Notice 36 Copyright (C) The IETF Trust (2007). 38 Abstract 40 This document describes a simple, interoperable mechanism that can be 41 employed in IS-IS networks in order to decrease data loss associated 42 with deterministic blackholing of packets during transient network 43 conditions. The mechanism proposed here requires no IS-IS protocol 44 changes and is completely interoperable with the existing IS-IS 45 specification. 47 The intention of this document is to provide an update to [RFC 3277]. 49 Table of Contents 51 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 52 1.1. Specification of Requirements . . . . . . . . . . . . . . . 4 53 2. Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . 4 54 3. Deployment Considerations. . . . . . . . . . . . . . . . . . . 6 55 4. Manageability Considerations . . . . . . . . . . . . . . . . . 8 56 5. Security Considerations. . . . . . . . . . . . . . . . . . . . 8 57 6. Acknowledgments. . . . . . . . . . . . . . . . . . . . . . . . 8 58 7. IANA Considerations. . . . . . . . . . . . . . . . . . . . . . 9 59 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 10 60 8.1. Normative References. . . . . . . . . . . . . . . . . . . . 10 61 8.2. Informative References. . . . . . . . . . . . . . . . . . . 10 62 9. Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 10 64 1. Introduction 66 When an IS-IS router that was previously a transit router becomes 67 unavailable as a result of some transient condition such as a reboot, 68 other routers within the routing domain must select an alternative 69 path to reach destinations which had previously transited the failed 70 router. Presumably, the newly selected router(s) comprising the path 71 have been available for some time and, as a result, have complete 72 forwarding information bases (FIBs) which contain a full set of 73 reachability information for both internal and external (e.g., BGP) 74 destination networks. 76 When the previously failed router becomes available again, in only a 77 few seconds paths that had previously transited the router are again 78 selected as the optimal path by the IGP. As a result, forwarding 79 tables are updated and packets are once again forwarded along the 80 path. Unfortunately, external destination reachability information 81 (e.g., learned via BGP) is not yet available to the router, and as a 82 result, packets bound for destinations not learned via the IGP are 83 unnecessarily discarded. 85 A simple interoperable mechanism to alleviate the offshoot associated 86 with this deterministic behavior is outlined below. 88 1.1. Specification of Requirements 90 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 91 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 92 document are to be interpreted as described in RFC 2119 [RFC 2119]. 94 2. Discussion 96 This document describes a simple, interoperable mechanism that can be 97 employed in IS-IS [ISO 8473] [RFC 1195] networks in order to avoid 98 transition to a newly available path until other associated routing 99 protocols such as BGP have had sufficient time to converge. 101 The benefits of such a mechanism can realized when considering the 102 scenario depicted in Figure 1. 104 D.1 105 | 106 +-------+ 107 | RtrD | 108 +-------+ 109 / \ 110 / \ 111 +-------+ +-------+ 112 | RtrB | | RtrC | 113 +-------+ +-------+ 114 \ / 115 \ / 116 +-------+ 117 | RtrA | 118 +-------+ 119 | 120 S.1 122 Figure 1: Example Network Topology 124 Host S.1 is transmitting data to destination D.1 via a primary path 125 of RtrA->RtrB->RtrD. Routers A, B and C learn of reachability to 126 destination D.1 via BGP from RtrD. RtrA's primary path to D.1 is 127 selected because when calculating the path to BGP NEXT_HOP of RtrD 128 the sum of the IS-IS link metrics on the RtrA-RtrB-RtrD path is less 129 than the sum of the metrics of the RtrA-RtrC-RtrD path. 131 Assume RtrB becomes unavailable and as a result the RtrC path is used 132 to reach RtrD. Once RtrA's FIB is updated and it begins forwarding 133 packets to RtrC everything should behave properly as RtrC has 134 existing forwarding information regarding destination D.1's 135 availability via BGP NEXT_HOP RtrD. 137 Assume now that RtrB comes back online. In only a few seconds IS-IS 138 neighbor state has been established with RtrA and RtrD and database 139 synchronization has occurred. RtrA now realizes that the best path 140 to destination D.1 is via RtrB, and subsequently updates it FIB 141 appropriately. RtrA begins to forward packets destined to D.1 to 142 RtrB. However, because RtrB has yet to establish and synchronization 143 it's BGP neighbor relationship and routing information with RtrD, 144 RtrB has no knowledge regarding reachability of destination D.1, and 145 therefore discards the packets received from RtrA destined to D.1. 147 If RtrB were to temporarily set it's LSP Overload bit while 148 synchronizing BGP tables with it's neighbors, RtrA would continue to 149 use the operational RtrA->RtrC->RtrD path, and the IS-IS LSP SHOULD 150 only be used to obtain reachability to locally connected networks 151 (rather than for calculating transit paths through the router, as 152 defined in [ISO 8473]). 154 However, it should be noted that when RtrB goes away its LSP is still 155 present in the IS-IS databases of all other routers in the routing 156 domain. When RtrB comes back it establishes adjacencies. As soon as 157 its neighbors have an adjacency with RtrB, they will advertise their 158 new adjacency in their new LSP. The result is that all the other 159 routers will receive new LSPs from RtrA and RtrD containing the RtrB 160 adjacency, even though RtrB is still completing its synchronization 161 and therefore has not yet transmitted it's new LSP. 163 At this time SPF is computed and everyone will include RtrB in their 164 tree since they will use the old version of RtrB's LSP (the new one 165 has not yet arrived). Once RtrB has finished establishing its 166 adjacencies, it will then regenerate its LSP and flood it. Then all 167 other routers within the domain will finally compute SPF with the 168 correct information. Only at that time will the Overload bit be 169 taken into account. 171 As such, it is recommended that each time a router establishes an 172 adjacency, it will update its LSP and flood it immediately, even 173 before beginning database synchronization. This will allow for the 174 Overload bit setting to propagate immediately, and remove the 175 potential for an older version of the reloaded routers LSP to be 176 used. 178 After synchronization of BGP tables with neighboring routers (or 179 expiry of some other timer or trigger), RtrB would generate a new 180 LSP, clearing the Overload bit, and RtrA (and other routers in the 181 routing domain) could again begin using the optimal path via RtrB. 183 Typically, in service provider networks IBGP connections are done via 184 peering sessions associated with 'loopback' addresses. As such, the 185 newly available router must advertise it's own loopback (or similar) 186 IP address, as well as associated adjacencies, in order to make the 187 loopbacks accessible to other routers within the routing domain. 188 It's because of this requirement for local destinaion reachability 189 that simply flooding an empty LSP is not sufficient. 191 3. Deployment Considerations 193 Such a mechanism increases overall network availability and allows 194 network operators to alleviate the deterministic blackholing behavior 195 introduced in this scenario. Similar mechanisms [RFC 3137] have been 196 defined for OSPF, only after realizing the usefulness obtained from 197 that of the IS-IS Overload bit technique. 199 This mechanism has been deployed in several large IS-IS networks for 200 a number of years, and a variety of techniques to configure and 201 trigger overload bit setting and clearing are available in many 202 implementations. Such triggers for setting the Overload bit as 203 described are left to the implementer. Some potential triggers could 204 perhaps include "N seconds after booting", or "N number of BGP 205 prefixes in the BGP Loc-RIB". 207 Unlike similar mechanisms employed in [RFC 3137], if the Overload bit 208 is set in a router's LSP, NO transit paths are calculated through the 209 router. As such, if no alternative paths are available to the 210 destination network, employing such a mechanism may actually have a 211 negative impact on convergence (i.e., the router maintains the only 212 available path to reach downstream routers, but the Overload bit 213 disallows other nodes in the network from calculating paths via the 214 router, and as such, no feasible path exists to the routers). 216 It should also be noted that if all systems within an IS-IS routing 217 domain haven't implemented this Overload bit behavior correctly, 218 forwarding loops may occur. 220 Alternatively, it may be considered more appealing to employ 221 something more akin to [RFC 3137] for this purpose. With this model, 222 during transient conditions a node advertises excessively high link 223 metrics to serve as an indication to other nodes in the network that 224 paths transiting the router are "less desirable" than alternative 225 paths. 227 The advantage of a metric-based mechanism over the Overload bit 228 mechanism proposed here is that transit paths may still be calculated 229 through the router. Another advantage is that a metric-based 230 mechanism does not require that all nodes in the IS-IS domain 231 correctly implement the Overload bit handling procedures. 233 As traditionally specified, IS-IS provided for only 6 bits of space 234 for link metric allocation, and 10 bits aggregate path metrics. 235 Though extensions provided in [RFC 3784] remove this limitation, they 236 may not yet be fully deployed in many networks. As such, there's 237 possibly less flexibility when using link metrics for this purpose. 238 Of course, both methods proposed in this document are backwards- 239 compatible. 241 Two other more more recent techniques can help to alleviate these 242 transient network conditions further. Graceful restart [rfc 4724] 243 [RFC 4781] with a control plane only restart, and "BGP free cores". 244 Furthur discussion of these techniques is beyond the scope of this 245 document. 247 4. Manageability Considerations 249 These extensions which have been designed, developed and deployed for 250 many years do not have any new impact on management and operation of 251 the IS-IS protocol via this standardization process. 253 5. Security Considerations 255 The mechanisms specified in this memo introduces no new security 256 issues to IS-IS. 258 6. Acknowledgments 260 The original efforts and corresponding acknowledgements provided in 261 [RFC 3277] have enabled this work. 263 Others to be provided.... 265 7. IANA Considerations 267 This specification introduces no new IANA considerations and 268 therefore requires no actions on the part of IANA. 270 8. References 272 8.1. Normative References 274 [ISO 8473] ISO, "Intermediate system to Intermediate system 275 routeing information exchange protocol for use in conjunction 276 with the Protocol for providing the Connectionless-mode Network 277 Service (ISO 8473)," ISO/IEC 10589:1992. 279 8.2. Informative References 281 [RFC 1195] Callon, R., "OSI IS-IS for IP and Dual Environment," 282 RFC 1195, December 1990. 284 [RFC 2119] Bradner, S., "Key words for use in RFCs to Indicate 285 Requirement Levels", RFC 2119, March 1997. 287 [RFC 3137] Retana et al., "OSPF Stub Router Advertisement", 288 RFC 3137, June 2001. 290 [RFC 3277] McPherson, D., "Intermediate System to Intermediate 291 System (IS-IS) Transient Blackhole Avoidance", RFC 3277, April 292 2002. 294 [RFC 3784] Li, T., Smit, H., "IS-IS extensions for Traffic 295 Engineering", RFC 3784, June 2004. 297 [RFC 4724] Sangli, S., Chen, E., Fernando, R., Scudder, J., 298 Rekhter, Y., "Graceful Restart Mechanism for BGP", RFC 299 4724, January 2007. 301 [RFC 4781] Rekhter, Y., Aggarwal, R., "Graceful Restart 302 Mechanism for BGP with MPLS", RFC 4781, January 2007. 304 9. Authors' Addresses 305 Danny McPherson 306 Arbor Networks, Inc. 307 EMail: danny@arbor.net 309 Naiming Shen 310 Cisco Systems, Inc. 311 EMail: naiming@cisco.com 313 Intellectual Property Statement 315 The IETF takes no position regarding the validity or scope of any 316 Intellectual Property Rights or other rights that might be claimed to 317 pertain to the implementation or use of the technology described in 318 this document or the extent to which any license under such rights 319 might or might not be available; nor does it represent that it has 320 made any independent effort to identify any such rights. Information 321 on the procedures with respect to rights in RFC documents can be 322 found in BCP 78 and BCP 79. 324 Copies of IPR disclosures made to the IETF Secretariat and any 325 assurances of licenses to be made available, or the result of an 326 attempt made to obtain a general license or permission for the use of 327 such proprietary rights by implementers or users of this 328 specification can be obtained from the IETF on-line IPR repository at 329 http://www.ietf.org/ipr. 331 The IETF invites any interested party to bring to its attention any 332 copyrights, patents or patent applications, or other proprietary 333 rights that may cover technology that may be required to implement 334 this standard. Please address the information to the IETF at 335 ietf-ipr@ietf.org. 337 Copyright Statement 339 Copyright (C) The IETF Trust (2007). 341 This document is subject to the rights, licenses and restrictions 342 contained in BCP 78, and except as set forth therein, the authors 343 retain all their rights. 345 This document and the information contained herein are provided on an 346 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 347 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST 348 AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, 349 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT 350 THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY 351 IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR 352 PURPOSE. 354 Acknowledgment 356 Funding for the RFC Editor function is provided by the IETF 357 Administrative Support Activity (IASA).