draft-ietf-grow-bgp-gshut-12.txt | draft-ietf-grow-bgp-gshut-13.txt | |||
---|---|---|---|---|
Network Working Group P. Francois, Ed. | Network Working Group P. Francois, Ed. | |||
Internet-Draft Individual Contributor | Internet-Draft Individual Contributor | |||
Intended status: Informational B. Decraene, Ed. | Intended status: Standards Track B. Decraene, Ed. | |||
Expires: April 14, 2018 Orange | Expires: June 17, 2018 Orange | |||
C. Pelsser | C. Pelsser | |||
Strasbourg University | Strasbourg University | |||
K. Patel | K. Patel | |||
Arrcus, Inc. | Arrcus, Inc. | |||
C. Filsfils | C. Filsfils | |||
Cisco Systems | Cisco Systems | |||
October 11, 2017 | December 14, 2017 | |||
Graceful BGP session shutdown | Graceful BGP session shutdown | |||
draft-ietf-grow-bgp-gshut-12 | draft-ietf-grow-bgp-gshut-13 | |||
Abstract | Abstract | |||
This draft standardizes a new well-known BGP community | This draft standardizes a new well-known BGP community | |||
GRACEFUL_SHUTDOWN to signal the graceful shutdown of paths. This | GRACEFUL_SHUTDOWN to signal the graceful shutdown of paths. This | |||
draft also describes operational procedures which use this community | draft also describes operational procedures which use this community | |||
to reduce the amount of traffic lost when BGP peering sessions are | to reduce the amount of traffic lost when BGP peering sessions are | |||
about to be shut down deliberately, e.g. for planned maintenance. | about to be shut down deliberately, e.g. for planned maintenance. | |||
Status of This Memo | Status of This Memo | |||
skipping to change at page 1, line 41 ¶ | skipping to change at page 1, line 41 ¶ | |||
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 April 14, 2018. | This Internet-Draft will expire on June 17, 2018. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2017 IETF Trust and the persons identified as the | Copyright (c) 2017 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 23 ¶ | skipping to change at page 2, line 23 ¶ | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
3. Packet loss upon manual EBGP session shutdown . . . . . . . . 3 | 3. Packet loss upon manual EBGP session shutdown . . . . . . . . 3 | |||
4. EBGP graceful shutdown procedure . . . . . . . . . . . . . . 4 | 4. EBGP graceful shutdown procedure . . . . . . . . . . . . . . 4 | |||
4.1. Pre-configuration . . . . . . . . . . . . . . . . . . . . 4 | 4.1. Pre-configuration . . . . . . . . . . . . . . . . . . . . 4 | |||
4.2. Operations at maintenance time . . . . . . . . . . . . . 4 | 4.2. Operations at maintenance time . . . . . . . . . . . . . 4 | |||
4.3. BGP implementation support for graceful shutdown . . . . 5 | 4.3. BGP implementation support for graceful shutdown . . . . 5 | |||
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 | |||
6. Security Considerations . . . . . . . . . . . . . . . . . . . 5 | 6. Security Considerations . . . . . . . . . . . . . . . . . . . 5 | |||
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 5 | 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
8.1. Normative References . . . . . . . . . . . . . . . . . . 5 | 8.1. Normative References . . . . . . . . . . . . . . . . . . 6 | |||
8.2. Informative References . . . . . . . . . . . . . . . . . 6 | 8.2. Informative References . . . . . . . . . . . . . . . . . 6 | |||
Appendix A. Alternative techniques with limited applicability . 6 | Appendix A. Alternative techniques with limited applicability . 7 | |||
A.1. Multi Exit Discriminator tweaking . . . . . . . . . . . . 6 | A.1. Multi Exit Discriminator tweaking . . . . . . . . . . . . 7 | |||
A.2. IGP distance Poisoning . . . . . . . . . . . . . . . . . 7 | A.2. IGP distance Poisoning . . . . . . . . . . . . . . . . . 7 | |||
Appendix B. Configuration Examples . . . . . . . . . . . . . . . 7 | Appendix B. Configuration Examples . . . . . . . . . . . . . . . 7 | |||
B.1. Cisco IOS XR . . . . . . . . . . . . . . . . . . . . . . 7 | B.1. Cisco IOS XR . . . . . . . . . . . . . . . . . . . . . . 7 | |||
B.2. BIRD . . . . . . . . . . . . . . . . . . . . . . . . . . 8 | B.2. BIRD . . . . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
B.3. OpenBGPD . . . . . . . . . . . . . . . . . . . . . . . . 8 | B.3. OpenBGPD . . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
Appendix C. Beyond EBGP graceful shutdown . . . . . . . . . . . 8 | Appendix C. Beyond EBGP graceful shutdown . . . . . . . . . . . 9 | |||
C.1. IBGP graceful shutdown . . . . . . . . . . . . . . . . . 8 | C.1. IBGP graceful shutdown . . . . . . . . . . . . . . . . . 9 | |||
C.2. EBGP session establishment . . . . . . . . . . . . . . . 8 | C.2. EBGP session establishment . . . . . . . . . . . . . . . 9 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 10 | |||
1. Introduction | 1. Introduction | |||
Routing changes in BGP can be caused by planned maintenance | Routing changes in BGP can be caused by planned maintenance | |||
operations. This document defines a well-known community [RFC1997], | operations. This document defines a well-known community [RFC1997], | |||
called GRACEFUL_SHUTDOWN, for the purpose of reducing the management | called GRACEFUL_SHUTDOWN, for the purpose of reducing the management | |||
overhead of gracefully shutting down BGP sessions. The well-known | overhead of gracefully shutting down BGP sessions. The well-known | |||
community allows implementers to provide an automated graceful | community allows implementers to provide an automated graceful | |||
shutdown mechanism that does not require any router reconfiguration | shutdown mechanism that does not require any router reconfiguration | |||
skipping to change at page 3, line 22 ¶ | skipping to change at page 3, line 22 ¶ | |||
avoid packet loss for outbound and inbound traffic flows initially | avoid packet loss for outbound and inbound traffic flows initially | |||
forwarded along the peering link to be shut down. These procedures | forwarded along the peering link to be shut down. These procedures | |||
trigger, in both Autonomous Sytems (AS), rerouting to alternate paths | trigger, in both Autonomous Sytems (AS), rerouting to alternate paths | |||
if they exist within the AS, while allowing the use of the old path | if they exist within the AS, while allowing the use of the old path | |||
until alternate ones are learned. This ensures that routers always | until alternate ones are learned. This ensures that routers always | |||
have a valid route available during the convergence process. | have a valid route available during the convergence process. | |||
The goal of the document is to meet the requirements described in | The goal of the document is to meet the requirements described in | |||
[RFC6198] at best, without changing the BGP protocol. | [RFC6198] at best, without changing the BGP protocol. | |||
Other maintenance cases, such as the shutdown of an IBGP session or | ||||
the establishement of an EBGP session, are out of scope of this | ||||
document. For information, they are briefly discussed in Appendix C. | ||||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and | |||
document are to be interpreted as described in RFC 8174 [RFC8174]. | "OPTIONAL" in this document are to be interpreted as described in | |||
[BCP14] [RFC2119] [RFC8174] when, and only when, they appear in all | ||||
capitals, as shown here. | ||||
2. Terminology | 2. Terminology | |||
graceful shutdown initiator: a router on which the session shutdown | graceful shutdown initiator: a router on which the session shutdown | |||
is performed for the maintenance. | is performed for the maintenance. | |||
graceful shutdown receiver: a router that has a BGP session, to be | graceful shutdown receiver: a router that has a BGP session, to be | |||
shutdown, with the graceful shutdown initiator. | shutdown, with the graceful shutdown initiator. | |||
3. Packet loss upon manual EBGP session shutdown | 3. Packet loss upon manual EBGP session shutdown | |||
skipping to change at page 4, line 17 ¶ | skipping to change at page 4, line 23 ¶ | |||
This section describes configurations and actions to be performed for | This section describes configurations and actions to be performed for | |||
the graceful shutdown of EBGP peering links. | the graceful shutdown of EBGP peering links. | |||
The goal of this procedure is to retain the paths to be shutdown | The goal of this procedure is to retain the paths to be shutdown | |||
between the peers, but with a lower LOCAL_PREF value, allowing the | between the peers, but with a lower LOCAL_PREF value, allowing the | |||
paths to remain in use while alternate paths are selected and | paths to remain in use while alternate paths are selected and | |||
propagated, rather than simply withdrawing the paths. The LOCAL_PREF | propagated, rather than simply withdrawing the paths. The LOCAL_PREF | |||
value SHOULD be lower than any of the alternative paths. The | value SHOULD be lower than any of the alternative paths. The | |||
RECOMMENDED value is 0. | RECOMMENDED value is 0. | |||
Note that some alternative techniques with limited applicability are | ||||
discussed for information in Appendix A. | ||||
4.1. Pre-configuration | 4.1. Pre-configuration | |||
On each ASBR supporting the graceful shutdown receiver procedure, an | On each ASBR supporting the graceful shutdown receiver procedure, an | |||
inbound BGP route policy is applied on all EBGP sessions of the ASBR, | inbound BGP route policy is applied on all EBGP sessions of the ASBR, | |||
that: | that: | |||
o matches the GRACEFUL_SHUTDOWN community. | o matches the GRACEFUL_SHUTDOWN community. | |||
o sets the LOCAL_PREF attribute of the paths tagged with the | o sets the LOCAL_PREF attribute of the paths tagged with the | |||
GRACEFUL_SHUTDOWN community to a low value. | GRACEFUL_SHUTDOWN community to a low value. | |||
For information purpose, example of configurations are provided in | ||||
Appendix B. | ||||
4.2. Operations at maintenance time | 4.2. Operations at maintenance time | |||
On the graceful shutdown initiator, at maintenance time, the | On the graceful shutdown initiator, at maintenance time, the | |||
operator: | operator: | |||
o applies an outbound BGP route policy on the EBGP session to be | o applies an outbound BGP route policy on the EBGP session to be | |||
shutdown. This policy tags the paths propagated over the session | shutdown. This policy tags the paths propagated over the session | |||
with the GRACEFUL_SHUTDOWN community. This will trigger the BGP | with the GRACEFUL_SHUTDOWN community. This will trigger the BGP | |||
implementation to re-advertise all active routes previously | implementation to re-advertise all active routes previously | |||
advertised, and tag them with the GRACEFUL_SHUTDOWN community. | advertised, and tag them with the GRACEFUL_SHUTDOWN community. | |||
skipping to change at page 6, line 5 ¶ | skipping to change at page 6, line 19 ¶ | |||
comments. | comments. | |||
8. References | 8. References | |||
8.1. Normative References | 8.1. Normative References | |||
[RFC1997] Chandra, R., Traina, P., and T. Li, "BGP Communities | [RFC1997] Chandra, R., Traina, P., and T. Li, "BGP Communities | |||
Attribute", RFC 1997, DOI 10.17487/RFC1997, August 1996, | Attribute", RFC 1997, DOI 10.17487/RFC1997, August 1996, | |||
<https://www.rfc-editor.org/info/rfc1997>. | <https://www.rfc-editor.org/info/rfc1997>. | |||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | ||||
Requirement Levels", BCP 14, RFC 2119, | ||||
DOI 10.17487/RFC2119, March 1997, | ||||
<https://www.rfc-editor.org/info/rfc2119>. | ||||
[RFC6198] Decraene, B., Francois, P., Pelsser, C., Ahmad, Z., | [RFC6198] Decraene, B., Francois, P., Pelsser, C., Ahmad, Z., | |||
Elizondo Armengol, A., and T. Takeda, "Requirements for | Elizondo Armengol, A., and T. Takeda, "Requirements for | |||
the Graceful Shutdown of BGP Sessions", RFC 6198, | the Graceful Shutdown of BGP Sessions", RFC 6198, | |||
DOI 10.17487/RFC6198, April 2011, | DOI 10.17487/RFC6198, April 2011, | |||
<https://www.rfc-editor.org/info/rfc6198>. | <https://www.rfc-editor.org/info/rfc6198>. | |||
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
May 2017, <https://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
End of changes. 12 change blocks. | ||||
15 lines changed or deleted | 32 lines changed or added | |||
This html diff was produced by rfcdiff 1.46. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |