-- *****************************************************************
-- CISCO-SDLLC-MIB.my Cisco SDLLC MIB
--
-- April 1995, Bob Clouston
--
-- Copyright (c) 1995-1998 by cisco Systems, Inc.
-- All rights reserved.
-- *****************************************************************
--

CISCO-SDLLC-MIB DEFINITIONS ::= BEGIN

-- 
-- Definitions

IMPORTS
	MODULE-IDENTITY, OBJECT-TYPE, Integer32, NOTIFICATION-TYPE 
		FROM SNMPv2-SMI
	MODULE-COMPLIANCE, OBJECT-GROUP
		FROM SNMPv2-CONF
	TruthValue, MacAddress
		FROM SNMPv2-TC
	ciscoMgmt
		FROM CISCO-SMI
	ifIndex
		FROM IF-MIB;

ciscoSnaSdllcMIB  MODULE-IDENTITY 
	LAST-UPDATED	"9812170000Z"
	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-snmp@cisco.com"
	DESCRIPTION
		"This is the MIB module for objects used to manage SDLLC.

   Overview of SDLLC conversion MIB
   
  
   MIB description                        
   The SDLLC MIB includes read-only configuration and operational
   information on Cisco's implementation of SDLC to LLC2 media
   translation.  The following example shows the entities managed
   by the SDLLC MIB.
  
  
    FEP/ ==  Token == CISCO A == WAN/RSRB == CISCO B == Serial == SDLC  
    Host     Ring                                       line      station
  
     |=============== LLC2 session ============|=== SDLC session ====|
     
     In this example configuration, CISCO B is performing the SDLLC 
     conversion, and so we query CISCO B for this MIB.
     The SDLC device believes it is talking to the host via a direct
     SDLC session.  The host believes it is talking to the SDLC station on 
     the same token ring.  CISCO A is also unaware of the SDLLC conversion
     going on at CISCO B; it just believes it has an RSRB session with 
     its peer CISCO B to bridge two token ring separated by a WAN.
     So CISCO B is the only agent that can provide the SDLLC conversion
     details.  We can combine this MIB with the CISCO-RSRB-MIB from
     either CISCO A or CISCO B to get a better picture of the network.
     
     This MIB has two tables:  
     
     convSdllcPortTable has an entry for each serial interface for 
     general SDLLC information on an interface, such as administered 
     virtual MAC addresses and virtual ring and bridge numbers.
     This table is indexed by ifIndex.
     
     convSdllcAddrTable has an entry for each serial interface and
     SDLC address pair.  It contains information specific to an SDLC
     address on an interface, such as the partner MAC address, 
     XID value, and address state.  This table is indexed by ifIndex
     and convSdllcAddrSdlcAddr (the address of the SDLC station).
 
     The above configuration would have a single entry in each table.
     If CISCO B had two serial lines configured for sdllc conversion, 
     there would be two entries per table.  If there
     were only one serial line, but it was multipoint and
     supported two sdlc addresses on the other end of the 
     line, there would be a single entry in convSdllcPortTable, and
     two entries in convSdllcAddrTable.
     
     The MIB provides the following information for convSdllcPortTable:
     
     convSdllcPortVirtMacAddr - The locally administered MAC addressed
       assigned to the serial interface.  Note that this address must
       always end in '00'.  CISCO B replaces the 00 with the sdlc
       address of the serial device.  For a multipoint configuration
       with two SDLC stations the llc2 side will 'see' two token ring 
       stations with unique MAC addresses on the sdlc side.
     convSdllcPortVirtRing - The locally administered token ring number
       assigned to the serial interface.  This gives the serial interface
       a token ring appearance to the llc2 side of the conversion, so
       that it appears that it is a token ring on the other side of
       a bridge.
     convSdllcPortBridge - The bridge number assigned to CISCO B 
     convSdllcPortLlc2Ring - The token ring number on the LLC2 session
       side.  In this case it is the RSRB virtual ring group number
       between CISCO A and CISCO B.  
     convSdllcPortLocalAck - indicates whether local acknowledgement
       of SDLLC sessions is active.        
     convSdllcPortLocalAckState - indicates the state of
      the local acknowledgement session.   
     convSdllcPortMaxLlc2FrameSize - the largest I-frame size that
       can be sent or received on the LLC2 session.
 
     The MIB provides the following information for convSdllcAddrTable:
     convSdllcAddrSdlcAddr - The address of the SDLC station.
     convSdllcAddrPartnerMacAddr - The MAC address of the FEP, as
       specified with the sdllc partner command.
     convSdllcAddrXID - The IDBLK and IDNUM of the SDLC station;
       these must match the VTAM configured values
     convSdllcAddrState - indicates the state of the SDLLC conversion
     convSdllcAddrMaxSdlcFrameSize - the largest I-frame size that
       can be sent or received on the SDLC session.
                            "
	REVISION        "9508210000Z"
	DESCRIPTION
		"Minor cleanups to pacify mib compiler."
        REVISION        "9812170000Z"
        DESCRIPTION
                "Removed the old description, rewrite to match the MIB 
                structure."
	::= { ciscoMgmt 28 }

