ELTEX-MES-eltInterfaces DEFINITIONS ::= BEGIN

-- Title:      ELTEX MES Switch Interfaces Private
-- Version:    1.4
-- Date:       06 Jun 2022
-- 14-Aug-2012 - Added SFP operation mode
-- 28-Feb-2017 - Added eltSwIfAutoNegotiationBypass
-- 25-Sep-2019 - Added "forced" value for the eltSwIfAutoNegotiationBypass field.
-- 14-Apr-2021 - Added eltSwIfFecAdminMode and eltSwIfFecOperMode
-- 23-Sep-2021 - Added eltSwIfFarEndFault
-- 06-Jun-2022 - Added eltSwIfUnidirectional

IMPORTS
    eltMesSwInterfaces                                      FROM ELTEX-MES
    ifIndex, InterfaceIndex, InterfaceIndexOrZero           FROM IF-MIB
    PortList                                                FROM Q-BRIDGE-MIB
    Unsigned32, Integer32, Counter32,
    MODULE-IDENTITY, OBJECT-TYPE                            FROM SNMPv2-SMI
    Counter                                                 FROM RFC1155-SMI
    RowStatus, TruthValue                                   FROM SNMPv2-TC
    swIfIndex, swIfLockMaxMacAddresses                      FROM RADLAN-rlInterfaces;

eltSwIfTable OBJECT-TYPE
   SYNTAX  SEQUENCE  OF EltSwIfEntry
   MAX-ACCESS   not-accessible
   STATUS       current
   DESCRIPTION
    "Switch media specific information and configuration of the device
     interfaces."
   ::=  { eltMesSwInterfaces 1 }

eltSwIfEntry OBJECT-TYPE
   SYNTAX  EltSwIfEntry
   MAX-ACCESS   not-accessible
   STATUS       current
   DESCRIPTION
    "Defines the contents of each line in the eltSwIfTable table."
   INDEX   { eltSwIfIndex }
   ::=  { eltSwIfTable 1 }

EltSwIfEntry ::= SEQUENCE {
        eltSwIfIndex                            INTEGER,
        eltSwIfSfpOperationMode                 INTEGER,
        eltSwIfAutoNegotiationBypass            INTEGER,
        eltSwIfLockMaxMacAddressesVoiceVlan     INTEGER,
        eltSwIfLockMaxMacAddressesDataVlan      INTEGER,
        eltSwIfLockMacAddressesCountVoiceVlan   INTEGER,
        eltSwIfLockMacAddressesCountDataVlan    INTEGER,
        eltSwIfLockSuspendedVlanId1To1024       OCTET STRING,
        eltSwIfLockSuspendedVlanId1025To2048    OCTET STRING,
        eltSwIfLockSuspendedVlanId2049To3072    OCTET STRING,
        eltSwIfLockSuspendedVlanId3073To4094    OCTET STRING,
        eltSwIfFecAdminMode                     INTEGER,
        eltSwIfFecOperMode                      INTEGER,
        eltSwIfFarEndFault                      INTEGER,
        eltSwIfUnidirectional                   INTEGER
        }

eltSwIfIndex OBJECT-TYPE
    SYNTAX   INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Index to the eltSwIfTable. The interface defined by a
         particular value of this index is the same interface as
         identified by the same value of ifIndex (MIB II)."
    ::= {  eltSwIfEntry 1  }

eltSwIfSfpOperationMode OBJECT-TYPE
    SYNTAX  INTEGER {
        fiber(0),
        directAttach(1),
        copperSfp(2),
        unknown(3)
    }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        " This variable indicates plugged in SFP transceiver operation mode."
    DEFVAL { unknown }
    ::= {  eltSwIfEntry 2  }

eltSwIfAutoNegotiationBypass OBJECT-TYPE
   SYNTAX  INTEGER {
        enabled(1),
        disabled(2),
        forced(3)
   }
   MAX-ACCESS   read-write
   STATUS       current
   DESCRIPTION
       "When enabled the link can be established by bypassing the Auto-Negotiation procedure
        if the link partner doesn't respond to the Auto-Negotiation process."
    ::= {  eltSwIfEntry 3  }
    
eltSwIfLockMaxMacAddressesVoiceVlan OBJECT-TYPE
    SYNTAX  INTEGER (0 .. 2147483647)
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "This variable defines the maximum number of dynamic VoiceVlan addresses that
        can be associated with the locked interface. It isn't relevant in
        disabled limitation mode."
    DEFVAL { 0 }
    ::= {  eltSwIfEntry 4 }
    
