RSVP Management Information Base
                  draft-ietf-rsvp-mib-00.txt
                  draft-ietf-rsvp-mib-01.txt

                 Tue Nov 21 14:57:46 Feb 13 16:07:47 PST 1995 1996

                          Fred Baker

                        Cisco Systems
                        519 Lado Drive
               Santa Barbara, California 93111

                        fred@cisco.com

                        John Krawczyk

                      Bay Networks, Inc
                       2 Federal Street
                Billerica, Massachusetts 01021

                  jkrawczyk@BayNetworks.com 01821

                      jj@BayNetworks.com

1.  Status of this Memo

This document is an Internet Draft.  Internet Drafts are
working documents of the Internet Engineering Task Force
(IETF), its Areas, and its Working Groups. Note that other
groups may also distribute working documents as Internet
Drafts.

Internet Drafts are draft documents valid for a maximum of six
months. Internet Drafts may be updated, replaced, or obsoleted
by other documents at any time.  It is not appropriate to use
Internet Drafts as reference material or to cite them other
than as a "working draft" or "work in progress."

Please check the I-D abstract listing contained in each
Internet Draft directory to learn the current status of this
or any other Internet Draft.

2.  Abstract

This memo defines a portion of the Management Information Base
(MIB) for use with network management protocols in TCP/IP-
based internets.  In particular, it defines objects for
managing the Resource Reservation Protocol (RSVP) within the
interface attributes defined in the Integrated Services Model.
Thus, the Integrated Services MIB is directy directly relevant to and
cross-referenced by this MIB.  Comments should be made to the
RSVP Working Group, rsvp@isi.edu.

This memo does not, in its draft form, specify a standard for
the Internet community.

3.  The SNMPv2 Network Management Framework

The SNMPv2 Network Management Framework consists of four major
components.  They are:

o    RFC 1441 which defines the SMI, the mechanisms used for
     describing and naming objects for the purpose of
     management.

o    RFC 1213 defines MIB-II, the core set of managed objects
     for the Internet suite of protocols.

o    RFC 1445 which defines the administrative and other
     architectural aspects of the framework.

o    RFC 1448 which defines the protocol used for network
     access to managed objects.

The Framework permits new objects to be defined for the
purpose of experimentation and evaluation.

3.1.  Object Definitions

Managed objects are accessed via a virtual information store,
termed the Management Information Base or MIB.  Objects in the
MIB are defined using the subset of Abstract Syntax Notation
One (ASN.1) defined in the SMI.  In particular, each object
object
type is named by an OBJECT IDENTIFIER, an administratively
assigned name.  The object type together with an object
instance serves to uniquely identify a specific instantiation
of the object.  For human convenience, we often use a textual
string, termed the descriptor, to refer to the object type.

4.  Overview

4.1.  Textual Conventions

Several new data types are introduced as a textual convention
in this MIB document.  These textual conventions enhance the
readability of the specification and can ease comparison with
other specifications if appropriate.  It should be noted that
the introduction of the these textual conventions has no
effect on either the syntax nor the semantics of any managed

objects.  The use of these is merely an artifact of the
explanatory method used.  Objects defined in terms of one of
these methods are always encoded by means of the rules that
define the primitive type.  Hence, no changes to the SMI or
the SNMP are necessary to accommodate these textual
conventions which are adopted merely for the convenience of
readers and writers in pursuit of the elusive goal of clear,
concise, and unambiguous MIB documents.

The new data types are ...

4.2.  Structure of MIB

The MIB is composed of the following sections:
     Integrated Services
          Interface Attributes Table
          Interface Flows Table
          Notifications
     RSVP
          Session Statistics Table
          Session Sender Table
          Reservations Requested
          Reservation Requests Received Table
          Reservation Requests Forwarded Table
          RSVP Active Flows Table
          RSVP Interface Attributes Table
          RSVP Neighbor Table

5.  Definitions

RSVP-MIB DEFINITIONS ::= BEGIN

        IMPORTS
                MODULE-IDENTITY, OBJECT-TYPE, Gauge32,
                Integer32, IpAddress, experimental   FROM SNMPv2-SMI
                TEXTUAL-CONVENTION, TruthValue, RowStatus,
                TimeStamp                            FROM SNMPv2-TC
                MODULE-COMPLIANCE, OBJECT-GROUP      FROM SNMPv2-CONF
            Protocol, Port, BitRate
                BitRate, BurstSize                   FROM INTEGRATED-SERVICES-MIB
                ifIndex, InterfaceIndex              FROM IF-MIB;

--  This MIB module uses the extended OBJECT-TYPE macro as
--  defined in [9].

    rsvp MODULE-IDENTITY
            LAST-UPDATED "9511211457Z" "9602131607Z" -- Tue Nov 21 14:57:46 Feb 13 16:07:47 PST 1995 1996
            ORGANIZATION "IETF RSVP Working Group"
            CONTACT-INFO
           "       Fred Baker
           Postal: Cisco Systems
                   519 Lado Drive
                   Santa Barbara, California 93111
           Tel:    +1 805 681 0115
           E-Mail: fred@cisco.com

                   John Krawczyk
           Postal: Bay Networks, Inc
                   2 Federal Street
                   Billerica, Massachusetts 01021 01821
           Tel:    +1 508 436 3811
           E-Mail: jkrawczyk@BayNetworks.com" jj@BayNetworks.com"
       DESCRIPTION
          "The MIB module to describe  the  RSVP  and Integrated  In-
          tegrated Services Protocol"
      ::= { experimental 9999 71 }   -- he who uses this gets what he deserves

  rsvpObjects         OBJECT IDENTIFIER ::= { rsvp 1 }
  rsvpNotifications   OBJECT IDENTIFIER ::= { rsvp 2 }
  rsvpConformance     OBJECT IDENTIFIER ::= { rsvp 3 }

    Protocol ::= TEXTUAL-CONVENTION
        DISPLAY-HINT "d"
        STATUS   current
        DESCRIPTION
           "The value of the IP Protocol field  of  an  IP
           Datagram  Header.  This identifies the protocol
           layer above IP.  For example, the  value  6  is
           used  for TCP and the value 17 is used for UDP.
           The values of this field are defined in the As-
           signed Numbers RFC."
       SYNTAX   INTEGER (1..255)
    Port ::= TEXTUAL-CONVENTION
        DISPLAY-HINT "d"
        STATUS   current
        DESCRIPTION
           "The value of the UDP or TCP Source or Destina-
           tion  Port field.  This pair, when coupled with
           the IP Addresses of the source and  destination
           system  and  the  IP  protocol  field, uniquely
           identifies a data stream.

           Zero is used as a fill value when the  protocol
           indicated  by  IP  Protocol  does not have port
           numbers in the  place  that  UDP  and  TCP  put
           them."
       SYNTAX   INTEGER (0..'FFFF'h)

    RsvpEncapsulation ::= TEXTUAL-CONVENTION
         STATUS   current
         DESCRIPTION
           "This indicates the encapsulation that an  RSVP
           Neighbor is percieved perceived to be using."
        SYNTAX   INTEGER {
                   ip (1),   -- IP Protocol 46
                   udp (2),  -- UDP Encapsulation
                   both (3)  -- neighbor is using both encapsulations
                 }

    RefreshInterval ::= TEXTUAL-CONVENTION
         DISPLAY-HINT "d"
         STATUS   current
         DESCRIPTION
           "The number of milliseconds that  are  expected
           to elapse between refreshes of path or reserva-
           tion state.  Unrefreshed  Path  or  reservation
           state is removed after a small multiple of this
           period."
        SYNTAX   INTEGER (0..'7FFFFFFF'h)
    QosService ::= TEXTUAL-CONVENTION
         STATUS   current
         DESCRIPTION
           "The class of service in use by a flow."
        SYNTAX   INTEGER {
                   predictive (1),         -- Predictive Service
                   controlledDelay (2), (1),    -- Controlled Delay
                   guaranteedDelay (3) (2),    -- Guaranteed Service Delay
                   predictiveDelay (3),    -- Predictive Delay
                   controlledLoad (5)      -- Controlled Load
                 }

    DelayClass ::= TEXTUAL-CONVENTION
         DISPLAY-HINT "d"
         STATUS   current
         DESCRIPTION
           "The class of delay used by the Controlled  De-
           lay Service."
        SYNTAX   INTEGER (1..3)

    BurstSize

    IpAddressString ::= TEXTUAL-CONVENTION
         STATUS   current
         DESCRIPTION
           "The number of octets of IP Data, including  IP
           Headers, that a stream may send without concern
         DISPLAY-HINT "3d.3d.3d.3d " -- repeat for policing."
        SYNTAX   INTEGER (0..'7FFFFFFF'h)

    Ttl ::= TEXTUAL-CONVENTION
         STATUS   current
         DESCRIPTION
           "The value of the each IP Time To Live field."
        SYNTAX   INTEGER (0..'FF'h)
    IpAddressString ::= TEXTUAL-CONVENTION address
         STATUS   current
         DESCRIPTION
           "A list of IP Addresses as found  in  the  RSVP
           Scope Object."
        SYNTAX   OCTET STRING

    MessageSize ::= TEXTUAL-CONVENTION
        DISPLAY-HINT "d"
        STATUS   current
        DESCRIPTION
           "The size of a message in bytes. This  is  used
           to  specify  the  minimum and maximum size of a
           message along an integrated services route."
       SYNTAX   INTEGER (0..'7FFFFFFF'h)

