draft-ietf-idr-shutdown-03.txt | draft-ietf-idr-shutdown-04.txt | |||
---|---|---|---|---|
IDR J. Snijders | IDR J. Snijders | |||
Internet-Draft NTT | Internet-Draft NTT | |||
Updates: 4486 (if approved) J. Heitz | Updates: 4486 (if approved) J. Heitz | |||
Intended status: Standards Track Cisco | Intended status: Standards Track Cisco | |||
Expires: July 23, 2017 J. Scudder | Expires: August 1, 2017 J. Scudder | |||
Juniper | Juniper | |||
January 19, 2017 | January 28, 2017 | |||
BGP Administrative Shutdown Communication | BGP Administrative Shutdown Communication | |||
draft-ietf-idr-shutdown-03 | draft-ietf-idr-shutdown-04 | |||
Abstract | Abstract | |||
This document enhances the BGP Cease NOTIFICATION message | This document enhances the BGP Cease NOTIFICATION message | |||
"Administrative Shutdown" subcode for operators to transmit a short | "Administrative Shutdown" and "Administrative Reset" subcodes for | |||
freeform message to describe why a BGP session was shutdown. | operators to transmit a short freeform message to describe why a BGP | |||
session was shutdown or reset. | ||||
Requirements Language | Requirements Language | |||
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", "MAY", and "OPTIONAL" in this | |||
document are to be interpreted as described in [RFC2119]. | document are to be interpreted as described in [RFC2119]. | |||
Status of This Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
skipping to change at page 1, line 41 ¶ | 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 http://datatracker.ietf.org/drafts/current/. | Drafts is at http://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 July 23, 2017. | This Internet-Draft will expire on August 1, 2017. | |||
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 | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://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 17 ¶ | skipping to change at page 2, line 20 ¶ | |||
to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
described in the Simplified BSD License. | described in the Simplified BSD License. | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
2. Shutdown Communication . . . . . . . . . . . . . . . . . . . 2 | 2. Shutdown Communication . . . . . . . . . . . . . . . . . . . 2 | |||
3. Operational Considerations . . . . . . . . . . . . . . . . . 3 | 3. Operational Considerations . . . . . . . . . . . . . . . . . 3 | |||
4. Error Handling . . . . . . . . . . . . . . . . . . . . . . . 3 | 4. Error Handling . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | |||
6. Security Considerations . . . . . . . . . . . . . . . . . . . 4 | 6. Security Considerations . . . . . . . . . . . . . . . . . . . 4 | |||
7. Implementation status - RFC EDITOR: REMOVE BEFORE PUBLICATION 4 | 7. Implementation status - RFC EDITOR: REMOVE BEFORE PUBLICATION 4 | |||
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
8.1. Normative References . . . . . . . . . . . . . . . . . . 5 | 8.1. Normative References . . . . . . . . . . . . . . . . . . 5 | |||
8.2. Informative References . . . . . . . . . . . . . . . . . 5 | 8.2. Informative References . . . . . . . . . . . . . . . . . 5 | |||
8.3. URIs . . . . . . . . . . . . . . . . . . . . . . . . . . 6 | ||||
Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 6 | Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 6 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
1. Introduction | 1. Introduction | |||
It can be troublesome for an operator to correlate a BGP-4 [RFC4271] | It can be troublesome for an operator to correlate a BGP-4 [RFC4271] | |||
session teardown in the network with a notice that was transmitted | session teardown in the network with a notice that was transmitted | |||
via off-line methods such email or telephone calls. This document | via off-line methods such email or telephone calls. This document | |||
specifies a mechanism to transmit a short freeform UTF-8 [RFC3629] | specifies a mechanism to transmit a short freeform UTF-8 [RFC3629] | |||
message as part of a Cease NOTIFICATION message [RFC4486] to inform | message as part of a Cease NOTIFICATION message [RFC4486] to inform | |||
the peer why the BGP session is being shutdown. | the peer why the BGP session is being shutdown or reset. | |||
2. Shutdown Communication | 2. Shutdown Communication | |||
If a BGP speaker decides to terminate its session with a BGP | If a BGP speaker decides to terminate its session with a BGP | |||
neighbor, then the BGP speaker MAY send to the neighbor a | neighbor, then the BGP speaker MAY send to the neighbor a | |||
NOTIFICATION message with the Error Code "Cease" and the Error | NOTIFICATION message with the Error Code "Cease" and Error Subcode | |||
Subcode "Administrative Shutdown" followed by a length field and an | "Administrative Shutdown" or "Administrative Reset" followed by a | |||
UTF-8 encoded string. The contents of the string are at the | length field and an UTF-8 encoded string. The contents of the string | |||
operator's discretion. | are at the operator's discretion. | |||
The Cease NOTIFICATION message with an Administrative Shutdown | The Cease NOTIFICATION message with a Shutdown Communication is | |||
Communication is encoded as below: | encoded as below: | |||
0 1 2 3 | 0 1 2 3 | |||
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Error code 6 | subcode 2 | Length | ... \ | | Error code 6 | Subcode | Length | ... \ | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / | |||
\ \ | \ \ | |||
/ ... Shutdown Communication ... / | / ... Shutdown Communication ... / | |||
\ \ | \ \ | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
Subcode: the Error Subcode value MUST be one of the following | ||||
values: 2 ("Administrative Shutdown") or 4 ("Administrative | ||||
Reset"). | ||||
Length: this 8-bit field represents the length of the Shutdown | Length: this 8-bit field represents the length of the Shutdown | |||
Communication field in octets. The length value MUST range from 0 | Communication field in octets. The length value MUST range from 0 | |||
to 128 inclusive. When the length value is zero, no Shutdown | to 128 inclusive. When the length value is zero, no Shutdown | |||
Communication field follows. | Communication field follows. | |||
Shutdown Communication: to support international characters, the | Shutdown Communication: to support international characters, the | |||
Shutdown Communication field MUST be encoded using UTF-8. A | Shutdown Communication field MUST be encoded using UTF-8. A | |||
receiving BGP speaker MUST NOT interpret invalid UTF-8 sequences. | receiving BGP speaker MUST NOT interpret invalid UTF-8 sequences. | |||
Note that when the Shutdown Communication contains multibyte | Note that when the Shutdown Communication contains multibyte | |||
characters, the number of characters will be less than the length | characters, the number of characters will be less than the length | |||
skipping to change at page 4, line 8 ¶ | skipping to change at page 4, line 13 ¶ | |||
archive to find more details. | archive to find more details. | |||
4. Error Handling | 4. Error Handling | |||
Any erroneous or malformed Shutdown Communication received SHOULD be | Any erroneous or malformed Shutdown Communication received SHOULD be | |||
logged for the attention of the operator and then MAY be discarded. | logged for the attention of the operator and then MAY be discarded. | |||
5. IANA Considerations | 5. IANA Considerations | |||
Per this document, IANA is requested to reference this document at | Per this document, IANA is requested to reference this document at | |||
subcode "Administrative Shutdown" in the "Cease NOTIFICATION message | subcode "Administrative Shutdown", and at subcode "Administrative | |||
subcodes" registry under the "Border Gateway Protocol (BGP) | Reset" in the "Cease NOTIFICATION message subcodes" registry under | |||
Parameters" group in addition to [RFC4486]. | the "Border Gateway Protocol (BGP) Parameters" group in addition to | |||
[RFC4486]. | ||||
6. Security Considerations | 6. Security Considerations | |||
This document uses UTF-8 encoding for the Shutdown Communication. | This document uses UTF-8 encoding for the Shutdown Communication. | |||
There are a number of security issues with UNICODE. Implementers and | There are a number of security issues with UNICODE. Implementers and | |||
operator are advised to review UNICODE TR36 [UTR36] to learn about | operator are advised to review UNICODE TR36 [UTR36] to learn about | |||
these issues. This document guards against the technical issues | these issues. This document guards against the technical issues | |||
outlined in UTR36 by REQUIRING "shortest form" encoding. However, | outlined in UTR36 by REQUIRING "shortest form" encoding. However, | |||
the visual spoofing due to character confusion still persists. This | the visual spoofing due to character confusion still persists. This | |||
specification minimizes the effects of visual spoofing by limiting | specification minimizes the effects of visual spoofing by limiting | |||
skipping to change at page 4, line 51 ¶ | skipping to change at page 5, line 8 ¶ | |||
does not imply endorsement by the IETF. Furthermore, no effort has | does not imply endorsement by the IETF. Furthermore, no effort has | |||
been spent to verify the information presented here that was supplied | been spent to verify the information presented here that was supplied | |||
by IETF contributors. This is not intended as, and must not be | by IETF contributors. This is not intended as, and must not be | |||
construed to be, a catalog of available implementations or their | construed to be, a catalog of available implementations or their | |||
features. Readers are advised to note that other implementations may | features. Readers are advised to note that other implementations may | |||
exist. | exist. | |||
As of today these vendors have produced an implementation of the | As of today these vendors have produced an implementation of the | |||
Shutdown Communication: | Shutdown Communication: | |||
o ExaBGP [1] | o ExaBGP | |||
o pmacct [2] | o pmacct | |||
o OpenBGPD [3] | o OpenBGPD | |||
o GoBGP | o tcpdump (packet analyser) | |||
o Wireshark [4] (packet analyser) | ||||
o tcpdump [5], (alt) [6] (packet analyser) | ||||
8. References | 8. References | |||
8.1. Normative References | 8.1. Normative References | |||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
<http://www.rfc-editor.org/info/rfc2119>. | <http://www.rfc-editor.org/info/rfc2119>. | |||
skipping to change at page 6, line 5 ¶ | skipping to change at page 6, line 5 ¶ | |||
<http://www.rfc-editor.org/info/rfc5424>. | <http://www.rfc-editor.org/info/rfc5424>. | |||
[RFC5925] Touch, J., Mankin, A., and R. Bonica, "The TCP | [RFC5925] Touch, J., Mankin, A., and R. Bonica, "The TCP | |||
Authentication Option", RFC 5925, DOI 10.17487/RFC5925, | Authentication Option", RFC 5925, DOI 10.17487/RFC5925, | |||
June 2010, <http://www.rfc-editor.org/info/rfc5925>. | June 2010, <http://www.rfc-editor.org/info/rfc5925>. | |||
[UTR36] Davis, M. and M. Suignard, "Unicode Security | [UTR36] Davis, M. and M. Suignard, "Unicode Security | |||
Considerations", Unicode Technical Report #36, August | Considerations", Unicode Technical Report #36, August | |||
2010, <http://unicode.org/reports/tr36/>. | 2010, <http://unicode.org/reports/tr36/>. | |||
8.3. URIs | ||||
[1] https://github.com/Exa-Networks/exabgp/blob/d8b7cd24e835b9dabfddc | ||||
87d74e0161921165a50/lib/exabgp/bgp/message/ | ||||
notification.py#L112-L144 | ||||
[2] https://github.com/pmacct/pmacct/compare/ed8df5820c9f0b8847a7b087 | ||||
3ade3af8ab262113...9fd97a77d144b15bf42d4e55a4d861c499bb0cfc | ||||
[3] https://github.com/openbsd/src/ | ||||
commit/0561b344da393d4a962339c507c2e78057100ae1 | ||||
[4] https://www.wireshark.org/lists/wireshark-commits/201612/ | ||||
msg00238.html | ||||
[5] https://github.com/the-tcpdump-group/tcpdump/pull/578 | ||||
[6] http://marc.info/?l=openbsd-tech&m=148379081203084&w=2 | ||||
Appendix A. Acknowledgements | Appendix A. Acknowledgements | |||
The authors would like to gratefully acknowledge Tom Scholl, David | The authors would like to gratefully acknowledge Tom Scholl, David | |||
Freedman, Jared Mauch, Jeff Haas, Peter Hessler, Bruno Decraene, John | Freedman, Jared Mauch, Jeff Haas, Peter Hessler, Bruno Decraene, John | |||
Heasley, Peter van Dijk, Arjen Zonneveld, James Bensley, Susan Hares, | Heasley, Peter van Dijk, Arjen Zonneveld, James Bensley, Susan Hares, | |||
and Saku Ytti. | and Saku Ytti. | |||
Authors' Addresses | Authors' Addresses | |||
Job Snijders | Job Snijders | |||
End of changes. 15 change blocks. | ||||
44 lines changed or deleted | 28 lines changed or added | |||
This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |