Imported Upstream version 0.4.8
[platform/upstream/libsmi.git] / mibs / ietf / BGP4-MIB
1 BGP4-MIB DEFINITIONS ::= BEGIN
2
3     IMPORTS
4         MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
5         IpAddress, Integer32, Counter32, Gauge32, mib-2
6             FROM SNMPv2-SMI
7         MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
8             FROM SNMPv2-CONF;
9
10     bgp MODULE-IDENTITY
11         LAST-UPDATED "200601110000Z"
12         ORGANIZATION "IETF IDR Working Group"
13         CONTACT-INFO "E-mail:  idr@ietf.org
14
15                       Jeffrey Haas, Susan Hares  (Editors)
16                       NextHop Technologies
17                       825 Victors Way
18                       Suite 100
19                       Ann Arbor, MI 48108-2738
20                       Tel: +1 734 222-1600
21                       Fax: +1 734 222-1602
22                       E-mail: jhaas@nexthop.com
23                               skh@nexthop.com"
24
25         DESCRIPTION
26                 "The MIB module for the BGP-4 protocol.
27
28                  Copyright (C) The Internet Society (2006).  This
29                  version of this MIB module is part of RFC 4273;
30                  see the RFC itself for full legal notices."
31
32         REVISION "200601110000Z"
33         DESCRIPTION
34                "Changes from RFC 1657:
35
36                 1) Fixed the definitions of the notifications
37                    to make them equivalent to their initial
38                    definition in RFC 1269.
39                 2) Added compliance and conformance info.
40                 3) Updated information for the values of
41                    bgpPeerNegotiatedVersion, bgp4PathAttrLocalPref,
42                    bgp4PathAttrCalcLocalPref,
43                    bgp4PathAttrMultiExitDisc,
44                    bgp4PathAttrASPathSegement.
45                 4) Added additional clarification comments where
46                    needed.
47
48
49
50                 5) Noted where objects do not fully reflect
51                    the protocol as Known Issues.
52                 6) Updated the DESCRIPTION for the
53                    bgp4PathAttrAtomicAggregate object.
54                 7) The following objects have had their DESCRIPTION
55                    clause modified to remove the text that suggested
56                    (using 'should' verb) initializing the counter
57                    to zero on a transition to the established state:
58                      bgpPeerInUpdates, bgpPeerOutUpdates,
59                      bgpPeerInTotalMessages, bgpPeerOutTotalMessages
60                    Those implementations that still do this are
61                    still compliant with this new wording.
62                    Applications should not assume counters have
63                    started at zero.
64
65                  Published as RFC 4273."
66
67         REVISION "199405050000Z"
68         DESCRIPTION
69                 "Translated to SMIv2 and published as RFC 1657."
70
71         REVISION "199110261839Z"
72         DESCRIPTION
73                 "Initial version, published as RFC 1269."
74         ::= { mib-2 15 }
75
76     bgpVersion OBJECT-TYPE
77         SYNTAX     OCTET STRING (SIZE (1..255))
78         MAX-ACCESS read-only
79         STATUS     current
80         DESCRIPTION
81                 "Vector of supported BGP protocol version
82                  numbers.  Each peer negotiates the version
83                  from this vector.  Versions are identified
84                  via the string of bits contained within this
85                  object.  The first octet contains bits 0 to
86                  7, the second octet contains bits 8 to 15,
87                  and so on, with the most significant bit
88                  referring to the lowest bit number in the
89                  octet (e.g., the MSB of the first octet
90                  refers to bit 0).  If a bit, i, is present
91                  and set, then the version (i+1) of the BGP
92                  is supported."
93         REFERENCE
94                 "RFC 4271, Section 4.2."
95         ::= { bgp 1 }
96
97     bgpLocalAs OBJECT-TYPE
98
99
100
101         SYNTAX     Integer32 (0..65535)
102         MAX-ACCESS read-only
103         STATUS     current
104         DESCRIPTION
105                 "The local autonomous system number."
106         REFERENCE
107                  "RFC 4271, Section 4.2, 'My Autonomous System'."
108         ::= { bgp 2 }
109
110     -- BGP Peer table.  This table contains, one entry per
111     -- BGP peer, information about the BGP peer.
112
113     bgpPeerTable OBJECT-TYPE
114         SYNTAX     SEQUENCE OF BgpPeerEntry
115         MAX-ACCESS not-accessible
116         STATUS     current
117         DESCRIPTION
118                 "BGP peer table.  This table contains,
119                  one entry per BGP peer, information about the
120                  connections with BGP peers."
121         ::= { bgp 3 }
122
123     bgpPeerEntry OBJECT-TYPE
124         SYNTAX     BgpPeerEntry
125         MAX-ACCESS not-accessible
126         STATUS     current
127         DESCRIPTION
128                 "Entry containing information about the
129                  connection with a BGP peer."
130         INDEX { bgpPeerRemoteAddr }
131         ::= { bgpPeerTable 1 }
132
133     BgpPeerEntry ::= SEQUENCE {
134             bgpPeerIdentifier
135                 IpAddress,
136             bgpPeerState
137                 INTEGER,
138             bgpPeerAdminStatus
139                 INTEGER,
140             bgpPeerNegotiatedVersion
141                 Integer32,
142             bgpPeerLocalAddr
143                 IpAddress,
144             bgpPeerLocalPort
145                 Integer32,
146             bgpPeerRemoteAddr
147                 IpAddress,
148             bgpPeerRemotePort
149
150
151
152                 Integer32,
153             bgpPeerRemoteAs
154                 Integer32,
155             bgpPeerInUpdates
156                 Counter32,
157             bgpPeerOutUpdates
158                 Counter32,
159             bgpPeerInTotalMessages
160                 Counter32,
161             bgpPeerOutTotalMessages
162                 Counter32,
163             bgpPeerLastError
164                 OCTET STRING,
165             bgpPeerFsmEstablishedTransitions
166                 Counter32,
167             bgpPeerFsmEstablishedTime
168                 Gauge32,
169             bgpPeerConnectRetryInterval
170                 Integer32,
171             bgpPeerHoldTime
172                 Integer32,
173             bgpPeerKeepAlive
174                 Integer32,
175             bgpPeerHoldTimeConfigured
176                 Integer32,
177             bgpPeerKeepAliveConfigured
178                 Integer32,
179             bgpPeerMinASOriginationInterval
180                 Integer32,
181             bgpPeerMinRouteAdvertisementInterval
182                 Integer32,
183             bgpPeerInUpdateElapsedTime
184                 Gauge32
185             }
186
187     bgpPeerIdentifier OBJECT-TYPE
188         SYNTAX     IpAddress
189         MAX-ACCESS read-only
190         STATUS     current
191         DESCRIPTION
192                 "The BGP Identifier of this entry's BGP peer.
193                  This entry MUST be 0.0.0.0 unless the
194                  bgpPeerState is in the openconfirm or the
195                  established state."
196         REFERENCE
197                 "RFC 4271, Section 4.2, 'BGP Identifier'."
198         ::= { bgpPeerEntry 1 }
199
200
201
202
203     bgpPeerState OBJECT-TYPE
204         SYNTAX     INTEGER {
205                             idle(1),
206                             connect(2),
207                             active(3),
208                             opensent(4),
209                             openconfirm(5),
210                             established(6)
211                    }
212         MAX-ACCESS read-only
213         STATUS     current
214         DESCRIPTION
215                 "The BGP peer connection state."
216         REFERENCE
217                 "RFC 4271, Section 8.2.2."
218         ::= { bgpPeerEntry 2 }
219
220     bgpPeerAdminStatus OBJECT-TYPE
221         SYNTAX     INTEGER {
222                             stop(1),
223                             start(2)
224                    }
225         MAX-ACCESS read-write
226         STATUS     current
227         DESCRIPTION
228                 "The desired state of the BGP connection.
229                  A transition from 'stop' to 'start' will cause
230                  the BGP Manual Start Event to be generated.
231                  A transition from 'start' to 'stop' will cause
232                  the BGP Manual Stop Event to be generated.
233                  This parameter can be used to restart BGP peer
234                  connections.  Care should be used in providing
235                  write access to this object without adequate
236                  authentication."
237         REFERENCE
238                 "RFC 4271, Section 8.1.2."
239         ::= { bgpPeerEntry 3 }
240
241     bgpPeerNegotiatedVersion OBJECT-TYPE
242         SYNTAX     Integer32
243         MAX-ACCESS read-only
244         STATUS     current
245         DESCRIPTION
246                 "The negotiated version of BGP running between
247                  the two peers.
248
249                  This entry MUST be zero (0) unless the
250                  bgpPeerState is in the openconfirm or the
251
252
253
254                  established state.
255
256                  Note that legal values for this object are
257                  between 0 and 255."
258         REFERENCE
259                 "RFC 4271, Section 4.2.
260                  RFC 4271, Section 7."
261         ::= { bgpPeerEntry 4 }
262
263     bgpPeerLocalAddr OBJECT-TYPE
264         SYNTAX     IpAddress
265         MAX-ACCESS read-only
266         STATUS     current
267         DESCRIPTION
268                 "The local IP address of this entry's BGP
269                  connection."
270         ::= { bgpPeerEntry 5 }
271
272     bgpPeerLocalPort OBJECT-TYPE
273         SYNTAX     Integer32 (0..65535)
274         MAX-ACCESS read-only
275         STATUS     current
276         DESCRIPTION
277                 "The local port for the TCP connection between
278                  the BGP peers."
279         ::= { bgpPeerEntry 6 }
280
281     bgpPeerRemoteAddr OBJECT-TYPE
282         SYNTAX     IpAddress
283         MAX-ACCESS read-only
284         STATUS     current
285         DESCRIPTION
286                 "The remote IP address of this entry's BGP
287                  peer."
288         ::= { bgpPeerEntry 7 }
289
290     bgpPeerRemotePort OBJECT-TYPE
291         SYNTAX     Integer32 (0..65535)
292         MAX-ACCESS read-only
293         STATUS     current
294         DESCRIPTION
295                 "The remote port for the TCP connection
296                  between the BGP peers.  Note that the
297                  objects bgpPeerLocalAddr,
298                  bgpPeerLocalPort, bgpPeerRemoteAddr, and
299                  bgpPeerRemotePort provide the appropriate
300                  reference to the standard MIB TCP
301                  connection table."
302
303
304
305         ::= { bgpPeerEntry 8 }
306
307     bgpPeerRemoteAs OBJECT-TYPE
308         SYNTAX     Integer32 (0..65535)
309         MAX-ACCESS read-only
310         STATUS     current
311         DESCRIPTION
312                 "The remote autonomous system number received in
313                  the BGP OPEN message."
314         REFERENCE
315                 "RFC 4271, Section 4.2."
316         ::= { bgpPeerEntry 9 }
317
318     bgpPeerInUpdates OBJECT-TYPE
319         SYNTAX     Counter32
320         MAX-ACCESS read-only
321         STATUS     current
322         DESCRIPTION
323                 "The number of BGP UPDATE messages
324                  received on this connection."
325         REFERENCE
326                 "RFC 4271, Section 4.3."
327         ::= { bgpPeerEntry 10 }
328
329     bgpPeerOutUpdates OBJECT-TYPE
330         SYNTAX     Counter32
331         MAX-ACCESS read-only
332         STATUS     current
333         DESCRIPTION
334                 "The number of BGP UPDATE messages
335                  transmitted on this connection."
336         REFERENCE
337                 "RFC 4271, Section 4.3."
338         ::= { bgpPeerEntry 11 }
339
340     bgpPeerInTotalMessages OBJECT-TYPE
341         SYNTAX     Counter32
342         MAX-ACCESS read-only
343         STATUS     current
344         DESCRIPTION
345                 "The total number of messages received
346                  from the remote peer on this connection."
347         REFERENCE
348                 "RFC 4271, Section 4."
349         ::= { bgpPeerEntry 12 }
350
351     bgpPeerOutTotalMessages OBJECT-TYPE
352         SYNTAX     Counter32
353
354
355
356         MAX-ACCESS read-only
357         STATUS     current
358         DESCRIPTION
359                 "The total number of messages transmitted to
360                  the remote peer on this connection."
361         REFERENCE
362                 "RFC 4271, Section 4."
363         ::= { bgpPeerEntry 13 }
364
365     bgpPeerLastError OBJECT-TYPE
366         SYNTAX     OCTET STRING (SIZE (2))
367         MAX-ACCESS read-only
368         STATUS     current
369         DESCRIPTION
370                 "The last error code and subcode seen by this
371                  peer on this connection.  If no error has
372                  occurred, this field is zero.  Otherwise, the
373                  first byte of this two byte OCTET STRING
374                  contains the error code, and the second byte
375                  contains the subcode."
376         REFERENCE
377                 "RFC 4271, Section 4.5."
378         ::= { bgpPeerEntry 14 }
379
380     bgpPeerFsmEstablishedTransitions OBJECT-TYPE
381         SYNTAX     Counter32
382         MAX-ACCESS read-only
383         STATUS     current
384         DESCRIPTION
385                 "The total number of times the BGP FSM
386                  transitioned into the established state
387                  for this peer."
388         REFERENCE
389                 "RFC 4271, Section 8."
390         ::= { bgpPeerEntry 15 }
391
392     bgpPeerFsmEstablishedTime OBJECT-TYPE
393         SYNTAX     Gauge32
394         UNITS      "seconds"
395         MAX-ACCESS read-only
396         STATUS     current
397         DESCRIPTION
398                 "This timer indicates how long (in
399                  seconds) this peer has been in the
400                  established state or how long
401                  since this peer was last in the
402                  established state.  It is set to zero when
403                  a new peer is configured or when the router is
404
405
406
407                  booted."
408         REFERENCE
409                 "RFC 4271, Section 8."
410         ::= { bgpPeerEntry 16 }
411
412     bgpPeerConnectRetryInterval OBJECT-TYPE
413         SYNTAX     Integer32 (1..65535)
414         UNITS      "seconds"
415         MAX-ACCESS read-write
416         STATUS     current
417         DESCRIPTION
418                 "Time interval (in seconds) for the
419                  ConnectRetry timer.  The suggested value
420                  for this timer is 120 seconds."
421         REFERENCE
422                 "RFC 4271, Section 8.2.2.  This is the value used
423                  to initialize the 'ConnectRetryTimer'."
424         ::= { bgpPeerEntry 17 }
425
426     bgpPeerHoldTime OBJECT-TYPE
427         SYNTAX     Integer32  ( 0 | 3..65535 )
428         UNITS      "seconds"
429         MAX-ACCESS read-only
430         STATUS     current
431         DESCRIPTION
432                 "Time interval (in seconds) for the Hold
433                  Timer established with the peer.  The
434                  value of this object is calculated by this
435                  BGP speaker, using the smaller of the
436                  values in bgpPeerHoldTimeConfigured and the
437                  Hold Time received in the OPEN message.
438
439                  This value must be at least three seconds
440                  if it is not zero (0).
441
442                  If the Hold Timer has not been established
443                  with the peer this object MUST have a value
444                  of zero (0).
445
446                  If the bgpPeerHoldTimeConfigured object has
447                  a value of (0), then this object MUST have a
448                  value of (0)."
449         REFERENCE
450                 "RFC 4271, Section 4.2."
451         ::= { bgpPeerEntry 18 }
452
453     bgpPeerKeepAlive OBJECT-TYPE
454         SYNTAX     Integer32 ( 0 | 1..21845 )
455
456
457
458         UNITS      "seconds"
459         MAX-ACCESS read-only
460         STATUS     current
461         DESCRIPTION
462                 "Time interval (in seconds) for the KeepAlive
463                  timer established with the peer.  The value
464                  of this object is calculated by this BGP
465                  speaker such that, when compared with
466                  bgpPeerHoldTime, it has the same proportion
467                  that bgpPeerKeepAliveConfigured has,
468                  compared with bgpPeerHoldTimeConfigured.
469
470                  If the KeepAlive timer has not been established
471                  with the peer, this object MUST have a value
472                  of zero (0).
473
474                  If the of bgpPeerKeepAliveConfigured object
475                  has a value of (0), then this object MUST have
476                  a value of (0)."
477         REFERENCE
478                 "RFC 4271, Section 4.4."
479         ::= { bgpPeerEntry 19 }
480
481     bgpPeerHoldTimeConfigured OBJECT-TYPE
482         SYNTAX     Integer32 ( 0 | 3..65535 )
483         UNITS      "seconds"
484         MAX-ACCESS read-write
485         STATUS     current
486         DESCRIPTION
487                 "Time interval (in seconds) for the Hold Time
488                  configured for this BGP speaker with this
489                  peer.  This value is placed in an OPEN
490                  message sent to this peer by this BGP
491                  speaker, and is compared with the Hold
492                  Time field in an OPEN message received
493                  from the peer when determining the Hold
494                  Time (bgpPeerHoldTime) with the peer.
495                  This value must not be less than three
496                  seconds if it is not zero (0).  If it is
497                  zero (0), the Hold Time is NOT to be
498                  established with the peer.  The suggested
499                  value for this timer is 90 seconds."
500         REFERENCE
501                 "RFC 4271, Section 4.2.
502                  RFC 4271, Section 10."
503         ::= { bgpPeerEntry 20 }
504
505     bgpPeerKeepAliveConfigured OBJECT-TYPE
506
507
508
509         SYNTAX     Integer32 ( 0 | 1..21845 )
510         UNITS      "seconds"
511         MAX-ACCESS read-write
512         STATUS     current
513         DESCRIPTION
514                 "Time interval (in seconds) for the
515                  KeepAlive timer configured for this BGP
516                  speaker with this peer.  The value of this
517                  object will only determine the
518                  KEEPALIVE messages' frequency relative to
519                  the value specified in
520                  bgpPeerHoldTimeConfigured; the actual
521                  time interval for the KEEPALIVE messages is
522                  indicated by bgpPeerKeepAlive.  A
523                  reasonable maximum value for this timer
524                  would be one third of that of
525                  bgpPeerHoldTimeConfigured.
526                  If the value of this object is zero (0),
527                  no periodical KEEPALIVE messages are sent
528                  to the peer after the BGP connection has
529                  been established.  The suggested value for
530                  this timer is 30 seconds."
531         REFERENCE
532                 "RFC 4271, Section 4.4.
533                  RFC 4271, Section 10."
534         ::= { bgpPeerEntry 21 }
535
536     bgpPeerMinASOriginationInterval OBJECT-TYPE
537         SYNTAX     Integer32 (1..65535)
538         UNITS      "seconds"
539         MAX-ACCESS read-write
540         STATUS     current
541         DESCRIPTION
542                 "Time interval (in seconds) for the
543                  MinASOriginationInterval timer.
544                  The suggested value for this timer is 15
545                  seconds."
546         REFERENCE
547                 "RFC 4271, Section 9.2.1.2.
548                  RFC 4271, Section 10."
549         ::= { bgpPeerEntry 22 }
550
551     bgpPeerMinRouteAdvertisementInterval OBJECT-TYPE
552         SYNTAX     Integer32 (1..65535)
553         UNITS      "seconds"
554         MAX-ACCESS read-write
555         STATUS     current
556         DESCRIPTION
557
558
559
560                 "Time interval (in seconds) for the
561                  MinRouteAdvertisementInterval timer.
562                  The suggested value for this timer is 30
563                  seconds for EBGP connections and 5
564                  seconds for IBGP connections."
565         REFERENCE
566                 "RFC 4271, Section 9.2.1.1.
567                  RFC 4271, Section 10."
568         ::= { bgpPeerEntry 23 }
569
570     bgpPeerInUpdateElapsedTime OBJECT-TYPE
571         SYNTAX     Gauge32
572         UNITS      "seconds"
573         MAX-ACCESS read-only
574         STATUS     current
575         DESCRIPTION
576                 "Elapsed time (in seconds) since the last BGP
577                  UPDATE message was received from the peer.
578                  Each time bgpPeerInUpdates is incremented,
579                  the value of this object is set to zero (0)."
580         REFERENCE
581                 "RFC 4271, Section 4.3.
582                  RFC 4271, Section 8.2.2, Established state."
583         ::= { bgpPeerEntry 24 }
584
585     bgpIdentifier OBJECT-TYPE
586         SYNTAX     IpAddress
587         MAX-ACCESS read-only
588         STATUS     current
589         DESCRIPTION
590                 "The BGP Identifier of the local system."
591         REFERENCE
592                 "RFC 4271, Section 4.2."
593         ::= { bgp 4 }
594
595     -- BGP Received Path Attribute Table.  This table contains
596     -- one entry per path to a network, and path attributes
597     -- received from all peers running BGP version 3 or less.
598     -- This table is obsolete, having been replaced in
599     -- functionality by the bgp4PathAttrTable.
600
601     bgpRcvdPathAttrTable OBJECT-TYPE
602         SYNTAX     SEQUENCE OF BgpPathAttrEntry
603         MAX-ACCESS not-accessible
604         STATUS     obsolete
605         DESCRIPTION
606                 "The BGP Received Path Attribute Table
607                  contains information about paths to
608
609
610
611                  destination networks, received from all
612                  peers running BGP version 3 or less."
613         ::= { bgp 5 }
614
615     bgpPathAttrEntry OBJECT-TYPE
616         SYNTAX     BgpPathAttrEntry
617         MAX-ACCESS not-accessible
618         STATUS     obsolete
619         DESCRIPTION
620                 "Information about a path to a network."
621         INDEX { bgpPathAttrDestNetwork,
622                 bgpPathAttrPeer        }
623         ::= { bgpRcvdPathAttrTable 1 }
624
625     BgpPathAttrEntry ::= SEQUENCE {
626         bgpPathAttrPeer
627              IpAddress,
628         bgpPathAttrDestNetwork
629              IpAddress,
630         bgpPathAttrOrigin
631              INTEGER,
632         bgpPathAttrASPath
633              OCTET STRING,
634         bgpPathAttrNextHop
635              IpAddress,
636         bgpPathAttrInterASMetric
637              Integer32
638     }
639
640     bgpPathAttrPeer OBJECT-TYPE
641         SYNTAX     IpAddress
642         MAX-ACCESS read-only
643         STATUS     obsolete
644         DESCRIPTION
645                 "The IP address of the peer where the path
646                  information was learned."
647         ::= { bgpPathAttrEntry 1 }
648
649     bgpPathAttrDestNetwork OBJECT-TYPE
650         SYNTAX     IpAddress
651         MAX-ACCESS read-only
652         STATUS     obsolete
653         DESCRIPTION
654                 "The address of the destination network."
655         REFERENCE
656                 "RFC 1267, Section 4.3."
657         ::= { bgpPathAttrEntry 2 }
658
659
660
661
662     bgpPathAttrOrigin OBJECT-TYPE
663         SYNTAX     INTEGER {
664                        igp(1),-- networks are interior
665                        egp(2),-- networks learned via the
666                               -- EGP protocol
667                        incomplete(3) -- networks that
668                               -- are learned by some other
669                               -- means
670                    }
671         MAX-ACCESS read-only
672         STATUS     obsolete
673         DESCRIPTION
674                 "The ultimate origin of the path information."
675         REFERENCE
676                 "RFC 1267, Section 4.3.
677                  RFC 1267, Section 5."
678         ::= { bgpPathAttrEntry 3 }
679
680     bgpPathAttrASPath OBJECT-TYPE
681         SYNTAX     OCTET STRING (SIZE (2..255))
682         MAX-ACCESS read-only
683         STATUS     obsolete
684         DESCRIPTION
685                 "The set of ASes that must be traversed to reach
686                  the network.  This object is probably best
687                  represented as SEQUENCE OF INTEGER.  For SMI
688                  compatibility, though, it is represented as
689                  OCTET STRING.  Each AS is represented as a pair
690                  of octets according to the following algorithm:
691
692                     first-byte-of-pair = ASNumber / 256;
693                     second-byte-of-pair = ASNumber & 255;"
694         REFERENCE
695                 "RFC 1267, Section 4.3.
696                  RFC 1267, Section 5."
697         ::= { bgpPathAttrEntry 4 }
698
699     bgpPathAttrNextHop OBJECT-TYPE
700         SYNTAX     IpAddress
701         MAX-ACCESS read-only
702         STATUS     obsolete
703         DESCRIPTION
704                 "The address of the border router that should
705                  be used for the destination network."
706         REFERENCE
707                 "RFC 1267, Section 4.3.
708                  RFC 1267, Section 5."
709         ::= { bgpPathAttrEntry 5 }
710
711
712
713     bgpPathAttrInterASMetric OBJECT-TYPE
714         SYNTAX     Integer32
715         MAX-ACCESS read-only
716         STATUS     obsolete
717         DESCRIPTION
718                 "The optional inter-AS metric.  If this
719                  attribute has not been provided for this route,
720                  the value for this object is 0."
721         REFERENCE
722                 "RFC 1267, Section 4.3.
723                  RFC 1267, Section 5."
724         ::= { bgpPathAttrEntry 6 }
725
726     -- BGP-4 Received Path Attribute Table.  This table
727     -- contains one entry per path to a network, and path
728     -- attributes received from all peers running BGP-4.
729
730     bgp4PathAttrTable OBJECT-TYPE
731         SYNTAX     SEQUENCE OF Bgp4PathAttrEntry
732         MAX-ACCESS not-accessible
733         STATUS     current
734         DESCRIPTION
735                 "The BGP-4 Received Path Attribute Table
736                  contains information about paths to
737                  destination networks, received from all
738                  BGP4 peers."
739         ::= { bgp 6 }
740
741     bgp4PathAttrEntry OBJECT-TYPE
742         SYNTAX     Bgp4PathAttrEntry
743         MAX-ACCESS not-accessible
744         STATUS     current
745         DESCRIPTION
746                 "Information about a path to a network."
747         INDEX { bgp4PathAttrIpAddrPrefix,
748                 bgp4PathAttrIpAddrPrefixLen,
749                 bgp4PathAttrPeer            }
750         ::= { bgp4PathAttrTable 1 }
751
752     Bgp4PathAttrEntry ::= SEQUENCE {
753         bgp4PathAttrPeer
754              IpAddress,
755         bgp4PathAttrIpAddrPrefixLen
756              Integer32,
757         bgp4PathAttrIpAddrPrefix
758              IpAddress,
759         bgp4PathAttrOrigin
760              INTEGER,
761
762
763
764         bgp4PathAttrASPathSegment
765              OCTET STRING,
766         bgp4PathAttrNextHop
767              IpAddress,
768         bgp4PathAttrMultiExitDisc
769              Integer32,
770         bgp4PathAttrLocalPref
771              Integer32,
772         bgp4PathAttrAtomicAggregate
773              INTEGER,
774         bgp4PathAttrAggregatorAS
775              Integer32,
776         bgp4PathAttrAggregatorAddr
777              IpAddress,
778         bgp4PathAttrCalcLocalPref
779              Integer32,
780         bgp4PathAttrBest
781              INTEGER,
782         bgp4PathAttrUnknown
783              OCTET STRING
784     }
785
786     bgp4PathAttrPeer OBJECT-TYPE
787         SYNTAX     IpAddress
788         MAX-ACCESS read-only
789         STATUS     current
790         DESCRIPTION
791                 "The IP address of the peer where the path
792                  information was learned."
793         ::= { bgp4PathAttrEntry 1 }
794
795     bgp4PathAttrIpAddrPrefixLen OBJECT-TYPE
796         SYNTAX     Integer32 (0..32)
797         MAX-ACCESS read-only
798         STATUS     current
799         DESCRIPTION
800                 "Length in bits of the IP address prefix in
801                  the Network Layer Reachability
802                  Information field."
803         ::= { bgp4PathAttrEntry 2 }
804
805     bgp4PathAttrIpAddrPrefix OBJECT-TYPE
806         SYNTAX     IpAddress
807         MAX-ACCESS read-only
808         STATUS     current
809         DESCRIPTION
810                 "An IP address prefix in the Network Layer
811                  Reachability Information field.  This object
812
813
814
815                  is an IP address containing the prefix with
816                  length specified by
817                  bgp4PathAttrIpAddrPrefixLen.
818                  Any bits beyond the length specified by
819                  bgp4PathAttrIpAddrPrefixLen are zeroed."
820         REFERENCE
821                 "RFC 4271, Section 4.3."
822         ::= { bgp4PathAttrEntry 3 }
823
824     bgp4PathAttrOrigin OBJECT-TYPE
825         SYNTAX     INTEGER {
826                        igp(1),-- networks are interior
827                        egp(2),-- networks learned via the
828                               -- EGP protocol
829                        incomplete(3) -- networks that
830                               -- are learned by some other
831                               -- means
832                    }
833         MAX-ACCESS read-only
834         STATUS     current
835         DESCRIPTION
836                 "The ultimate origin of the path
837                  information."
838         REFERENCE
839                 "RFC 4271, Section 4.3.
840                  RFC 4271, Section 5.1.1."
841         ::= { bgp4PathAttrEntry 4 }
842
843     bgp4PathAttrASPathSegment OBJECT-TYPE
844         SYNTAX     OCTET STRING (SIZE (2..255))
845         MAX-ACCESS read-only
846         STATUS     current
847         DESCRIPTION
848                 "The sequence of AS path segments.  Each AS
849                  path segment is represented by a triple
850                  <type, length, value>.
851
852                  The type is a 1-octet field that has two
853                  possible values:
854                      1      AS_SET: unordered set of ASes that a
855                                  route in the UPDATE message
856                                  has traversed
857
858                      2      AS_SEQUENCE: ordered set of ASes that
859                                  a route in the UPDATE message
860                                  has traversed.
861
862                  The length is a 1-octet field containing the
863
864
865
866                  number of ASes in the value field.
867
868                  The value field contains one or more AS
869                  numbers.  Each AS is represented in the octet
870                  string as a pair of octets according to the
871                  following algorithm:
872
873                     first-byte-of-pair = ASNumber / 256;
874                     second-byte-of-pair = ASNumber & 255;
875
876                  Known Issues:
877                  o BGP Confederations will result in
878                    a type of either 3 or 4.
879                  o An AS Path may be longer than 255 octets.
880                    This may result in this object containing
881                    a truncated AS Path."
882         REFERENCE
883                 "RFC 4271, Section 4.3.
884                  RFC 4271, Section 5.1.2."
885         ::= { bgp4PathAttrEntry 5 }
886
887     bgp4PathAttrNextHop OBJECT-TYPE
888         SYNTAX     IpAddress
889         MAX-ACCESS read-only
890         STATUS     current
891         DESCRIPTION
892                 "The address of the border router that
893                  should be used for the destination
894                  network.  This address is the NEXT_HOP
895                  address received in the UPDATE packet."
896         REFERENCE
897                 "RFC 4271, Section 4.3.
898                  RFC 4271, Section 5.1.3."
899         ::= { bgp4PathAttrEntry 6 }
900
901     bgp4PathAttrMultiExitDisc OBJECT-TYPE
902         SYNTAX     Integer32 (-1..2147483647)
903         MAX-ACCESS read-only
904         STATUS     current
905         DESCRIPTION
906                 "This metric is used to discriminate
907                  between multiple exit points to an
908                  adjacent autonomous system.  A value of -1
909                  indicates the absence of this attribute.
910
911                  Known Issues:
912                  o The BGP-4 specification uses an
913                    unsigned 32 bit number.  Thus, this
914
915
916
917                    object cannot represent the full
918                    range of the protocol."
919         REFERENCE
920                 "RFC 4271, Section 4.3.
921                  RFC 4271, Section 5.1.4."
922         ::= { bgp4PathAttrEntry 7 }
923
924     bgp4PathAttrLocalPref OBJECT-TYPE
925         SYNTAX     Integer32 (-1..2147483647)
926         MAX-ACCESS read-only
927         STATUS     current
928         DESCRIPTION
929                 "The originating BGP4 speaker's degree of
930                  preference for an advertised route.  A
931                  value of -1 indicates the absence of this
932                  attribute.
933
934                  Known Issues:
935                  o The BGP-4 specification uses an
936                    unsigned 32 bit number and thus this
937                    object cannot represent the full
938                    range of the protocol."
939         REFERENCE
940                 "RFC 4271, Section 4.3.
941                  RFC 4271, Section 5.1.5."
942         ::= { bgp4PathAttrEntry 8 }
943
944     bgp4PathAttrAtomicAggregate OBJECT-TYPE
945         SYNTAX     INTEGER {
946                        lessSpecificRouteNotSelected(1),
947                            -- Typo corrected from RFC 1657
948                        lessSpecificRouteSelected(2)
949                    }
950         MAX-ACCESS read-only
951         STATUS     current
952         DESCRIPTION
953                 "If the ATOMIC_AGGREGATE attribute is present
954                  in the Path Attributes then this object MUST
955                  have a value of 'lessSpecificRouteNotSelected'.
956
957                  If the ATOMIC_AGGREGATE attribute is missing
958                  in the Path Attributes then this object MUST
959                  have a value of 'lessSpecificRouteSelected'.
960
961                  Note that ATOMIC_AGGREGATE is now a primarily
962                  informational attribute."
963         REFERENCE
964                 "RFC 4271, Sections 5.1.6 and 9.1.4."
965
966
967
968         ::= { bgp4PathAttrEntry 9 }
969
970     bgp4PathAttrAggregatorAS OBJECT-TYPE
971         SYNTAX     Integer32 (0..65535)
972         MAX-ACCESS read-only
973         STATUS     current
974         DESCRIPTION
975                 "The AS number of the last BGP4 speaker that
976                  performed route aggregation.  A value of
977                  zero (0) indicates the absence of this
978                  attribute.
979
980                  Note that propagation of AS of zero is illegal
981                  in the Internet."
982         REFERENCE
983                 "RFC 4271, Section 5.1.7.
984                  RFC 4271, Section 9.2.2.2."
985         ::= { bgp4PathAttrEntry 10 }
986
987     bgp4PathAttrAggregatorAddr OBJECT-TYPE
988         SYNTAX     IpAddress
989         MAX-ACCESS read-only
990         STATUS     current
991         DESCRIPTION
992                 "The IP address of the last BGP4 speaker
993                  that performed route aggregation.  A
994                  value of 0.0.0.0 indicates the absence
995                  of this attribute."
996         REFERENCE
997                 "RFC 4271, Section 5.1.7.
998                  RFC 4271, Section 9.2.2.2."
999         ::= { bgp4PathAttrEntry 11 }
1000
1001     bgp4PathAttrCalcLocalPref OBJECT-TYPE
1002         SYNTAX     Integer32 (-1..2147483647)
1003         MAX-ACCESS read-only
1004         STATUS     current
1005         DESCRIPTION
1006                 "The degree of preference calculated by the
1007                  receiving BGP4 speaker for an advertised
1008                  route.  A value of -1 indicates the
1009                  absence of this attribute.
1010
1011                  Known Issues:
1012                  o The BGP-4 specification uses an
1013                    unsigned 32 bit number and thus this
1014                    object cannot represent the full
1015                    range of the protocol."
1016
1017
1018
1019         REFERENCE
1020                 "RFC 4271, Section 9.1.1."
1021         ::= { bgp4PathAttrEntry 12 }
1022
1023     bgp4PathAttrBest OBJECT-TYPE
1024         SYNTAX     INTEGER {
1025                        false(1),-- not chosen as best route
1026                        true(2) -- chosen as best route
1027                    }
1028         MAX-ACCESS read-only
1029         STATUS     current
1030         DESCRIPTION
1031                 "An indication of whether this route
1032                  was chosen as the best BGP4 route for this
1033                  destination."
1034         REFERENCE
1035                 "RFC 4271, Section 9.1.2."
1036         ::= { bgp4PathAttrEntry 13 }
1037
1038     bgp4PathAttrUnknown OBJECT-TYPE
1039         SYNTAX     OCTET STRING (SIZE(0..255))
1040         MAX-ACCESS read-only
1041         STATUS     current
1042         DESCRIPTION
1043                 "One or more path attributes not understood by
1044                  this BGP4 speaker.
1045
1046                  Path attributes are recorded in the Update Path
1047                  attribute format of type, length, value.
1048
1049                  Size zero (0) indicates the absence of such
1050                  attributes.
1051
1052                  Octets beyond the maximum size, if any, are not
1053                  recorded by this object.
1054
1055                  Known Issues:
1056                  o Attributes understood by this speaker, but not
1057                    represented in this MIB, are unavailable to
1058                    the agent."
1059         REFERENCE
1060                 "RFC 4271, Section 5."
1061         ::= { bgp4PathAttrEntry 14 }
1062
1063     -- Traps.
1064     -- Note that in RFC 1657, bgpTraps was incorrectly
1065     -- assigned a value of { bgp 7 } and each of the
1066     -- traps had the bgpPeerRemoteAddr object inappropriately
1067
1068
1069
1070     -- removed from their OBJECTS clause.  The following
1071     -- definitions restore the semantics of the traps as
1072     -- they were initially defined in RFC 1269.
1073
1074     bgpNotification OBJECT IDENTIFIER ::= { bgp 0 }
1075
1076     bgpEstablishedNotification NOTIFICATION-TYPE
1077         OBJECTS { bgpPeerRemoteAddr,
1078                   bgpPeerLastError,
1079                   bgpPeerState      }
1080         STATUS  current
1081         DESCRIPTION
1082                 "The bgpEstablishedNotification event is generated
1083                  when the BGP FSM enters the established state.
1084
1085                  This Notification replaces the bgpEstablished
1086                  Notification."
1087         ::= { bgpNotification 1 }
1088
1089     bgpBackwardTransNotification NOTIFICATION-TYPE
1090         OBJECTS { bgpPeerRemoteAddr,
1091                   bgpPeerLastError,
1092                   bgpPeerState      }
1093         STATUS  current
1094         DESCRIPTION
1095                 "The bgpBackwardTransNotification event is
1096                  generated when the BGP FSM moves from a higher
1097                  numbered state to a lower numbered state.
1098
1099                  This Notification replaces the
1100                  bgpBackwardsTransition Notification."
1101         ::= { bgpNotification 2 }
1102
1103     -- { bgp 7 } is deprecated.  Do not allocate new objects or
1104     --           notifications underneath this branch.
1105
1106     bgpTraps        OBJECT IDENTIFIER ::= { bgp 7 } -- deprecated
1107
1108     bgpEstablished NOTIFICATION-TYPE
1109         OBJECTS { bgpPeerLastError,
1110                   bgpPeerState      }
1111         STATUS  deprecated
1112         DESCRIPTION
1113                 "The bgpEstablished event is generated when
1114                  the BGP FSM enters the established state.
1115
1116                  This Notification has been replaced by the
1117                  bgpEstablishedNotification Notification."
1118
1119
1120
1121         ::= { bgpTraps 1 }
1122
1123     bgpBackwardTransition NOTIFICATION-TYPE
1124         OBJECTS { bgpPeerLastError,
1125                   bgpPeerState      }
1126         STATUS  deprecated
1127         DESCRIPTION
1128                 "The bgpBackwardTransition event is generated
1129                  when the BGP FSM moves from a higher numbered
1130                  state to a lower numbered state.
1131
1132                  This Notification has been replaced by the
1133                  bgpBackwardTransNotification Notification."
1134         ::= { bgpTraps 2 }
1135
1136     -- Conformance information
1137
1138     bgp4MIBConformance OBJECT IDENTIFIER
1139         ::= { bgp 8 }
1140     bgp4MIBCompliances OBJECT IDENTIFIER
1141                 ::= { bgp4MIBConformance 1 }
1142     bgp4MIBGroups      OBJECT IDENTIFIER
1143         ::= { bgp4MIBConformance 2 }
1144
1145     -- Compliance statements
1146
1147     bgp4MIBCompliance MODULE-COMPLIANCE
1148         STATUS  current
1149         DESCRIPTION
1150                 "The compliance statement for entities which
1151                  implement the BGP4 mib."
1152         MODULE  -- this module
1153             MANDATORY-GROUPS { bgp4MIBGlobalsGroup,
1154                                bgp4MIBPeerGroup,
1155                                bgp4MIBPathAttrGroup }
1156             GROUP bgp4MIBNotificationGroup
1157             DESCRIPTION
1158                     "Implementation of BGP Notifications are
1159                      completely optional in this MIB."
1160         ::= { bgp4MIBCompliances 1 }
1161
1162     bgp4MIBDeprecatedCompliances MODULE-COMPLIANCE
1163         STATUS  deprecated
1164         DESCRIPTION
1165                 "The compliance statement documenting deprecated
1166                  objects in the BGP4 mib."
1167         MODULE  -- this module
1168             GROUP bgp4MIBTrapGroup
1169
1170
1171
1172             DESCRIPTION
1173                 "Group containing TRAP objects that were
1174                  improperly converted from SMIv1 in RFC 1657.
1175                  The proper semantics have been restored
1176                  with the objects in bgp4MIBNotificationGroup."
1177         ::= { bgp4MIBCompliances 2 }
1178
1179     bgp4MIBObsoleteCompliances MODULE-COMPLIANCE
1180         STATUS  obsolete
1181         DESCRIPTION
1182                 "The compliance statement documenting obsolete
1183                  objects in the BGP4 mib."
1184         MODULE  -- this module
1185             GROUP bgpRcvdPathAttrGroup
1186             DESCRIPTION
1187                 "Group containing objects relevant to BGP-3
1188                  and earlier objects."
1189         ::= { bgp4MIBCompliances 3 }
1190
1191     -- Units of conformance
1192
1193     bgp4MIBGlobalsGroup OBJECT-GROUP
1194         OBJECTS { bgpVersion,
1195                   bgpLocalAs,
1196                   bgpIdentifier }
1197         STATUS  current
1198         DESCRIPTION
1199                 "A collection of objects providing
1200                  information on global BGP state."
1201         ::= { bgp4MIBGroups 1 }
1202
1203     bgp4MIBPeerGroup OBJECT-GROUP
1204         OBJECTS { bgpPeerIdentifier,
1205                   bgpPeerState,
1206                   bgpPeerAdminStatus,
1207                   bgpPeerNegotiatedVersion,
1208                   bgpPeerLocalAddr,
1209                   bgpPeerLocalPort,
1210                   bgpPeerRemoteAddr,
1211                   bgpPeerRemotePort,
1212                   bgpPeerRemoteAs,
1213                   bgpPeerInUpdates,
1214                   bgpPeerOutUpdates,
1215                   bgpPeerInTotalMessages,
1216                   bgpPeerOutTotalMessages,
1217                   bgpPeerLastError,
1218                   bgpPeerFsmEstablishedTransitions,
1219                   bgpPeerFsmEstablishedTime,
1220
1221
1222
1223                   bgpPeerConnectRetryInterval,
1224                   bgpPeerHoldTime,
1225                   bgpPeerKeepAlive,
1226                   bgpPeerHoldTimeConfigured,
1227                   bgpPeerKeepAliveConfigured,
1228                   bgpPeerMinASOriginationInterval,
1229                   bgpPeerMinRouteAdvertisementInterval,
1230                   bgpPeerInUpdateElapsedTime }
1231         STATUS  current
1232         DESCRIPTION
1233                 "A collection of objects for managing
1234                  BGP peers."
1235         ::= { bgp4MIBGroups 2 }
1236
1237     bgpRcvdPathAttrGroup OBJECT-GROUP
1238         OBJECTS { bgpPathAttrPeer,
1239                   bgpPathAttrDestNetwork,
1240                   bgpPathAttrOrigin,
1241                   bgpPathAttrASPath,
1242                   bgpPathAttrNextHop,
1243                   bgpPathAttrInterASMetric }
1244         STATUS  obsolete
1245         DESCRIPTION
1246                 "A collection of objects for managing BGP-3 and
1247                 earlier path entries.
1248
1249                 This conformance group, like BGP-3, is obsolete."
1250         ::= { bgp4MIBGroups 3 }
1251
1252     bgp4MIBPathAttrGroup OBJECT-GROUP
1253         OBJECTS { bgp4PathAttrPeer,
1254                   bgp4PathAttrIpAddrPrefixLen,
1255                   bgp4PathAttrIpAddrPrefix,
1256                   bgp4PathAttrOrigin,
1257                   bgp4PathAttrASPathSegment,
1258                   bgp4PathAttrNextHop,
1259                   bgp4PathAttrMultiExitDisc,
1260                   bgp4PathAttrLocalPref,
1261                   bgp4PathAttrAtomicAggregate,
1262                   bgp4PathAttrAggregatorAS,
1263                   bgp4PathAttrAggregatorAddr,
1264                   bgp4PathAttrCalcLocalPref,
1265                   bgp4PathAttrBest,
1266                   bgp4PathAttrUnknown }
1267         STATUS  current
1268         DESCRIPTION
1269                 "A collection of objects for managing
1270                  BGP path entries."
1271
1272
1273
1274         ::= { bgp4MIBGroups 4 }
1275
1276     bgp4MIBTrapGroup NOTIFICATION-GROUP
1277         NOTIFICATIONS { bgpEstablished,
1278                         bgpBackwardTransition }
1279         STATUS  deprecated
1280         DESCRIPTION
1281                 "A collection of notifications for signaling
1282                  changes in BGP peer relationships.
1283
1284                  Obsoleted by bgp4MIBNotificationGroup"
1285         ::= { bgp4MIBGroups 5 }
1286
1287     bgp4MIBNotificationGroup NOTIFICATION-GROUP
1288         NOTIFICATIONS { bgpEstablishedNotification,
1289                         bgpBackwardTransNotification }
1290         STATUS current
1291         DESCRIPTION
1292                 "A collection of notifications for signaling
1293                  changes in BGP peer relationships.
1294
1295                  Obsoletes bgp4MIBTrapGroup."
1296         ::= { bgp4MIBGroups 6 }
1297
1298 END