Subject: [IPTEL] more comments on tripMIB (per draft-zinman-trip-mib-02.txt)

From: Kevin Lingle <[email-masked]>
Date: Mon, 21 Jan 2002 16:53:40 -0500

some months back i offered david zinman comments on the draft trip mib.
(see posting to this list on 8/31/2001 w/ subject containing
draft-ietf-trip-mib-00.txt)

i stopped short then of completing my review - left off at the
tripRouteTable.
here i'll pick up again from that point using
draft-zinman-trip-mib-02.txt.

general comment for the entire mib...
more REFERENCE clauses for "trip things" would be good.
now w/ RFC 3219 officially out, you'll have a good reference
to quote.

> -- TRIP Received Route Table.  This table contains
> -- all routes from all sources. Each entry consists
> -- of a route and its associated path attributes.
> 
>    tripRouteTable OBJECT-TYPE
>        SYNTAX      SEQUENCE OF TripRouteEntry
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "The TRIP route table containing information about
>            reachable routes that are to be added to service by the
>            receiving LS."
>        ::= { tripMIBObjects 7 }
> 
>    tripRouteEntry OBJECT-TYPE
>        SYNTAX      TripRouteEntry
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "Information about a route to a called destination."
>        INDEX { applIndex,
>                tripRouteAppProtocol,
>                tripRouteAddressFamily,
>                tripRouteAddress,
>                tripRoutePeer
>                }

as i've said before, indexing schemes like you have here
are going to be cumbersome and difficult to understand.

do app protocol and address families textual conventions really 
need to be defined as object identifiers?  what's wrong with 
simple enumerated integers?

>        ::= { tripRouteTable 1 }
> 
>    TripRouteEntry ::= SEQUENCE {
>                tripRouteAppProtocol                 TripAppProtocol,
>                tripRouteAddressFamily               TripAddressFamily,
>                tripRouteAddress                     OCTET STRING,
>                tripRoutePeer                        TripId,
>                tripRouteAddressSequenceNumber       Integer32,
>                tripRouteAddressOriginatorId         TripItad,
>                tripRouteNextHopServerIAddrType      InetAddressType,
>                tripRouteNextHopServer               InetAddress,
>                tripRouteNextHopServerPort           Integer32,
>                tripRouteNextHopServerItad           TripItad,
>                tripRouteMultiExitDisc               Unsigned32,
>                tripRouteLocalPref                   Unsigned32,
>                tripRouteAdvertisementPath           OCTET STRING,
>                tripRouteRoutedPath                  OCTET STRING,
>                tripRouteAtomicAggregate             TruthValue,
>                tripRouteBest                        TruthValue,
>                tripRouteUnknown                     OCTET STRING,
>                tripRouteWithdrawn                   TruthValue,
>                tripRouteConverted                   TruthValue
>            }
> 
>    tripRouteAppProtocol OBJECT-TYPE
>        SYNTAX      TripAppProtocol
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "The protocol for which this routing table is
>            maintained."

description sounds like this is specifying the protocol foe
the entire table.  it's just for this one entry.

>        ::= { tripRouteEntry 1 }
> 
>    tripRouteAddressFamily OBJECT-TYPE
>        SYNTAX      TripAddressFamily
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "Specifies the type of address for the destination
>            route."
>        ::= { tripRouteEntry 2 }
> 
>    tripRouteAddress OBJECT-TYPE
>        SYNTAX      OCTET STRING (SIZE(1..32))
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "This is an address (prefix) of the family type given by
>            Address Family of the destination."

what is this an address of?  that's what should be the main focus
of the description.  a sidebar (and important) is the family type.

the family type relationship should be stated in terms of the other
object:  "... This address is interpreted based on the value of
          the tripRouteAddressFamily object in this entry."