--      The RSVP Session Sender Statistics Database contains the information
--      displayed by senders regarding their potential contribution displays statistics
--      relating to session data content. It is in essence a list of the number of senders and receivers in each
--      valid PATH messages that the RSVP Router or Host is receiving.

    rsvpSenderTable      session.

    rsvpSessionTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RsvpSenderEntry RsvpSessionEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Information describing
           "Statistics concerning the  state  information
           displayed sessions seen  by senders in PATH messages."  a
           given system."
       ::= { rsvpObjects 1 7 }

    rsvpSenderEntry

    rsvpSessionEntry OBJECT-TYPE
        SYNTAX      RsvpSenderEntry      RsvpSessionEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Information describing the  state  information
           displayed by
           "Statistics concerning a  single sender's PATH message."  RSVP  session
           seen by a given system."
       INDEX { rsvpSenderSession, rsvpSenderSessionProtocol,
               rsvpSenderSessionPort,
               rsvpSenderSource, rsvpSenderPort} rsvpSessionAddress, rsvpSessionProtocol, rsvpSessionPort }
       ::= { rsvpSenderTable rsvpSessionTable 1 }

RsvpSenderEntry

    RsvpSessionEntry ::=
        SEQUENCE {
    rsvpSenderSession
        rsvpSessionAddress          IpAddress,
    rsvpSenderSessionProtocol
        rsvpSessionProtocol         Protocol,
    rsvpSenderSessionPort       Port,
    rsvpSenderSource            IpAddress,
    rsvpSenderPort
        rsvpSessionPort             Port,
    rsvpSenderTSpecRate         BitRate,
    rsvpSenderTSpecBurst        BurstSize,
    rsvpSenderTtl               Ttl,
    rsvpSenderIf                InterfaceIndex,
    rsvpSenderPreviousHop       IpAddress,
    rsvpSenderInterval          RefreshInterval,
    rsvpSenderMaxInterval       RefreshInterval,
    -- place holder for Policy information
    -- place holder for OPWA Advertisement
    rsvpSenderLastChange        TimeStamp,
    rsvpSenderStatus            RowStatus
        rsvpSessionSenders          Gauge32,
        rsvpSessionReceivers        Gauge32,
        rsvpSessionRequests         Gauge32
        }

    rsvpSenderSession
    rsvpSessionAddress OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The IP Address used as a  destination  address
           for all senders in this session."
       ::= { rsvpSenderEntry rsvpSessionEntry 1 }

    rsvpSenderSessionProtocol

    rsvpSessionProtocol OBJECT-TYPE
        SYNTAX      Protocol
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The value of the IP Protocol  field  in  this
           session, typically UDP or TCP.  A value of zero
           indicates that any  protocol  is  accepted;  it
           also  implies  that  rsvpSenderSessionPort  and
           rsvpSenderPort must be zero." used by a session."
       ::= { rsvpSenderEntry rsvpSessionEntry 2 }

    rsvpSenderSessionPort

    rsvpSessionPort OBJECT-TYPE
        SYNTAX      Port
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The UDP or TCP port number used as a  destina-
           tion  port  for  all senders in this session. A
           value of zero indicates that any  port  is  ac-
           cepted  or an IP Protocol other than UDP or TCP
           is in use. The the IP protocol in use is
           use, specified by rsvpSenderProtocol." rsvpSessionProtocol, does not
           have ports."
       ::= { rsvpSenderEntry rsvpSessionEntry 3 }
    rsvpSenderSource

    rsvpSessionSenders OBJECT-TYPE
        SYNTAX      IpAddress      Gauge32
        MAX-ACCESS  read-create  read-only
        STATUS      current
        DESCRIPTION
           "The IP Address used as  a  source  address  by
           this sender in number of senders currently  known  to  be
           part of this session."
       ::= { rsvpSenderEntry rsvpSessionEntry 4 }

    rsvpSenderPort
    rsvpSessionReceivers OBJECT-TYPE
        SYNTAX      Port      Gauge32
        MAX-ACCESS  read-create  read-only
        STATUS      current
        DESCRIPTION
           "The UDP or TCP port number used  as  a  source
           port by of reservations being requested  of
           this sender in system for this session. A value of
           zero indicates that any port is accepted or  an
           IP  Protocol  other  than UDP or TCP is in use.
           The IP protocol in use is specified by rsvpSen-
           derProtocol." session."
       ::= { rsvpSenderEntry rsvpSessionEntry 5 }

    rsvpSenderTSpecRate

    rsvpSessionRequests OBJECT-TYPE
        SYNTAX      BitRate
        UNITS       "kilobits per second"      Gauge32
        MAX-ACCESS  read-create  read-only
        STATUS      current
        DESCRIPTION
           "The Average Bit  Rate number of  the  sender's  data
           stream,  in  Kilobits.   The  rate may be arbi-
           trarily fast during reservation requests this system
           is sending upstream for this session."
       ::= { rsvpSessionEntry 6 }

-- Note that this is a short  interval  such  as read only table. If the  duration  of a video frame.  However, over
           any two such intervals it will not average fas-
           ter than corresponding
-- rsvpSenderTable, rsvpResvTable, and rsvpReqTable entries all
-- are removed, this entry goes away also.

--      The RSVP Session Sender Database contains the average rate as transmitted information
--      displayed by senders regarding their potential contribution
--      to session data content. It is in essence a list of the
           sender."
--      valid PATH messages that the RSVP Router or Host is receiving.

    rsvpSenderTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RsvpSenderEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Information describing the  state  information
           displayed by senders in PATH messages."
       ::= { rsvpSenderEntry 6 rsvpObjects 1 }
    rsvpSenderTSpecBurst

    rsvpSenderEntry OBJECT-TYPE
        SYNTAX      BurstSize
        UNITS       "bits"      RsvpSenderEntry
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The size of the largest burst
           "Information describing the sender  will
           send at  state  information
           displayed by a time." single sender's PATH message."
       INDEX { rsvpSenderSession, rsvpSenderSessionProtocol,
               rsvpSenderSessionPort,
               rsvpSenderSource, rsvpSenderSourcePort }
       ::= { rsvpSenderEntry 7 rsvpSenderTable 1 }

