<?xmlversion="1.0"?>version="1.0" encoding="UTF-8"?> <!DOCTYPE rfc SYSTEM"rfc2629.dtd"> <?rfc comments="yes"?> <?rfc compact="yes"?> <?rfc inline="yes"?> <?rfc sortrefs="yes"?> <?rfc subcompact="yes"?> <?rfc symrefs="yes"?> <?rfc toc="yes"?> <?rfc tocdepth="3"?> <?rfc tocindent="yes"?> <?rfc tocompact="yes"?> <?rfc strict="yes"?>"rfc2629-xhtml.ent"> <rfccategory="std"xmlns:xi="http://www.w3.org/2001/XInclude" docName="draft-ietf-idr-rfc8203bis-08" number="9003" updates="4486" obsoletes="8203"ipr="trust200902">ipr="trust200902" submissionType="IETF" category="std" consensus="true" xml:lang="en" sortRefs="true" symRefs="true" tocInclude="true" tocDepth="3" version="3"> <!-- xml2rfc v2v3 conversion 3.5.0 --> <front> <title abbrev="BGP Shutdown Communication"> Extended BGP Administrative Shutdown Communication </title> <seriesInfo name="RFC" value="9003"/> <author fullname="Job Snijders" initials="J." surname="Snijders"> <organization abbrev="NTT">NTTCommunications</organization>Ltd.</organization> <address> <postal> <street>Theodorus Majofskistraat 100</street> <code>1065 SZ</code> <city>Amsterdam</city><country>The Netherlands</country><country>Netherlands</country> </postal> <email>job@ntt.net</email> </address> </author> <author fullname="Jakob Heitz" initials="J." surname="Heitz"> <organization>Cisco</organization> <address> <postal> <street>170 West Tasman Drive</street> <city>San Jose</city> <region>CA</region> <code>95134</code> <country>United States of America</country> </postal> <email>jheitz@cisco.com</email> </address> </author> <author fullname="John Scudder" initials="J." surname="Scudder"> <organization abbrev="Juniper">Juniper Networks</organization> <address> <postal><street>1194 N. Mathilda Ave</street><street>1133 Innovation Way</street> <city>Sunnyvale</city> <region>CA</region> <code>94089</code> <country>United States of America</country> </postal> <email>jgs@juniper.net</email> </address> </author> <author fullname="Alexander Azimov" initials="A." surname="Azimov"> <organization abbrev="Yandex">Yandex</organization> <address> <postal> <street>Ulitsa Lva Tolstogo 16</street> <city>Moscow</city> <code>119021</code> <country>Russian Federation</country> </postal> <email>a.e.azimov@gmail.com</email> </address> </author> <date/>month="January" year="2021"/> <area>Routing</area> <workgroup>IDR</workgroup> <keyword>BGP</keyword> <keyword>cease</keyword> <keyword>shutdown</keyword> <abstract><t> This<t>This document enhances the BGP Cease NOTIFICATION message "Administrative Shutdown" and "Administrative Reset" subcodes for operators to transmit a shortfreeformfree-form message to describe why a BGP session wasshutdownshut down or reset. This document updates RFC 4486 and obsoletes RFC 8203 by defining an Extended BGP Administrative Shutdown Communication of up to 255 octets to improve communication using multibyte charactersets. </t>sets.</t> </abstract><note title="Requirements Language"> <t> The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here. </t> </note></front> <middle> <section anchor="intro"title="Introduction"> <t> Itnumbered="true" toc="default"> <name>Introduction</name> <t>It can be troublesome for an operator to correlate a <xreftarget="RFC4271">BGP-4</xref>target="RFC4271" format="default">BGP-4</xref> session teardown in the network with a notice that was transmitted via offlinemethodsmethods, such as email or telephone calls. This document updates <xref target="RFC4486"/>format="default"/> by specifying a mechanism to transmit a shortfreeformfree-form <xreftarget="RFC3629">UTF-8</xref>target="RFC3629" format="default">UTF-8</xref> message as part of a <xreftarget="RFC4271">Ceasetarget="RFC4271" format="default">Cease NOTIFICATION message</xref> to inform the peer why the BGP session is beingshutdownshut down or reset. This document obsoletes <xreftarget="RFC8203"/>;target="RFC8203" format="default"/>; the specific differences and rationale are discussed in detail in <xreftarget="changes_to_8203"/>.target="changes_to_8203" format="default"/>.</t> <section anchor="req-lang" numbered="true" toc="default"> <name>Requirements Language</name> <t> The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they appear in all capitals, as shown here. </t> </section> </section> <section anchor="message"title="Shutdown Communication"> <t> Ifnumbered="true" toc="default"> <name>Shutdown Communication</name> <t>If a BGP speaker decides to terminate its session with a BGP neighbor, and it sends a NOTIFICATION message with the Error Code "Cease" and Error Subcode "Administrative Shutdown" or "Administrative Reset" <xref target="RFC4486"/>,format="default"/>, itMAY<bcp14>MAY</bcp14> include aUTF-8 encodedUTF-8-encoded string. The contents of the string are at the operator'sdiscretion. </t> <t> Thediscretion.</t> <t>The Cease NOTIFICATION message with a Shutdown Communication is encoded asbelow:below:</t> <figureanchor="encoding" align="center"><artwork><![CDATA[anchor="encoding"> <artwork name="Cease NOTIFICATION Message with a Shutdown Communication" type="" align="left" alt=""><![CDATA[ 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Error Code 6 | Subcode | Length | ... \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ / \ \ / ... Shutdown Communication ... / \ \ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+]]></artwork></figure> </t> <t> <list style="hanging"> <t hangText="Subcode:"> the]]></artwork> </figure> <dl newline="false" spacing="normal"> <dt>Subcode:</dt> <dd>The Error Subcode valueMUST<bcp14>MUST</bcp14> be one of the following values: 2 ("Administrative Shutdown") or 4 ("AdministrativeReset"). </t> <t></t> <t hangText="Length:"> thisReset").</dd> <dt>Length:</dt> <dd>This 8-bit field represents the length of the Shutdown Communication field in octets. When the length value is zero, no Shutdown Communication fieldfollows. </t> <t></t> <t hangText="Shutdown Communication:"> tofollows.</dd> <dt>Shutdown Communication:</dt> <dd>To support international characters, the Shutdown Communication fieldMUST<bcp14>MUST</bcp14> be encoded using UTF-8. A receiving BGP speakerMUST NOT<bcp14>MUST NOT</bcp14> interpret invalid UTF-8 sequences. Note that when the Shutdown Communication contains multibyte characters, the number of characters will be less than the length value. This field is not NUL terminated. UTF-8 "Shortest Form" encoding isREQUIRED<bcp14>REQUIRED</bcp14> to guard against the technical issues outlined in <xref target="UTR36"/>. </t> </list> </t>format="default"/>.</dd> </dl> <t> Mechanisms concerning the reporting of information contained in the Shutdown Communication are implementation specific butSHOULD<bcp14>SHOULD</bcp14> include methods such as <xreftarget="RFC5424">Syslog</xref>.target="RFC5424" format="default">syslog</xref>. </t> </section> <section anchor="ops"title="Operational Considerations">numbered="true" toc="default"> <name>Operational Considerations</name> <t> Operators are encouraged to use the Shutdown Communication to inform their peers of the reason for the shutdown of the BGP session and include out-of-band reference materials. An example of a useful Shutdown Communication would be: </t> <t>"[TICKET-1-1438367390] software upgrade; back in 2 hours"</t><t> "[TICKET-1-1438367390]"<t>"[TICKET-1-1438367390]" is a ticket reference with significance to both the sender and receiver, followed by a brief human-readable message regarding the reason for the BGP session shutdown followed by an indication about the length of the maintenance. The receiver can now use the string 'TICKET-1-1438367390' to search in their email archive to find moredetails. </t>details.</t> <t> If a Shutdown Communication longer than 128 octets is sent to a BGP speaker that implements [RFC8203], then that speaker will treat it as an error, the consequence of which should be a log message. </t> <t> If a Shutdown Communication of any length is sent to a BGP speaker that implements neither [RFC8203] nor this specification, then that speaker will treat it as an error, the consequence of which should be a log message. </t> <t> In any case, a receiver of a NOTIFICATION message is unable to acknowledge the receipt and correct understanding of any Shutdown Communication. </t> <t> Operators should not rely on Shutdown Communications as their sole form of communication with theirpeerpeers for important events. </t> <t> If it is known that the peer BGP speaker supports this specification, then a Shutdown Communication that is not longer than 255 octetsMAY<bcp14>MAY</bcp14> be sent. Otherwise, a Shutdown CommunicationMAY<bcp14>MAY</bcp14> be sent, but itSHOULD NOT<bcp14>SHOULD NOT</bcp14> be longer than 128 octets. </t> </section> <section anchor="error"title="Error Handling">numbered="true" toc="default"> <name>Error Handling</name> <t> If a Shutdown Communication with an invalid UTF-8 sequence is received, a message indicating this eventSHOULD<bcp14>SHOULD</bcp14> be logged for the attention of the operator. An erroneous or malformed Shutdown Communication itselfMAY<bcp14>MAY</bcp14> be logged in a hexdump format. </t> </section> <section anchor="iana"title="IANA Considerations"> <t> IANA is requested to referencenumbered="true" toc="default"> <name>IANA Considerations</name> <t>IANA has referenced this document atsubcodesubcodes "AdministrativeShutdown",Shutdown" andat subcode"Administrative Reset" in the "BGP Cease NOTIFICATION message subcodes" registry under the "Border Gateway Protocol (BGP) Parameters" group in addition to <xref target="RFC4486"/>. </t>format="default"/>.</t> </section> <section anchor="security"title="Security Considerations">numbered="true" toc="default"> <name>Security Considerations</name> <t> This document uses UTF-8 encoding for the Shutdown Communication. There are a number of security issues with Unicode. Implementers and operators are advised to review <xreftarget="UTR36">Unicodetarget="UTR36" format="default">Unicode Technical Report #36</xref> to learn about these issues. UTF-8 "Shortest Form" encoding isREQUIRED<bcp14>REQUIRED</bcp14> to guard against the technical issues outlined in <xref target="UTR36"/>.format="default"/>. </t> <t> As BGP Shutdown Communications are likely to appear in syslog output, there is a risk that carefully constructed Shutdown Communication might be formatted by receiving systems in a way to make them appear as additional syslog messages. The255 octet255-octet length limit on the BGP Shutdown Communication may help limit the ability to mount such an attack. </t> <t> Users of this mechanism should be aware that unless a transport that provides integrity is used for the BGP session in question, a Shutdown Communication message could be forged. Unless a transport that provides confidentiality is used, a Shutdown Communication message could be snooped by an attacker. These issues are common to any BGPmessagemessage, but they may be of greater interest in the context of this proposal since the information carried in the message is generally expected to be used for human-to-human communication. Refer to the related considerations in <xref target="RFC4271"/>format="default"/> and <xref target="RFC4272"/>.format="default"/>. </t><t> Users<t>Users of this mechanism should consider applying data minimization practices as outlined in <xreftarget="RFC6973">Section 6.1 of</xref>target="RFC6973" sectionFormat="of" section="6.1"></xref> because a received Shutdown Communication may be used at the receiver'sdiscretion. </t>discretion.</t> </section> </middle> <back><references title="Normative References"> <?rfc include="reference.RFC.2119"?> <?rfc include="reference.RFC.8174"?> <?rfc include="reference.RFC.3629"?> <?rfc include="reference.RFC.4271"?> <?rfc include="reference.RFC.4486"?><references> <name>References</name> <references> <name>Normative References</name> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3629.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4271.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4486.xml"/> </references><references title="Informative References"> <?rfc include="reference.RFC.4272"?> <?rfc include="reference.RFC.5424"?> <?rfc include="reference.RFC.6973"?> <?rfc include="reference.RFC.8203"?><references> <name>Informative References</name> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4272.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5424.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6973.xml"/> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8203.xml"/> <reference anchor="UTR36" target="http://unicode.org/reports/tr36/"> <front> <title>Unicode Security Considerations</title> <author initials="M." surname="Davis" fullname="MarkDavis"><organization/></author>Davis" role="editor"> <organization/> </author> <author initials="M." surname="Suignard" fullname="MichelSuignard"><organization/></author>Suignard" role="editor"> <organization/> </author> <date year="2010"month="August" day="4"/>month="August"/> </front> <seriesInfo name="Unicode Technical Report" value="#36"/> </reference> </references><section anchor="acknowledgements" title="Acknowledgements"> <t> The authors would like to gratefully acknowledge Tom Scholl, David Freedman, Jared Mauch, Jeff Haas, Peter Hessler, Bruno Decraene, John Heasley, Peter van Dijk, Arjen Zonneveld, James Bensley, Susan Hares, Saku Ytti, Lou Berger, Alvaro Retana, and Adam Roach. </t> <t> The authors would like to thank Enke Chen and Vincent Gillet for their work on <xref target="RFC4486"/> and granting the related BCP 78 rights to the IETF Trust. </t> <t> The authors would like to acknowledge Misha Grishin (MSK-IX) for raising awareness that <xref target="RFC8203"/>'s length specification was insufficient in context of multibyte character sets. </t> </section></references> <section anchor="changes_to_8203"title="Changesnumbered="true" toc="default"> <name>Changes to RFC8203"> <t> The8203</name> <t>The maximum permitted length was changed from 128 to255. </t> <t> Feedback255.</t> <t>Feedback from operators based in regionswhichthat predominantly use multibyte charactersets,sets showed that messages similar in meaning to what can besendsent in other languagesinusing single-byteencoding,encoding failed to fit within theLengthlength constraints as specified by <xreftarget="RFC8203"/>.target="RFC8203" format="default"/>. For example, thephrase: 'Plannedphrase "Planned work to add switch to stack. Completion time - 30minutes'minutes" has a length of 65 bytes. Its translation in Russian has a length of 139bytes. </t> <t> Ifbytes.</t> <t>If a Shutdown Communication message longer than 128 octets is sent to a BGP speaker that implements <xreftarget="RFC8203"/>,target="RFC8203" format="default"/>, then that speaker will bring it to the attention of anoperator,operator but will otherwise process the NOTIFICATION message asnormal. </t>normal.</t> </section> <section anchor="acknowledgements" numbered="false" toc="default"> <name>Acknowledgements</name> <t>The authors would like to gratefully acknowledge <contact fullname="Tom Scholl"/>, <contact fullname="David Freedman"/>, <contact fullname="Jared Mauch"/>, <contact fullname="Jeff Haas"/>, <contact fullname="Peter Hessler"/>, <contact fullname="Bruno Decraene"/>, <contact fullname="John Heasley"/>, <contact fullname="Peter van Dijk"/>, <contact fullname="Arjen Zonneveld"/>, <contact fullname="James Bensley"/>, <contact fullname="Susan Hares"/>, <contact fullname="Saku Ytti"/>, <contact fullname="Lou Berger"/>, <contact fullname="Alvaro Retana"/>, and <contact fullname="Adam Roach"/>.</t> <t>The authors would like to thank <contact fullname="Enke Chen"/> and <contact fullname="Vincent Gillet"/> for their work on <xref target="RFC4486" format="default"/> and granting the related BCP 78 rights to the IETF Trust.</t> <t>The authors would like to acknowledge <contact fullname="Misha Grishin"/> (MSK-IX) for raising awareness that the length specification of <xref target="RFC8203" format="default"/> was insufficient in context of multibyte character sets.</t> </section> </back> </rfc>