>        ::= { tripRouteEntry 3 }
> 
>    tripRoutePeer OBJECT-TYPE
>        SYNTAX      TripId
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "The identifier of the peer where the route information
>            was learned."
>        ::= { tripRouteEntry 4 }
> 
>    tripRouteAddressSequenceNumber OBJECT-TYPE
>        SYNTAX      Integer32 (1..2147483647)
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "Indicates the version of the destination route
>            originated by the location server identified by
>            tripRouteAddressOriginatorId intra-domain
>            attribute."
>        ::= { tripRouteEntry 5 }
> 
>    tripRouteAddressOriginatorId OBJECT-TYPE
>        SYNTAX      TripItad
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "This is an intra-domain attribute indicating the
>            internal location server that originated the route
>            into the ITAD."
>        ::= { tripRouteEntry 6 }
> 
>    tripRouteNextHopServerIAddrType OBJECT-TYPE
>        SYNTAX      InetAddressType
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "The type of Inet Address of the tripRouteNextHopServer."
>        REFERENCE
>            "RFC 2851, section 3."
>        ::= { tripRouteEntry 7 }
> 
>    tripRouteNextHopServer OBJECT-TYPE
>        SYNTAX      InetAddress
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "Indicates the next hop that messages of a given
>            protocol destined for tripRouteAddress should
>            be sent to."
>        ::= { tripRouteEntry 8 }
> 
>    tripRouteNextHopServerPort OBJECT-TYPE
>        SYNTAX      Integer32 (1..2147483647)
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "The port of the next hop server that this route
>            will use."
>        ::= { tripRouteEntry 9 }
> 

consider draft-ietf-ops-rfc2851-update-06.txt InetPortNumber
(presuming this is a transport level port number).  

>    tripRouteNextHopServerItad OBJECT-TYPE
>        SYNTAX      TripItad
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "Indicates the domain of the next hop."
>        ::= { tripRouteEntry 10 }
> 
>    tripRouteMultiExitDisc OBJECT-TYPE
>        SYNTAX      Unsigned32 (0..4294967295)
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "When two ITADs are connected by more than one set of peers,
>            it is used to descriminate between multiple exit points to
>            an adjacent ITAD."

any special meaning for the value 0?

>        ::= { tripRouteEntry 11 }
> 
>    tripRouteLocalPref OBJECT-TYPE
>        SYNTAX      Unsigned32 (0..4294967295)
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "Indicated the local LS's degree of preference for an
>            advertised route destination."

any special meaning for the value 0?

>        ::= { tripRouteEntry 12 }
> 
>    tripRouteAdvertisementPath OBJECT-TYPE
>        SYNTAX      OCTET STRING (SIZE(4..252))
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "Identifies the ITADs through wich routing information

"wich" -> "which"

>            carried in an advertisement has passed.
> 
>            This object is probably best represented as sequence of
>            integer. For SMI compatibility, though, it is represented
>            as OCTET STRING. This object is a sequence of ITADs in
>            network byte order."

would it be better to borrow from RFC 3219 "5.4.1. AdvertisementPath
Syntax"
when defining the syntax of this object.  

>        ::= { tripRouteEntry 13 }
> 
>    tripRouteRoutedPath OBJECT-TYPE
>        SYNTAX      OCTET STRING (SIZE(4..252))
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "Identifies the ITADs through which messages sent using
>            this route would pass. These are as subset of
>            tripRouteAdvertisementPath.
> 
>            This object is probably best represented as sequence of
>            integer. For SMI compatibility, though, it is represented
>            as OCTET STRING.  This object is a sequence of ITADs in
>            network byte order."

same comment as for tripRouteAdvertisementPath concerning alternative
syntax.

>        ::= { tripRouteEntry 14 }
> 
>    tripRouteAtomicAggregate OBJECT-TYPE
>        SYNTAX      TruthValue
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "Indicates that a route may traverse domains not listed in
>            tripRouteRoutedPath. If an LS selects the less specific
>            route from a set of overlapping routes, then this value
>            returns TRUE."

not really a comment for this object but a larger question...
this object is reflecting what is learned wrt a particular route, but
is there some provision for configuring how this gets setup at the
remote device that is originating the route information?  not sure if
that makes sense or not.

