You are here:

MonitorTools.com > Technical documentation > SNMP > MIB > Cisco > CISCO-VSI-MASTER-MIB
ActiveXperts Network Monitor 2019##AdminFavorites

CISCO-VSI-MASTER-MIB by vendor Cisco

CISCO-VSI-MASTER-MIB file content

The SNMP protocol is used to for conveying information and commands between agents and managing entities. SNMP uses the User Datagram Protocol (UDP) as the transport protocol for passing data between managers and agents. The reasons for using UDP for SNMP are, firstly it has low overheads in comparison to TCP, which uses a 3-way hand shake for connection. Secondly, in congested networks, SNMP over TCP is a bad idea because TCP in order to maintain reliability will flood the network with retransmissions.

Management information (MIB) is represented as a collection of managed objects. These objects together form a virtual information base called MIB. An agent may implement many MIBs, but all agents must implement a particular MIB called MIB-II [16]. This standard defines variables for things such as interface statistics (interface speeds, MTU, octets sent, octets received, etc.) as well as various other things pertaining to the system itself (system location, system contact, etc.). The main goal of MIB-II is to provide general TCP/IP management information.

Use ActiveXperts Network Monitor 2019 to import vendor-specific MIB files, inclusing CISCO-VSI-MASTER-MIB.


Vendor: Cisco
Mib: CISCO-VSI-MASTER-MIB  [download]  [view objects]
Tool: ActiveXperts Network Monitor 2019 [download]    (ships with advanced SNMP/MIB tools)
-- *****************************************************************
-- CISCO VSI Master MIB
-- Virtual Switch Interface Master MIB
--
-- September 1999, Steve Elias & Mike Lague
--
-- Copyright (c) 1999, 2000 by cisco Systems, Inc.
-- All rights reserved.
-- *****************************************************************
 
CISCO-VSI-MASTER-MIB DEFINITIONS ::= BEGIN
 
IMPORTS
     MODULE-IDENTITY, OBJECT-TYPE,
     Integer32, Gauge32, Counter32    FROM SNMPv2-SMI
     SnmpAdminString                  FROM SNMP-FRAMEWORK-MIB
     MODULE-COMPLIANCE, OBJECT-GROUP  FROM SNMPv2-CONF
     TEXTUAL-CONVENTION,
     TruthValue                       FROM SNMPv2-TC
     InterfaceIndex                   FROM IF-MIB
     ciscoMgmt                        FROM CISCO-SMI;
 
ciscoVsiMasterMIB     MODULE-IDENTITY
     LAST-UPDATED     "200006010000Z"
     ORGANIZATION     "Cisco Systems, Inc."
     CONTACT-INFO
          "           Cisco Systems
                      Customer Service

           Postal:    170 W Tasman Drive
                      San Jose, CA  95134
                      USA

           Tel:       +1 800 553-NETS

           E-mail:    cs-tagswitching@cisco.com"

     DESCRIPTION
          "This MIB module contains objects related to the master side of the
           the Virtual Switch Interface protocol used for control of ATM
           switches."
     ::=  { ciscoMgmt 162 }   
 
-- *****************************************************************
-- VSI Master Textual Conventions
-- *****************************************************************
 
VsiControllerIndex ::= TEXTUAL-CONVENTION
     STATUS          current
     DESCRIPTION
          "This textual convention defines the controller index for each
           Virtual Switch Interface (VSI) controller in the domain of the 
           VSI Master.  The value is an internally generated unique number 
           with local significance only.  It must remain constant after 
           the VSI Master sub-system is initialized."
     SYNTAX          Integer32 (1..2147483647)
 
VsiSessionIndex ::= TEXTUAL-CONVENTION
     STATUS          current
     DESCRIPTION
          "This textual convention defines a unique value, greater 
           than zero, for each VSI session in the managed system.
           The value should remain constant after a VSI session 
           is reinitialized."
     SYNTAX          Integer32 (1..2147483647)
 
VsiLogicalIfIndex ::= TEXTUAL-CONVENTION
     STATUS          current
     DESCRIPTION
          "This textual convention defines a unique value, greater than 
           zero, for each VSI logical interface controlled by the managed 
           system.  A logical interface index is an abstract number that 
           is generated  and provided by a Slave, and represents a virtual 
           interface.  It is used by the Master, when communicating
           with the Slave, to gain access to interface data, including
           ifIndex.  This is not a selector index for ifType, ifName, 
           ifOperState, and ifAdminState, etc."
     SYNTAX          Integer32 (1..2147483647)

VsiXCIndex ::= TEXTUAL-CONVENTION
     STATUS          current
     DESCRIPTION
          "This textual convention defines a unique value, greater 
           than zero, for each cross connect on a managed system 
           controlled by VSI.  The value should remain constant 
           after a crossconnect is initialized, for the duration 
           of the life of the cross connect."
     SYNTAX          Integer32 (1..2147483647)
 
-- *****************************************************************
--   Top-level structure of the MIB
-- *****************************************************************
 