RsvpSenderEntry ::=
    SEQUENCE {
        rsvpSenderSession               IpAddress,
        rsvpSenderSessionProtocol       Protocol,
        rsvpSenderSessionPort           Port,
        rsvpSenderSource                IpAddress,
        rsvpSenderSourcePort            Port,
        rsvpSenderTSpecRate             BitRate,
        rsvpSenderTSpecPeakRate         BitRate,
        rsvpSenderTSpecBurst            BurstSize,
        rsvpSenderTSpecMinTU            MessageSize,
        rsvpSenderTSpecMaxTU            MessageSize,
        rsvpSenderIf                    InterfaceIndex,
        rsvpSenderPreviousHop           IpAddress,
        rsvpSenderInterval              RefreshInterval,
        rsvpSenderRSVPHop               TruthValue,
        -- place holder for Policy information
        -- place holder for OPWA Advertisement
        rsvpSenderLastChange            TimeStamp,
        rsvpSenderStatus                RowStatus
    }

    rsvpSenderTtl

    rsvpSenderSession OBJECT-TYPE
        SYNTAX      Ttl      IpAddress
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The IP Time To Live that the sender  is  using
           on the first hop." Address used as a  destination  address
           for all senders in this session."
       ::= { rsvpSenderEntry 8 1 }

    rsvpSenderIf

    rsvpSenderSessionProtocol OBJECT-TYPE
        SYNTAX      InterfaceIndex      Protocol
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The value of  IfIndex  for the  interface  on
           which  the  PATH  message was most recently re-
           cieved." IP  Protocol  field  in  this
           session, typically UDP or TCP."
       ::= { rsvpSenderEntry 9 2 }

    rsvpSenderPreviousHop

    rsvpSenderSessionPort OBJECT-TYPE
        SYNTAX      IpAddress      Port
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The IP Address of the sender,  or  the  router
           next  closer to the sender, from which port number used as a destination port for
           all senders in this session. This will be a UDP
           or TCP port, or a 16 bit number located in  the PATH
           message was most recently recieved."
           same  position as the UDP/TCP Destination Port.
           When zero, it indicates that the protocol  does
           not use ports."
       ::= { rsvpSenderEntry 10 3 }
    rsvpSenderInterval
    rsvpSenderSource OBJECT-TYPE
        SYNTAX      RefreshInterval      IpAddress
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The interval between PATH receipt  of  refresh
           messages IP Address used as advertised  a  source  address  by the Previous Hop."
           this sender in this session."
       ::= { rsvpSenderEntry 11 4 }

    rsvpSenderMaxInterval

    rsvpSenderSourcePort OBJECT-TYPE
        SYNTAX      RefreshInterval      Port
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The maximum interval between our sending  PATH
           refresh  messages  permitted port number used as a source port by  this
           sender  in  this session. This will be a UDP or
           TCP port, or a 16 bit  number  located  in  the  Previous
           Hop."
           same position as the UDP/TCP Source Port.  When
           zero, it indicates that the protocol  does  not
           use ports."
       ::= { rsvpSenderEntry 12 5 }

    rsvpSenderLastChange

    rsvpSenderTSpecRate OBJECT-TYPE
        SYNTAX      TimeStamp      BitRate
        UNITS       "kilobits per second"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The time Average Bit  Rate  of  the last change  sender's  data
           stream, in this PATH  mes-
           sage; This includes kilobits/second.  Within a transmis-
           sion burst, the first time it was sent, arrival rate may be as fast  as
           rsvpSenderTSpecPeakRate  (if  supported  by the
           service model); however, averaged across two or time
           more  burst  intervals,  the  rate  should  not
           exceed rsvpSenderTSpecRate.

           Note that this is a prediction, often based  on
           the  general  capability  of a type of codec or
           particular encoding; the most recent  change  in  parame-
           ters." measured average  rate
           may be significantly lower."
       ::= { rsvpSenderEntry 13 6 }

    rsvpSenderStatus
    rsvpSenderTSpecPeakRate OBJECT-TYPE
        SYNTAX      RowStatus      BitRate
        UNITS       "kilobits per second"
        MAX-ACCESS  read-create  read-only
        STATUS      current
        DESCRIPTION
           "'valid' for all active  PATH  messages.   This
           object  may  be used
           "The Peak Bit Rate of the sender's data stream,
           in  kilobits/second. Traffic arrival is not ex-
           pected to install static PATH in-
           formation exceed this rate at any  time,  apart
           from  the effects of jitter in the network.  If
           not specified in the TSpec, this  returns  zero
           or delete PATH information." noSuchValue."
       ::= { rsvpSenderEntry 14 7 }

--      The RSVP Reservations Requested Database contains the information
--      displayed by receivers regarding their needs with respect to
--      sessions and senders. It is in essence a list of the
--      valid RESV messages that the RSVP Router or Host is receiving.

    rsvpResvTable

    rsvpSenderTSpecBurst OBJECT-TYPE
        SYNTAX      SEQUENCE OF RsvpResvEntry      BurstSize
        UNITS       "bits"
        MAX-ACCESS  not-accessible  read-only
        STATUS      current
        DESCRIPTION
           "Information describing
           "The size of the  state  information
           displayed by recievers in RESV messages." largest  burst  expected  from
           the sender at a time."
       ::= { rsvpObjects 2 rsvpSenderEntry 8 }

    rsvpResvEntry

    rsvpSenderTSpecMinTU OBJECT-TYPE
        SYNTAX      RsvpResvEntry      MessageSize
        MAX-ACCESS  not-accessible  read-only
        STATUS      current
        DESCRIPTION
           "Information describing the  state  information
           displayed  by  a single reciever's RESV
           "The minimum message
           concerning a single sender."
       INDEX { rsvpResvSession, rsvpResvSessionProtocol, rsvpResvSessionPort,
               rsvpResvAddress, rsvpResvPort, rsvpResvIf, rsvpResvNextHop}
       ::= { rsvpResvTable 1 }

RsvpResvEntry size for  this  flow.  The
           policing  algorithm will treat smaller messages
           as though they are this size."
       ::=
    SEQUENCE {
    rsvpResvSession     IpAddress,
    rsvpResvSessionPort Port,
    rsvpResvAddress     IpAddress,
    rsvpResvSessionProtocol     Protocol,
    rsvpResvPort        Port,
    rsvpResvService     QosService,
    rsvpResvRSpecRate   BitRate,
    rsvpResvRSpecBurst  BurstSize,
    rsvpResvRSpecDelay  DelayClass,
    rsvpResvIf          InterfaceIndex,
    rsvpResvNextHop     IpAddress,
    rsvpResvInterval    RefreshInterval,
    rsvpResvMaxInterval RefreshInterval,
    rsvpResvScope       IpAddressString,
    rsvpResvShared      TruthValue,
    rsvpResvExplicit    TruthValue,
    -- place holder for Policy information
    rsvpResvLastChange  TimeStamp,
    rsvpResvStatus      RowStatus rsvpSenderEntry 9 }

    rsvpResvSession
    rsvpSenderTSpecMaxTU OBJECT-TYPE
        SYNTAX      IpAddress      MessageSize
        MAX-ACCESS  read-create  read-only
        STATUS      current
        DESCRIPTION
           "The IP Address used as a  destination  address maximum message size for all senders in  this session."  flow.  The
           admission  algorithm  will  reject TSpecs whose
           Maximum Transmission Unit, plus  the  interface
           headers, exceed the interface MTU."
       ::= { rsvpResvEntry 1 rsvpSenderEntry 10 }

    rsvpResvSessionProtocol

    rsvpSenderIf OBJECT-TYPE
        SYNTAX      Protocol      InterfaceIndex
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "The value of  ifIndex  for  the IP  Protocol  field  in  this
           session, typically UDP or TCP.  A value of zero
           indicates that any  protocol  is  accepted;  it
           also   implies   that  rsvpResvSessionPort  and
           rsvpResvPort must be zero."  interface  on
           which  the  PATH  message was most recently re-
           ceived."
       ::= { rsvpResvEntry 2 rsvpSenderEntry 11 }

    rsvpResvSessionPort

    rsvpSenderPreviousHop OBJECT-TYPE
        SYNTAX      Port      IpAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "The UDP IP Address of the sender,  or TCP port number used as a  destina-
           tion  port  for  all senders in this session. A
           value of zero indicates that any  port  is  ac-
           cepted  or an IP Protocol other than UDP or TCP
           is in use. The IP protocol in use is  specified
           by rsvpResvSessionProtocol."  the  router
           next  closer to the sender, from which the PATH
           message was most recently received."
       ::= { rsvpResvEntry 3 rsvpSenderEntry 12 }
    rsvpResvAddress

    rsvpSenderInterval OBJECT-TYPE
        SYNTAX      IpAddress      RefreshInterval
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "The IP Address used interval between PATH receipt  of  refresh
           messages as  a  source  address advertised by
           this sender in this session." the Previous Hop."
       ::= { rsvpResvEntry 4 rsvpSenderEntry 13 }

    rsvpResvPort
    rsvpSenderRSVPHop OBJECT-TYPE
        SYNTAX      Port      TruthValue
        MAX-ACCESS  read-create  read-only
        STATUS      current
        DESCRIPTION
           "The UDP or TCP port number used  as  a  source
           port by this sender in this session. A value of
           zero indicates
           "If TRUE, the node believes that any port  the  previous
           hop  is accepted or  an
           IP  Protocol  other  than UDP or TCP is in use.
           The  IP  protocol  in  use  is   specified   by
           rsvpResvSessionProtocol."  RSVP  hop.  If FALSE, the node be-
           lieves that the previous hop may not be an RSVP
           hop."
       ::= { rsvpResvEntry 5 rsvpSenderEntry 14 }

    rsvpResvService

    rsvpSenderLastChange OBJECT-TYPE
        SYNTAX      QosService      TimeStamp
        MAX-ACCESS  read-create  read-only
        STATUS      current
        DESCRIPTION
           "The QoS Service  classification  requested  by time of the reciever." last change in this PATH  mes-
           sage; This includes the first time it was sent,
           or time of the most recent  change  in  parame-
           ters."
       ::= { rsvpResvEntry 6 rsvpSenderEntry 15 }
    rsvpResvRSpecRate

    rsvpSenderStatus OBJECT-TYPE
        SYNTAX      BitRate
        UNITS       "kilobits per second"      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "In  theory,  the  Average  Bit  Rate  of   the
           sender's  data  stream,  in Kilobits.  The rate
           "'valid' for all active  PATH  messages.   This
           object  may  be arbitrarily fast during a short interval
           such  as used to install static PATH in-
           formation or delete PATH information."
       ::= { rsvpSenderEntry 16 }