>        ::= { tripRouteEntry 15 }
> 
>    tripRouteBest OBJECT-TYPE
>        SYNTAX      TruthValue
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "An indication of whether this route was chosen as the
>            best TRIP route."
>        ::= { tripRouteEntry 16 }
> 
>    tripRouteUnknown OBJECT-TYPE
>        SYNTAX      OCTET STRING (SIZE(0..255))
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "One or more attributes not understood by this location
>            server."

any counter somewhere to count such "not understood" events?

>        ::= { tripRouteEntry 17 }
> 
>    tripRouteWithdrawn OBJECT-TYPE
>        SYNTAX      TruthValue
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "Indicates if this route is to be removed from service by
>            the receiving LS."

how might this be provisioned?

>        ::= { tripRouteEntry 18 }
> 
>    tripRouteConverted OBJECT-TYPE
>        SYNTAX TruthValue
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "Indicates if this route has been converted to a
>            different application protocol than it had originally."

what might cause that converions?

>        ::= { tripRouteEntry 19 }
> 
> 
> --
> -- TRIP Received Route CommunityTable.

add space between "Community" and "Table".

> --
> 
>    tripRouteCommunityTable OBJECT-TYPE
>        SYNTAX      SEQUENCE OF TripRouteCommunityEntry
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "A table containing a list of TRIP communities associated
>            with a route."
>        REFERENCE
>            "draft-ietf-iptel-trip-07.txt, J. Rosenberg et al,
>            section 5.9."

i presume this reference should change to RFC 3219 now.

>        ::= { tripMIBObjects 8 }
> 
>    tripRouteCommunityEntry OBJECT-TYPE
>        SYNTAX      TripRouteCommunityEntry
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "Information about communities associated with a route. An
>            entry with a tripRouteAddress of 00 and a tripRoutePeer of
>            0 refers to the local LS."
>        INDEX { applIndex,
>                tripRouteAppProtocol,
>                tripRouteAddressFamily,
>                tripRouteAddress,
>                tripRoutePeer,
>                tripRouteCommunityId

ouch!  the indexes just keep getting larger ;)

>              }
>        ::= { tripRouteCommunityTable 1 }
> 
>    TripRouteCommunityEntry ::= SEQUENCE {
>         tripRouteCommunityId    TripItad,
>         tripRouteCommunityItad  TripItad
>         }
> 
>    tripRouteCommunityId OBJECT-TYPE
>        SYNTAX      TripItad
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "The community identifier."
>        ::= { tripRouteCommunityEntry 1 }
> 
>    tripRouteCommunityItad OBJECT-TYPE
>        SYNTAX      TripItad
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "The ITAD associated with this community."
>        ::= { tripRouteCommunityEntry 2 }
> 
> --
> -- tripItadTopologyTable
> --
> 
>    tripItadTopologyTable OBJECT-TYPE
>        SYNTAX      SEQUENCE OF TripItadTopologyEntry
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "The sequence of link connections between peers within
>            an ITAD."
>        ::= { tripMIBObjects 9 }
> 
>    tripItadTopologyEntry OBJECT-TYPE
>        SYNTAX      TripItadTopologyEntry
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "Information about a peer of the location server identified
>            by tripOriginatorIdentifier."

tripOriginatorIdentifier is references several times in the mib,
but there is no object w/ that descriptor.  what are you referring 
to here... tripItadTopologyOrigId??

>        INDEX { applIndex, tripItadTopologyOrigId }
>        ::= { tripItadTopologyTable 1 }
> 
>    TripItadTopologyEntry ::= SEQUENCE {
>                tripItadTopologyOrigId    TripItad,
>                tripItadTopologySeqNum    Integer32
>            }
> 
>    tripItadTopologyOrigId OBJECT-TYPE
>        SYNTAX      TripItad
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "Indicates the internal location server that originated
>            the ITAD topology information into the ITAD."
>        ::= { tripItadTopologyEntry 1 }
> 
>    tripItadTopologySeqNum OBJECT-TYPE
>        SYNTAX      Integer32 (1..2147483647)

