RFC 4486 PROPOSED STANDARD BGP · ROUTING · DIAGNOSTICS

BGP Cease subcodes: Subcodes for BGP Cease Notification Message

Eight reason codes that explain why a BGP speaker is ending a peering session.

On rfc-editor.org ↗
PUBLISHED
April 2006
AUTHORS
E. Chen, V. Gillet
STREAM
IETF
UPDATED BY
RFC 8203 — BGP Shutdown Message, RFC 9003 — BGP Shutdown Message
SUBCODES DEFINED
8 (1-8)
AFI SIZE IN OPTIONAL DATA
2 octets
SAFI SIZE IN OPTIONAL DATA
1 octet
PREFIX UPPER-BOUND SIZE
4 octets
FUTURE ASSIGNMENTS
Standards Action or Early IANA Allocation
DOI
10.17487/RFC4486

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                            E. Chen
Request for Comments: 4486                                 Cisco Systems
Category: Standards Track                                      V. Gillet
                                                          France Telecom
                                                              April 2006


              Subcodes for BGP Cease Notification Message

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2006).

Abstract

   This document defines several subcodes for the BGP Cease NOTIFICATION
   message that would provide more information to aid network operators
   in correlating network events and diagnosing BGP peering issues.

1.  Introduction

   This document defines several subcodes for the BGP Cease NOTIFICATION
   message that would provide more information to aid network operators
   in correlating network events and diagnosing BGP peering issues.  It
   also recommends that a BGP speaker implement a backoff mechanism in
   re-trying a BGP connection after the speaker receives a NOTIFICATION
   message with certain CEASE subcode.

2.  Specification of Requirements

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [RFC-2119].

3.  Subcode Definition

   The following subcodes are defined for the Cease NOTIFICATION
   message:

      Subcode     Symbolic Name

         1        Maximum Number of Prefixes Reached
         2        Administrative Shutdown
         3        Peer De-configured
         4        Administrative Reset
         5        Connection Rejected
         6        Other Configuration Change
         7        Connection Collision Resolution
         8        Out of Resources

4.  Subcode Usage

   If a BGP speaker decides to terminate its peering with a neighbor
   because the number of address prefixes received from the neighbor
   exceeds a locally configured upper bound (as described in [BGP-4]),
   then the speaker MUST send to the neighbor a NOTIFICATION message
   with the Error Code Cease and the Error Subcode "Maximum Number of
   Prefixes Reached".  The message MAY optionally include the Address
   Family information [BGP-MP] and the upper bound in the "Data" field,
   as shown in Figure 1, where the meaning and use of the <AFI, SAFI>
   tuple is the same as defined in [BGP-MP], Section 7.

                  +-------------------------------+
                  | AFI (2 octets)                |
                  +-------------------------------+
                  | SAFI (1 octet)                |
                  +-------------------------------+
                  | Prefix upper bound (4 octets) |
                  +-------------------------------+

                     Figure 1: Optional Data Field

   If a BGP speaker decides to administratively shut down its peering
   with a neighbor, then the speaker SHOULD send a NOTIFICATION message
   with the Error Code Cease and the Error Subcode "Administrative
   Shutdown".

   If a BGP speaker decides to de-configure a peer, then the speaker
   SHOULD send a NOTIFICATION message with the Error Code Cease and the
   Error Subcode "Peer De-configured".

   If a BGP speaker decides to administratively reset the peering with a
   neighbor, then the speaker SHOULD send a NOTIFICATION message with
   the Error Code Cease and the Error Subcode "Administrative Reset".

   If a BGP speaker decides to disallow a BGP connection (e.g., the peer
   is not configured locally) after the speaker accepts a transport
   protocol connection, then the BGP speaker SHOULD send a NOTIFICATION
   message with the Error Code Cease and the Error Subcode "Connection
   Rejected".

   If a BGP speaker decides to administratively reset the peering with a
   neighbor due to a configuration change other than the ones described
   above, then the speaker SHOULD send a NOTIFICATION message with the
   Error Code Cease and the Error Subcode "Other Configuration Change".

   If a BGP speaker decides to send a NOTIFICATION message with the
   Error Code Cease as a result of the collision resolution procedure
   (as described in [BGP-4]), then the subcode SHOULD be set to
   "Connection Collision Resolution".

   If a BGP speaker runs out of resources (e.g., memory) and decides to
   reset a session, then the speaker MAY send a NOTIFICATION message
   with the Error Code Cease and the Error Subcode "Out of Resources".

   It is RECOMMENDED that a BGP speaker behave as though the
   DampPeerOscillations attribute [BGP-4] were true for this peer when
   re-trying a BGP connection after the speaker receives a Cease
   NOTIFICATION message with a subcode of "Administrative Shutdown",
   "Peer De-configured", "Connection Rejected", or "Out of Resources".
   An implementation SHOULD impose an upper bound on the number of
   consecutive automatic retries.  Once this bound is reached, the
   implementation would stop re-trying any BGP connections until some
   administrative intervention, i.e., set the AllowAutomaticStart
   attribute [BGP-4] to FALSE.

5.  IANA Considerations

   This document defines the subcodes 1 - 8 for the BGP Cease
   NOTIFICATION message.  Future assignments are to be made using either
   the Standards Action process defined in [RFC-2434], or the Early IANA
   Allocation process defined in [RFC-4020].  Assignments consist of a
   name and the value.

6.  Security Considerations

   This extension to BGP does not change the underlying security issues
   inherent in the existing BGP.