ciscoVsiMasterObjects       OBJECT IDENTIFIER ::= { ciscoVsiMasterMIB 1 }
ciscoVsiMasterNotifications OBJECT IDENTIFIER ::= { ciscoVsiMasterMIB 2 }
ciscoVsiMasterConformance   OBJECT IDENTIFIER ::= { ciscoVsiMasterMIB 3 }
 
 
-- *****************************************************************
--   VSI Master Controller Objects
-- *****************************************************************
 

vsiMasterControllerTable     OBJECT-TYPE
     SYNTAX          SEQUENCE OF VsiMasterControllerEntry
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "A table containing a set of VSI controllers.  Each controller 
           represents an instance of the VSI Master control protocol.
           A controller communicates with a set of VSI Slaves across 
           a control interface.  Running the VSI protocol, the controller
           supports a network control application.  
           Through VSI, such an application can control the Virtual 
           Circuit cross-connect table inside the ATM switch, 
           perform monitoring and statistics collection of interfaces and 
           virtual circuits on the switch, and discover configuration 
           information from within the switch."
     ::= { ciscoVsiMasterObjects 1 }
 
vsiMasterControllerEntry OBJECT-TYPE
     SYNTAX          VsiMasterControllerEntry
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "An entry containing management information applicable to a
           controller which uses the VSI protocol.  Controller entries 
           represent internally generated control structures.  Therefore 
           each row is created by the agent in response to the learning of
           a controller's instantiation.   Instantiation of a controller
           is performed by the VSI Master protocol implementation under 
           management via this MIB.  These structures, once instantiated, 
           are never deleted.  Each controller manages a set of VSI 
           slaves, via a protocol instance called a Session."

     INDEX { vsiControllerIndex }
     ::= { vsiMasterControllerTable 1 }
 
VsiMasterControllerEntry ::=
   SEQUENCE {
     vsiControllerIndex            VsiControllerIndex,
     vsiControllerId               Integer32,
     vsiCrossConnects              Integer32,
     vsiControllerType             INTEGER,
     vsiBaseVersionSupported       Integer32,
     vsiTopVersionSupported        Integer32,
     vsiVersionInUse               Integer32,
     vsiSpecifiedVersion           Integer32,
     vsiControlInterface           InterfaceIndex,
     vsiLogicalControlInterface    VsiLogicalIfIndex
     }

vsiControllerIndex   OBJECT-TYPE
     SYNTAX          VsiControllerIndex
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "A unique value per VSI controller, greater than 0.  This
           object gets its value from the vsiControllerId, and is used
           for row selection within the vsiMasterControllerTable."
     ::= { vsiMasterControllerEntry 1 }
 
 
vsiControllerId      OBJECT-TYPE
     SYNTAX          Integer32 (0..255)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The controller identifier for the VSI controller.  Values are 
           arbitrarily assigned by the VSI protocol implementation being 
           managed via this MIB, with local significance only.  These
           values appear in the header of all VSI protocol messages."
     ::= { vsiMasterControllerEntry 2 }
 
vsiCrossConnects     OBJECT-TYPE
     SYNTAX          Integer32 (0..2147483647)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "This object contains a value equal to the number of cross-connects
           being controlled via VSI protocol via this controller."
     ::= { vsiMasterControllerEntry 3 }
 
vsiControllerType     OBJECT-TYPE
     SYNTAX           INTEGER {
          other(1),
          mpls(2),   -- Multi Protocol Label Switching
          pnni(3),   -- Private Network to Network Interface
          par(4) }   -- Portable Autoroute
     MAX-ACCESS  read-only
     STATUS     current
     DESCRIPTION
          "A VSI controller represents an instance of a service layer
           accessible to a network control application.  This object serves 
           to identify the type of the network control application currently 
           being supported by this controller.  
           other(1): the type is unspecified.
           mpls(2): indicates that the client is a Label Switch Controller 
                    performing Multi Protocol Label Switching.  
           pnni(3): indicates that the client is an instance of the ATM Private 
                    Network to Network Interface.  
           par(4): indicates that the client is an instance of ATM 
                   Portable Autoroute."
     ::= { vsiMasterControllerEntry 4 }
 
vsiBaseVersionSupported OBJECT-TYPE
     SYNTAX          Integer32 (1..255)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "A VSI Master protocol instance defines internally a set of
           versions of the protocol that it will support.  These versions 
           are numbered, by default, starting from 1.  This object
           makes available the lowest numbered version that the VSI
           Master protocol supports.  This object is related to the other
           vsiMasterControllerEntry objects, vsiTopVersionSupported and 
           vsiVersionInUse."
      ::= { vsiMasterControllerEntry 5 }
 
vsiTopVersionSupported     OBJECT-TYPE
     SYNTAX          Integer32 (1..255)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "A VSI Master protocol instance defines internally a set of
           versions of the protocol that it will support.  These versions 
           are numbered, by default, starting from 1.  This object
           makes available the highest numbered version that the VSI
           Master protocol supports.  This object is related to the other
           vsiMasterControllerEntry objects, vsiBaseVersionSupported and 
           vsiVersionInUse."
     ::= { vsiMasterControllerEntry 6 }
 