Unsigned32??

>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "Indicates the version of the ITAD topology
>            originated by the location server identified by
>            tripOriginatorIdentifier."

here's another reference to tripOriginatorIdentifier.

>        ::= { tripItadTopologyEntry 2 }
> 
> --
> -- tripItadTopologyIdTable
> --
> 
>    tripItadTopologyIdTable OBJECT-TYPE
>        SYNTAX      SEQUENCE OF TripItadTopologyIdEntry
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "The list of other location servers within the ITAD
>            domain that the location server identified by
>            tripOriginatorIdentifier is currently peering."

here's another reference to tripOriginatorIdentifier.

>        ::= { tripMIBObjects 10 }
> 
>    tripItadTopologyIdEntry OBJECT-TYPE
>        SYNTAX      TripItadTopologyIdEntry
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "Information about a peer to the location server
>            identified by tripOriginatorIdentifier."
>        INDEX { applIndex,
>                tripItadTopologyOrigId,
>                tripItadTopologyId }
>        ::= { tripItadTopologyIdTable 1 }
> 
>    TripItadTopologyIdEntry ::= SEQUENCE {
>                tripItadTopologyId            TripId,
>                tripItadTopologyIdRowStatus   RowStatus
>            }
> 
>    tripItadTopologyId OBJECT-TYPE
>        SYNTAX      TripId
>        MAX-ACCESS  not-accessible
>        STATUS      current
>        DESCRIPTION
>            "The index into this entry. Indicates the other location
>            servers within the ITAD domain that this location server
>            identified by tripOriginatorIdentifier is currently
>            peering."

why do you need this table?  can't this tripItadTopologyId be another
columnar object in tripItadTopologyTable?   the id object is identified
exactly the same way the seq number object from the other table is.
any reason they can't co-exist in the same table??

>        ::= { tripItadTopologyIdEntry 1 }
> 
>    tripItadTopologyIdRowStatus OBJECT-TYPE
>        SYNTAX      RowStatus
>        MAX-ACCESS  read-only
>        STATUS      current
>        DESCRIPTION
>            "This object is used to instantiate a row in this table.
>            The normal row status values of createAndGo(4),
>            createAndWait(5) and delete(6) have no application in this
>            table."
>        ::= { tripItadTopologyIdEntry 2 }
> 
> --
> -- Notification objects
> --
> 
>    tripNotifApplIndex    OBJECT-TYPE
>        SYNTAX     INTEGER (1..2147483647)
>        MAX-ACCESS accessible-for-notify
>        STATUS     current
>        DESCRIPTION
>             "This object contains the applIndex as described
>             in RFC 2788. It is used to bind this notification
>             with a specific instance of TRIP entity."
>        ::= { tripMIBNotifications 1 }
> 
>    tripNotifPeerAddrInetType OBJECT-TYPE
>        SYNTAX      InetAddressType
>        MAX-ACCESS  accessible-for-notify
>        STATUS      current
>        DESCRIPTION
>            "The type of Inet Address of the tripNotifPeerAddr."
>        REFERENCE
>            "RFC 2851, section 3."
>        ::= { tripMIBNotifications 2 }
> 
>    tripNotifPeerAddr OBJECT-TYPE
>        SYNTAX      InetAddress (SIZE(0..125))
>        MAX-ACCESS  accessible-for-notify
>        STATUS      current
>        DESCRIPTION
>            "The remote IP address of this entry's TRIP peer. The
>            size value of 125 has been assigned due to the sub
>            identifier of object types length limitation as
>            defined in SMIv2."
>        REFERENCE
>            "RFC 2851, section 3."
>        ::= { tripMIBNotifications 3 }
> 
>    tripNotifPeerErrCode OBJECT-TYPE
>        SYNTAX      INTEGER {
>                        messageHeader(1),
>                        openMessage(2),
>                        updateMessage(3),
>                        holdTimerExpired(4),
>                        finiteStateMachine(5),
>                        cease(6),
>                        tripNotification(7)
>                    }
>        MAX-ACCESS  accessible-for-notify
>        STATUS      current
>        DESCRIPTION
>            "Notification message of TRIP error. The meaning of this
>            value is applicable to the following functions:
> 
>            1 - message header.
>                All errors detected while processing the TRIP message
>                header.
>            2 - open message.
>                All errors detected while processing the OPEN message.
>            3 - update message.
>                All errors detected while processing the UPDATE message.
>            4 - hold timer expired.
>                A notification generated when the hold timer expires.
>            5 - finite state machine.
>                All errors detected by the TRIP Finite State Machine.
>            6 - cease.
>                Any fatal error condition that the rest of the values
>                do not cover.
>            7 - trip notification message.
>                Any error encountered while sending a notification
>                message."