--      The RSVP Reservation Requests Received Table contains the duration of a video frame.  Howev-
           er, over any two such  intervals  it  will  not
           average   faster   than  the  average  rate  as
           transmitted
--      information displayed by the sender.

           Note, however, that  there receivers regarding their needs with
--      respect to sessions and senders. It is  no  requirement
           that  the  number  be in essence a list of the same number
--      valid RESV messages that the
           sender advertised in its PATH message."
       ::= { rsvpResvEntry 7 }

    rsvpResvRSpecBurst RSVP Router or Host is receiving.

    rsvpResvTable OBJECT-TYPE
        SYNTAX      BurstSize
        UNITS       "bits"      SEQUENCE OF RsvpResvEntry
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The size of the largest  burst  expected  from
           the sender at a time.

           If this is less than  the  sender's  advertised
           burst  size, the reciever is asking the network
           to provide flow pacing  beyond  what  would  be
           provided  under normal circumstances. Such pac-
           ing is at
           "Information describing the network's option."  state  information
           displayed by receivers in RESV messages."
       ::= { rsvpResvEntry 8 rsvpObjects 2 }
    rsvpResvRSpecDelay

    rsvpResvEntry OBJECT-TYPE
        SYNTAX      DelayClass
        UNITS       "bits"      RsvpResvEntry
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The delay classification requested by
           "Information describing the  re-
           ciever."  state  information
           displayed  by  a single receiver's RESV message
           concerning a single sender."
       INDEX { rsvpResvSession, rsvpResvSessionProtocol, rsvpResvSessionPort,
               rsvpResvAddress, rsvpResvSourcePort, rsvpResvIf, rsvpResvNextHop}
       ::= { rsvpResvEntry 9 rsvpResvTable 1 }
    RsvpResvEntry ::=
        SEQUENCE {
            rsvpResvSession         IpAddress,
            rsvpResvSessionPort     Port,
            rsvpResvAddress         IpAddress,
            rsvpResvSessionProtocol Protocol,
            rsvpResvSourcePort      Port,
            rsvpResvService         QosService,
            rsvpResvTSpecRate       BitRate,
            rsvpResvTSpecPeakRate   BitRate,
            rsvpResvTSpecBurst      BurstSize,
            rsvpResvTSpecLevel      DelayClass,
            rsvpResvTSpecMinTU      MessageSize,
            rsvpResvTSpecMaxTU      MessageSize,
            rsvpResvIf              InterfaceIndex,
            rsvpResvNextHop         IpAddress,
            rsvpResvInterval        RefreshInterval,
            rsvpResvScope           IpAddressString,
            rsvpResvShared          TruthValue,
            rsvpResvExplicit        TruthValue,
            rsvpResvRSVPHop         TruthValue,
            -- place holder for Policy information
            rsvpResvLastChange      TimeStamp,
            rsvpResvStatus          RowStatus
        }

    rsvpResvSession OBJECT-TYPE
        SYNTAX      InterfaceIndex      IpAddress
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The value of  IfIndex IP Address used as a  destination  address
           for  the  interface  on
           which  the  RESV  message was most recently re-
           cieved." all senders in this session."
       ::= { rsvpResvEntry 10 1 }

    rsvpResvNextHop
    rsvpResvSessionProtocol OBJECT-TYPE
        SYNTAX      IpAddress      Protocol
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The IP Address value of the sender,  or  the  router
           next  closer to the sender, from which the RESV
           message was most recently recieved." IP  Protocol  field  in  this
           session, typically UDP or TCP."
       ::= { rsvpResvEntry 11 2 }

    rsvpResvInterval

    rsvpResvSessionPort OBJECT-TYPE
        SYNTAX      RefreshInterval      Port
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The interval between RESV receipt  of  refresh
           messages port number used as advertised by a destination port for
           all senders in this session. This will be a UDP
           or TCP port, or a 16 bit number located in  the Next Hop."
           same  position as the UDP/TCP Destination Port.
           When zero, it indicates that the protocol  does
           not use ports."
       ::= { rsvpResvEntry 12 3 }
    rsvpResvMaxInterval

    rsvpResvAddress OBJECT-TYPE
        SYNTAX      RefreshInterval      IpAddress
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The maximum interval between our sending  RESV
           refresh messages permitted IP Address used as  a  source  address  by
           this  sender  in  this  session.   If zero, all
           senders are included in the Next Hop." flow."
       ::= { rsvpResvEntry 13 4 }

    rsvpResvScope
    rsvpResvSourcePort OBJECT-TYPE
        SYNTAX      IpAddressString      Port
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "A list of zero or more  Sender  IP  Addresses,
           indicating  to  which  senders
           "The port number used as a Wildcard Style
           Filter applies."
       ::= { rsvpResvEntry 14 }

    rsvpResvShared OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "If TRUE, source port by  this
           sender  in  this session. This will be a reservation shared among senders is
           requested.  If FALSE, UDP or
           TCP port, or a reservation specific 16 bit  number  located  in  the
           same position as the UDP/TCP Source Port.  When
           zero, it indicates that the protocol  does  not
           use  ports or (when rsvpResvSessionPort is non-
           zero) that the request applies to all  relevant
           flows in this sender is requested." session."
       ::= { rsvpResvEntry 15 5 }

    rsvpResvExplicit

    rsvpResvIf OBJECT-TYPE
        SYNTAX      TruthValue      InterfaceIndex
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "If TRUE, individual senders are  listed  using
           Filter  Specifications.   If FALSE, senders are
           listed in
           "The value of  ifIndex  for  the Scope Object."  interface  on
           which  the  RESV  message was most recently re-
           ceived."
       ::= { rsvpResvEntry 16 6 }
    rsvpResvLastChange

    rsvpResvNextHop OBJECT-TYPE
        SYNTAX      TimeStamp      IpAddress
        MAX-ACCESS  read-only  not-accessible
        STATUS      current
        DESCRIPTION
           "The time IP Address of the last change in  this  reserva-
           tion  request;  This includes the first time it
           was received, sender,  or time of  the  router
           next  closer to the sender, from which the RESV
           message was most recent change
           in parameters." recently received."
       ::= { rsvpResvEntry 17 7 }

    rsvpResvStatus
    rsvpResvService OBJECT-TYPE
        SYNTAX      RowStatus      QosService
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "'valid' for all active  RESV  messages.   This
           object  may  be used to install static RESV in-
           formation or delete RESV information."
           "The QoS Service  classification  requested  by
           the receiver."
       ::= { rsvpResvEntry 18 8 }

--      The RSVP Reservations Requested Database contains

    rsvpResvTSpecRate OBJECT-TYPE
        SYNTAX      BitRate
        UNITS       "kilobits per second"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The Average Bit  Rate  of  the information
--      displayed by receivers regarding their needs with respect to
--      sessions and senders. It is  sender's  data
           stream, in essence kilobits/second.  Within a list of transmis-
           sion burst, the