eltSwIfLockMaxMacAddressesDataVlan OBJECT-TYPE
    SYNTAX  INTEGER (0 .. 2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This variable defines the maximum number of dynamic DataVlan addresses that
        can be associated with the locked interface. It isn't relevant in
        disabled limitation mode."
    DEFVAL { 0 }
    ::= {  eltSwIfEntry 5 }
    
eltSwIfLockMacAddressesCountVoiceVlan OBJECT-TYPE
    SYNTAX  INTEGER (0 .. 2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This variable indicates the actual number of dynamic VoiceVlan addresses that can
        be associated with the locked interface. It isn't relevant in disabled
        limitation mode."
    ::= {  eltSwIfEntry 6 }
    
eltSwIfLockMacAddressesCountDataVlan OBJECT-TYPE
    SYNTAX  INTEGER (0 .. 2147483647)
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This variable indicates the actual number of dynamic DataVlan addresses that can
        be associated with the locked interface. It isn't relevant in disabled
        limitation mode."
    ::= {  eltSwIfEntry 7 }

eltSwIfLockSuspendedVlanId1To1024 OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..128))
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "This object indicates the VLAN range (1-1024)
        that belongs to the list of VLANs blocked due to
        Port Security violation event."
    ::= { eltSwIfEntry 8 }

eltSwIfLockSuspendedVlanId1025To2048 OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..128))
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "This object indicates the VLAN range (1025-2048)
        that belongs to the list of VLANs blocked due to
        Port Security violation event."
    ::= { eltSwIfEntry 9 }

eltSwIfLockSuspendedVlanId2049To3072 OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..128))
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "This object indicates the VLAN range (2049-3072)
        that belongs to the list of VLANs blocked due to
        Port Security violation event."
    ::= { eltSwIfEntry 10 }

eltSwIfLockSuspendedVlanId3073To4094 OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..128))
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
        "This object indicates the VLAN range (3073-4094)
        that belongs to the list of VLANs blocked due to
        Port Security violation event."
    ::= { eltSwIfEntry 11 }
    
eltSwIfFecAdminMode OBJECT-TYPE
   SYNTAX  INTEGER {
        disabled(0),
        auto(1),
        cl74(2)
   }
   MAX-ACCESS   read-write
   STATUS       current
   DESCRIPTION
       "This variable controls the Forward Error Correction (FEC) mode 
        on the port."
   ::= { eltSwIfEntry 12 }

eltSwIfFecOperMode OBJECT-TYPE
   SYNTAX  INTEGER {
        disabled(0),
        auto(1),
        cl74(2)
   }
   MAX-ACCESS   read-only
   STATUS       current
   DESCRIPTION
       "This variable indicates the actual Forward Error Correction (FEC) mode 
        that currently in use on the port."
   ::= { eltSwIfEntry 13 }

eltSwIfFarEndFault OBJECT-TYPE
   SYNTAX  INTEGER {
        disabled(0),
        enabled(1)
   }
   MAX-ACCESS   read-write
   STATUS       current
   DESCRIPTION
       "This variable controls the Far-End Fault Indication (FEFI) 
        on the port."
    ::= {  eltSwIfEntry 14 }

eltSwIfUnidirectional OBJECT-TYPE
    SYNTAX  INTEGER {
        disable(0),
        send-only(1)
    }
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
        "This variable controls the Unidirectional mode on the port."
    DEFVAL { disable }
    ::= { eltSwIfEntry 15 }

--
-- Ports utilization table mib
--
eltSwIfUtilizationTable OBJECT-TYPE
   SYNTAX  SEQUENCE  OF EltSwIfUtilizationEntry
   MAX-ACCESS   not-accessible
   STATUS       current
   DESCRIPTION
    "Switch ports utilization configuration and information."
   ::=  { eltMesSwInterfaces 2 }

eltSwIfUtilizationEntry OBJECT-TYPE
   SYNTAX  EltSwIfUtilizationEntry
   MAX-ACCESS   not-accessible
   STATUS       current
   DESCRIPTION
    "Defines the contents of each line in the eltSwIfUtilizationTable table."
   INDEX   { eltSwIfUtilizationIfIndex }
   ::=  { eltSwIfUtilizationTable 1 }

EltSwIfUtilizationEntry ::= SEQUENCE {
        eltSwIfUtilizationIfIndex               INTEGER,
        eltSwIfUtilizationAverageTime           INTEGER,
        eltSwIfUtilizationCurrentInPkts         Counter,
        eltSwIfUtilizationCurrentInRate         Counter,
        eltSwIfUtilizationCurrentOutPkts        Counter,
        eltSwIfUtilizationCurrentOutRate        Counter,
        eltSwIfUtilizationAverageInPkts         Counter,
        eltSwIfUtilizationAverageInRate         Counter,
        eltSwIfUtilizationAverageOutPkts        Counter,
        eltSwIfUtilizationAverageOutRate        Counter
        }

eltSwIfUtilizationIfIndex OBJECT-TYPE
   SYNTAX  INTEGER
   MAX-ACCESS  read-only
   STATUS  current
   DESCRIPTION
          "A unique value for each interface.  Its value
          ranges between 1 and the value of ifNumber.  The
          value for each interface must remain constant at
          least from one re-initialization of the entity's
          network management system to the next re-
          initialization."
   ::= { eltSwIfUtilizationEntry 1 }