vsiVersionInUse      OBJECT-TYPE
     SYNTAX          Integer32 (1..255)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The number of the VSI version currently being used by this 
           controller.  Protocol selection procedures dictate that this 
           should be the highest value of protocol version, between 
           vsiBaseVersionSupported and vsiTopVersionSupported, that is 
           supported by all slaves.  An exception to this rule will 
           occur when the version is constrained to a specific value 
           indicated by the vsiSpecifiedVersion object."          
      ::= { vsiMasterControllerEntry 7 }

vsiSpecifiedVersion  OBJECT-TYPE
     SYNTAX          Integer32 (0..255)
     MAX-ACCESS      read-write
     STATUS          current
     DESCRIPTION
          "When this object is written with a non-zero value, 
	   re-synchronization procedures will be initiated, if necessary,
	   in order to constrain the master and slaves to use the indicated
	   protocol version. When written with zero (0), the master and
	   slaves should use the version dictated by the usual protocol 
	   version selection procedures; resynchronization procedures will be
	   invoked, if necessary, to achieve this result."        
      ::= { vsiMasterControllerEntry 8 }

vsiControlInterface  OBJECT-TYPE
     SYNTAX          InterfaceIndex
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "A VSI controller communicates with a set of VSI Slaves 
           across a control interface.  The controller is connected to
           the ATM switch via an ATM link called the Slave Control Link.
           The interface at the Master end of the link is the Master 
           Control Port, and is described by this object; it is the 
           ifIndex of this Master Control Port."
      ::= { vsiMasterControllerEntry 9 }
 
vsiLogicalControlInterface     OBJECT-TYPE
     SYNTAX          VsiLogicalIfIndex
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "This object describes the instance of a logical interface index 
           bound to the slave end of the Slave Control Link, which is
           referred to in the description of vsiControlInterface."
     ::= { vsiMasterControllerEntry 10 }
 
-- *****************************************************************
--   VSI Master Session Objects
-- *****************************************************************
 
vsiSessionTable      OBJECT-TYPE
     SYNTAX          SEQUENCE OF VsiSessionEntry
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "A table containing VSI master-slave session status information.
           Each VSI controller manages a set of VSI slaves, via a protocol 
           instance called a Session.  VSI slaves are entities that reside
           on the controlled ATM switch.  Their number and characteristics
           are discovered by the VSI controller via the VSI protocol.  This
           table has an entry for each slave so discovered."
     ::= { ciscoVsiMasterObjects 2 }
 
vsiSessionEntry      OBJECT-TYPE
     SYNTAX          VsiSessionEntry
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "A vsiSessionEntry is a set of objects that together represent the 
           status of each instance of VSI protocol and the slave in an ATM
           switch to which that instance corresponds.  There is one vsiSession 
           for each slave.  The number of slaves is discovered via the VSI 
           protocol.  Each slave is responsible for a subset of the total number 
           of external interfaces on the ATM switch.   Session entries refer back
           to their respective controllers via vsiSessionControllerIndex, and
           are in turn referred to by vsiLogicalIfSessionIndex in the
           VsiLogicalIfEntry.  These entries are never deleted."
     INDEX          { vsiSessionControllerIndex, vsiSessionIndex }
     ::= { vsiSessionTable 1 }
 
VsiSessionEntry ::=
     SEQUENCE {
      vsiSessionControllerIndex VsiControllerIndex,
      vsiSessionIndex          VsiSessionIndex,
      vsiSessionVpi            Integer32,
      vsiSessionVci            Integer32,
      vsiSessionSwitchId       Integer32,
      vsiSessionSwitchName     SnmpAdminString,
      vsiSessionSlaveId        Integer32,
      vsiSessionState          INTEGER,
      vsiSessionWindowSize     Integer32,
      vsiSessionCmdsPending    Gauge32,
      vsiSessionActiveId       Integer32,
      vsiSessionPowerupId      Integer32
      }
 
vsiSessionControllerIndex     OBJECT-TYPE
     SYNTAX          VsiControllerIndex
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "The ID of the controller which controls this master-slave session.
           This identifies which vsiMasterControllerEntry represents the
           controller communicating with a slave through this Session."
     ::= { vsiSessionEntry 1 }
 
vsiSessionIndex      OBJECT-TYPE
     SYNTAX          VsiSessionIndex
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "A VSI controller discovers a set of slaves through VSI
           protocol.  Each of the discovered slaves is bound to a
           protocol Session and each of these Sessions occupies a
           row in the vsiSessionTable.  This object is the row selector.
           The value should remain constant after a VSI session is 
           reinitialized."
      ::= { vsiSessionEntry 2 }
 
vsiSessionVpi        OBJECT-TYPE
     SYNTAX          Integer32 (0..4095)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The virtual path identifier for this VSI master-slave session.
           The Slave Control Link, referred to in the description of
           vsiLogicalControlInterface, supports an ATM control VC.  This
           is the vpi for that link."
     ::= { vsiSessionEntry 3 }
 