--      valid RESV messages that arrival rate may be as fast  as
           rsvpResvTSpecPeakRate (if supported by the RSVP Router ser-
           vice model); however, averaged  across  two  or Host
           more  burst  intervals,  the  rate  should  not
           exceed rsvpResvTSpecRate.

           Note that this is receiving.

    rsvpReqTable a prediction, often based  on
           the  general  capability  of a type of codec or
           particular encoding; the measured average  rate
           may be significantly lower."
       ::= { rsvpResvEntry 9 }

    rsvpResvTSpecPeakRate OBJECT-TYPE
        SYNTAX      SEQUENCE OF RsvpReqEntry      BitRate
        UNITS       "kilobits per second"
        MAX-ACCESS  not-accessible  read-only
        STATUS      current
        DESCRIPTION
           "Information describing
           "The Peak Bit Rate of the  state  information
           displayed upstream sender's data stream,
           in RESV messages."  kilobits/second. Traffic arrival is not ex-
           pected to exceed this rate at any  time,  apart
           from  the effects of jitter in the network.  If
           not specified in the TSpec, this  returns  zero
           or noSuchValue."
       ::= { rsvpObjects 3 rsvpResvEntry 10 }

    rsvpReqEntry
    rsvpResvTSpecBurst OBJECT-TYPE
        SYNTAX      RsvpReqEntry      BurstSize
        UNITS       "bits"
        MAX-ACCESS  not-accessible  read-only
        STATUS      current
        DESCRIPTION
           "Information describing
           "The size of the  state  information
           displayed  upstream in an RESV message concern-
           ing largest  burst  expected  from
           the sender at a single sender."
       INDEX { rsvpReqSession, rsvpReqSessionProtocol, rsvpReqSessionPort,
               rsvpReqAddress, rsvpReqPort,
               rsvpReqIf, rsvpReqPreviousHop}
       ::= { rsvpReqTable 1 }

RsvpReqEntry time.

           If this is less than  the  sender's  advertised
           burst  size, the receiver is asking the network
           to provide flow pacing  beyond  what  would  be
           provided  under normal circumstances. Such pac-
           ing is at the network's option."
       ::=
    SEQUENCE {
    rsvpReqSession      IpAddress,
    rsvpReqSessionProtocol      Protocol,
    rsvpReqSessionPort  Port,
    rsvpReqAddress      IpAddress,
    rsvpReqPort Port,
    rsvpReqService      QosService,
    rsvpReqRSpecRate    BitRate,
    rsvpReqRSpecBurst   BurstSize,
    rsvpReqRSpecDelay   DelayClass,
    rsvpReqIf           InterfaceIndex,
    rsvpReqPreviousHop  IpAddress,
    rsvpReqInterval     RefreshInterval,
    rsvpReqMaxInterval  RefreshInterval,
    rsvpReqScope        IpAddressString,
    rsvpReqShared       TruthValue,
    rsvpReqExplicit     TruthValue,
    -- place holder for Policy information
    rsvpReqLastChange   TimeStamp,
    rsvpReqStatus       RowStatus rsvpResvEntry 11 }

    rsvpReqSession

    rsvpResvTSpecLevel OBJECT-TYPE
        SYNTAX      IpAddress      DelayClass
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The IP Address used as a  destination  address
           for all senders in
           "If the service is  predictive  or  controlled-
           delay,  this session." is the service level that is being
           requested.  Otherwise, it is zero, or the agent
           may return noSuchValue."
       ::= { rsvpReqEntry 1 rsvpResvEntry 12 }

    rsvpReqSessionProtocol

    rsvpResvTSpecMinTU OBJECT-TYPE
        SYNTAX      Protocol      MessageSize
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The value of the IP  Protocol  field  in minimum message size for  this
           session, typically UDP or TCP.  A value of zero
           indicates that any  protocol  is  accepted;  it
           also   implies   that   rsvpReqSessionPort  and
           rsvpReqPort must be zero."  flow.  The
           policing  algorithm will treat smaller messages
           as though they are this size."
       ::= { rsvpReqEntry 2 rsvpResvEntry 13 }

    rsvpReqSessionPort
    rsvpResvTSpecMaxTU OBJECT-TYPE
        SYNTAX      Port      MessageSize
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The UDP or TCP port number used as a  destina-
           tion  port maximum message size for  all senders in  this session. A
           value of zero indicates that any  port  is  ac-
           cepted  or an IP Protocol other than UDP or TCP
           is in use.  flow.  The IP protocol in use is  specified
           by rsvpReqSessionProtocol."
           admission  algorithm  will  reject TSpecs whose
           Maximum Transmission Unit, plus  the  interface
           headers, exceed the interface MTU."
       ::= { rsvpReqEntry 3 rsvpResvEntry 14 }
    rsvpReqAddress

    rsvpResvInterval OBJECT-TYPE
        SYNTAX      IpAddress      RefreshInterval
        MAX-ACCESS  read-only  read-create
        STATUS      current
        DESCRIPTION
           "The IP Address used interval between RESV receipt  of  refresh
           messages as  a  source  address advertised by
           this  sender in this session.  For sessions for
           which rsvpReqExplicit is FALSE, this value will
           be 0.0.0.0" the Next Hop."
       ::= { rsvpReqEntry 4 rsvpResvEntry 15 }

    rsvpReqPort

    rsvpResvScope OBJECT-TYPE
        SYNTAX      Port      IpAddressString
        MAX-ACCESS  read-only  read-create
        STATUS      current
        DESCRIPTION
           "The UDP
           "A list of zero or TCP port number used  as  a  source
           port by this sender in this session. A value of
           zero indicates that any port is accepted or  an
           IP  Protocol  other  than UDP or TCP is in use.
           The more  Sender  IP  protocol  in  use  is   specified   by
           rsvpReqSessionProtocol."  Addresses,
           indicating  to  which  senders a Wildcard Style
           Filter applies."
       ::= { rsvpReqEntry 5 rsvpResvEntry 16 }

    rsvpReqService

    rsvpResvShared OBJECT-TYPE
        SYNTAX      QosService      TruthValue
        MAX-ACCESS  read-only  read-create
        STATUS      current
        DESCRIPTION
           "The QoS Service classification
           "If TRUE, a reservation shared among senders is
           requested.  If FALSE, a reservation specific to
           this sender is requested."
       ::= { rsvpReqEntry 6 rsvpResvEntry 17 }
    rsvpReqRSpecRate
    rsvpResvExplicit OBJECT-TYPE
        SYNTAX      BitRate
        UNITS       "kilobits per second"      TruthValue
        MAX-ACCESS  read-only  read-create
        STATUS      current
        DESCRIPTION
           "In  theory,  the  Average  Bit  Rate  of   the
           sender's  data  stream,
           "If TRUE, individual senders are  listed  using
           Filter  Specifications.   If FALSE, senders are
           listed in Kilobits.  The rate
           may be arbitrarily fast during a short interval
           such  as the duration of a video frame.  Howev-
           er, over any two such  intervals  it  will  not
           average   faster   than  the  average  rate  as
           transmitted by the sender.

           Note, however, that  there  is  no  requirement
           that  the  number  be  the same number that the
           sender advertised in its PATH message." Scope Object."
       ::= { rsvpReqEntry 7 rsvpResvEntry 18 }

    rsvpReqRSpecBurst

    rsvpResvRSVPHop OBJECT-TYPE
        SYNTAX      BurstSize
        UNITS       "bits"      TruthValue
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The size of
           "If TRUE, the largest  burst  expected  from node believes that the sender at a time.

           If this  next  hop
           is less than  the  sender's  advertised
           burst  size,  an  RSVP  hop.  If FALSE, the reciever is asking node believes
           that the network
           to provide flow pacing  beyond  what  would next hop may not be
           provided  under normal circumstances. Such pac-
           ing is at the network's option." an RSVP hop."
       ::= { rsvpReqEntry 8 rsvpResvEntry 19 }
    rsvpReqRSpecDelay

    rsvpResvLastChange OBJECT-TYPE
        SYNTAX      DelayClass
        UNITS       "bits"      TimeStamp
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The delay classification requested." time of the last change in  this  reserva-
           tion  request;  This includes the first time it
           was received, or time of the most recent change
           in parameters."
       ::= { rsvpResvEntry 20 }

    rsvpResvStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "'valid' for all active  RESV  messages.   This
           object  may  be used to install static RESV in-
           formation or delete RESV information."
       ::= { rsvpResvEntry 21 }

