| submodule openconfig-bgp-errors { |
| |
| belongs-to openconfig-bgp-types { |
| prefix "oc-bgp-types"; |
| } |
| |
| import openconfig-extensions { prefix "oc-ext"; } |
| |
| // meta |
| organization |
| "OpenConfig working group"; |
| |
| contact |
| "OpenConfig working group |
| netopenconfig@googlegroups.com"; |
| |
| description |
| "This module defines BGP NOTIFICATION message error codes |
| and subcodes"; |
| |
| oc-ext:openconfig-version "4.0.1"; |
| |
| revision "2017-07-30" { |
| description |
| "Clarification of add-paths send-max leaf"; |
| reference "4.0.1"; |
| } |
| |
| revision "2017-07-10" { |
| description |
| "Add error notifications; moved add-paths config; add AS |
| prepend policy features; removed unneeded config leaves"; |
| reference "4.0.0"; |
| } |
| |
| |
| |
| identity BGP_ERROR_CODE { |
| description |
| "Indicates the error type in a BGP NOTIFICATION message"; |
| reference |
| "RFC 4271 - A Border Gateway Protocol 4 (BGP-4)"; |
| } |
| |
| identity BGP_ERROR_SUBCODE { |
| description |
| "Provides more specific information about the nature of the |
| error reported in a NOTIFICATION message. Each Error |
| Code may have one or more Error Subcodes associated with it."; |
| reference |
| "RFC 4271 - A Border Gateway Protocol 4 (BGP-4)"; |
| } |
| |
| |
| identity UNSPECIFIC { |
| base BGP_ERROR_SUBCODE; |
| description |
| "The error subcode field is unspecific when the NOTIFICATION |
| message does not include any specific error subcode (i.e.., |
| value 0)."; |
| } |
| |
| identity MESSAGE_HEADER_ERROR { |
| base BGP_ERROR_CODE; |
| description |
| "Errors detected while processing the Message Header"; |
| } |
| |
| identity OPEN_MESSAGE_ERROR { |
| base BGP_ERROR_CODE; |
| description |
| "Errors detected while processing the OPEN message"; |
| } |
| |
| identity UPDATE_MESSAGE_ERROR { |
| base BGP_ERROR_CODE; |
| description |
| "Errors detected while processing the UPDATE message"; |
| } |
| |
| identity HOLD_TIMER_EXPIRED { |
| base BGP_ERROR_CODE; |
| description |
| "Indicates that the system did not receive successive |
| KEEPALIVE, UPDATE, and/or NOTIFICATION messages within the |
| period specified in the Hold Time field of the OPEN message"; |
| } |
| |
| identity FINITE_STATE_MACHINE_ERROR { |
| base BGP_ERROR_CODE; |
| description |
| "Error detected by the BGP Finite State Machine |
| (e.g., receipt of an unexpected event)"; |
| } |
| |
| identity CEASE { |
| base BGP_ERROR_CODE; |
| description |
| "Sent by a BGP peer to close its BGP connection in absence of |
| any fatal errors. If the BGP speaker terminates its |
| connection with a neihbor because the number of prefixes |
| received exceeds the configured upper bound, the speaker must |
| send the neighbor a NOTIFICATION message with the Cease |
| error code."; |
| } |
| |
| identity ROUTE_REFRESH_MESSAGE_ERROR { |
| base BGP_ERROR_CODE; |
| description |
| "The length, excluding the fixed-size message header, of the |
| received ROUTE-REFRESH message with Message Subtype 1 and 2 is |
| not 4. Applicable only when a BGP speaker has received the |
| 'Enhanced Route Refresh Capability' from a peer"; |
| reference |
| "RFC 7313 - Enhanced Route Refresh Capability for BGP-4"; |
| } |
| |
| identity MESSAGE_HEADER_SUBCODE { |
| base BGP_ERROR_SUBCODE; |
| description |
| "Error subcode definitions for Message Header error |
| notifications"; |
| } |
| |
| identity CONNECTION_NOT_SYNCHRONIZED { |
| base MESSAGE_HEADER_SUBCODE; |
| description |
| "Marker field of the message header is not all ones as |
| expected"; |
| } |
| |
| identity BAD_MESSAGE_LENGTH { |
| base MESSAGE_HEADER_SUBCODE; |
| description |
| "Indicates the message has an erroneous length with one |
| or more of the following: |
| |
| - the Length field of the message header is less than 19 or |
| greater than 4096 |
| |
| - the Length field of an OPEN message is less than the minimum |
| length of the OPEN message |
| |
| - the Length field of an UPDATE message is less than the |
| minimum length of the UPDATE message |
| |
| - the Length field of a KEEPALIVE message is not equal to 19 |
| |
| - the Length field of a NOTIFICATION message is less than the |
| minimum length of the NOTIFICATION message |
| |
| The erroneous Length field must be reported in the |
| NOTIFICATION data."; |
| } |
| |
| identity BAD_MESSAGE_TYPE { |
| base MESSAGE_HEADER_SUBCODE; |
| description |
| "Type field of the message header is not recognized. The |
| erroneous type field must be reported in the NOTIFICATION |
| data"; |
| } |
| |
| identity OPEN_MESSAGE_SUBCODE { |
| base BGP_ERROR_SUBCODE; |
| description |
| "Error subcode definitions for OPEN message error |
| notifications"; |
| } |
| |
| identity UNSUPPORTED_VERSION_NUMBER { |
| base OPEN_MESSAGE_SUBCODE; |
| description |
| "Version number in the Version field of the received OPEN |
| message is not supported"; |
| } |
| |
| identity BAD_PEER_AS { |
| base OPEN_MESSAGE_SUBCODE; |
| description |
| "Autonomous System field of the OPEN message is unacceptable"; |
| } |
| |
| identity BAD_BGP_IDENTIFIER { |
| base OPEN_MESSAGE_SUBCODE; |
| description |
| "BGP Identifier field of the OPEN message is syntactically |
| incorrect"; |
| } |
| |
| identity UNSUPPORTED_OPTIONAL_PARAMETER { |
| base OPEN_MESSAGE_SUBCODE; |
| description |
| "One of the Optional Parameters in the OPEN message is not |
| recognized"; |
| } |
| |
| identity UNACCEPTABLE_HOLD_TIME { |
| base OPEN_MESSAGE_SUBCODE; |
| description |
| "Hold Time field of the OPEN message is unacceptable"; |
| } |
| |
| identity UNSUPPORTED_CAPABILITY { |
| base OPEN_MESSAGE_SUBCODE; |
| description |
| "Inidicates that the peer does not support capabilities |
| advertisement -- the peer may send this subcode in response to |
| an OPEN message that carries the Capabilities Optional |
| Parameter"; |
| reference |
| "RFC 5492 - Capabilities Advertisement with BGP-4"; |
| } |
| |
| identity UPDATE_MESSAGE_SUBCODE { |
| base BGP_ERROR_SUBCODE; |
| description |
| "Error subcode definitions for UPDATE message error |
| notifications"; |
| } |
| |
| identity MALFORMED_ATTRIBUTE_LIST { |
| base UPDATE_MESSAGE_SUBCODE; |
| description |
| "Inidicates Withdrawn Routes Length or Total Attribute Length |
| is too large, or |
| |
| An attribute appears more than once in the UPDATE message"; |
| } |
| |
| identity UNRECOGNIZED_WELL_KNOWN_ATTRIBUTE { |
| base UPDATE_MESSAGE_SUBCODE; |
| description |
| "One or more of the well-known mandatory attributes are not |
| recognized"; |
| } |
| |
| identity MISSING_WELL_KNOWN_ATTRIBUTE { |
| base UPDATE_MESSAGE_SUBCODE; |
| description |
| "One or more of the well-known mandatory attributes are not |
| present"; |
| } |
| |
| identity ATTRIBUTE_FLAGS_ERROR { |
| base UPDATE_MESSAGE_SUBCODE; |
| description |
| "Attribute has Attribute Flags that conflict with the |
| Attribute Type Code"; |
| } |
| |
| identity ATTRIBUTE_LENGTH_ERROR { |
| base UPDATE_MESSAGE_SUBCODE; |
| description |
| "Attribute has an Attribute Length that conflicts with the |
| expected length (based on the attribute type code)"; |
| } |
| |
| identity INVALID_ORIGIN_ATTRIBUTE { |
| base UPDATE_MESSAGE_SUBCODE; |
| description |
| "ORIGIN attribute has an undefined value"; |
| } |
| |
| identity INVALID_NEXT_HOP_ATTRIBUTE { |
| base UPDATE_MESSAGE_SUBCODE; |
| description |
| "The NEXT_HOP attribute field is syntactically incorrect"; |
| } |
| |
| identity OPTIONAL_ATTRIBUTE_ERROR { |
| base UPDATE_MESSAGE_SUBCODE; |
| description |
| "An error is detected in the value of a recognized optional |
| attribute (such an attribute must be discarded)"; |
| } |
| |
| identity INVALID_NETWORK_FIELD { |
| base UPDATE_MESSAGE_SUBCODE; |
| description |
| "The NLRI field in the UPDATE message is syntactically |
| incorrect"; |
| } |
| |
| identity MALFORMED_AS_PATH { |
| base UPDATE_MESSAGE_SUBCODE; |
| description |
| "The AS_PATH attribute is syntactically incorrect"; |
| } |
| |
| identity FINITE_STATE_MACHINE_SUBCODE { |
| base BGP_ERROR_SUBCODE; |
| description |
| "Error subcode definitions for BGP finite state machine |
| errors."; |
| reference |
| "RFC 6608 - Subcodes for BGP Finite State Machine Error"; |
| } |
| |
| identity RECEIVE_UNEXPECTED_MESSAGE_OPENSENT { |
| base FINITE_STATE_MACHINE_SUBCODE; |
| description |
| "The peer BGP speaker received an unexpected message from |
| the local system while the peer speaker session was in the |
| OpenSent state"; |
| } |
| |
| identity RECEIVE_UNEXPECTED_MESSAGE_OPENCONFIRM { |
| base FINITE_STATE_MACHINE_SUBCODE; |
| description |
| "The peer BGP speaker received an unexpected message from |
| the local system while the peer speaker session was in the |
| OpenConfirm state"; |
| } |
| |
| identity RECEIVE_UNEXPECTED_MESSAGE_ESTABLISHED { |
| base FINITE_STATE_MACHINE_SUBCODE; |
| description |
| "The peer BGP speaker received an unexpected message from |
| the local system while the peer speaker session was in the |
| Established state"; |
| } |
| |
| identity CEASE_SUBCODE { |
| base BGP_ERROR_SUBCODE; |
| description |
| "Error subcode definitions for Cease notification messages"; |
| reference |
| "RFC 4486 - Subcodes for BGP Cease Notification Message"; |
| } |
| |
| identity MAX_NUM_PREFIXES_REACHED { |
| base CEASE_SUBCODE; |
| description |
| "The peer BGP speaker terminated its peering with the local |
| system because the number of address prefixes received |
| exceeds a locally configured upper bound"; |
| } |
| |
| identity ADMINISTRATIVE_SHUTDOWN { |
| base CEASE_SUBCODE; |
| description |
| "The peer BGP speaker administratively shut down its peering |
| with the local system"; |
| } |
| |
| identity PEER_DE_CONFIGURED { |
| base CEASE_SUBCODE; |
| description |
| "The peer BGP speaker de-configure the peering with the local |
| system"; |
| } |
| |
| identity ADMINISTRATIVE_RESET { |
| base CEASE_SUBCODE; |
| description |
| "The peer BGP speaker administratively reset the peering with |
| the local system"; |
| } |
| |
| identity CONNECTION_REJECTED { |
| base CEASE_SUBCODE; |
| description |
| "The peer BGP speaker disallowed the BGP connection to the |
| local system after the peer speaker accepted a transport |
| protocol connection"; |
| } |
| |
| identity OTHER_CONFIG_CHANGE { |
| base CEASE_SUBCODE; |
| description |
| "The peer BGP speaker administratively reset the peering with |
| the local sytem due to a configuration change that is not |
| covered by another subcode."; |
| } |
| |
| identity CONN_COLLISION_RESOLUTION { |
| base CEASE_SUBCODE; |
| description |
| "The peer BGP speaker sent a CEASE NOTIFICATION as a result of |
| the collision resolution procedure described in RFC 4271"; |
| } |
| |
| identity OUT_OF_RESOURCES { |
| base CEASE_SUBCODE; |
| description |
| "The peer BGP speaker ran out of resources (e.g., memory) and |
| reset the session with the local system"; |
| } |
| |
| identity ROUTE_REFRESH_SUBCODE { |
| base BGP_ERROR_SUBCODE; |
| description |
| "Error subcode definitions for the ROUTE-REFRESH message |
| error"; |
| } |
| |
| identity INVALID_MESSAGE_LENGTH { |
| base ROUTE_REFRESH_SUBCODE; |
| description |
| "The length, excluding the fixed-size message header, of the |
| received ROUTE-REFRESH message with Message Subtype 1 and 2 |
| is not 4"; |
| } |
| } |