convSdllcObjects    OBJECT IDENTIFIER ::= { ciscoSnaSdllcMIB 1 }
convSdllcPorts OBJECT IDENTIFIER ::= { convSdllcObjects 1 }
convSdllcAddrs OBJECT IDENTIFIER ::= { convSdllcObjects 2 }

-- *************************************************************************
-- * Serial Interface table          
-- *************************************************************************

convSdllcPortTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF ConvSdllcPortEntry
    MAX-ACCESS not-accessible
    STATUS     current 
    DESCRIPTION
        "Table of interfaces and SDLC addresses configured for SDLLC 
         conversion"
    ::= { convSdllcPorts 1 }

convSdllcPortEntry OBJECT-TYPE
    SYNTAX     ConvSdllcPortEntry
    MAX-ACCESS not-accessible
    STATUS     current 
    DESCRIPTION
        "Status and configuration values for a specific SDLLC conversion
         interface and SDLC address. "
    INDEX { ifIndex }
    ::= { convSdllcPortTable 1 }

ConvSdllcPortEntry ::=
    SEQUENCE {
        convSdllcPortVirtMacAddr      MacAddress,
        convSdllcPortVirtRing         Integer32,
        convSdllcPortBridge           Integer32,
        convSdllcPortLlc2Ring         Integer32,
        convSdllcPortLocalAck         TruthValue,
        convSdllcPortLocalAckState    INTEGER,
        convSdllcPortMaxLlc2FrameSize Integer32 
     }

convSdllcPortVirtMacAddr  OBJECT-TYPE       
    SYNTAX     MacAddress
    MAX-ACCESS read-only
    STATUS     current 
    DESCRIPTION
     "The local administered virtual MAC address for the device on
      the serial interface."
    ::= { convSdllcPortEntry 1 }

convSdllcPortVirtRing  OBJECT-TYPE       
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current 
    DESCRIPTION
      "The virtual ring number assigned to the serial interface."
    ::= { convSdllcPortEntry 2 }

convSdllcPortBridge OBJECT-TYPE    
    SYNTAX     Integer32 
    MAX-ACCESS read-only
    STATUS     current 
    DESCRIPTION
      "The bridge number assigned to SDLLC conversion."
    ::= { convSdllcPortEntry 3 }

convSdllcPortLlc2Ring OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current 
    DESCRIPTION
      "The ring number assigned to the LLC2 side of the SDLLC conversion."
    ::= { convSdllcPortEntry 4 }

    
convSdllcPortLocalAck OBJECT-TYPE
    SYNTAX     TruthValue 
    MAX-ACCESS read-only
    STATUS     current 
    DESCRIPTION
      "Indicates if all SDLLC sessions are locally acknowledged.
       
       TRUE-> SDLLC sessions are locally acknowledged
       FALSE-> SDLLC sessions are not locally acknowledged
      "
    ::= { convSdllcPortEntry 5 }

convSdllcPortLocalAckState OBJECT-TYPE
    SYNTAX      INTEGER          
     {
      disconnected   (1),     -- LAK not connected, but peers may be 
      localDiscWait  (2),     -- Waiting for local peer to disconnect  
      remDiscWait    (3),     -- Waiting for remote peer to disconnect  
      remWait        (4),     -- Waiting for peer to open 
      localWait	     (5),     -- Waiting for local LLC2 to open 
      connectPending (6),     -- Synchronize us before final connect  
      connected      (7),     -- Full data transfer possible 
      remQOnWait     (8),     -- Waiting for Quench on acknowledgement 
      remQOffWait    (9),     -- Waiting for Quench off acknowledgement 
      quenched       (10),    -- We're quenched, expect no data 
      unknown        (255)    -- Unknown or not-applicable state
      }          
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
      "State of the local acknowledgment session between two stations."
    ::= { convSdllcPortEntry 6 }

convSdllcPortMaxLlc2FrameSize OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current 
    DESCRIPTION
      "The largest information frame (I-frame) size that can be sent or 
       received on the LLC2 session."
    ::= { convSdllcPortEntry 7 }

-- *************************************************************************
-- * Address table          
-- *************************************************************************

convSdllcAddrTable OBJECT-TYPE
    SYNTAX     SEQUENCE OF ConvSdllcAddrEntry
    MAX-ACCESS not-accessible
    STATUS     current 
    DESCRIPTION
        "Table of SDLC addresses configured for SDLLC 
         conversion on a particular interface."
    ::= { convSdllcAddrs 1 }

convSdllcAddrEntry OBJECT-TYPE
    SYNTAX     ConvSdllcAddrEntry
    MAX-ACCESS not-accessible
    STATUS     current 
    DESCRIPTION
        "Status and configuration values for a specific SDLLC conversion
         SDLC address. "
    INDEX { ifIndex, convSdllcAddrSdlcAddr }
    ::= { convSdllcAddrTable 1 }