--      The RSVP Reservation Requests Forwarded Table contains the
--      information displayed by receivers regarding their needs with
--      respect to sessions and senders. It is in essence a list of the
--      valid RESV messages that the RSVP Router or Host is sending
--      to its upstream neighbors.

    rsvpResvFwdTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RsvpResvFwdEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Information describing the  state  information
           displayed upstream in RESV messages."
       ::= { rsvpObjects 3 }

    rsvpResvFwdEntry OBJECT-TYPE
        SYNTAX      RsvpResvFwdEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Information describing the  state  information
           displayed  upstream in an RESV message concern-
           ing a single sender."
       INDEX { rsvpResvFwdSession, rsvpResvFwdSessionProtocol,
               rsvpResvFwdSessionPort, rsvpResvFwdAddress,
               rsvpResvFwdSourcePort, rsvpResvFwdIf,
               rsvpResvFwdPreviousHop}
       ::= { rsvpResvFwdTable 1 }
    RsvpResvFwdEntry ::=
        SEQUENCE {
            rsvpResvFwdSession              IpAddress,
            rsvpResvFwdSessionProtocol      Protocol,
            rsvpResvFwdSessionPort          Port,
            rsvpResvFwdAddress              IpAddress,
            rsvpResvFwdSourcePort           Port,
            rsvpResvFwdService              QosService,
            rsvpResvFwdTSpecRate            BitRate,
            rsvpResvFwdTSpecPeakRate        BitRate,
            rsvpResvFwdTSpecBurst           BurstSize,
            rsvpResvFwdTSpecLevel           DelayClass,
            rsvpResvFwdTSpecMinTU           MessageSize,
            rsvpResvFwdTSpecMaxTU           MessageSize,
            rsvpResvFwdIf                   InterfaceIndex,
            rsvpResvFwdPreviousHop          IpAddress,
            rsvpResvFwdInterval             RefreshInterval,
            rsvpResvFwdScope                IpAddressString,
            rsvpResvFwdShared               TruthValue,
            rsvpResvFwdExplicit             TruthValue,
            rsvpResvFwdRSVPHop              TruthValue,
            -- place holder for Policy information
            rsvpResvFwdLastChange           TimeStamp,
            rsvpResvFwdStatus               RowStatus
        }

    rsvpResvFwdSession OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The IP Address used as a  destination  address
           for all senders in this session."
       ::= { rsvpResvFwdEntry 1 }
    rsvpResvFwdSessionProtocol OBJECT-TYPE
        SYNTAX      Protocol
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The value of the IP  Protocol  field  in  this
           session, typically UDP or TCP."
       ::= { rsvpResvFwdEntry 2 }

    rsvpResvFwdSessionPort OBJECT-TYPE
        SYNTAX      Port
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The port number used as a destination port for
           all senders in this session. This will be a UDP
           or TCP port, or a 16 bit number located in  the
           same  position as the UDP/TCP Destination Port.
           When zero, it indicates that the protocol  does
           not use ports."
       ::= { rsvpResvFwdEntry 3 }

    rsvpResvFwdAddress OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The IP Address used as  a  source  address  by
           this  sender in this session.  For sessions for
           which rsvpResvFwdExplicit is FALSE, this  value
           will be 0.0.0.0"
       ::= { rsvpResvFwdEntry 4 }
    rsvpResvFwdSourcePort OBJECT-TYPE
        SYNTAX      Port
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The port number used as a source port by  this
           sender  in  this session. This will be a UDP or
           TCP port, or a 16 bit  number  located  in  the
           same position as the UDP/TCP Source Port.  When
           zero, it indicates that the protocol  does  not
           use  ports  or  (when rsvpResvFwdSessionPort is
           non-zero)  that  the  request  applies  to  all
           relevant flows in this session."
       ::= { rsvpResvFwdEntry 5 }

    rsvpResvFwdService OBJECT-TYPE
        SYNTAX      QosService
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The QoS Service classification requested."
       ::= { rsvpResvFwdEntry 6 }

    rsvpResvFwdTSpecRate OBJECT-TYPE
        SYNTAX      BitRate
        UNITS       "kilobits per second"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The Average Bit  Rate  of  the  sender's  data
           stream, in kilobits/second.  Within a transmis-
           sion burst, the arrival rate may be as fast  as
           rsvpResvFwdTSpecPeakRate  (if  supported by the
           service model); however, averaged across two or
           more  burst  intervals,  the  rate  should  not
           exceed rsvpResvFwdTSpecRate.

           Note that this is a prediction, often based  on
           the  general  capability  of a type of codec or
           particular encoding; the measured average  rate
           may be significantly lower."
       ::= { rsvpResvFwdEntry 7 }
    rsvpResvFwdTSpecPeakRate OBJECT-TYPE
        SYNTAX      BitRate
        UNITS       "kilobits per second"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The Peak Bit Rate of the sender's data stream,
           in  kilobits/second. Traffic arrival is not ex-
           pected to exceed this rate at any  time,  apart
           from  the effects of jitter in the network.  If
           not specified in the TSpec, this  returns  zero
           or noSuchValue."
       ::= { rsvpResvFwdEntry 8 }

    rsvpResvFwdTSpecBurst OBJECT-TYPE
        SYNTAX      BurstSize
        UNITS       "bits"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The size of the largest  burst  expected  from
           the sender at a time.

           If this is less than  the  sender's  advertised
           burst  size, the receiver is asking the network
           to provide flow pacing  beyond  what  would  be
           provided  under normal circumstances. Such pac-
           ing is at the network's option."
       ::= { rsvpResvFwdEntry 9 }

    rsvpResvFwdTSpecLevel OBJECT-TYPE
        SYNTAX      DelayClass
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "If the service is  predictive  or  controlled-
           delay,  this is the service level that is being
           requested.  Otherwise, it is zero, or the agent
           may return noSuchValue."
       ::= { rsvpResvFwdEntry 10 }
    rsvpResvFwdTSpecMinTU OBJECT-TYPE
        SYNTAX      MessageSize
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The minimum message size for  this  flow.  The
           policing  algorithm will treat smaller messages
           as though they are this size."
       ::= { rsvpResvFwdEntry 11 }

    rsvpResvFwdTSpecMaxTU OBJECT-TYPE
        SYNTAX      MessageSize
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The maximum message size for  this  flow.  The
           admission  algorithm  will  reject TSpecs whose
           Maximum Transmission Unit, plus  the  interface
           headers, exceed the interface MTU."
       ::= { rsvpResvFwdEntry 12 }

    rsvpResvFwdIf OBJECT-TYPE
        SYNTAX      InterfaceIndex
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The value of  ifIndex  for  the  interface  on
           which  the  RESV  message  is being sent, which
           should correspond to the interface  from  which
           the PATH message was most recently received."
       ::= { rsvpResvFwdEntry 13 }

    rsvpResvFwdPreviousHop OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The IP Address of the sender,  or  the  router
           next  closer  to  the sender, to which the RESV
           message is being sent."
       ::= { rsvpResvFwdEntry 14 }
    rsvpResvFwdInterval OBJECT-TYPE
        SYNTAX      RefreshInterval
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The interval between RESV receipt  of  refresh
           messages advertised to the Previous Hop."
       ::= { rsvpResvFwdEntry 15 }

    rsvpResvFwdScope OBJECT-TYPE
        SYNTAX      IpAddressString
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "A list of zero or more  Sender  IP  Addresses,
           indicating  to  which  senders  a  non-explicit
           reservation applies."
       ::= { rsvpResvFwdEntry 16 }

    rsvpResvFwdShared OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "If TRUE, a reservation shared among senders is
           requested.  If FALSE, a reservation specific to
           this sender is requested."
       ::= { rsvpResvFwdEntry 17 }

    rsvpResvFwdExplicit OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "If TRUE, individual senders are  listed  using
           Filter  Specifications.   If FALSE, senders are
           listed in the Scope Object."
       ::= { rsvpResvFwdEntry 18 }
    rsvpResvFwdRSVPHop OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "If TRUE, the node believes that  the  previous
           hop  is  an  RSVP  hop.  If FALSE, the node be-
           lieves that the previous hop may not be an RSVP
           hop."
       ::= { rsvpResvFwdEntry 19 }

    rsvpResvFwdLastChange OBJECT-TYPE
        SYNTAX      TimeStamp
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The time of the last change in  this  request;
           This  includes the first time it was requested,
           or time of the most recent change in parameters
           requested."
       ::= { rsvpResvFwdEntry 20 }

    rsvpResvFwdStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION
           "'valid' for all active  RESV  messages.   This
           object  may  be used to install static RESV in-
           formation or delete RESV information."
       ::= { rsvpResvFwdEntry 21 }