rather than numbers above, the usual convention is to use the enum
labels...
  messageHeader - All errors detected while processing the TRIP message
header.
  openMessage   - All errors detected while processing the OPEN message.
  ...

>       ::= { tripMIBNotifications 4 }
> 
>    tripNotifPeerErrSubcode OBJECT-TYPE
>        SYNTAX      Integer32 (1..7)
>        MAX-ACCESS  accessible-for-notify
>        STATUS      current
>        DESCRIPTION
>            "The sub error code associated with error code. The meaning
>            of this value is dependent on the value of
>            tripNotifPeerErrCode.
> 
>            Message Header (1) Error Subcodes:
>            1 - Bad Message Length.
>            2 - Bad Message Type.
> 
>            OPEN Message (2) Error Subcodes:
>            1 - Unsupported Version Number.
>            2 - Bad Peer ITAD.
>            3 - Bad TRIP Identifier.
>            4 - Unsupported Optional Parameter.
>            5 - Unacceptable Hold Time.
>            6 - Unsupported Capability.
>            7 - Capability Mismatch.
> 
>            UPDATE Message (3) Error Subcodes:
>            1 - Malformed Attribute List.
>            2 - Unrecognized Well-known Attribute.
>            3 - Missing Well-known Mandatory Attribute.
>            4 - Attribute Flags Error.
>            5 - Attribute Length Error.
>            6 - Invalid Attribute."

if there could ever be more than 7 sub error codes defined, then
don't restrict the range of values for this object.  the SMI won't
allow a range to be expanded in the future, so you'd end up having
to deprecate the object and any notifs using it if new sub error codes
were to come along.

>       ::= { tripMIBNotifications 5 }
> 
> --
> -- Notifications
> --
>    tripEstablished NOTIFICATION-TYPE
>        STATUS  current
>        DESCRIPTION
>            "The TRIP Established event is generated when the TRIP
>            FSM enters the ESTABLISHED state."
>        ::= { tripMIBNotifications 6 }

no objects bound to this notif??  not even tripNotifApplIndex??

