Initial revision
diff --git a/bgpd/BGP4-MIB.txt b/bgpd/BGP4-MIB.txt
new file mode 100644
index 0000000..c911316
--- /dev/null
+++ b/bgpd/BGP4-MIB.txt
@@ -0,0 +1,929 @@
+ BGP4-MIB DEFINITIONS ::= BEGIN
+
+ IMPORTS
+ MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
+ IpAddress, Integer32, Counter32, Gauge32, mib-2
+ FROM SNMPv2-SMI
+ MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
+ FROM SNMPv2-CONF;
+
+ bgp MODULE-IDENTITY
+ LAST-UPDATED "9902100000Z"
+ ORGANIZATION "IETF IDR Working Group"
+ CONTACT-INFO "E-mail: idr@merit.net
+
+ Susan Hares (Editor)
+ Merit Network
+ 4251 Plymouth Road
+ Suite C
+ Ann Arbor, MI 48105-2785
+ Tel: +1 734 936 2095
+ Fax: +1 734 647 3185
+ E-mail: skh@merit.edu
+
+ Jeff Johnson (Editor)
+ RedBack Networks, Inc.
+ 1389 Moffett Park Drive
+ Sunnyvale, CA 94089-1134
+ Tel: +1 408 548 3516
+ Fax: +1 408 548 3599
+ E-mail: jeff@redback.com"
+ DESCRIPTION
+ "The MIB module for BGP-4."
+ REVISION "9902100000Z"
+ DESCRIPTION
+ "Corrected duplicate OBJECT IDENTIFIER
+ assignment in the conformance information."
+ REVISION "9601080000Z"
+ DESCRIPTION
+ "1) Fixed the definitions of the traps to
+ make them equivalent to their initial
+ definition in RFC 1269.
+ 2) Added compliance and conformance info."
+ ::= { mib-2 15 }
+
+ bgpVersion OBJECT-TYPE
+ SYNTAX OCTET STRING (SIZE (1..255))
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Vector of supported BGP protocol version
+ numbers. Each peer negotiates the version
+ from this vector. Versions are identified
+ via the string of bits contained within this
+ object. The first octet contains bits 0 to
+ 7, the second octet contains bits 8 to 15,
+ and so on, with the most significant bit
+ referring to the lowest bit number in the
+ octet (e.g., the MSB of the first octet
+ refers to bit 0). If a bit, i, is present
+ and set, then the version (i+1) of the BGP
+ is supported."
+ ::= { bgp 1 }
+
+ bgpLocalAs OBJECT-TYPE
+ SYNTAX INTEGER (0..65535)
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The local autonomous system number."
+ ::= { bgp 2 }
+
+
+
+ -- BGP Peer table. This table contains, one entry per BGP
+ -- peer, information about the BGP peer.
+
+ bgpPeerTable OBJECT-TYPE
+ SYNTAX SEQUENCE OF BgpPeerEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "BGP peer table. This table contains,
+ one entry per BGP peer, information about the
+ connections with BGP peers."
+ ::= { bgp 3 }
+
+ bgpPeerEntry OBJECT-TYPE
+ SYNTAX BgpPeerEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "Entry containing information about the
+ connection with a BGP peer."
+ INDEX { bgpPeerRemoteAddr }
+ ::= { bgpPeerTable 1 }
+
+ BgpPeerEntry ::= SEQUENCE {
+ bgpPeerIdentifier
+ IpAddress,
+ bgpPeerState
+ INTEGER,
+ bgpPeerAdminStatus
+ INTEGER,
+ bgpPeerNegotiatedVersion
+ Integer32,
+ bgpPeerLocalAddr
+ IpAddress,
+ bgpPeerLocalPort
+ INTEGER,
+ bgpPeerRemoteAddr
+ IpAddress,
+ bgpPeerRemotePort
+ INTEGER,
+ bgpPeerRemoteAs
+ INTEGER,
+ bgpPeerInUpdates
+ Counter32,
+ bgpPeerOutUpdates
+ Counter32,
+ bgpPeerInTotalMessages
+ Counter32,
+ bgpPeerOutTotalMessages
+ Counter32,
+ bgpPeerLastError
+ OCTET STRING,
+ bgpPeerFsmEstablishedTransitions
+ Counter32,
+ bgpPeerFsmEstablishedTime
+ Gauge32,
+ bgpPeerConnectRetryInterval
+ INTEGER,
+ bgpPeerHoldTime
+ INTEGER,
+ bgpPeerKeepAlive
+ INTEGER,
+ bgpPeerHoldTimeConfigured
+ INTEGER,
+ bgpPeerKeepAliveConfigured
+ INTEGER,
+ bgpPeerMinASOriginationInterval
+ INTEGER,
+ bgpPeerMinRouteAdvertisementInterval
+ INTEGER,
+ bgpPeerInUpdateElapsedTime
+ Gauge32
+ }
+
+ bgpPeerIdentifier OBJECT-TYPE
+ SYNTAX IpAddress
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The BGP Identifier of this entry's BGP peer."
+ ::= { bgpPeerEntry 1 }
+
+ bgpPeerState OBJECT-TYPE
+ SYNTAX INTEGER {
+ idle(1),
+ connect(2),
+ active(3),
+ opensent(4),
+ openconfirm(5),
+ established(6)
+ }
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The BGP peer connection state."
+ ::= { bgpPeerEntry 2 }
+
+ bgpPeerAdminStatus OBJECT-TYPE
+ SYNTAX INTEGER {
+ stop(1),
+ start(2)
+ }
+ MAX-ACCESS read-write
+ STATUS current
+ DESCRIPTION
+ "The desired state of the BGP connection. A
+ transition from 'stop' to 'start' will cause
+ the BGP Start Event to be generated. A
+ transition from 'start' to 'stop' will cause
+ the BGP Stop Event to be generated. This
+ parameter can be used to restart BGP peer
+ connections. Care should be used in providing
+ write access to this object without adequate
+ authentication."
+ ::= { bgpPeerEntry 3 }
+
+ bgpPeerNegotiatedVersion OBJECT-TYPE
+ SYNTAX Integer32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The negotiated version of BGP running between
+ the two peers."
+ ::= { bgpPeerEntry 4 }
+
+ bgpPeerLocalAddr OBJECT-TYPE
+ SYNTAX IpAddress
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The local IP address of this entry's BGP
+ connection."
+ ::= { bgpPeerEntry 5 }
+
+ bgpPeerLocalPort OBJECT-TYPE
+ SYNTAX INTEGER (0..65535)
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The local port for the TCP connection between
+ the BGP peers."
+ ::= { bgpPeerEntry 6 }
+
+ bgpPeerRemoteAddr OBJECT-TYPE
+ SYNTAX IpAddress
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The remote IP address of this entry's BGP
+ peer."
+ ::= { bgpPeerEntry 7 }
+
+ bgpPeerRemotePort OBJECT-TYPE
+ SYNTAX INTEGER (0..65535)
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The remote port for the TCP connection between
+ the BGP peers. Note that the objects
+ bgpPeerLocalAddr, bgpPeerLocalPort,
+ bgpPeerRemoteAddr and bgpPeerRemotePort
+ provide the appropriate reference to the
+ standard MIB TCP connection table."
+ ::= { bgpPeerEntry 8 }
+
+ bgpPeerRemoteAs OBJECT-TYPE
+ SYNTAX INTEGER (0..65535)
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The remote autonomous system number."
+ ::= { bgpPeerEntry 9 }
+
+ bgpPeerInUpdates OBJECT-TYPE
+ SYNTAX Counter32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The number of BGP UPDATE messages received on
+ this connection. This object should be
+ initialized to zero (0) when the connection is
+ established."
+ ::= { bgpPeerEntry 10 }
+
+ bgpPeerOutUpdates OBJECT-TYPE
+ SYNTAX Counter32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The number of BGP UPDATE messages transmitted
+ on this connection. This object should be
+ initialized to zero (0) when the connection is
+ established."
+ ::= { bgpPeerEntry 11 }
+
+ bgpPeerInTotalMessages OBJECT-TYPE
+ SYNTAX Counter32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The total number of messages received from the
+ remote peer on this connection. This object
+ should be initialized to zero when the
+ connection is established."
+ ::= { bgpPeerEntry 12 }
+
+ bgpPeerOutTotalMessages OBJECT-TYPE
+ SYNTAX Counter32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The total number of messages transmitted to
+ the remote peer on this connection. This object
+ should be initialized to zero when the
+ connection is established."
+ ::= { bgpPeerEntry 13 }
+
+ bgpPeerLastError OBJECT-TYPE
+ SYNTAX OCTET STRING (SIZE (2))
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The last error code and subcode seen by this
+ peer on this connection. If no error has
+ occurred, this field is zero. Otherwise, the
+ first byte of this two byte OCTET STRING
+ contains the error code, and the second byte
+ contains the subcode."
+ ::= { bgpPeerEntry 14 }
+
+ bgpPeerFsmEstablishedTransitions OBJECT-TYPE
+ SYNTAX Counter32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The total number of times the BGP FSM
+ transitioned into the established state."
+ ::= { bgpPeerEntry 15 }
+
+ bgpPeerFsmEstablishedTime OBJECT-TYPE
+ SYNTAX Gauge32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "This timer indicates how long (in seconds) this
+ peer has been in the Established state or how long
+ since this peer was last in the Established state.
+ It is set to zero when a new peer is configured or
+ the router is booted."
+ ::= { bgpPeerEntry 16 }
+
+ bgpPeerConnectRetryInterval OBJECT-TYPE
+ SYNTAX INTEGER (1..65535)
+ MAX-ACCESS read-write
+ STATUS current
+ DESCRIPTION
+ "Time interval in seconds for the ConnectRetry
+ timer. The suggested value for this timer is
+ 120 seconds."
+ ::= { bgpPeerEntry 17 }
+
+ bgpPeerHoldTime OBJECT-TYPE
+ SYNTAX INTEGER ( 0 | 3..65535 )
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Time interval in seconds for the Hold Timer
+ established with the peer. The value of this
+ object is calculated by this BGP speaker by
+ using the smaller of the value in
+ bgpPeerHoldTimeConfigured and the Hold Time
+ received in the OPEN message. This value
+ must be at lease three seconds if it is not
+ zero (0) in which case the Hold Timer has
+ not been established with the peer, or, the
+ value of bgpPeerHoldTimeConfigured is zero (0)."
+ ::= { bgpPeerEntry 18 }
+
+ bgpPeerKeepAlive OBJECT-TYPE
+ SYNTAX INTEGER ( 0 | 1..21845 )
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Time interval in seconds for the KeepAlive
+ timer established with the peer. The value of
+ this object is calculated by this BGP speaker
+ such that, when compared with bgpPeerHoldTime,
+ it has the same proportion as what
+ bgpPeerKeepAliveConfigured has when compared
+ with bgpPeerHoldTimeConfigured. If the value
+ of this object is zero (0), it indicates that
+ the KeepAlive timer has not been established
+ with the peer, or, the value of
+ bgpPeerKeepAliveConfigured is zero (0)."
+ ::= { bgpPeerEntry 19 }
+
+ bgpPeerHoldTimeConfigured OBJECT-TYPE
+ SYNTAX INTEGER ( 0 | 3..65535 )
+ MAX-ACCESS read-write
+ STATUS current
+ DESCRIPTION
+ "Time interval in seconds for the Hold Time
+ configured for this BGP speaker with this peer.
+ This value is placed in an OPEN message sent to
+ this peer by this BGP speaker, and is compared
+ with the Hold Time field in an OPEN message
+ received from the peer when determining the Hold
+ Time (bgpPeerHoldTime) with the peer. This value
+ must not be less than three seconds if it is not
+ zero (0) in which case the Hold Time is NOT to be
+ established with the peer. The suggested value for
+ this timer is 90 seconds."
+ ::= { bgpPeerEntry 20 }
+
+ bgpPeerKeepAliveConfigured OBJECT-TYPE
+ SYNTAX INTEGER ( 0 | 1..21845 )
+ MAX-ACCESS read-write
+ STATUS current
+ DESCRIPTION
+ "Time interval in seconds for the KeepAlive timer
+ configured for this BGP speaker with this peer.
+ The value of this object will only determine the
+ KEEPALIVE messages' frequency relative to the value
+ specified in bgpPeerHoldTimeConfigured; the actual
+ time interval for the KEEPALIVE messages is
+ indicated by bgpPeerKeepAlive. A reasonable
+ maximum value for this timer would be configured to
+ be one third of that of bgpPeerHoldTimeConfigured.
+ If the value of this object is zero (0), no
+ periodical KEEPALIVE messages are sent to the peer
+ after the BGP connection has been established. The
+ suggested value for this timer is 30 seconds."
+ ::= { bgpPeerEntry 21 }
+
+ bgpPeerMinASOriginationInterval OBJECT-TYPE
+ SYNTAX INTEGER (1..65535)
+ MAX-ACCESS read-write
+ STATUS current
+ DESCRIPTION
+ "Time interval in seconds for the
+ MinASOriginationInterval timer.
+ The suggested value for this timer is 15 seconds."
+ ::= { bgpPeerEntry 22 }
+
+ bgpPeerMinRouteAdvertisementInterval OBJECT-TYPE
+ SYNTAX INTEGER (1..65535)
+ MAX-ACCESS read-write
+ STATUS current
+ DESCRIPTION
+ "Time interval in seconds for the
+ MinRouteAdvertisementInterval timer.
+ The suggested value for this timer is 30 seconds."
+ ::= { bgpPeerEntry 23 }
+
+ bgpPeerInUpdateElapsedTime OBJECT-TYPE
+ SYNTAX Gauge32
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Elapsed time in seconds since the last BGP
+ UPDATE message was received from the peer.
+ Each time bgpPeerInUpdates is incremented,
+ the value of this object is set to zero (0)."
+ ::= { bgpPeerEntry 24 }
+
+
+
+ bgpIdentifier OBJECT-TYPE
+ SYNTAX IpAddress
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The BGP Identifier of local system."
+ ::= { bgp 4 }
+
+
+
+ -- Received Path Attribute Table. This table contains,
+ -- one entry per path to a network, path attributes
+ -- received from all peers running BGP version 3 or less.
+ -- This table is obsolete, having been replaced in
+ -- functionality with the bgp4PathAttrTable.
+
+ bgpRcvdPathAttrTable OBJECT-TYPE
+ SYNTAX SEQUENCE OF BgpPathAttrEntry
+ MAX-ACCESS not-accessible
+ STATUS obsolete
+ DESCRIPTION
+ "The BGP Received Path Attribute Table contains
+ information about paths to destination networks
+ received from all peers running BGP version 3 or
+ less."
+ ::= { bgp 5 }
+
+ bgpPathAttrEntry OBJECT-TYPE
+ SYNTAX BgpPathAttrEntry
+ MAX-ACCESS not-accessible
+ STATUS obsolete
+ DESCRIPTION
+ "Information about a path to a network."
+ INDEX { bgpPathAttrDestNetwork,
+ bgpPathAttrPeer }
+ ::= { bgpRcvdPathAttrTable 1 }
+
+ BgpPathAttrEntry ::= SEQUENCE {
+ bgpPathAttrPeer
+ IpAddress,
+ bgpPathAttrDestNetwork
+ IpAddress,
+ bgpPathAttrOrigin
+ INTEGER,
+ bgpPathAttrASPath
+ OCTET STRING,
+ bgpPathAttrNextHop
+ IpAddress,
+ bgpPathAttrInterASMetric
+ Integer32
+ }
+
+ bgpPathAttrPeer OBJECT-TYPE
+ SYNTAX IpAddress
+ MAX-ACCESS read-only
+ STATUS obsolete
+ DESCRIPTION
+ "The IP address of the peer where the path
+ information was learned."
+ ::= { bgpPathAttrEntry 1 }
+
+ bgpPathAttrDestNetwork OBJECT-TYPE
+ SYNTAX IpAddress
+ MAX-ACCESS read-only
+ STATUS obsolete
+ DESCRIPTION
+ "The address of the destination network."
+ ::= { bgpPathAttrEntry 2 }
+
+ bgpPathAttrOrigin OBJECT-TYPE
+ SYNTAX INTEGER {
+ igp(1),-- networks are interior
+ egp(2),-- networks learned via EGP
+ incomplete(3) -- undetermined
+ }
+ MAX-ACCESS read-only
+ STATUS obsolete
+ DESCRIPTION
+ "The ultimate origin of the path information."
+ ::= { bgpPathAttrEntry 3 }
+
+ bgpPathAttrASPath OBJECT-TYPE
+ SYNTAX OCTET STRING (SIZE (2..255))
+ MAX-ACCESS read-only
+ STATUS obsolete
+ DESCRIPTION
+ "The set of ASs that must be traversed to reach
+ the network. This object is probably best
+ represented as SEQUENCE OF INTEGER. For SMI
+ compatibility, though, it is represented as
+ OCTET STRING. Each AS is represented as a pair
+ of octets according to the following algorithm:
+
+ first-byte-of-pair = ASNumber / 256;
+ second-byte-of-pair = ASNumber & 255;"
+ ::= { bgpPathAttrEntry 4 }
+
+ bgpPathAttrNextHop OBJECT-TYPE
+ SYNTAX IpAddress
+ MAX-ACCESS read-only
+ STATUS obsolete
+ DESCRIPTION
+ "The address of the border router that should
+ be used for the destination network."
+ ::= { bgpPathAttrEntry 5 }
+
+ bgpPathAttrInterASMetric OBJECT-TYPE
+ SYNTAX Integer32
+ MAX-ACCESS read-only
+ STATUS obsolete
+ DESCRIPTION
+ "The optional inter-AS metric. If this
+ attribute has not been provided for this route,
+ the value for this object is 0."
+ ::= { bgpPathAttrEntry 6 }
+
+
+
+ -- BGP-4 Received Path Attribute Table. This table contains,
+ -- one entry per path to a network, path attributes
+ -- received from all peers running BGP-4.
+
+ bgp4PathAttrTable OBJECT-TYPE
+ SYNTAX SEQUENCE OF Bgp4PathAttrEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "The BGP-4 Received Path Attribute Table contains
+ information about paths to destination networks
+ received from all BGP4 peers."
+ ::= { bgp 6 }
+
+ bgp4PathAttrEntry OBJECT-TYPE
+ SYNTAX Bgp4PathAttrEntry
+ MAX-ACCESS not-accessible
+ STATUS current
+ DESCRIPTION
+ "Information about a path to a network."
+ INDEX { bgp4PathAttrIpAddrPrefix,
+ bgp4PathAttrIpAddrPrefixLen,
+ bgp4PathAttrPeer }
+ ::= { bgp4PathAttrTable 1 }
+
+ Bgp4PathAttrEntry ::= SEQUENCE {
+ bgp4PathAttrPeer
+ IpAddress,
+ bgp4PathAttrIpAddrPrefixLen
+ INTEGER,
+ bgp4PathAttrIpAddrPrefix
+ IpAddress,
+ bgp4PathAttrOrigin
+ INTEGER,
+ bgp4PathAttrASPathSegment
+ OCTET STRING,
+ bgp4PathAttrNextHop
+ IpAddress,
+ bgp4PathAttrMultiExitDisc
+ INTEGER,
+ bgp4PathAttrLocalPref
+ INTEGER,
+ bgp4PathAttrAtomicAggregate
+ INTEGER,
+ bgp4PathAttrAggregatorAS
+ INTEGER,
+ bgp4PathAttrAggregatorAddr
+ IpAddress,
+ bgp4PathAttrCalcLocalPref
+ INTEGER,
+ bgp4PathAttrBest
+ INTEGER,
+ bgp4PathAttrUnknown
+ OCTET STRING
+ }
+
+ bgp4PathAttrPeer OBJECT-TYPE
+ SYNTAX IpAddress
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The IP address of the peer where the path
+ information was learned."
+ ::= { bgp4PathAttrEntry 1 }
+ bgp4PathAttrIpAddrPrefixLen OBJECT-TYPE
+ SYNTAX INTEGER (0..32)
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Length in bits of the IP address prefix in the
+ Network Layer Reachability Information field."
+ ::= { bgp4PathAttrEntry 2 }
+
+ bgp4PathAttrIpAddrPrefix OBJECT-TYPE
+ SYNTAX IpAddress
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "An IP address prefix in the Network Layer
+ Reachability Information field. This object
+ is an IP address containing the prefix with
+ length specified by bgp4PathAttrIpAddrPrefixLen.
+ Any bits beyond the length specified by
+ bgp4PathAttrIpAddrPrefixLen are zeroed."
+ ::= { bgp4PathAttrEntry 3 }
+
+ bgp4PathAttrOrigin OBJECT-TYPE
+ SYNTAX INTEGER {
+ igp(1),-- networks are interior
+ egp(2),-- networks learned via EGP
+ incomplete(3) -- undetermined
+ }
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The ultimate origin of the path information."
+ ::= { bgp4PathAttrEntry 4 }
+
+ bgp4PathAttrASPathSegment OBJECT-TYPE
+ SYNTAX OCTET STRING (SIZE (2..255))
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The sequence of AS path segments. Each AS
+ path segment is represented by a triple
+ <type, length, value>.
+
+ The type is a 1-octet field which has two
+ possible values:
+ 1 AS_SET: unordered set of ASs a
+ route in the UPDATE message
+ has traversed
+ 2 AS_SEQUENCE: ordered set of ASs
+ a route in the UPDATE message
+ has traversed.
+
+ The length is a 1-octet field containing the
+ number of ASs in the value field.
+
+ The value field contains one or more AS
+ numbers, each AS is represented in the octet
+ string as a pair of octets according to the
+ following algorithm:
+
+ first-byte-of-pair = ASNumber / 256;
+ second-byte-of-pair = ASNumber & 255;"
+ ::= { bgp4PathAttrEntry 5 }
+
+ bgp4PathAttrNextHop OBJECT-TYPE
+ SYNTAX IpAddress
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The address of the border router that should
+ be used for the destination network."
+ ::= { bgp4PathAttrEntry 6 }
+
+ bgp4PathAttrMultiExitDisc OBJECT-TYPE
+ SYNTAX INTEGER (-1..2147483647)
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "This metric is used to discriminate between
+ multiple exit points to an adjacent autonomous
+ system. A value of -1 indicates the absence of
+ this attribute."
+ ::= { bgp4PathAttrEntry 7 }
+
+ bgp4PathAttrLocalPref OBJECT-TYPE
+ SYNTAX INTEGER (-1..2147483647)
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The originating BGP4 speaker's degree of
+ preference for an advertised route. A value of
+ -1 indicates the absence of this attribute."
+ ::= { bgp4PathAttrEntry 8 }
+
+ bgp4PathAttrAtomicAggregate OBJECT-TYPE
+ SYNTAX INTEGER {
+ lessSpecificRrouteNotSelected(1),
+ lessSpecificRouteSelected(2)
+ }
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "Whether or not a system has selected
+ a less specific route without selecting a
+ more specific route."
+ ::= { bgp4PathAttrEntry 9 }
+
+ bgp4PathAttrAggregatorAS OBJECT-TYPE
+ SYNTAX INTEGER (0..65535)
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The AS number of the last BGP4 speaker that
+ performed route aggregation. A value of zero (0)
+ indicates the absence of this attribute."
+ ::= { bgp4PathAttrEntry 10 }
+
+ bgp4PathAttrAggregatorAddr OBJECT-TYPE
+ SYNTAX IpAddress
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The IP address of the last BGP4 speaker that
+ performed route aggregation. A value of
+ 0.0.0.0 indicates the absence of this attribute."
+ ::= { bgp4PathAttrEntry 11 }
+
+ bgp4PathAttrCalcLocalPref OBJECT-TYPE
+ SYNTAX INTEGER (-1..2147483647)
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "The degree of preference calculated by the
+ receiving BGP4 speaker for an advertised route.
+ A value of -1 indicates the absence of this
+ attribute."
+ ::= { bgp4PathAttrEntry 12 }
+
+ bgp4PathAttrBest OBJECT-TYPE
+ SYNTAX INTEGER {
+ false(1),-- not chosen as best route
+ true(2) -- chosen as best route
+ }
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "An indication of whether or not this route
+ was chosen as the best BGP4 route."
+ ::= { bgp4PathAttrEntry 13 }
+
+ bgp4PathAttrUnknown OBJECT-TYPE
+ SYNTAX OCTET STRING (SIZE(0..255))
+ MAX-ACCESS read-only
+ STATUS current
+ DESCRIPTION
+ "One or more path attributes not understood
+ by this BGP4 speaker. Size zero (0) indicates
+ the absence of such attribute(s). Octets
+ beyond the maximum size, if any, are not
+ recorded by this object."
+ ::= { bgp4PathAttrEntry 14 }
+
+
+ -- Traps.
+
+ -- note that in RFC 1657, bgpTraps was incorrectly
+ -- assigned a value of { bgp 7 }, and each of the
+ -- traps had the bgpPeerRemoteAddr object inappropriately
+ -- removed from their OBJECTS clause. The following
+ -- definitions restore the semantics of the traps as
+ -- they were initially defined in RFC 1269.
+
+ -- { bgp 7 } is unused
+
+ bgpTraps OBJECT IDENTIFIER ::= { bgp 0 }
+
+ bgpEstablished NOTIFICATION-TYPE
+ OBJECTS { bgpPeerRemoteAddr,
+ bgpPeerLastError,
+ bgpPeerState }
+ STATUS current
+ DESCRIPTION
+ "The BGP Established event is generated when
+ the BGP FSM enters the ESTABLISHED state."
+ ::= { bgpTraps 1 }
+
+ bgpBackwardTransition NOTIFICATION-TYPE
+ OBJECTS { bgpPeerRemoteAddr,
+ bgpPeerLastError,
+ bgpPeerState }
+ STATUS current
+ DESCRIPTION
+ "The BGPBackwardTransition Event is generated
+ when the BGP FSM moves from a higher numbered
+ state to a lower numbered state."
+ ::= { bgpTraps 2 }
+
+ -- conformance information
+
+ bgpMIBConformance OBJECT IDENTIFIER ::= { bgp 8 }
+ bgpMIBCompliances OBJECT IDENTIFIER ::= { bgpMIBConformance 1 }
+ bgpMIBGroups OBJECT IDENTIFIER ::= { bgpMIBConformance 2 }
+
+ -- compliance statements
+
+ bgpMIBCompliance MODULE-COMPLIANCE
+ STATUS current
+ DESCRIPTION
+ "The compliance statement for entities which
+ implement the BGP4 mib."
+ MODULE -- this module
+ MANDATORY-GROUPS { bgp4MIBGlobalsGroup,
+ bgp4MIBPeerGroup,
+ bgp4MIBPathAttrGroup,
+ bgp4MIBNotificationGroup }
+ ::= { bgpMIBCompliances 1 }
+
+ -- units of conformance
+
+ bgp4MIBGlobalsGroup OBJECT-GROUP
+ OBJECTS { bgpVersion,
+ bgpLocalAs,
+ bgpIdentifier }
+ STATUS current
+ DESCRIPTION
+ "A collection of objects providing information
+ on global BGP state."
+ ::= { bgpMIBGroups 1 }
+
+ bgp4MIBPeerGroup OBJECT-GROUP
+ OBJECTS { bgpPeerIdentifier,
+ bgpPeerState,
+ bgpPeerAdminStatus,
+ bgpPeerNegotiatedVersion,
+ bgpPeerLocalAddr,
+ bgpPeerLocalPort,
+ bgpPeerRemoteAddr,
+ bgpPeerRemotePort,
+ bgpPeerRemoteAs,
+ bgpPeerInUpdates,
+ bgpPeerOutUpdates,
+ bgpPeerInTotalMessages,
+ bgpPeerOutTotalMessages,
+ bgpPeerLastError,
+ bgpPeerFsmEstablishedTransitions,
+ bgpPeerFsmEstablishedTime,
+ bgpPeerConnectRetryInterval,
+ bgpPeerHoldTime,
+ bgpPeerKeepAlive,
+ bgpPeerHoldTimeConfigured,
+ bgpPeerKeepAliveConfigured,
+ bgpPeerMinASOriginationInterval,
+ bgpPeerMinRouteAdvertisementInterval,
+ bgpPeerInUpdateElapsedTime }
+ STATUS current
+ DESCRIPTION
+ "A collection of objects for managing
+ BGP peers."
+ ::= { bgpMIBGroups 2 }
+
+ bgp4MIBRcvdPathAttrGroup OBJECT-GROUP
+ OBJECTS { bgpPathAttrPeer,
+ bgpPathAttrDestNetwork,
+ bgpPathAttrOrigin,
+ bgpPathAttrASPath,
+ bgpPathAttrNextHop,
+ bgpPathAttrInterASMetric }
+ STATUS obsolete
+ DESCRIPTION
+ "A collection of objects for managing BGP
+ path entries.
+
+ This conformance group is obsolete,
+ replaced by bgp4MIBPathAttrGroup."
+ ::= { bgpMIBGroups 3 }
+
+ bgp4MIBPathAttrGroup OBJECT-GROUP
+ OBJECTS { bgp4PathAttrPeer,
+ bgp4PathAttrIpAddrPrefixLen,
+ bgp4PathAttrIpAddrPrefix,
+ bgp4PathAttrOrigin,
+ bgp4PathAttrASPathSegment,
+ bgp4PathAttrNextHop,
+ bgp4PathAttrMultiExitDisc,
+ bgp4PathAttrLocalPref,
+ bgp4PathAttrAtomicAggregate,
+ bgp4PathAttrAggregatorAS,
+ bgp4PathAttrAggregatorAddr,
+ bgp4PathAttrCalcLocalPref,
+ bgp4PathAttrBest,
+ bgp4PathAttrUnknown }
+ STATUS current
+ DESCRIPTION
+ "A collection of objects for managing
+ BGP path entries."
+ ::= { bgpMIBGroups 4 }
+
+ bgp4MIBNotificationGroup NOTIFICATION-GROUP
+ NOTIFICATIONS { bgpEstablished,
+ bgpBackwardTransition }
+ STATUS current
+ DESCRIPTION
+ "A collection of notifications for signaling
+ changes in BGP peer relationships."
+ ::= { bgpMIBGroups 5 }
+
+ END