--      The RSVP Active Flows Database
--      lists all flows active on an outgoing interface, including
--      relevant attributes.

    rsvpFlowTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RsvpFlowEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Information describing the reserved flows  us-
           ing the system's interfaces."
       ::= { rsvpObjects 6 }

    rsvpFlowEntry OBJECT-TYPE
        SYNTAX      RsvpFlowEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Information describing the use of a given  in-
           terface by a given flow."
       INDEX { rsvpFlowDestination, rsvpFlowDestinationProtocol,
               rsvpFlowDestinationPort, rsvpFlowSource,
               rsvpFlowSourcePort, ifIndex }
       ::= { rsvpFlowTable 1 }

    RsvpFlowEntry ::=
        SEQUENCE {
            rsvpFlowDestination             IpAddress,
            rsvpFlowDestinationProtocol     Protocol,
            rsvpFlowDestinationPort         Port,
            rsvpFlowSource                  IpAddress,
            rsvpFlowSourcePort              Port,
            rsvpFlowRate                    BitRate,
            rsvpFlowBurst                   BurstSize,
            rsvpFlowWeight                  Integer32,
            rsvpFlowQueue                   Integer32,
            rsvpFlowMinTU                   MessageSize
        }
    rsvpFlowDestination OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The IP Address used as a  destination  address
           for all senders in this flow."
       ::= { rsvpReqEntry 9 rsvpFlowEntry 1 }

    rsvpReqIf

    rsvpFlowDestinationProtocol OBJECT-TYPE
        SYNTAX      InterfaceIndex      Protocol
        MAX-ACCESS  read-only  not-accessible
        STATUS      current
        DESCRIPTION
           "The value of  IfIndex  for  the  interface  on
           which  the  RESV  message  is being sent, which
           should correspond to the interface  from  which the PATH message was most recently received." IP  Protocol  field  in  this
           flow, typically UDP or TCP."
       ::= { rsvpReqEntry 10 rsvpFlowEntry 2 }

    rsvpReqPreviousHop

    rsvpFlowDestinationPort OBJECT-TYPE
        SYNTAX      IpAddress      Port
        MAX-ACCESS  read-only  not-accessible
        STATUS      current
        DESCRIPTION
           "The IP Address of the sender, UDP or TCP port number used as a  destina-
           tion port for all senders in this flow. A value
           of zero indicates that the  router
           next  closer  to  the sender, to which the RESV
           message is being sent." IP protocol in  use,
           specified  by rsvpFlowDestinationProtocol, does
           not use ports."
       ::= { rsvpReqEntry 11 rsvpFlowEntry 3 }

    rsvpReqInterval

    rsvpFlowSource OBJECT-TYPE
        SYNTAX      RefreshInterval      IpAddress
        MAX-ACCESS  read-only  not-accessible
        STATUS      current
        DESCRIPTION
           "The interval between RESV receipt  of  refresh
           messages advertised to IP Address used as  a  source  address  by
           this sender in this flow.  If zero, all senders
           are included in the Previous Hop." flow."
       ::= { rsvpReqEntry 12 rsvpFlowEntry 4 }
    rsvpReqMaxInterval
    rsvpFlowSourcePort OBJECT-TYPE
        SYNTAX      RefreshInterval      Port
        MAX-ACCESS  read-only  not-accessible
        STATUS      current
        DESCRIPTION
           "The maximum interval between our sending  RESV
           refresh  messages  permitted  to UDP or TCP port number used  as  a  source
           port  by  this  sender in this flow. A value of
           zero indicates that the  Previous
           Hop."  IP  protocol  in  use,
           specified  by rsvpFlowDestinationProtocol, does
           not use ports, or (when rsvpFlowDestinationPort
           is  non-zero) that data from all senders is in-
           cluded in this class of flows."
       ::= { rsvpReqEntry 13 rsvpFlowEntry 5 }

    rsvpReqScope

    rsvpFlowRate OBJECT-TYPE
        SYNTAX      IpAddressString      BitRate
        UNITS       "kilobits per second"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "A list
           "The Average Bit  Rate  of zero or more  Sender  IP  Addresses,
           indicating  to  which  senders  the  sender's  data
           stream,  in  Kilobits.   The  rate may be arbi-
           trarily fast during a  non-explicit
           reservation applies." short  interval  such  as
           the  duration  of a video frame.  However, over
           any two such intervals it will not average fas-
           ter than the average rate as transmitted by the
           sender."
       ::= { rsvpReqEntry 14 rsvpFlowEntry 6 }

    rsvpReqShared
    rsvpFlowBurst OBJECT-TYPE
        SYNTAX      TruthValue      BurstSize
        UNITS       "bits"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "If TRUE,
           "The size of the largest  burst  expected  from
           the sender at a reservation shared among senders is
           requested. time.

           If FALSE, a reservation specific to this sender is requested." less than  the  sender's  advertised
           burst  size, the receiver is asking the network
           to provide flow pacing  beyond  what  would  be
           provided  under normal circumstances. Such pac-
           ing is at the network's option."
       ::= { rsvpReqEntry 15 rsvpFlowEntry 7 }

    rsvpReqExplicit

    rsvpFlowWeight OBJECT-TYPE
        SYNTAX      TruthValue      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "If TRUE, individual senders are  listed  using
           Filter  Specifications.   If FALSE, senders are
           listed in
           "The weight used  to  prioritize  the Scope Object."  traffic.
           Note  that the interpretation of this object is
           implementation-specific,   as   implementations
           vary in their use of weighting procedures."
       ::= { rsvpReqEntry 16 rsvpFlowEntry 8 }
    rsvpReqLastChange

    rsvpFlowQueue OBJECT-TYPE
        SYNTAX      TimeStamp      Integer32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The time number of the last change in queue used by this  request;
           This  includes  traffic.
           Note  that the first time it was requested,
           or time interpretation of the most recent change this object is
           implementation-specific,   as   implementations
           vary in parameters
           requested." their use of queue identifiers."
       ::= { rsvpReqEntry 17 rsvpFlowEntry 9 }

    rsvpReqStatus
    rsvpFlowMinTU OBJECT-TYPE
        SYNTAX      RowStatus      MessageSize
        MAX-ACCESS  read-write  read-only
        STATUS      current
        DESCRIPTION
           "'valid'
           "The minimum message size for all active  RESV  messages.   This
           object  may  be used to install static RESV in-
           formation or delete RESV information."  this  flow.  The
           policing  algorithm will treat smaller messages
           as though they are this size."
       ::= { rsvpReqEntry 18 rsvpFlowEntry 10 }

--      The RSVP Interface Attributes Database contains the
--      RSVP-specific information for an interface. Information
--      that is shared with other reservation procedures such
--      as ST-II is in the Integrated Interface Attributes
--      Database.

    rsvpIfAttribTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RsvpIfAttribEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The RSVP-specific attributes of  the  system's
           interfaces."
       ::= { rsvpObjects 4 }

    rsvpIfAttribEntry OBJECT-TYPE
        SYNTAX      RsvpIfAttribEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "The RSVP-specific attributes of  the  a  given
           interface."
       INDEX { ifIndex }

       ::= { rsvpIfAttribTable 1 }

RsvpIfAttribEntry ::=
    SEQUENCE {
    rsvpIfAttribUdpNbrs         Gauge32,
    rsvpIfAttribIpNbrs          Gauge32,
    rsvpIfAttribNbrs            Gauge32,
    rsvpIfAttribEnabled         TruthValue,
    rsvpIfAttribUdpRequired     TruthValue,
    rsvpIfAttribStatus          RowStatus
    }
    rsvpIfAttribUdpNbrs OBJECT-TYPE
        SYNTAX      Gauge32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The number of neighbors percieved perceived to be  using
           only the RSVP UDP Encapsulation."
       ::= { rsvpIfAttribEntry 1 }

    rsvpIfAttribIpNbrs OBJECT-TYPE
        SYNTAX      Gauge32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The number of neighbors percieved perceived to be  using
           only the RSVP IP Encapsulation."
       ::= { rsvpIfAttribEntry 2 }

    rsvpIfAttribNbrs OBJECT-TYPE
        SYNTAX      Gauge32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
           "The number of neighbors  currently  percieved;  perceived;
           this will exceed rsvpIfAttribIpNbrs + rsvpIfAt-
           tribUdpNbrs by the number  of  neighbors  using
           both encapsulations."
       ::= { rsvpIfAttribEntry 3 }

    rsvpIfAttribEnabled OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "If TRUE, RSVP is enabled  on  this  Interface.
           If  FALSE,  RSVP  is not enabled on this inter-
           face."
       ::= { rsvpIfAttribEntry 4 }
    rsvpIfAttribUdpRequired OBJECT-TYPE
        SYNTAX      TruthValue
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "If TRUE, manual configuration forces  the  use
           of  UDP  encapsulation  on  the  interface.  If
           FALSE, UDP encapsulation is only used if rsvpI-
           fAttribUdpNbrs is not zero."

       ::= { rsvpIfAttribEntry 5 }

    rsvpIfAttribStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "'valid' on interfaces that are configured  for
           RSVP."
       ::= { rsvpIfAttribEntry 6 }