vsiSessionVci        OBJECT-TYPE
     SYNTAX          Integer32 (0..65535)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The virtual channel identifier for this VSI master-slave session.
           The Slave Control Link, referred to in the description of
           vsiLogicalControlInterface, supports an ATM control VC.  This
           is the vci for that link."
     ::= { vsiSessionEntry 4 }
 
vsiSessionSwitchId   OBJECT-TYPE
     SYNTAX          Integer32 (0..255)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The identifier of the switch which participates in this VSI 
           master-slave session.  The switch terminates the virtual
           circuit identified by the vpi/vci pair referred to by 
           vsiSessionVpi and vsiSessionVci."
     ::= { vsiSessionEntry 5 }
 
vsiSessionSwitchName OBJECT-TYPE
     SYNTAX          SnmpAdminString
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The IP hostname for the slave switch which is controlled by 
           this session.  This is an ascii string of maximum 
           length 64 characters, learned from the ATM switch."
     ::= { vsiSessionEntry 6 }
 
vsiSessionSlaveId    OBJECT-TYPE
     SYNTAX          Integer32 (0..255)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The identifier of the slave for this VSI master-slave session.
           This value is learned from the slave on the switch."
      ::= { vsiSessionEntry 7 }

vsiSessionState      OBJECT-TYPE
     SYNTAX          INTEGER {
                       inactive(1),
                       unknown(2),
                       configuring(3),
                       resyncStarting(4),
                       resyncUnderway(5),
                       resyncEnding(6),
                       discovery(7),
                       established(8),
                       shutdownStarting(9)
                      }
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The state of the VSI session.
           inactive(1): communications data structures for communicating
           with the slave have been created, but the VSI protocol has 
           not been started.
           unknown(2): slave has been queried, but its configuration data
           has not yet been recieved.
           configuring(3): configuration data has been sent to the slave,
           but a response has not yet been received.
           resyncStarting(4): a re-sync command has been sent to the slave,
           but a response has not yet been recieved.
           resyncUnderway(5): a re-sync command response has been received
           from the slave, but the network applications have not yet
           completed reasserting connections.
           resyncEnding(6): a command has been sent to end re-sync, but a
           response has not yet been received.
           discovery(7): a query has been sent to the slave for interface
           information, but a response has not yet been received.
           established(8): discovery has completed.
           shutdownStarting(9): the master has started an orderly shutdown
           of the slave."
     ::= { vsiSessionEntry 8 }
 
vsiSessionWindowSize     OBJECT-TYPE
     SYNTAX          Integer32 (0..65535)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The maximum number of command messages the VSI master will send 
           before requiring a response from slave.  If the value is 0,
           then flow control is not enabled."
     ::= { vsiSessionEntry 9 }
 
vsiSessionCmdsPending    OBJECT-TYPE
     SYNTAX          Gauge32 (0..65535)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The number of unacknowledged command messages.  The VSI master
           sends commands to the slave, without receiving acknowledgement, 
           until the window size threshold has been reached.
           This object is a count of the number of commands that have been
           sent and that are awaiting acknowledgment."
     ::= { vsiSessionEntry 10 }
 
vsiSessionActiveId   OBJECT-TYPE
     SYNTAX          Integer32 (0..2147483647)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "ID supplied by the slave to identify the session.  This value is
           interpreted by the master, when a change occurs, to indicate that 
           a resync should be inititated."
     ::= { vsiSessionEntry 11 }
 
vsiSessionPowerupId  OBJECT-TYPE
     SYNTAX          Integer32 (0..2147483647)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "ID supplied by the slave to identify the session at powerup.
           This is the initial value for vsiSessionActiveId, and its default 
           is zero.  Changes in vsiSessionActiveId signal a resync."
     ::= { vsiSessionEntry 12 }
 
-- *****************************************************************
--   VSI Master Logical Interface Objects
-- *****************************************************************
 
vsiLogicalIfTable    OBJECT-TYPE
     SYNTAX          SEQUENCE OF VsiLogicalIfEntry
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "A table containing information about logical interfaces
           on the slave switch controlled via VSI.  Logical interfaces
           are an abstraction of exposed, external ATM interfaces that
           are available for connections.  When two external interfaces,
           represented by two logical interfaces, are paired, they provide 
           physical paths through the switch.  These physical pathways
           support cross-connects."
     ::= { ciscoVsiMasterObjects 3 }
 
vsiLogicalIfEntry    OBJECT-TYPE
     SYNTAX          VsiLogicalIfEntry
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "An entry containing information about a single VSI
           logical interface.  Entries are instantiated and removed
           as signalled by the slave which controls the external 
           interface.  Each entry contains information about the
           capacity of cross-connects the interface can bear, cell
           rate, merge capability, vpi/vci ranges, and statistics.
           Pairs of logical interfaces support potential cross-connects
           that, when actualized, are represented by the vsiXCEntrys 
           in the vsiXCTable.
           Logical interfaces are controlled by a designated slave,
           as determined by the switch.  The slave is in the 
           domain of the controller whose identity is given
           by vsiLogicalIfControllerIndex.  This object is an opaque 
           identifier, provided by the slave, and used as a key to 
           identify the entry."
     INDEX { vsiLogicalIfControllerIndex, vsiLogicalIfIndex }
     ::= { vsiLogicalIfTable 1 }
 