7.  Acknowledgements

   The authors would like to thank Yakov Rekhter, Pedro Marques, Andrew
   Lange, and Don Goodspeed for their review and suggestions.

8.  References

8.1.  Normative References

   [BGP-4]    Rekhter, Y., Li, T., and S. Hares, "A Border Gateway
              Protocol 4 (BGP-4)", RFC 4271, January 2006.

   [BGP-MP]   Bates, T., Rekhter, Y., Chandra, R., and D. Katz,
              "Multiprotocol Extensions for BGP-4", RFC 2858, June 2000.

   [RFC-2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an
              IANA Considerations Section in RFCs", BCP 26, RFC 2434,
              October 1998.

   [RFC-2119] Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

8.2.  Informative References

   [RFC-4020] Kompella, K. and A. Zinin, "Early IANA Allocation of
              Standards Track Code Points", BCP 100, RFC 4020, February
              2005.

Authors' Addresses

   Enke Chen
   Cisco Systems, Inc.
   170 W. Tasman Dr.
   San Jose, CA 95134
   USA

   EMail: enkechen@cisco.com


   Vincent Gillet
   France Telecom Longues Distances
   61, rue des Archives
   75003 Paris FRANCE

   EMail: vgi@opentransit.net

Full Copyright Statement

   Copyright (C) The Internet Society (2006).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.

Acknowledgement

   Funding for the RFC Editor function is provided by the IETF
   Administrative Support Activity (IASA).

ISO Plain Language

On this page
PROBLEMA BGP Cease NOTIFICATION closes a peering session but, without a subcode, gives the neighbor little information about why it ended.
MECHANISMRFC 4486 defines eight Cease subcodes for conditions such as administrative shutdown, a prefix limit, connection rejection or resource exhaustion. It also recommends retry backoff after selected subcodes.
WHY IT MATTERSOperators receive a more specific session-termination reason. RFC 4486 is a Proposed Standard updated by RFC 8203 and RFC 9003.

§1Why Cease Messages Need More Detail

A BGP speaker that ends a peering session sends a NOTIFICATION with the Cease error code. The code says the session is closing but does not identify the cause.

RFC 4486 defines subcodes that provide more information for correlating network events and diagnosing BGP peering issues. It also recommends backoff when retrying after certain Cease notifications.

The Cease code tells a neighbor that a session is closing. A subcode gives the neighbor a more specific reason for the closure.

§3The Eight Cease Subcodes

RFC 4486 assigns subcodes 1 through 8: Maximum Number of Prefixes Reached, Administrative Shutdown, Peer De-configured, Administrative Reset, Connection Rejected, Other Configuration Change, Connection Collision Resolution and Out of Resources.

The names cover operator actions, protocol events and resource conditions. For the maximum-prefixes subcode, the notification may also include the address family and the configured upper bound in its Data field.

Each of the eight numbers represents a different cause, such as an operator shutdown or a prefix limit. The neighbor can use the reason to diagnose the session event.

THE CEASE SUBCODES DEFINED IN RFC 4486
  • 1Maximum Number of Prefixes Reached — Received prefixes exceeded a locally configured upper bound.
  • 2Administrative Shutdown — The speaker administratively shuts down the peering.
  • 3Peer De-configured — The speaker de-configures the peer.
  • 4Administrative Reset — The speaker administratively resets the peering.
  • 5Connection Rejected — A connection is disallowed after transport acceptance.
  • 6Other Configuration Change — Reset due to another configuration change.
  • 7Connection Collision Resolution — Cease results from collision resolution.
  • 8Out of Resources — The speaker resets a session after resource exhaustion.

§4When a Speaker Sends Each Code

If a speaker terminates a peering because received prefixes exceed a locally configured upper bound, it MUST send Maximum Number of Prefixes Reached. The optional data can contain the AFI, SAFI and prefix upper bound.

A speaker SHOULD use Administrative Shutdown, Peer De-configured, Administrative Reset, Connection Rejected or Other Configuration Change for the corresponding local action. It SHOULD use Connection Collision Resolution when a session ends because of BGP's collision-resolution procedure. Out of Resources MAY be used when the speaker runs out of resources, such as memory, and resets a session.

A speaker must report a prefix-limit closure with its matching subcode. For administrative actions and other listed conditions, the RFC says which subcode the speaker should use.

§4.1Retrying After Selected Cease Reasons

After receiving Administrative Shutdown, Peer De-configured, Connection Rejected or Out of Resources, a speaker should use a backoff approach when retrying the connection. The recommendation is to behave as though the BGP DampPeerOscillations attribute were true for that peer.

An implementation should set an upper limit on consecutive automatic retries. After reaching that limit, it stops retrying until an administrator intervenes.

Some Cease reasons signal that an immediate reconnect may not succeed. The speaker should wait between attempts and stop automatic retries after a configured limit.

§5Assigning Future Subcodes

The document defines Cease subcodes 1-8. Future assignments use either Standards Action or Early IANA Allocation, following the procedures in RFC 2434 and RFC 4020.

Each assignment consists of a name and a value. This keeps the numeric code and its stated reason associated in the registry.

Future subcodes need an approved assignment and a name. This prevents two reasons from being assigned the same number.

§6Security Considerations

The security considerations section states that this extension does not change the security issues inherent in BGP. It adds reason codes and retry guidance, not a new security mechanism.

The new subcodes do not change BGP's underlying security properties. They explain why a speaker ended a session.

§7References