eltSwIfUtilizationAverageTime OBJECT-TYPE
   SYNTAX  INTEGER
   MAX-ACCESS  read-write
   STATUS  current
   DESCRIPTION
          "An average load time in seconds for which interface
          utilization is calculated."
   ::= { eltSwIfUtilizationEntry 2 }

eltSwIfUtilizationCurrentInPkts OBJECT-TYPE
   SYNTAX  Counter
   MAX-ACCESS  read-only
   STATUS  current
   DESCRIPTION
          "The total number of all (UC, MC and BC) packets
          received on the interface during last 5 seconds."
  ::= { eltSwIfUtilizationEntry 3 }

eltSwIfUtilizationCurrentInRate OBJECT-TYPE
   SYNTAX  Counter
   MAX-ACCESS  read-only
   STATUS  current
   DESCRIPTION
          "The inbound rate in kbit/sec
          on the interface during last 5 seconds."
  ::= { eltSwIfUtilizationEntry 4 }

eltSwIfUtilizationCurrentOutPkts OBJECT-TYPE
   SYNTAX  Counter
   MAX-ACCESS  read-only
   STATUS  current
   DESCRIPTION
          "The total number of all (UC, MC and BC) packets
          sent out of the interface during last 5 seconds."
  ::= { eltSwIfUtilizationEntry 5 }

eltSwIfUtilizationCurrentOutRate OBJECT-TYPE
   SYNTAX  Counter
   MAX-ACCESS  read-only
   STATUS  current
   DESCRIPTION
          "The outbound rate in kbit/sec
          on the interface during last 5 seconds."
  ::= { eltSwIfUtilizationEntry 6 }

eltSwIfUtilizationAverageInPkts OBJECT-TYPE
   SYNTAX  Counter
   MAX-ACCESS  read-only
   STATUS  current
   DESCRIPTION
          "The total number of all (UC, MC and BC) packets
          received on the interface during configured
          load average time for this interface."
  ::= { eltSwIfUtilizationEntry 7 }

eltSwIfUtilizationAverageInRate OBJECT-TYPE
   SYNTAX  Counter
   MAX-ACCESS  read-only
   STATUS  current
   DESCRIPTION
          "The inbound rate in kbit/sec on the interface
          during configured load average time for this interface."
  ::= { eltSwIfUtilizationEntry 8 }

eltSwIfUtilizationAverageOutPkts OBJECT-TYPE
   SYNTAX  Counter
   MAX-ACCESS  read-only
   STATUS  current
   DESCRIPTION
          "The total number of all (UC, MC and BC) packets
          sent out of the interface during configured
          load average time for this interface."
  ::= { eltSwIfUtilizationEntry 9 }

eltSwIfUtilizationAverageOutRate OBJECT-TYPE
   SYNTAX  Counter
   MAX-ACCESS  read-only
   STATUS  current
   DESCRIPTION
          "The outbound rate in kbit/sec on the interface
          during configured load average time for this interface."
  ::= { eltSwIfUtilizationEntry 10 }


eltSwIfLockMaxMacAddressesTrapEnabled OBJECT-TYPE
     SYNTAX          TruthValue
     MAX-ACCESS      read-write
     STATUS          current
     DESCRIPTION
         "Specifies whether eltMnFlappingNotification notifications
          will or will not be sent when the maximum allowed number of 
          MAC addresses on an interface is exceeded.

          Setting this object to false(2) will not send the
          eltSwIfLockMaxMacAddressesTrap.
   
          Setting this object to true(1) will send the 
          eltSwIfLockMaxMacAddressesTrap."
     DEFVAL { false }
     ::= { eltMesSwInterfaces 3 }
     
     
--
-- MES Interfaces TRAP variables
--
eltSwInterfacesTrapVariable  OBJECT IDENTIFIER ::= { eltMesSwInterfaces 5 }

eltSwInterfacesTrapVrblVID OBJECT-TYPE
    SYNTAX INTEGER
    MAX-ACCESS  read-only
    STATUS  current
    DESCRIPTION
       "The VID of VLAN the notifying interface is a member of"
    ::= { eltSwInterfacesTrapVariable 1  }
    
-- -----------------------------------------------------------------------------
-- eltMesSwIfNotify
-- -----------------------------------------------------------------------------

eltMesSwIfNotify      			OBJECT IDENTIFIER ::= { eltMesSwInterfaces 4 }
eltMesSwIfNotifyPrefix			OBJECT IDENTIFIER ::= { eltMesSwIfNotify 0 }

eltSwIfLockMaxMacAddressesTrap	NOTIFICATION-TYPE 
	OBJECTS     {swIfIndex,  swIfLockMaxMacAddresses, eltSwInterfacesTrapVrblVID}
    STATUS      current
    DESCRIPTION
        "When the maximum allowed number of MAC addresses 
         on an interface is exceeded."
    ::= { eltMesSwIfNotifyPrefix 0 }



END