VsiLogicalIfEntry ::=
     SEQUENCE {
      vsiLogicalIfControllerIndex      VsiControllerIndex,
      vsiLogicalIfIndex                VsiLogicalIfIndex,
      vsiLogicalIfName                 SnmpAdminString,
      vsiLogicalIfOperState            INTEGER,
      vsiLogicalIfAdminState           INTEGER,
      vsiLogicalIfRxCells              Counter32,
      vsiLogicalIfTxCells              Counter32,
      vsiLogicalIfRxCellsDiscarded     Counter32,
      vsiLogicalIfTxCellsDiscarded     Counter32,
      vsiLogicalIfRxHeaderErrors       Counter32,
      vsiLogicalIfRxInvalidAddrs       Counter32,
      vsiLogicalIfEndPointsInUse       Gauge32,
      vsiLogicalIfAvailIngressChnls    Gauge32,
      vsiLogicalIfAvailEgressChnls     Gauge32,
      vsiLogicalIfAvailIngressCellRate Gauge32,
      vsiLogicalIfAvailEgressCellRate  Gauge32,
      vsiLogicalIfMaxIngressCellRate   Integer32,
      vsiLogicalIfMaxEgressCellRate    Integer32,
      vsiLogicalIfVcMergeSupported     TruthValue,
      vsiLogicalIfMulticastSupported   TruthValue,
      vsiLogicalIfVpiTranslated        TruthValue,
      vsiLogicalIfStrictSigRange       TruthValue,
      vsiLogicalIfMinVpi               INTEGER,
      vsiLogicalIfMaxVpi               INTEGER,
      vsiLogicalIfMinVci               INTEGER,
      vsiLogicalIfMaxVci               INTEGER,
      vsiLogicalControlIfIndex         InterfaceIndex,
      vsiLogicalIfSessionIndex         VsiSessionIndex
      }
 
vsiLogicalIfControllerIndex    OBJECT-TYPE
     SYNTAX          VsiControllerIndex
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "The VSI controller index of the controller through which
           this logical interface was learned."
        ::= { vsiLogicalIfEntry 1 }
 
vsiLogicalIfIndex    OBJECT-TYPE
     SYNTAX          VsiLogicalIfIndex
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "A unique value, greater than zero, for each VSI logical 
           interface.  Logical interface numbers are selected by the
           switch to be unique and persistent.  The same number is
           preserved through power failures.  This index is not the same
           as an ifIndex.  It is an abstract number provided by the slave, 
           representing a virtual interface, which is an identifier to be used 
           when communicating with the slave about an interface."
      ::= { vsiLogicalIfEntry 2 }
 
vsiLogicalIfName     OBJECT-TYPE
     SYNTAX          SnmpAdminString
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The physical descriptor of the logical interface, as
           reported by the VSI slave.  It is distinct from ifName."
     ::= { vsiLogicalIfEntry 3 }
 
vsiLogicalIfOperState    OBJECT-TYPE
     SYNTAX          INTEGER {
                       removed(1),
                       active(2),
                       failedExternal(3),
                       failedInternal(4)
                     }
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The VSI operational state of the logical interface as
           reported to the VSI master by the VSI slave.
           removed(1): the interface is not a valid interface for this controller.
           active(2): the interface is active and ready for use.
           failedExternal(3): external failure, such as a line alarm, detected.
           failedInternal(4): local hardware has detected a failure, making the
           interface unusable."
     ::= { vsiLogicalIfEntry 4 }
 
vsiLogicalIfAdminState     OBJECT-TYPE
     SYNTAX          INTEGER { 
                       down(1), 
                       up(2), 
                       pendingDown(3) }
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The current administrative (configured) state of the
           interface, as reported to the VSI master by the VSI slave.
           down(1): the interface is not a valid interface for the controller.
           up(2): the interface is configured for use by the controller.
           pendingDown(3): the interface is being removed from service, and
           the controller is requested to remove all connections."
      ::= { vsiLogicalIfEntry 5 }
 
vsiLogicalIfRxCells  OBJECT-TYPE
     SYNTAX          Counter32
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The number of cells received via this logical interface
           as reported to the VSI master by the VSI slave."
     ::= { vsiLogicalIfEntry 6 }

vsiLogicalIfTxCells  OBJECT-TYPE
     SYNTAX          Counter32
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The number of cells transmitted via this logical
           interface as reported to the VSI master by the VSI slave."
     ::= { vsiLogicalIfEntry 7 }