--      The RSVP Neighbor Database lists the neighbors the RSVP
--      process currently is receiving messages from.

    rsvpNbrTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RsvpNbrEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Information describing  the  Neighbors  of  an
           RSVP system."
       ::= { rsvpObjects 5 }

    rsvpNbrEntry OBJECT-TYPE
        SYNTAX      RsvpNbrEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "Information describing a  single  RSVP  Neigh-
           bor."
       INDEX { ifIndex, rsvpNbrAddress }
       ::= { rsvpNbrTable 1 }

RsvpNbrEntry ::=
    SEQUENCE {
    rsvpNbrAddress      IpAddress,
    rsvpNbrProtocol     RsvpEncapsulation,
    rsvpNbrStatus       RowStatus
    }

    rsvpNbrAddress OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-create  not-accessible
        STATUS      current
        DESCRIPTION
           "The IP Address used by this neighbor."
       ::= { rsvpNbrEntry 1 }
    rsvpNbrProtocol OBJECT-TYPE
        SYNTAX      RsvpEncapsulation
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "The encapsulation being used  by  this  neigh-
           bor."
       ::= { rsvpNbrEntry 2 }

    rsvpNbrStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "'valid' for all neighbors.  This object may be
           used  to  configure neighbors.  In the presence
           of configured neighbors, the implementation may
           (but is not required to) limit the set of valid
           neighbors to those configured."
       ::= { rsvpNbrEntry 3 }

-- conformance information

rsvpGroups      OBJECT IDENTIFIER ::= { rsvpConformance 1 }
rsvpCompliances OBJECT IDENTIFIER ::= { rsvpConformance 2 }

-- compliance statements

    rsvpCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
           "The compliance statement.  Note that  the  im-
           plementation  of this module requires implemen-
           tation of the Integrated Services MIB as well."
       MODULE  -- this module
       MANDATORY-GROUPS {
           rsvpSessionGroup, rsvpSenderGroup, rsvpResvGroup, rsvpReqGroup,
           rsvpResvFwdGroup, rsvpFlowGroup, rsvpIfAttribGroup,
           rsvpNbrGroup
           }
       ::= { rsvpCompliances 1 }

    rsvpSessionGroup OBJECT-GROUP
         OBJECTS {
            rsvpSessionSenders,
            rsvpSessionReceivers,
            rsvpSessionRequests
        }
        STATUS  current
        DESCRIPTION
           "These objects are required for RSVP Systems."
       ::= { rsvpGroups 1 }
    rsvpSenderGroup OBJECT-GROUP
         OBJECTS {
            rsvpSenderSession, rsvpSenderSessionPort,
            rsvpSenderSource, rsvpSenderSessionProtocol,
            rsvpSenderPort,
            rsvpSenderTSpecRate, rsvpSenderTSpecPeakRate,
            rsvpSenderTSpecBurst, rsvpSenderTtl, rsvpSenderTSpecMinTU,
            rsvpSenderIf, rsvpSenderPreviousHop, rsvpSenderTSpecMaxTU,
            rsvpSenderInterval, rsvpSenderMaxInterval, rsvpSenderLastChange, rsvpSenderStatus rsvpSenderStatus,
            rsvpSenderRSVPHop
        }
        STATUS  current
        DESCRIPTION
           "These objects are required for RSVP Systems."
       ::= { rsvpGroups 2 }

    rsvpResvGroup OBJECT-GROUP
         OBJECTS {
            rsvpResvSession, rsvpResvSessionPort,
            rsvpResvAddress, rsvpResvSessionProtocol,
            rsvpResvPort,
            rsvpResvService,
            rsvpResvRSpecRate, rsvpResvRSpecBurst,
            rsvpResvRSpecDelay, rsvpResvIf,
            rsvpResvNextHop, rsvpResvTSpecRate, rsvpResvTSpecBurst,
            rsvpResvTSpecPeakRate, rsvpResvTSpecMinTU, rsvpResvTSpecMaxTU,
            rsvpResvTSpecLevel, rsvpResvInterval,
            rsvpResvMaxInterval, rsvpResvScope,
            rsvpResvShared, rsvpResvExplicit, rsvpResvRSVPHop,
            rsvpResvLastChange, rsvpResvStatus
        }
        STATUS  current
        DESCRIPTION
           "These objects are required for RSVP Systems."
       ::= { rsvpGroups 3 }

    rsvpReqGroup

    rsvpResvFwdGroup OBJECT-GROUP
         OBJECTS {
            rsvpReqSession, rsvpReqSessionPort,
            rsvpReqAddress, rsvpReqSessionProtocol,
            rsvpReqPort, rsvpReqService,
            rsvpReqRSpecRate, rsvpReqRSpecBurst,
            rsvpReqRSpecDelay, rsvpReqIf,
            rsvpReqPreviousHop, rsvpReqInterval,
            rsvpReqMaxInterval, rsvpReqScope,
            rsvpReqShared, rsvpReqExplicit,
            rsvpReqLastChange, rsvpReqStatus
            rsvpResvFwdService, rsvpResvFwdTSpecPeakRate,
            rsvpResvFwdTSpecMinTU,  rsvpResvFwdTSpecMaxTU,
            rsvpResvFwdTSpecRate, rsvpResvFwdTSpecBurst,
            rsvpResvFwdTSpecLevel, rsvpResvFwdInterval, rsvpResvFwdScope,
            rsvpResvFwdShared, rsvpResvFwdExplicit, rsvpResvFwdRSVPHop,
            rsvpResvFwdLastChange, rsvpResvFwdStatus
        }
        STATUS  current
        DESCRIPTION
           "These objects are required for RSVP Systems."
       ::= { rsvpGroups 4 }
    rsvpFlowGroup OBJECT-GROUP
         OBJECTS {
            rsvpFlowRate, rsvpFlowBurst, rsvpFlowWeight,
            rsvpFlowQueue, rsvpFlowMinTU
        }
        STATUS  current
        DESCRIPTION
           "These objects are required for RSVP Systems."
       ::= { rsvpGroups 5 }

    rsvpIfAttribGroup OBJECT-GROUP
         OBJECTS {
            rsvpIfAttribUdpNbrs, rsvpIfAttribIpNbrs,
            rsvpIfAttribNbrs, rsvpIfAttribEnabled,
            rsvpIfAttribUdpRequired, rsvpIfAttribStatus
        }
        STATUS  current
        DESCRIPTION
           "These objects are required for RSVP Systems."
       ::= { rsvpGroups 5 6 }

    rsvpNbrGroup OBJECT-GROUP
         OBJECTS {
            rsvpNbrAddress,
            rsvpNbrProtocol, rsvpNbrStatus
        }
        STATUS  current
        DESCRIPTION
           "These objects are required for RSVP Systems."
       ::= { rsvpGroups 6 7 }

END

6.  Acknowledgements

This document was produced by the RSVP Working Group.

7.  References

[1]  M.T. Rose (editor), Management Information Base for
     Network Management of TCP/IP-based internets, Internet
     Working Group Request for Comments 1213.  Network
     Information Center, SRI International, Menlo Park,
     California, (May, 1990).

[2]  Information processing systems - Open Systems
     Interconnection - Specification of Abstract Syntax
     Notation One (ASN.1), International Organization for
     Standardization.  International Standard 8824, (December,
     1987).

[3]  Information processing systems - Open Systems
     Interconnection - Specification of Basic Encoding Rules
     for Abstract Notation One (ASN.1), International
     Organization for Standardization.  International Standard
     8825, (December, 1987).

Table of Contents

1 Status of this Memo ...................................    1
2 Abstract ..............................................    2
3 The SNMPv2 Network Management Framework ...............    3
3.1 Object Definitions ..................................    3
4 Overview ..............................................    3
4.1 Textual Conventions .................................    3
4.2 Structure of MIB ....................................    4
5 Definitions ...........................................    4
5.2
5.1 RSVP Session Statistics Database ....................    7
5.1 RSVP Session Sender Database ........................    7
5.3   10
5.2 RSVP Reservations Requested Database ................   12
5.4   16
5.3 RSVP Reservation Requests Database ..................   19
5.5   24
5.3 RSVP Interface Flows Database .......................   32
5.4 RSVP Interface Attributes Database ..................   26
5.1   37
5.5 RSVP Neighbor Database ..............................   29   40
6 Acknowledgements ......................................   35   46
7 References ............................................   36   47