ConvSdllcAddrEntry ::=
    SEQUENCE {
        convSdllcAddrSdlcAddr         INTEGER,
        convSdllcAddrPartnerMacAddr   MacAddress,
        convSdllcAddrXID              OCTET STRING,
        convSdllcAddrState            INTEGER,
        convSdllcAddrMaxSdlcFrameSize Integer32
    }
        
convSdllcAddrSdlcAddr OBJECT-TYPE  
    SYNTAX     INTEGER(0..255)
    MAX-ACCESS not-accessible
    STATUS     current 
    DESCRIPTION
      "The address of the SDLC station."
    ::= { convSdllcAddrEntry 1 }


convSdllcAddrPartnerMacAddr OBJECT-TYPE
    SYNTAX     MacAddress
    MAX-ACCESS read-only
    STATUS     current 
    DESCRIPTION
      "The  MAC address of the LLC2 station, for device-initiated SDLLC 
       connections."
    ::= { convSdllcAddrEntry 2 }

convSdllcAddrXID OBJECT-TYPE  
    SYNTAX     OCTET STRING (SIZE (4))
    MAX-ACCESS read-only
    STATUS     current 
    DESCRIPTION
      "The XID value that is associated with the SDLC station.
       This value must match the host configured value."
    ::= { convSdllcAddrEntry 3 }

convSdllcAddrState    OBJECT-TYPE
    SYNTAX     INTEGER
    {
      disconnected       (1),  -- session disconnected 
      sdlcDisconnecting  (2),  -- disconnect pending SDLC side
      sdlcPriConnecting  (3),  -- connect pending SDLC primary side
      netDisconnecting   (4),  -- disconnect pending network side
      netConnecting      (5),  -- connect pending network side
      sdlcSecConnecting  (6),  -- connect pending SDLC secondary side
      connected          (7)   -- session connected
    }
    MAX-ACCESS read-only
    STATUS     current 
    DESCRIPTION
      "Current state of the SDLLC connection."
    ::= { convSdllcAddrEntry 4 }
    
convSdllcAddrMaxSdlcFrameSize OBJECT-TYPE
    SYNTAX     Integer32
    MAX-ACCESS read-only
    STATUS     current 
    DESCRIPTION
      "The largest information frame (I-frame) size that can be sent or 
       received on the SDLC session."
    ::= { convSdllcAddrEntry 5 }
    
-- *************************************************************************
-- * SDLLC Notifications               
-- *************************************************************************

convSdllcNotificationPrefix OBJECT IDENTIFIER ::= { ciscoSnaSdllcMIB 2 }
convSdllcNotifications OBJECT IDENTIFIER ::= { convSdllcNotificationPrefix 0 }

convSdllcPeerStateChangeNotification NOTIFICATION-TYPE
     OBJECTS {convSdllcAddrState }
     STATUS      current
     DESCRIPTION
        "This Notification indicates that the state of an SDLLC connection
         has transitioned to connected or disconnected."
    ::= { convSdllcNotifications 1 }
     
-- *************************************************************************
-- * Conformance Information
-- *************************************************************************
--

sdllcMibConformance   OBJECT IDENTIFIER ::= { ciscoSnaSdllcMIB 3 }
sdllcMibCompliances   OBJECT IDENTIFIER ::= { sdllcMibConformance 1 }
sdllcMibGroups        OBJECT IDENTIFIER ::= { sdllcMibConformance 2 }
--
-- *************************************************************************
-- * Compliance Statements
-- *************************************************************************

sdllcMibCompliance    MODULE-COMPLIANCE
        STATUS current
        DESCRIPTION
                "The compliance statement for sdllc."
        MODULE  -- this module
                MANDATORY-GROUPS {
			convSdllcPortGroup,
			convSdllcAddrGroup
		}
         ::= { sdllcMibCompliances 1 }
         
convSdllcPortGroup OBJECT-GROUP
        OBJECTS {
                convSdllcPortVirtMacAddr,
                convSdllcPortVirtRing,
                convSdllcPortBridge,
                convSdllcPortLlc2Ring,
                convSdllcPortLocalAck,
                convSdllcPortLocalAckState,
                convSdllcPortMaxLlc2FrameSize
        }
        STATUS current
        DESCRIPTION
                "A collection of objects providing configuration and
                 operational information about an SDLLC port."
        ::= { sdllcMibGroups 1}
        
convSdllcAddrGroup OBJECT-GROUP
        OBJECTS {
                convSdllcAddrPartnerMacAddr,
                convSdllcAddrXID,
                convSdllcAddrState,
                convSdllcAddrMaxSdlcFrameSize
        }
        STATUS current
        DESCRIPTION
                "A collection of objects providing configuration and
                 operational information about an SDLC address."
        ::= { sdllcMibGroups 2}

END