vsiLogicalIfRxCellsDiscarded     OBJECT-TYPE
     SYNTAX          Counter32
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The number of received cells discarded by this logical
           interface as reported to the VSI master by the VSI slave."
     ::= { vsiLogicalIfEntry 8 }
 
vsiLogicalIfTxCellsDiscarded     OBJECT-TYPE
     SYNTAX          Counter32
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The number of transmitted cells discarded by this logical
           interface as reported to the VSI master by the VSI slave."
     ::= { vsiLogicalIfEntry 9 }
 
vsiLogicalIfRxHeaderErrors     OBJECT-TYPE
     SYNTAX          Counter32
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The number of cells received via this logical
           interface which had header errors, as reported to 
           the VSI master by the VSI slave."
     ::= { vsiLogicalIfEntry 10 }
 
vsiLogicalIfRxInvalidAddrs     OBJECT-TYPE
     SYNTAX          Counter32
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
           "The number of cells received by this logical
            interface which had invalid addresses, as
            reported to the VSI master by the VSI slave.
            An unknown vpi/vci value set is an example of
            of an invalid address."
      ::= { vsiLogicalIfEntry 11 }
 
vsiLogicalIfEndPointsInUse     OBJECT-TYPE
     SYNTAX          Gauge32
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The number of end points in use on this logical 
           interface, as reported to the VSI master by the 
           VSI slave.  If this logical interface has not been
           removed, but does not currently support any cross
           connects, this object will be reported as zero (0)."
     ::= { vsiLogicalIfEntry 12 }
 
vsiLogicalIfAvailIngressChnls     OBJECT-TYPE
     SYNTAX          Gauge32
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The number of ingress channels available for this
           logical interface, as reported to the VSI master
           by the VSI slave."
     ::= { vsiLogicalIfEntry 13 }
 
vsiLogicalIfAvailEgressChnls     OBJECT-TYPE
     SYNTAX          Gauge32
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The number of egress channels available for this
           logical interface, as reported to the VSI master
           by the VSI slave."
     ::= { vsiLogicalIfEntry 14 }
 
vsiLogicalIfAvailIngressCellRate OBJECT-TYPE
     SYNTAX          Gauge32
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The available ingress cell rate in cells/second
           for the logical interface, as reported to the VSI
           master by the VSI slave."
     ::= { vsiLogicalIfEntry 15 }
 
vsiLogicalIfAvailEgressCellRate     OBJECT-TYPE
     SYNTAX          Gauge32
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The available egress cell rate in cells/second
           for the logical interface, as reported to the VSI
           master by the VSI slave."
     ::= { vsiLogicalIfEntry 16 }
 
vsiLogicalIfVcMergeSupported     OBJECT-TYPE
     SYNTAX          TruthValue
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "If this object has the value true(1) then VC merge
           capability is supported for this logical interface.
           Otherwise VC merge capability is not supported on
           this logical interface."
     ::= { vsiLogicalIfEntry 17 }
 
vsiLogicalIfMulticastSupported   OBJECT-TYPE
     SYNTAX          TruthValue
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "If this object has the value true(1) then multicast
           capability is supported for this logical interface.
           Otherwise multicast capability is not supported on
           this logical interface."
     ::= { vsiLogicalIfEntry 18 }
 
vsiLogicalIfVpiTranslated        OBJECT-TYPE
     SYNTAX          TruthValue
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "If this object has the value true(1) then vpi values
           entering on this logical interface are translated at
           the other end of the link.  This translation may be
           an indication that the link is supporting a tunnel.
           Otherwise, vpi values are not translated for traversal
           of the link."
      ::= { vsiLogicalIfEntry 19 }
 
vsiLogicalIfStrictSigRange       OBJECT-TYPE
     SYNTAX          TruthValue
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "If this object has the value true(1) then signalling 
           addresses must be in the strict advertised range for 
           the high-address (vpi).  Otherwise, signalling addresses
           are not so constrained."
     ::= { vsiLogicalIfEntry 20 }
 
vsiLogicalIfMaxIngressCellRate   OBJECT-TYPE
     SYNTAX          Integer32 (0..2147483647)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The maximum ingress cell rate in cells/second for the 
           logical interface, as reported to the VSI.  This value is
           the limiting value for vsiLogicalIfAvailIngressCellRate."
     ::= { vsiLogicalIfEntry 21 }
 
vsiLogicalIfMaxEgressCellRate     OBJECT-TYPE
     SYNTAX          Integer32 (0..2147483647)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The maximum egress cell rate in cells/second
           for the logical interface, as reported to the VSI
           master by the VSI slave."
     ::= { vsiLogicalIfEntry 22 }
 
vsiLogicalIfMinVpi   OBJECT-TYPE
     SYNTAX          INTEGER (0..4095)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "Minimum allowed vpi value for this interface
           as reported by VSI slave switch."
     ::= { vsiLogicalIfEntry 23 }
 
vsiLogicalIfMaxVpi   OBJECT-TYPE
     SYNTAX          INTEGER(0..4095)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "Maximum allowed vpi value for this interface
           as reported by VSI slave switch."
     ::= { vsiLogicalIfEntry 24 }
 