> 
>    tripFSM NOTIFICATION-TYPE
>        OBJECTS { tripNotifApplIndex,
>                  tripNotifPeerAddrInetType,
>                  tripNotifPeerAddr,
>                  tripNotifPeerErrCode,
>                  tripNotifPeerErrSubcode,
>                  tripPeerState
>                }
>        STATUS  current
>        DESCRIPTION
>            "The trip FSM Event is generated when any error is detected
>            by the TRIP Finite State Machine."
>        ::= { tripMIBNotifications 7 }
> 
>    tripOpenMessageError NOTIFICATION-TYPE
>        OBJECTS { tripNotifApplIndex,
>                  tripNotifPeerAddrInetType,
>                  tripNotifPeerAddr,
>                  tripNotifPeerErrCode,
>                  tripNotifPeerErrSubcode,
>                  tripPeerState
>                }
>        STATUS  current
>        DESCRIPTION
>            "Errors detected while processing the OPEN message."
>        ::= { tripMIBNotifications 8 }
> 
>    tripUpdateMessageError NOTIFICATION-TYPE
>        OBJECTS { tripNotifApplIndex,
>                  tripNotifPeerAddrInetType,
>                  tripNotifPeerAddr,
>                  tripNotifPeerErrCode,
>                  tripNotifPeerErrSubcode,
>                  tripPeerState
>                }
>        STATUS  current
>        DESCRIPTION
>            "Errors detected while processing the UPDATE message."
>        ::= { tripMIBNotifications 9 }
> 
>    tripHoldTimerExpired NOTIFICATION-TYPE
>        OBJECTS { tripNotifApplIndex,
>                  tripNotifPeerAddrInetType,
>                  tripNotifPeerAddr,
>                  tripNotifPeerErrCode,
>                  tripNotifPeerErrSubcode,
>                  tripPeerState
>                }
>        STATUS  current
>        DESCRIPTION
>            "The system does not receive successive messages within the
>            period specified by the negotiated Hold Time."
>        ::= { tripMIBNotifications 10 }
> 
>    tripConnectionCollision NOTIFICATION-TYPE
>        OBJECTS { tripNotifApplIndex }
>        STATUS  current
>        DESCRIPTION
>            "A pair of LSs tried to simultaneously to establish a
>            transport connection to each other."
>        ::= { tripMIBNotifications 11 }
> 
>    tripNotificationErr NOTIFICATION-TYPE
>        OBJECTS { tripNotifApplIndex }
>        STATUS  current
>        DESCRIPTION
>            "Generated if there is an error detected in a TRIP
>            notification message sent with another cause. Note that
>            the TRIP notification refered to in this object is not
>            an SNMP notification, it is a specific message described
>            in the TRIP specification."
>        REFERENCE
>            "draft-ietf-iptel-trip-07.txt, J. Rosenberg et al,
>            section 6.4."

presumably RFC 3219 now.