vsiLogicalIfMinVci   OBJECT-TYPE
     SYNTAX          INTEGER(0..65535)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "Minimum allowed vci value for this interface
           as reported by VSI slave switch."
      ::= { vsiLogicalIfEntry 25 }
 
vsiLogicalIfMaxVci   OBJECT-TYPE
     SYNTAX          INTEGER(0..65535)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "Maximum allowed vci value for this interface
           as reported by VSI slave switch."
     ::= { vsiLogicalIfEntry 26 }
 
vsiLogicalControlIfIndex  OBJECT-TYPE
     SYNTAX          InterfaceIndex
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The interface index for the interface which
           controls this logical interface.  This is the 
           ifIndex of the controlling xtagatm interface, and
           is a direct manifestation of the mapping between
           a logical interface and the real ifIndex."
      ::= { vsiLogicalIfEntry 27 }
 
vsiLogicalIfSessionIndex OBJECT-TYPE
     SYNTAX          VsiSessionIndex
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "All logical interfaces are in the domain of a VSI slave,
           which communicates with the VSI master through a Session.
           This object is a selector for an entry in the table
           vsiSessionTable.  It is the VSI session index for the VSI 
           session which controls this logical interface."
     ::= { vsiLogicalIfEntry 28 }
 
 -- *****************************************************************
 --   VSI Master Cross-connect Objects
 -- *****************************************************************
 
vsiXCTable           OBJECT-TYPE
     SYNTAX          SEQUENCE OF VsiXCEntry
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "A table containing information about crossconnects
           on the slave switch controlled via VSI.  Cross connects
           represent virtual links across two interfaces.  The
           participating interfaces that support these links are 
           represented in this MIB by the vsiLogicalIfTable entries."
     ::= { ciscoVsiMasterObjects 4 }
 
vsiXCEntry           OBJECT-TYPE
     SYNTAX          VsiXCEntry
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "An entry containing information about one unidirectional 
           or bidirectional crossconnect on the slave switch 
           controlled via VSI.  A VSI controller represents an instance 
           of a service layer accessible to a network control application. 
           The application creates virtual links via service requests to
           the controller, which in turn sends commands to the VSI slave,
           indicating the participating logical interfaces.  Conversely,
           links are taken down by a reverse process.  Virtual link
           creation and deletion come about as a result of routing
           decisions."
     INDEX { vsiXCControllerIndex,
          vsiXCLogicalIfLow,
          vsiXCLogicalIfHi,
          vsiXCIndex }
     ::= { vsiXCTable 1 }
 
VsiXCEntry     ::=
     SEQUENCE {
          vsiXCControllerIndex    VsiControllerIndex,
          vsiXCLogicalIfLow       VsiLogicalIfIndex,
          vsiXCLogicalIfHi        VsiLogicalIfIndex,
          vsiXCIndex              VsiXCIndex,
          vsiXCState              INTEGER,
          vsiXCVpiLow             Integer32,
          vsiXCVciLow             Integer32,
          vsiXCVpiHi              Integer32,
          vsiXCVciHi              Integer32
          }
 
vsiXCControllerIndex    OBJECT-TYPE
     SYNTAX          VsiControllerIndex
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "The  index of the VSI controller through which this
           crossconnect was instantiated.  This object is the index for 
           a vsiControllerTable entry;  the controller indexed is
           the VSI protocol partner to the slave that is controlling
           the logical interfaces on which this cross connect is
           supported."
      ::= { vsiXCEntry 1 }
 
vsiXCLogicalIfLow    OBJECT-TYPE
     SYNTAX          VsiLogicalIfIndex
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "The VSI logical interface index for the first endpoint
           of the cross-connect.  This object is the selector index
           for one of the two vsiLogicalIfTable entries that support this
           cross connect.  Further, this index value is constrained 
           to be 'numerically lower than' the index value of the other 
           vsiLogicalIfTable entry, indexed by vsiXCLogicalIfHi,
           supporting this cross connect."
     ::= { vsiXCEntry 2 }
 
vsiXCLogicalIfHi     OBJECT-TYPE
     SYNTAX          VsiLogicalIfIndex
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "The VSI logical interface index for the second endpoint
           of the cross-connect.  This object is the selector index
           for one of the two vsiLogicalIfTable entries that support this
           cross connect.  Further, this index value is constrained 
           to be 'numerically higher than' the index value of the other 
           vsiLogicalIfTable entry, indexed by vsiXCLogicalIfLow,
           supporting this cross connect."
     ::= { vsiXCEntry 3 }
 
vsiXCIndex           OBJECT-TYPE
     SYNTAX          VsiXCIndex
     MAX-ACCESS      not-accessible
     STATUS          current
     DESCRIPTION
          "A unique value greater than zero, for each crossconnect
           within the set of VsiXCTable entries indexed by
           vsiXCLogicalIfLow and vsiXCLogicalIfHi.
           The value should remain constant after a crossconnect
           is initialized.  These values are assigned in sequence
           by the management agent, starting from one (1)."
     ::= { vsiXCEntry 4 }

vsiXCState          OBJECT-TYPE
     SYNTAX         INTEGER {
                       deleted(1),
                       reserved(2),
                       committed(3),
                       reservedFail(4)
                    }
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The operational state of the cross connect, as reported
           to the VSI master by the VSI slave.  
           deleted(1): the connection does not exist.
           reserved(2): connection is in the reserved state.
           committed(3): connection is in the committed state.
           reservedFail(4): connection is reserved but has an internal failure."
      ::= { vsiXCEntry 5 }
 
vsiXCVpiLow          OBJECT-TYPE
     SYNTAX          Integer32 (0..4095)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The vpi of that endpoint of the cross-connect which
           terminates on the logical interface whose index is
           given by vsiXCLogicalIfLow."
     ::= { vsiXCEntry 6 }
 
vsiXCVciLow          OBJECT-TYPE
     SYNTAX          Integer32(0..65535)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The vci of that endpoint of the cross-connect which
           terminates on the logical interface whose index is
           given by vsiXCLogicalIfLow."
     ::= { vsiXCEntry 7 }
 
vsiXCVpiHi           OBJECT-TYPE
     SYNTAX          Integer32(0..4095)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The vpi of that endpoint of the cross-connect which
           terminates on the logical interface whose index is
           given by vsiXCLogicalIfHi."
     ::= { vsiXCEntry 8 }
 
vsiXCVciHi           OBJECT-TYPE
     SYNTAX          Integer32(0..65535)
     MAX-ACCESS      read-only
     STATUS          current
     DESCRIPTION
          "The vci of that endpoint of the cross-connect which
           terminates on the logical interface whose index is
           given by vsiXCLogicalIfHi."
     ::= { vsiXCEntry 9 }

--********************************************************************
-- Module Conformance Statement
--********************************************************************
 
ciscoVsiMasterGroups      OBJECT IDENTIFIER ::= { ciscoVsiMasterConformance 1 }
ciscoVsiMasterCompliances OBJECT IDENTIFIER ::= { ciscoVsiMasterConformance 2 }
 
--
-- Compliance Statements
--

    ciscoVsiMasterModuleCompliance MODULE-COMPLIANCE
          STATUS current
          DESCRIPTION
              "The basic implentation requirements for agents that support
               this VSI Master MIB."
          MODULE -- this module
              MANDATORY-GROUPS    { ciscoVsiMasterGeneralGroup }

          OBJECT     vsiSpecifiedVersion
          MIN-ACCESS read-only
          DESCRIPTION
             "Write access is not required."

          ::= { ciscoVsiMasterCompliances 1 }

      -- units of conformance
 
      ciscoVsiMasterGeneralGroup OBJECT-GROUP
          OBJECTS {
              vsiControllerId,
              vsiCrossConnects,
              vsiControllerType,
              vsiBaseVersionSupported,
              vsiTopVersionSupported,
              vsiVersionInUse,
              vsiSpecifiedVersion,
              vsiControlInterface,
              vsiLogicalControlInterface,
              vsiSessionVpi,
              vsiSessionVci,
              vsiSessionSwitchId,
              vsiSessionSwitchName,
              vsiSessionSlaveId,
              vsiSessionState,
              vsiSessionWindowSize,
              vsiSessionCmdsPending,
              vsiSessionActiveId,
              vsiSessionPowerupId,
              vsiLogicalIfName,
              vsiLogicalIfOperState,
              vsiLogicalIfAdminState,
              vsiLogicalIfRxCells,
              vsiLogicalIfTxCells,
              vsiLogicalIfRxCellsDiscarded,
              vsiLogicalIfTxCellsDiscarded,
              vsiLogicalIfRxHeaderErrors,
              vsiLogicalIfRxInvalidAddrs,
              vsiLogicalIfEndPointsInUse,
              vsiLogicalIfAvailIngressChnls,
              vsiLogicalIfAvailEgressChnls,
              vsiLogicalIfAvailIngressCellRate,
              vsiLogicalIfAvailEgressCellRate,
              vsiLogicalIfMaxIngressCellRate,
              vsiLogicalIfMaxEgressCellRate,
              vsiLogicalIfVcMergeSupported,
              vsiLogicalIfMulticastSupported,
              vsiLogicalIfVpiTranslated,
              vsiLogicalIfStrictSigRange,
              vsiLogicalIfMinVpi,
              vsiLogicalIfMaxVpi,
              vsiLogicalIfMinVci,
              vsiLogicalIfMaxVci,
              vsiLogicalControlIfIndex,
              vsiLogicalIfSessionIndex,
              vsiXCState,
              vsiXCVpiLow,
              vsiXCVciLow,
              vsiXCVpiHi,
              vsiXCVciHi
          }
          STATUS    current
          DESCRIPTION
              "Objects that apply to all VSI Master implementations."
          ::= { ciscoVsiMasterGroups 1 }
 
END