>        ::= { tripMIBNotifications 12 }
> 
>    --
>    -- Compliance Statements
>    --
>    tripCompliance MODULE-COMPLIANCE
>        STATUS     current
>        DESCRIPTION
>             "The compliance statement for TRIP entities."
> 
>        MODULE -- this module
>             MANDATORY-GROUPS { tripConfigGroup,
>                                tripPeerTableConfigGroup,
>                                tripRouteGroup,
>                                tripItadTopologyGroup,
>                                tripPeerTableStatsGroup }
> 
>        GROUP tripNotificationGroup
>        DESCRIPTION
>            "This group is optional. A TRIP entity can choose not to
>            send any notifications. If this group is implemented, the
>            tripNotifObjectGroup must also be implemented."
> 
>        GROUP tripNotifObjectGroup
>        DESCRIPTION
>            "This group is optional. A TRIP entity can choose not to
>            send any notifications. If this group is implemented, the
>            tripNotificationGroup must also be implemented."
> 
>        MODULE NETWORK-SERVICES-MIB
>             MANDATORY-GROUPS { applRFC1565Group }
> 
>        ::= { tripMIBCompliance 1 }
> 
> 
> --
> -- Object and event conformance groups
> --
> 
>    tripConfigGroup OBJECT-GROUP
>        OBJECTS {
>            tripProtocolVersion,
>            tripLocalItad,
>            tripIdentifier,
>            tripOperStatus,
>            tripAdminStatus,
>            tripLocalAddrIAddrType,
>            tripLocalAddr,
>            tripLocalPort,
>            tripMinItadOriginationInterval,
>            tripMinRouteAdvertisementInterval,
>            tripMaxPurgeTime,
>            tripDisableTime,
>            tripSendReceiveMode,
>            tripSupportedCommunityItad,
>            tripSupportedCommunityRowStatus
>        }
>        STATUS current
>        DESCRIPTION
>            "The global objects for configuring trip."
>        ::= { tripMIBGroups 1 }
> 
>    tripPeerTableConfigGroup OBJECT-GROUP
>        OBJECTS {
>            tripPeerIdentifier,
>            tripPeerState,
>            tripPeerAdminStatus,
>            tripPeerNegotiatedVersion,
>            tripPeerSendReceiveMode,
>            tripPeerRemotePort,
>            tripPeerRemoteItad,
>            tripPeerConnectRetryInterval,
>            tripPeerMaxRetryInterval,
>            tripPeerHoldTime,
>            tripPeerKeepAlive,
>            tripPeerHoldTimeConfigured,
>            tripPeerKeepAliveConfigured,
>            tripPeerMinItadOriginationInterval,
>            tripPeerMinRouteAdvertisementInterval,
>            tripPeerMaxPurgeTime,
>            tripPeerDisableTime,
>            tripPeerRowStatus
>            }
> 
>        STATUS current
>        DESCRIPTION
>            "The global objects for configuring the TRIP peer table."
>        ::= { tripMIBGroups 2 }
> 
>    tripPeerTableStatsGroup OBJECT-GROUP
>        OBJECTS {
>            tripPeerInUpdates,
>            tripPeerOutUpdates,
>            tripPeerInTotalMessages,
>            tripPeerOutTotalMessages,
>            tripPeerFsmEstablishedTransitions,
>            tripPeerFsmEstablishedTime,
>            tripPeerInUpdateElapsedTime
>            }
> 
>        STATUS current
>        DESCRIPTION
>            "The global statistics the TRIP peer table."
>        ::= { tripMIBGroups 3 }
> 
>    tripRouteGroup OBJECT-GROUP
>        OBJECTS {
>            tripRouteAddressSequenceNumber,
>            tripRouteAddressOriginatorId,
>            tripRouteNextHopServerIAddrType,
>            tripRouteNextHopServer,
>            tripRouteNextHopServerPort,
>            tripRouteNextHopServerItad,
>            tripRouteMultiExitDisc,
>            tripRouteLocalPref,
>            tripRouteAdvertisementPath,
>            tripRouteRoutedPath,
>            tripRouteAtomicAggregate,
>            tripRouteBest,
>            tripRouteUnknown,
>            tripRouteWithdrawn,
>            tripRouteConverted,
>            tripRouteCommunityItad,
>            tripPeerRtTypeRowStatus
>            }
> 
>        STATUS current
>        DESCRIPTION
>            "The global objects for configuring route attribute."
>        ::= { tripMIBGroups 4 }
> 
>    tripItadTopologyGroup OBJECT-GROUP
>        OBJECTS {
>            tripItadTopologySeqNum,
>            tripItadTopologyIdRowStatus
>            }
>        STATUS current
>        DESCRIPTION
>            "The objects that define the TRIP ITAD topology."
>        ::= { tripMIBGroups 5 }
> 
>    tripNotificationGroup NOTIFICATION-GROUP
>        NOTIFICATIONS {
>            tripEstablished,
>            tripFSM,
>            tripOpenMessageError,
>            tripUpdateMessageError,
>            tripHoldTimerExpired,
>            tripConnectionCollision,
>            tripNotificationErr
>        }
>        STATUS  current
>        DESCRIPTION
>             "A collection of notifications defined for TRIP."
>        ::= { tripMIBGroups 6 }
> 
>    tripNotifObjectGroup OBJECT-GROUP
>        OBJECTS {
>            tripNotifApplIndex,
>            tripNotifPeerAddrInetType,
>            tripNotifPeerAddr,
>            tripNotifPeerErrCode,
>            tripNotifPeerErrSubcode
>            }
>        STATUS current
>        DESCRIPTION
>            "The collection of objects that specify information for
>            TRIP notifications."
>        ::= { tripMIBGroups 7 }
> 
> END

kevin
-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Kevin R. Lingle       919.392.2029
 checkout: http://wwwin-eng.cisco.com/Eng/IOS/SNMP_WWW/mib-police/
 Sometimes I think I understand everything, then I regain consciousness.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
_______________________________________________
IPTEL mailing list
[email-masked]
http://lists.bell-labs.com/mailman/listinfo/iptel