NETI-ETH-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Unsigned32, Integer32, Gauge32, 
    Counter32, Counter64, TimeTicks 
        FROM SNMPv2-SMI
    TEXTUAL-CONVENTION, RowStatus, TimeStamp, TruthValue, RowPointer
        FROM SNMPv2-TC
    SnmpAdminString
        FROM SNMP-FRAMEWORK-MIB
    netiGeneric
        FROM NETI-COMMON-MIB
    Dsti
        FROM NETI-CHMGR-MIB;
    

netiEthMIB MODULE-IDENTITY
    LAST-UPDATED
        "201403201000Z"
    ORGANIZATION
        "Net Insight AB"
    CONTACT-INFO
        "Net Insight AB
         Box 42093
         SE-126 14 Stockholm
         Sweden
         Tel +46-8-685 0400
         info@netinsight.se"
    DESCRIPTION
        "Reference: NID2982

         This MIB specifies objects for configuring Ethernet-like
         services and devices.  It models trail termination points
         (TTPs) for Ethernet Transport Service as virtual interfaces.
         It also includes objects for configuration of the physical
         interfaces (ports).  1+1 protected transport is provided
         using virtual interfaces as interface groups.  Physical and
         logical interfaces are connected to Forwarding Functions.

         The configuration model consists of the following primary
         tables:

         ethDeviceTable.  This table contains one entry for every
             device (board).  Its primary function is to provide
             capability information about the objects such as
             forwarding functions and interfaces on the device.

         ethIfTable.  Table with all interfaces, both physical (dot3),
             logical (ETS), and virtual ports as interface group.
             The table contains an entry for every port.  It contains
             configuration objects common to all port types.

         ethDot3Table.  Table that contains an entry for every
             physical port.  The table holds the data related to the
             physical port.  Note that the port is also represented in
             the ethIfTable, and is referenced by the same index in
             both tables.

         ethEtsTable.  Table that contains one entry for every
             Ethernet Transport Service Trail Termination Point (ETS
             TTP).  A TTP is used to connect a port to a remote port
             using a connection over the DTM network.  Note that the
             port is also represented in the ethIfTable, and is
             referenced by the same index in both tables.

         ethIfgTable.  This table contains one entry for every
             interface group.  An interface group is a virtual port
             that represents the transport over two paths to a remote
             interface group for 1+1 protected transport.  The two
             paths are implemented using two ports from the
             ethEtsTable.

         ethFwdFuncTable.  This table contains an entry for every
             forwarding function.  Physical and ETS ports must be
             associated with a forwarding function.  The forwarding
             function then forwards Ethernet frames between the
             different associated ports.  Configuration objects on the
             forwarding function and the associated interfaces control
             how frames are forwarded to the different ports.

         
         In addition to the primary tables, there are some other
         tables:

         ethFwdDiffservTable.  Configuration of differentiated service
             code points to flow group map for a forwarding function.

         ethIfQueueTable.  Configuration of a port's queues.

         ethIfQDropThresholdTable.  Configuration of drop thresholds
             for combination of traffic class and drop precedence per
             interface.

         ethIfVLANSetsTable.  Configuration of a the port's VLAN
             membership.

         ethEtsTConnectionTable.  References to connections that are
             terminating in a Trail Termination Point.

         ethEtsIndexLookupTable.  Reverse-lookup of an entry in the
             ethEtsTable based on known DSTI.


         The following two tables contains information regarding the
         Rapid Spanning Tree Protocol:

         ethFwdRstpTable.  The table contains data related to the
             bridge for the Rapid Spanning Tree Protocol. This table
             is indexed with the same index as the ethFwdTable.

         ethIfRstpTable.  The table contains data related to the port
             for the Rapid Spanning Tree Protocol. This table is
             indexed with the same index as the ethIfTable (and
             ethDot3Table and ethEtsTable)." 


    REVISION
        "201403201000Z"
    DESCRIPTION
        "Added objects for configuration of MRP MAC address
         processing: ethFwdMrpAddr0180C2000020 trough
         ethFwdMrpAddr0180C200002F.

         Added support for 10 GbE interfaces:

         - Added b10g(4) to AdvertisedSpeed.

         - Added new textual convention EthInterfaceType.  ethIfType
           now uses this.

         - Updated semantics for ethDot3AutoNegotiate.

         - Added objects to ethDot3Table: ethDot3AutoNegotiateStatus,
           ethDot3AutoNegotiateAllowed, ethDot3AutoNegotiateMandatory,
           ethDot3SupportedIfType, ethDot3SelectedIfType.
           
         Added objects for extended Class of Service:

         - Added ethDevCapDropPrecedenceLevels,
           ethDevDropProbabilityFunctions and ethDevFailure to
           ethDeviceTable.

         - Added ethIfMaxMaxQueueFrames, ethIfDefaultDropPrecedence
           and ethIfDropPrecedenceMap to ethIfTable.

         - Added table for configuration drop threshold settings,
           ethIfQDropThresholdTable."


    REVISION
        "201302281000Z"
    DESCRIPTION
        "Added interface statistics, ethIfStatTable."


    REVISION
        "201209121000Z"
    DESCRIPTION
        "Added objects to support interface groups and 1+1 protection:

         - Added ethDevIfgFirstIndex and ethDevIfgNextIndex to
           ethDeviceTable.

         - Added ethIfInterfaceGroup to ethIfTable.

         - Added `bETSGroup(7)' to ethIfType in ethIfTable.

         - Added ethIfgTable, a table holding interface groups data.

         - Added ethStatDcap1Table, a table holding counter values.

         Added error message objects to ethIfTable: ethIfSrcFailure
         and ethIfSnkFailure.

         Added object to reset interface to its default settings:
         ethDot3ResetToDefaults added to ethDot3Table."


    REVISION
        "201201271500Z"
    DESCRIPTION
        "Added objects that contains the actual value as a result of
         using auto settings:

         - Added ethFwdCurrentStpMode to ethFwdFuncTable.

         - Added ethIfRstpCurrentPathCost to ethIfRstpTable."

       
    REVISION
        "201110260900Z"
    DESCRIPTION
        "Updated some descriptions."


    REVISION 
        "201109051100Z"
    DESCRIPTION
        "Reference: NID2982PA39.

         Added objects for minor level of Reduced Bit Rate alarm:
         ethIfSrcMinorReducedBitRateThreshold,
         ethIfSnkMinorReducedBitRateThreshold,
         ethIfSrcMinorReducedBitRateHighThreshold,
         ethIfSnkMinorReducedBitRateHighThreshold.

         Added objects for configuration of reserved MAC address
         processing: ethFwdReservedAddr0180C2000002 trough
         ethFwdReservedAddr0180C200000F."


    REVISION 
        "201010201600Z"
    DESCRIPTION
        "Reference: NID2982PA33.

         Added objects for fault management: ethFwdPropagateFaults,
         ethIfSrcDegThreshold, ethIfSnkDegThreshold,
         ethIfSrcDegPeriod, ethIfSnkDegPeriod,
         ethIfSrcReducedBitRateThreshold,
         ethIfSnkReducedBitRateThreshold,
         ethIfSrcReducedBitRateHighThreshold,
         ethIfSnkReducedBitRateHighThreshold,
         ethIfSrcReducedBitRateAIS, ethIfSnkReducedBitRateAIS,
         ethIfSnkDegAIS, ethEtsSnkExpectChannel.

         Added capability object for fault management:
         ethDevCapConfigurableFaultMgmt.

         Added objects for referencing performance monitoring:
         ethIfSrcPmReference, ethIfSnkPmReference.

         Added capability object for performance monitoring: 
         ethDevCapPerformanceMonitoring." 


    REVISION 
        "200907081200Z"
    DESCRIPTION
        "First stable release."

    ::= { netiGeneric 2 }


--
-- Textual Conventions
--

 TrafficClass ::= TEXTUAL-CONVENTION
     DISPLAY-HINT  "d"
     STATUS  current
     DESCRIPTION
         "A traffic class."
     SYNTAX  Integer32 (0..7)


 VLANSet ::= TEXTUAL-CONVENTION
     DISPLAY-HINT  "1x"
     STATUS  current
     DESCRIPTION
         "A set of VLAN ids.  The octet string represents a bit array
          where each bit represents a VLAN id.  If the bit is set,
          then the VLAN id is included in the set.  VLANs are
          identified from left to right, where the leftmost bit in
          octet 1 is VLAN id 0 and the rightmost bit in octet 512
          represents VLAN id 4095.  (Note that VLAN id 0 and 4095 are
          invalid VLAN ids and these bits shall always be 0).

          Example: The VLAN ids 4-8, 15, 16, 23, 42 are represented by
          the octet string starting with the following octets (in
          hex): 0f8181000020..."
     SYNTAX  OCTET STRING (SIZE(512))


 AdvertisedSpeed ::= TEXTUAL-CONVENTION
     STATUS  current
     DESCRIPTION
         "auto(0). If auto-negotiation is enabled (see
          ethDot3AutoNegotiate), then advertise all speeds that the
          device supports. If auto auto-negotiation is disabled, then
          use the highest speed that the device supports.

          b10(1). Advertise that the interface supports 10 Mbps.

          b100(2). Advertise that the interface supports 100 Mbps.

          b1000(3). Advertise that the interface supports 1 Gbps.

          b10g(4). Advertise that the interface supports 10 Gbps."
     SYNTAX      BITS {
                    auto(0),
                    b10(1),
                    b100(2),
                    b1000(3),
                    b10g(4) }


 AdvertisedDuplex ::= TEXTUAL-CONVENTION
     STATUS  current
     DESCRIPTION
         "auto(0). If auto-negotiation is enabled (see
          ethDot3AutoNegotiation), then advertise all duplex that the
          device supports. If auto-negotiation is disabled, then use
          full duplex.

          fullDuplex(1). Advertise that the interface supports full
          duplex.

          halfDuplex(2). Advertise that the interface supports half
          duplex.

          If auto-negotiation is disabled, then use maximum duplex
          set."
     SYNTAX      BITS {
                    auto(0),
                    fullDuplex(1),
                    halfDuplex(2) }
    

 AdvertisedFlowControl ::= TEXTUAL-CONVENTION
     STATUS  current
     DESCRIPTION
         "auto(0). Advertise all settings that the port supports. This
          bit cannot be set at the same time as when any of the other
          bits are set.  Setting this bit will clear the other bits.
          If auto-negotiation is disabled (see ethDot3AutoNegotiate),
          then `auto(0)' means that flow control is enabled in both
          directions.

          pause(1). Advertise PAUSE.

          asmDir(2). Advertise ASM_DIR."
     SYNTAX      BITS {
                    auto(0),
                    pause(1),
                    asmDir(2) }


 BridgeIdentifier ::= TEXTUAL-CONVENTION
     DISPLAY-HINT  "1x:"
     STATUS  current
     DESCRIPTION
         "The Bridge-Identifier, as used in the Rapid Spanning Tree
          Protocol (RSTP), to uniquely identify a bridge.  Its first
          two octets (in network byte order) contain a priority value,
          and its last 6 octets contain the MAC address used to refer
          to a bridge in a unique fashion (typically, the numerically
          smallest MAC address of all ports on the bridge)."
     SYNTAX  OCTET STRING(SIZE (8))


 EthInterfaceType ::= TEXTUAL-CONVENTION
      STATUS     current
      DESCRIPTION
         "The type of interface.  The value `unknown(1)' is presented
          if required hardware is missing, or if it otherwise is not
          possible to determined the type of interface."
     SYNTAX      INTEGER {
                     auto(0),
                     unknown(1),
                     bETS(2),
                     b100baseTX(3),
                     b1000baseSX(4),
                     b1000baseLX(5),
                     b1000baseT(6),
                     bETSGroup(7),
                     b10GbaseSR(8),
                     b10GbaseLR(9),
                     b10GbaseLRM(10),
                     b10GbaseER(11),
                     b10GbaseZR(12) }


 PortIdentifier ::= TEXTUAL-CONVENTION
      STATUS  current
      DESCRIPTION
          "The Port-Identifier, as used in the Rapid Spanning Tree
           Protocol (RSTP), to uniquely identify the port within the
           bridge. Its first octet (in network byte order) contains a
           priority value, and the second octet contains the Port
           Number."
      SYNTAX  OCTET STRING(SIZE (2))


  Timeout ::= TEXTUAL-CONVENTION
      DISPLAY-HINT "d"
      STATUS  current
      DESCRIPTION
          "A Rapid Spanning Tree Protocol (RSTP) timer in units of 1/100
           seconds.  Several objects in this MIB module represent
           values of timers used by the Rapid Spanning Tree Protocol.
           In this MIB, these timers have values in units of hundredths
           of a second (i.e., 1/100 seconds)."
      SYNTAX  Integer32


 FrameProcess ::= TEXTUAL-CONVENTION
      STATUS  current
      DESCRIPTION
          "Describes how a frame shall be processed:

           notSupported(0). setting of this value is not supported by
           the device.

           drop(1). Frames are dropped.

           forward(2). Frames are forwarded."
      SYNTAX  INTEGER {
                 notSupported(0),
                 drop(1),
                 forward(2) }


  InterfaceIndexList ::= TEXTUAL-CONVENTION
      DISPLAY-HINT "4d,"
      STATUS  current
      DESCRIPTION
          "A list of interfaces as ethIfIndex.  Each group of 4 octets
          represents the value of an ethIfIndex."
     SYNTAX  OCTET STRING


 IfgProtectionStatus ::= TEXTUAL-CONVENTION
     STATUS  current
     DESCRIPTION
         "Describes the protection status of a protected service
          in an interface group.

          unavailable(1).  means that neither channel is up.

          unprotected(2).  means that one of the channels is up.

          standbyProtected(3).  means that both channels are up and if
          the active channel detects AIS, a failover will occur while
          incurring a hit.

          hitlessCapable(4).  means that the differential delay is
          within limit, but a buffer reset is required to reach
          hitless protected state. This can be achieved by writing the
          forceHit parameter.

          hitlessProtected(5).  means that either channel can go down
          without incurring a data loss.  "
     SYNTAX  INTEGER {
                 unavailable(1),
                 unprotected(2),
                 standbyProtected(3),
                 hitlessCapable(4),
                 hitlessProtected(5) }

        
 --
 -- Objects in the NETI-ETH-MIB
 --

 ethObjects  OBJECT IDENTIFIER ::= { netiEthMIB 1 }
 ethDeviceGroup  OBJECT IDENTIFIER ::= { ethObjects 1 }
 ethFwdFuncGroup  OBJECT IDENTIFIER ::= { ethObjects 2 }
 ethInterfaceGroup  OBJECT IDENTIFIER ::= { ethObjects 3 }
 ethStatisticsGroup  OBJECT IDENTIFIER ::= { ethObjects 4 }


 --
 -- Devices
 --

 -- Device table

 ethDeviceTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthDeviceEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Table that represents Ethernet capable devices.  The table is
          automatically populated with entries representing all mounted
          Ethernet devices."
     ::= { ethDeviceGroup 1 }

 ethDeviceEntry OBJECT-TYPE
     SYNTAX      EthDeviceEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An entry representing one device (board)."
     INDEX { ethDevIndex }
     ::= { ethDeviceTable 1 }

 EthDeviceEntry ::= SEQUENCE {
     ethDevIndex                       Unsigned32,
     ethDevRowStatus                   RowStatus,
     ethDevName                        SnmpAdminString,
     ethDevContainerName               SnmpAdminString,
     ethDevProductName                 SnmpAdminString,
     ethDevStatus                      INTEGER,
     ethDevCapJumboFrames              BITS,
     ethDevCapMaxAgingTime             Unsigned32,
     ethDevCapMACMode                  BITS,
     ethDevCapSpanningTree             BITS,
     ethDevCapVLANMode                 BITS,
     ethDevCapAdvertisedDuplex         AdvertisedDuplex,
     ethDevCapAdvertisedFlowControl    AdvertisedFlowControl,
     ethDevCapAcceptableFrameType      BITS,
     ethDevCapDefaultEthernetPriority  OCTET STRING,
     ethDevCapLearning                 BITS,
     ethDevCapTransmittedFrameTypeETS  BITS,
     ethDevCapTransmittedFrameTypeDot3 BITS,
     ethDevCapMaxMaxQueueOctets        Unsigned32,
     ethDevCapMaxMaxQueueFrames        Unsigned32,
     ethDevCapMaxTrafficClass          TrafficClass,
     ethDevEtsNextIndex                Unsigned32,
     ethDevFwdFuncNextIndex            Unsigned32,
     ethDevCapPerformanceMonitoring    INTEGER,
     ethDevCapConfigurableFaultMgmt    INTEGER,
     ethDevIfgFirstIndex               Unsigned32,
     ethDevIfgNextIndex                Unsigned32,
     ethDevCapDropPrecedenceLevels     Unsigned32,
     ethDevCapDropProbabilityFunctions BITS,
     ethDevFailure                     SnmpAdminString
 }

 ethDevIndex OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An index in the table.  The index is equal to the board
          position in the node.  The index is maintained across reboots
          of the managed system."
     ::= { ethDeviceEntry 1 }

 ethDevRowStatus OBJECT-TYPE
     SYNTAX      RowStatus
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The following values are supported:

          active(1). The object always reads active.

          destroy(6). All configurations for the device are deleted.
          If the physical device exists, then a new default
          configuration will be created for the device.  If the
          physical device does not exist, then the configuration is
          deleted. If a physical device is inserted into the node, then
          a new default configuration will be created for the device."
     ::= { ethDeviceEntry 2 }

 ethDevName OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The textual name of the device.  The value of this object
          should be the name of the device as assigned by the local
          device and should be suitable for use in commands entered at
          the device's `console'."
     ::= { ethDeviceEntry 3 }

 ethDevContainerName OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The name of the container where the physical device is mounted."
     ::= { ethDeviceEntry 4 }

 ethDevProductName OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The name of the product.  The value of this object should be
          the name of the device as printed on the front panel or
          similar."
     ::= { ethDeviceEntry 5 }

 ethDevStatus OBJECT-TYPE
     SYNTAX      INTEGER {
                     present(1),
                     absent(2),
                     mismatch(3) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The status of the device, indicating if the board is plugged
          in or not.

          present(1). The device is present and functional.

          absent(2). The device is not present.

          mismatch(3). A device is present on the location representing
          the configuration but the device is not compatible with the
          stored configuration."
     ::= { ethDeviceEntry 6 }

 ethDevCapJumboFrames OBJECT-TYPE
     SYNTAX      BITS {
                     on(0),
                     off(1) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The Jumbo Frames capabilities of forwarding functions on the
          device.  Describes all supported values of the Jumbo Frames
          setting.  See ethFwdJumboFrames."
     ::= { ethDeviceEntry 7 }

 ethDevCapMaxAgingTime OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The maximum aging time for dynamically learned forwarding
          information for forwarding functions on the device.  Zero
          (0) if the device does not allow the value to be set.  See
          ethFwdAgingTime."
     ::= { ethDeviceEntry 8 }

 ethDevCapMACMode OBJECT-TYPE
     SYNTAX      BITS {
                     auto(0),
                     mac(1),
                     nomac(2) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The MAC mode capabilities of forwarding functions on the
          device.  Describes all supported values of the MAC modes
          setting.  See ethFwdMACMode."
     ::= { ethDeviceEntry 9 }

 ethDevCapSpanningTree OBJECT-TYPE
     SYNTAX      BITS {
                     auto(0),
                     forward(1),
                     drop(2),
                     process(3) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The spanning tree capabilities of forwarding functions on the
          device.  Describes all supported values of the spanning tree
          settings.  If spanning tree is not supported, then the value
          is `forward(1)'.  See ethFwdSpanningTree."
     ::= { ethDeviceEntry 10 }

 ethDevCapVLANMode OBJECT-TYPE
     SYNTAX      BITS {
                     transparent(0),
                     customer(1),
                     provider(2) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The VLAN mode capabilities of forwarding functions on the
          device.  Describes all supported values of the VLAN mode
          settings.  See ethFwdVLANMode."
     ::= { ethDeviceEntry 11 }

 ethDevCapAdvertisedDuplex OBJECT-TYPE
     SYNTAX      AdvertisedDuplex
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Supported values for the duplex setting of a physical
          interface on the device.  See dot3AdvertisedDuplex."
     ::= { ethDeviceEntry 12 }

 ethDevCapAdvertisedFlowControl OBJECT-TYPE
     SYNTAX      AdvertisedFlowControl
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Supported values for the flow control setting of a physical
          interface on the device.  See dot3AdvertisedFlowControl."
     ::= { ethDeviceEntry 13 }

 ethDevCapAcceptableFrameType OBJECT-TYPE
     SYNTAX      BITS {
                     all(0),
                     vlanTagged(1),
                     untagged(2) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The frame types capabilities of interfaces on the device.
          Describes all supported values of the acceptable frame type
          setting.  See ethIfAcceptableFrameTypes."
     ::= { ethDeviceEntry 14 }

 ethDevCapDefaultEthernetPriority OBJECT-TYPE
     SYNTAX      OCTET STRING (SIZE(2))
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The range of allowed values for Ethernet priority of
          interfaces on the device.  See
          ethIfDefaultEthernetPriority.  The object consists of two
          octets, where the first octet represents the lowest allowed
          value and the second octet represents the highest allowed
          value."
     ::= { ethDeviceEntry 15 }

 ethDevCapLearning OBJECT-TYPE
     SYNTAX      BITS {
                     on(0),
                     off(1) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The learning capabilities of forwarding functions on the
          device.  Describes all supported values of the learning
          setting.  See ethIfLearning."
     ::= { ethDeviceEntry 16 }

 ethDevCapTransmittedFrameTypeETS OBJECT-TYPE
     SYNTAX      BITS {
                    vlanTagged(1),
                    untagged(2),
                    legacy(3) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The allowed values of the transmitted frame type on an
          Ethernet Transport Service Trail Termination Point, ETS TTP.
          See ethIfTransmittedFrameType.  Note that the interface type
          can be determined by examine ethIfType."
     ::= { ethDeviceEntry 17 }

 ethDevCapTransmittedFrameTypeDot3 OBJECT-TYPE
     SYNTAX      BITS {
                    vlanTagged(1),
                    untagged(2) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The allowed values of the transmitted frame type on an dot3
          interface.  See ethIfTransmittedFrameType.  Note that the
          interface type can be determined by examine ethIfType."
     ::= { ethDeviceEntry 18 }

 ethDevCapMaxMaxQueueOctets OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The maximum value in octets possible to set for the maximum
          queue size for queues on the device.  See
          ethIfQueueMaxOctets."
     ::= { ethDeviceEntry 19 }

 ethDevCapMaxMaxQueueFrames OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-only
     STATUS      deprecated
     DESCRIPTION
         "The maximum value in frames allowed to set for the maximum
          queue size for queues on the device.  See
          ethIfQueueMaxFrames."
     ::= { ethDeviceEntry 20 }

 ethDevCapMaxTrafficClass OBJECT-TYPE
     SYNTAX      TrafficClass
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The maximum number of traffic classes supported by the
          device.  Traffic classes are identified by numbers starting
          from 0 to, but not including, this value."
     ::= { ethDeviceEntry 21 }

ethDevEtsNextIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the next available index (ethIfIndex) in the
         ethEtsTable for this device."
    ::= { ethDeviceEntry 22 }

ethDevFwdFuncNextIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the next available index (ethFwdIndex) in the
         ethFwdFuncTable for this device."
    ::= { ethDeviceEntry 23 }

ethDevCapPerformanceMonitoring OBJECT-TYPE
    SYNTAX      INTEGER {
                    on(1),
                    off(2) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates how the device supports performance monitoring."
    ::= { ethDeviceEntry 24 }

ethDevCapConfigurableFaultMgmt OBJECT-TYPE
    SYNTAX      INTEGER {
                    on(1),
                    off(2) }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Indicates how the device supports configurable fault
         management."
    ::= { ethDeviceEntry 25 }

ethDevIfgFirstIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the first allowed index (ethIfIndex) in the
         ethIfgTable for this device."
    ::= { ethDeviceEntry 26 }

ethDevIfgNextIndex OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The value of the next available index (ethIfIndex) in the
         ethIfgTable for this device."
    ::= { ethDeviceEntry 27 }

 ethDevCapDropPrecedenceLevels OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The number of different drop precedence (DP) levels that
          this devices supports.  The DP levels are numbered from 0 to
          (dropPrecedenceLevels - 1)"
     ::= { ethDeviceEntry 28 }

 ethDevCapDropProbabilityFunctions OBJECT-TYPE
     SYNTAX      BITS {
                    taildrop(0),
                    wred(1) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The drop probability functions supported for this device."
     ::= { ethDeviceEntry 29 }

 ethDevFailure OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A string describing the configuration or error status of the
          device.  The string is the empty string if the configuration
          is correct, otherwise a message describing the error."
     ::= { ethDeviceEntry 30 }


 --
 -- Forwarding Function
 --


 ethFwdFuncLastChange OBJECT-TYPE
     SYNTAX      TimeStamp
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The value of sysUpTime when status or configuration of any
          the objects in the ethFwdFuncTable or ethFwdDiffservTable
          was last changed."
     ::= { ethFwdFuncGroup 1 }

 -- Forwarding Function Table

 ethFwdFuncTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthForwardingFunctionEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Table of forwarding functions."
     ::= { ethFwdFuncGroup 2 }

 ethFwdFuncEntry OBJECT-TYPE
     SYNTAX      EthForwardingFunctionEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An entry representing one forwarding function."
     INDEX { ethDevIndex, ethFwdIndex }
     ::= { ethFwdFuncTable 1 }

 EthForwardingFunctionEntry ::= SEQUENCE {
      ethFwdIndex           Integer32,
      ethFwdRowStatus       RowStatus,
      ethFwdName            SnmpAdminString,
      ethFwdCustomerId      Unsigned32,
      ethFwdPurpose         SnmpAdminString,
      ethFwdJumboFrames     INTEGER,
      ethFwdMACMode         INTEGER,
      ethFwdCurrentMACMode  INTEGER,
      ethFwdSpanningTree    INTEGER,
      ethFwdVLANMode        INTEGER,
      ethFwdAgingTime       Unsigned32,
      ethFwdFailure         SnmpAdminString,
      ethFwdLastChange      TimeTicks,
      ethFwdPropagateFaults TruthValue, 
      ethFwdReservedAddr0180C2000002 FrameProcess,
      ethFwdReservedAddr0180C2000003 FrameProcess,
      ethFwdReservedAddr0180C2000004 FrameProcess,
      ethFwdReservedAddr0180C2000005 FrameProcess,
      ethFwdReservedAddr0180C2000006 FrameProcess,
      ethFwdReservedAddr0180C2000007 FrameProcess,
      ethFwdReservedAddr0180C2000008 FrameProcess,
      ethFwdReservedAddr0180C2000009 FrameProcess,
      ethFwdReservedAddr0180C200000A FrameProcess,
      ethFwdReservedAddr0180C200000B FrameProcess,
      ethFwdReservedAddr0180C200000C FrameProcess,
      ethFwdReservedAddr0180C200000D FrameProcess,
      ethFwdReservedAddr0180C200000E FrameProcess,
      ethFwdReservedAddr0180C200000F FrameProcess,
      ethFwdCurrentStpMode  INTEGER,
      ethFwdMrpAddr0180C2000020  FrameProcess,
      ethFwdMrpAddr0180C2000021  FrameProcess,
      ethFwdMrpAddr0180C2000022  FrameProcess,
      ethFwdMrpAddr0180C2000023  FrameProcess,
      ethFwdMrpAddr0180C2000024  FrameProcess,
      ethFwdMrpAddr0180C2000025  FrameProcess,
      ethFwdMrpAddr0180C2000026  FrameProcess,
      ethFwdMrpAddr0180C2000027  FrameProcess,
      ethFwdMrpAddr0180C2000028  FrameProcess,
      ethFwdMrpAddr0180C2000029  FrameProcess,
      ethFwdMrpAddr0180C200002A  FrameProcess,
      ethFwdMrpAddr0180C200002B  FrameProcess,
      ethFwdMrpAddr0180C200002C  FrameProcess,
      ethFwdMrpAddr0180C200002D  FrameProcess,
      ethFwdMrpAddr0180C200002E  FrameProcess,
      ethFwdMrpAddr0180C200002F  FrameProcess
}

 ethFwdIndex OBJECT-TYPE
     SYNTAX      Integer32 (0..2147483647)
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An index representing the forwarding function on the device."
     ::= { ethFwdFuncEntry 1 }

 ethFwdRowStatus OBJECT-TYPE
     SYNTAX      RowStatus
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
         "See SNMPv2-TC. The maximum number of forwarding functions is
          limited by the type of device.  This is described per device
          in ethDevCapMaxForwardingFunctions.  The following values
          are supported:

          active(1). The object always reads active.

          createAndGo(4). A new conceptual row is created representing
          a new forwarding function.

          destroy(6). The forwarding function is deleted.  All
          interfaces that belonged to the deleted forwarding function
          will no longer belong to any forwarding function, see
          ethIfForwardingFunction."
     ::= { ethFwdFuncEntry 2 }

 ethFwdName OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The textual name of the forwarding function.  The value of
          this object should be suitable for use in commands entered at
          the device's `console'."
     ::= { ethFwdFuncEntry 3 }

ethFwdCustomerId OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
         "An identification number representing the customer or user
          using the forwarding function. The value could be used for
          e.g. Charge Data Records.  The value zero (0) indicates that
          no specific customer is associated with the forwarding
          function."
     DEFVAL { 0 }
     ::= { ethFwdFuncEntry 4 }

 ethFwdPurpose OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
         "A string representing the purpose of the forwarding
          function.  The string is for administrative purpose."
     DEFVAL { ''H }
     ::= { ethFwdFuncEntry 5 }

 ethFwdJumboFrames OBJECT-TYPE
     SYNTAX      INTEGER {
                     on(1),
                     off(2) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Specifies how the forwarding function shall handle Jumbo
          frames:

          on(1). Jumbo frames are forwarded as any standard Ethernet
          frame.

          off(2). Jumbo frames are discarded upon reception.

          See ethDevCapJumboFrames for accepted values."
     DEFVAL { on }
     ::= { ethFwdFuncEntry 6 }

 ethFwdMACMode OBJECT-TYPE
     SYNTAX      INTEGER {
                     auto(1),
                     mac(2),
                     nomac(3) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Specifies how the forwarding function shall handle unicast
          frames when it does not know what interface to use for
          reaching a destination.

          auto(1).  Equivalent to `mac(2)' if the forwarding function
          is connected to at least three interfaces, otherwise
          equivalent to `nomac(3)'.  If the device does not support
          `mac(2)', then `auto(1)' is always equivalent to `nomac(3)'.

          mac(2).  The forwarding function will learn what interfaces
          to use for a destination.  This is done by looking at the
          source MAC address on received frames.  When the forwarding
          function has learned what interface to use, it will forward
          the frame on that interface only.  Learning is also
          specified for each interface and traffic class with
          ethIfQueueLearning.

          nomac(3).  The forwarding function will forward the frame on
          all its interfaces."
     DEFVAL { auto }    
     ::= { ethFwdFuncEntry 7 }

 ethFwdCurrentMACMode OBJECT-TYPE
     SYNTAX      INTEGER {
                     mac(2),
                     nomac(3) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Describes the currently active MAC mode, see ethFwdMACMode."
     ::= { ethFwdFuncEntry 8 }

 ethFwdSpanningTree OBJECT-TYPE
     SYNTAX      INTEGER {
                     auto(1),
                     forward(2),
                     drop(3),
                     process(4) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "auto(1). If the device does not implement the spanning-tree
          protocol, or if exactly two interfaces are connected to the
          forwarding function, then it will act as if `forward(2)' has
          been specified. Otherwise, it will act as if `process(4)' has
          been specified.

          forward(2). Received spanning-tree messages are broadcasted
          to all interfaces except the interface where the message was
          received. No further processing is done.

          drop(3). Received spanning-tree messages are dropped without
          any further processing.

          process(4). Received spanning-tree messages are processed
          according to the spanning-tree protocol."
     DEFVAL { auto }
     ::= { ethFwdFuncEntry 9 }

 ethFwdVLANMode OBJECT-TYPE
     SYNTAX      INTEGER {
                     transparent(1),
                     customer(2),
                     provider(3) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "transparent(1).  Ignore VLAN tags on received frames.  VLAN 
          tags are not added nor removed from the frames.  If a frame 
          has a VLAN tag, then it is retained. If a frame does not have
          a VLAN tag, then no tag is added.
          
          customer(2).  VLAN-handling in accordance with IEEE 802.1Q. 
          Frames are forwarded and filtered according to customer VLAN 
          tag.  Frames that are not tagged are tagged with default VLAN 
          tag as configured on the interface.
          
          provider(3). VLAN-handling in accordance with IEEE 802.1ad.
          Frames are forwarded and filtered according to service VLAN 
          tag. Any customer VLAN is ignored.  Frames that are not tagged
          are tagged with default VLAN tag as configured on the 
          interface."
     DEFVAL { transparent }
     ::= { ethFwdFuncEntry 10 }

 ethFwdAgingTime OBJECT-TYPE
     SYNTAX      Unsigned32
     UNITS       "seconds"
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The timeout period in seconds for aging out dynamically
          learned forwarding information.  The value 0 means that
          aging is disabled and that the learned entries are not
          removed from the lookup table.  See ethDevCapMaxAgingTime
          for maximum value."
     DEFVAL { 300 }
     ::= { ethFwdFuncEntry 11 }
 
 ethFwdFailure OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A string describing the configuration or error status of the
          forwarding function.  The string is the empty string if the
          configuration is correct, otherwise a message describing the
          error."
     ::= { ethFwdFuncEntry 12 }

 ethFwdLastChange OBJECT-TYPE
     SYNTAX      TimeTicks
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The value of sysUpTime at the time when the operational
          state or any configuration was last changed on this
          forwarding function."
     ::= { ethFwdFuncEntry 13 }

 ethFwdPropagateFaults OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Propagate faults to all interfaces belonging to this
          forwarding function."
     DEFVAL { false }
     ::= { ethFwdFuncEntry 14 }

 ethFwdReservedAddr0180C2000002 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 15 }

 ethFwdReservedAddr0180C2000003 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 16 }

 ethFwdReservedAddr0180C2000004 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 17 }

 ethFwdReservedAddr0180C2000005 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 18 }

 ethFwdReservedAddr0180C2000006 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 19 }

 ethFwdReservedAddr0180C2000007 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 20 }

 ethFwdReservedAddr0180C2000008 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 21 }

 ethFwdReservedAddr0180C2000009 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 22 }

 ethFwdReservedAddr0180C200000A OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 23 }

 ethFwdReservedAddr0180C200000B OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 24 }

 ethFwdReservedAddr0180C200000C OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 25 }

 ethFwdReservedAddr0180C200000D OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 26 }

 ethFwdReservedAddr0180C200000E OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 27 }

 ethFwdReservedAddr0180C200000F OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process reserved MAC address."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.12.6"
     DEFVAL { drop }
     ::= { ethFwdFuncEntry 28 }

 ethFwdCurrentStpMode OBJECT-TYPE
     SYNTAX      INTEGER {
                     forward(2),
                     drop(3),
                     process(4) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Indicates the current STP mode as, as a result of the
          configured value in ethFwdSpanningTree.  Unless
          ethFwdSpannigTree is `auto(1), then this always reads the
          same value as that object."
     ::= { ethFwdFuncEntry 29 }

 ethFwdMrpAddr0180C2000020 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 30 }

 ethFwdMrpAddr0180C2000021 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 31 }

 ethFwdMrpAddr0180C2000022 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 32 }

 ethFwdMrpAddr0180C2000023 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 33 }

 ethFwdMrpAddr0180C2000024 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 34 }

 ethFwdMrpAddr0180C2000025 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 35 }

 ethFwdMrpAddr0180C2000026 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 36 }

 ethFwdMrpAddr0180C2000027 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 37 }

 ethFwdMrpAddr0180C2000028 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 38 }

 ethFwdMrpAddr0180C2000029 OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 39 }

 ethFwdMrpAddr0180C200002A OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 40 }

 ethFwdMrpAddr0180C200002B OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 41 }

 ethFwdMrpAddr0180C200002C OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 42 }

 ethFwdMrpAddr0180C200002D OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 43 }

 ethFwdMrpAddr0180C200002E OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 44 }

 ethFwdMrpAddr0180C200002F OBJECT-TYPE
     SYNTAX      FrameProcess
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Configuration of how to process Multiple Registration
          Protocol (MRP) MAC address."
     REFERENCE
         "IEEE 802.1Q-2011: clause 10.5"
     DEFVAL { forward }
     ::= { ethFwdFuncEntry 45 }

 -- End of Forwarding Function table


 -- Differentiated Services Code Point to Flow Group Map

 ethFwdDiffservTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthFwdDiffservEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The table maps differentiated service code points (DSCP) to
          flow groups."
     ::= { ethFwdFuncGroup 3 }

 ethFwdDiffservEntry OBJECT-TYPE
     SYNTAX      EthFwdDiffservEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An entry represents the mapping of one DSCP to one flow
          group for an interface."
     INDEX { ethDevIndex, ethFwdIndex, ethFwdDiffservIndex }
     ::= { ethFwdDiffservTable 1 }

 EthFwdDiffservEntry ::= SEQUENCE {
      ethFwdDiffservIndex       Integer32,
      ethFwdDiffservFlowGroup   Integer32
 }

 ethFwdDiffservIndex OBJECT-TYPE
     SYNTAX      Integer32 (0..63)
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An index representing the differentiated service code point
          (DSCP).  For each forwarding function, the table contains 64
          rows, numbered from 0 to 63 representing DSCP bit pattern
          '000000' through '111111'."
     ::= { ethFwdDiffservEntry 1 }

 ethFwdDiffservFlowGroup OBJECT-TYPE
     SYNTAX      Integer32 (0..7)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Specifies which flow group that the differentiated service
          code point (DSCP) shall be mapped to."
     DEFVAL { 0 }
     ::= { ethFwdDiffservEntry 2 }


 -- Rapid Spanning Tree Protocol Bridge Table

 ethFwdRstpTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthFwdRstpEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The table contains Rapid Spanning Tree Protocol (RSTP)
          specific configurations and data for forwarding
          functions. If a forwarding function does not support RSTP,
          then the table will not hold an entry for that forwarding
          function."
     ::= { ethFwdFuncGroup 4 }

 ethFwdRstpEntry OBJECT-TYPE
     SYNTAX      EthFwdRstpEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An entry represents Rapid Spanning Tree Protocol (RSTP)
          related data for one forwarding function."
     INDEX { ethDevIndex, ethFwdIndex }
     ::= { ethFwdRstpTable 1 }

 EthFwdRstpEntry ::= SEQUENCE {
      ethFwdRstpBridgeIdentifier        BridgeIdentifier,
      ethFwdRstpPriority                Integer32,
      ethFwdRstpTimeSinceTopologyChange Timeout,
      ethFwdRstpTopologyChangeCount     Counter32,
      ethFwdRstpTopologyChange          TruthValue,
      ethFwdRstpDesignatedRoot          BridgeIdentifier,
      ethFwdRstpRootPathCost            Integer32,
      ethFwdRstpRootPortName            SnmpAdminString,
      ethFwdRstpMaxAge                  Timeout,
      ethFwdRstpHelloTime               Timeout,
      ethFwdRstpForwardDelay            Timeout,
      ethFwdRstpBridgeMaxAge            Timeout,
      ethFwdRstpBridgeHelloTime         Timeout,
      ethFwdRstpBridgeForwardDelay      Timeout,
      ethFwdRstpTxHoldCount             Integer32,
      ethFwdRstpForceVersion            INTEGER
  }

 ethFwdRstpBridgeIdentifier OBJECT-TYPE
     SYNTAX      BridgeIdentifier    
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The unique identifier for this bridge."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.1.1.3."
     ::= { ethFwdRstpEntry 1 }

 ethFwdRstpPriority OBJECT-TYPE
     SYNTAX      Integer32 (0..61440)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The local bridge priority. The value must be set in
          increments of 4096."
     REFERENCE
         "IEEE 802.1D-2004: clause 17.14."
     DEFVAL { 32768 }
     ::= { ethFwdRstpEntry 2 }
 
 ethFwdRstpTimeSinceTopologyChange OBJECT-TYPE
     SYNTAX      Timeout
     UNITS       "centi-seconds"
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The time in 1/100 seconds since the last topology change."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.1.1.3."
     ::= { ethFwdRstpEntry 3 }

 ethFwdRstpTopologyChangeCount OBJECT-TYPE
     SYNTAX      Counter32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The total number of topology changes detected by this bridge
          since the management entity was last reset or initialized."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.1.1.3."
     ::= { ethFwdRstpEntry 4 }

 ethFwdRstpTopologyChange OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Set to `true(1)' when a topology change is in progress."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.1.1.3."
     ::= { ethFwdRstpEntry 5 }

 ethFwdRstpDesignatedRoot OBJECT-TYPE
     SYNTAX      BridgeIdentifier
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The bridge identifier of the root of the spanning tree, as
          determined by the Spanning Tree Protocol, as executed by
          this bridge.  This value is used as the Root Identifier
          parameter in all Configuration Bridge PDUs originated by
          this node."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.1.1.3."
     ::= { ethFwdRstpEntry 6 }

 ethFwdRstpRootPathCost OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The cost of the path to the root as seen from
          this bridge."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.1.1.3."
     ::= { ethFwdRstpEntry 7 }

 ethFwdRstpRootPortName OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The name of the interface that offers the lowest cost path 
          from this bridge to the root bridge."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.1.1.3."
     ::= { ethFwdRstpEntry 8 }

 ethFwdRstpMaxAge OBJECT-TYPE
     SYNTAX      Timeout
     UNITS       "centi-seconds"
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The maximum age of Spanning Tree Protocol information
          learned from the network on any port before it is discarded,
          in units of hundredths of a second.  This is the actual
          value that this bridge is currently using."
     REFERENCE
         "IEEE 802.1D-2004: clause 17.18.7."
     ::= { ethFwdRstpEntry 9 }

 ethFwdRstpHelloTime OBJECT-TYPE
     SYNTAX      Timeout
     UNITS       "centi-seconds"
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The amount of time between the transmission of Configuration
          bridge PDUs by this node on any port when it is the root of
          the spanning tree, or trying to become so, in units of
          hundredths of a second.  This is the actual value that this
          bridge is currently using."
     REFERENCE
         "IEEE 802.1D-2004: clause 17.18.7."
     ::= { ethFwdRstpEntry 10 }

 ethFwdRstpForwardDelay OBJECT-TYPE
     SYNTAX      Timeout
     UNITS       "centi-seconds"
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The root bridge forward delay parameter, in units of
          hundredths of a second."
     REFERENCE
         "IEEE 802.1D-2004: clause 17.18.7."
     ::= { ethFwdRstpEntry 11 }

 ethFwdRstpBridgeMaxAge OBJECT-TYPE
     SYNTAX      Timeout (600..4000)
     UNITS       "centi-seconds"
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The value that all bridges use for MaxAge when this bridge
          is acting as the root.  An agent may return a badValue error
          if a set is attempted to a value that is not a whole number
          of seconds, or it may truncate the value to a whole number
          of seconds."
     REFERENCE
         "IEEE 802.1D-2004: clause 17.13.8 and 17.14."
     DEFVAL { 2000 }
     ::= { ethFwdRstpEntry 12 }

 ethFwdRstpBridgeHelloTime OBJECT-TYPE
     SYNTAX      Timeout (100..200)
     UNITS       "centi-seconds"
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The value that all bridges use for HelloTime when this
          bridge is acting as the root.  An agent may return a
          badValue error if a set is attempted to a value that is not
          a whole number of seconds, or it may truncate the value to a
          whole number of seconds."
     REFERENCE
         "IEEE 802.1D-2004: clause 17.13.6 and 17.14."
     DEFVAL { 200 }
     ::= { ethFwdRstpEntry 13 }

 ethFwdRstpBridgeForwardDelay OBJECT-TYPE
     SYNTAX      Timeout (400..3000)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The value that all bridges use for ForwardDelay when this
          bridge is acting as the root.  An agent may return a
          badValue error if a set is attempted to a value that is not
          a whole number of seconds, or it may truncate the value to a
          whole number of seconds."
     REFERENCE
         "IEEE 802.1D-2004: clause 17.13.5 and 17.14."
     DEFVAL { 1500 }
     ::= { ethFwdRstpEntry 14 }

 ethFwdRstpTxHoldCount OBJECT-TYPE
     SYNTAX      Integer32 (1..10)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The local bridge transmit hold count parameter."
     REFERENCE
         "IEEE 802.1D-2004: clause 17.13.12 and 17.14."
     DEFVAL { 6 }
     ::= { ethFwdRstpEntry 15 }

 ethFwdRstpForceVersion OBJECT-TYPE
     SYNTAX      INTEGER {
                     stp(1),
                     rstp(2) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Force the spanning tree protocol version to use for this
          bridge:

          stp(1). STP compatibility mode.  Causes an RSTP Bridge to
          use STP compatible BPDUs and timer values on all Bridge
          Ports.  Rapid transitions are disabled, supporting
          applications and protocols that are particularly sensitive
          to frame duplication and misordering.

          rstp(2). Normal mode"
     REFERENCE
         "IEEE 802.1D-2004: clause 17.13.4 and 17.4."
     DEFVAL { rstp }
     ::= { ethFwdRstpEntry 16 }

 

 -- End of Rapid Spanning Tree Protocol Bridge Table



 ---
 --- Interfaces
 ---


 ethIfGroupLastChange OBJECT-TYPE
     SYNTAX      TimeStamp
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The value of sysUpTime when status or configuration of any
          the objects in this group was last changed."
     ::= { ethInterfaceGroup 1 }


 -- Interface base table

 ethIfTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthIfEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Table containing all interfaces, both physical, logical for
          use with Ethernet Transport Service, and interface groups
          for use with 1+1 protection."
     ::= { ethInterfaceGroup 2 }

 ethIfEntry OBJECT-TYPE
     SYNTAX      EthIfEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An entry representing one interface or interface group.

          If the interface is a physical interface, a conceptual row
          also exists for the interface in the ethDot3Table.  The
          management system ensures that all physical interfaces on
          the device are represented in the table, e.g. by allocating
          the first number of rows for the physical ports.

          If the interface is an Ethernet Transport Service Trail
          Termination Points (ETS TTPs), a conceptual row for the
          interface also exists in the ethEtsTable.  Such interfaces
          can be created and deleted from that table, and will be
          reflected in this table.

          If the interface is an interface group, a conceptual row for
          the interface also exists in the ethIfgTable.  An interface
          group can be created and deleted from that table, and will
          be reflected in this table.  If the interface group has no
          member interfaces, then all its objects in this table are
          read-only."
     INDEX { ethDevIndex, ethIfIndex }
     ::= { ethIfTable 1 }

 EthIfEntry ::= SEQUENCE {
      ethIfIndex                           Unsigned32,
      ethIfIfIndex                         Integer32,
      ethIfName                            SnmpAdminString,
      ethIfType                            INTEGER,
      ethIfCustomerId                      Unsigned32,
      ethIfPurpose                         SnmpAdminString,
      ethIfAdminStatus                     INTEGER,
      ethIfOperStatus                      INTEGER,
      ethIfFailure                         SnmpAdminString,
      ethIfForwardingFunction              Integer32,
      ethIfAcceptableFrameTypes            INTEGER,
      ethIfTransmittedFrameType            INTEGER,
      ethIfDefaultVLAN                     Integer32,
      ethIfDefaultEthernetPriority         Integer32,
      ethIfPriorityMode                    INTEGER,
      ethIfDefaultTrafficClass             TrafficClass,
      ethIfFlowGroupMap                    OCTET STRING,
      ethIfLearning                        INTEGER,
      ethIfInSpeed                         Gauge32,
      ethIfInHighSpeed                     Gauge32,
      ethIfOutSpeed                        Gauge32,
      ethIfOutHighSpeed                    Gauge32,
      ethIfVLANNextIndex                   Unsigned32,
      ethIfLastChange                      TimeTicks,
      ethIfSrcPmReference                  RowPointer,
      ethIfSnkPmReference                  RowPointer,
      ethIfSrcDegThreshold                 Unsigned32,
      ethIfSnkDegThreshold                 Unsigned32,
      ethIfSrcDegPeriod                    Unsigned32,
      ethIfSnkDegPeriod                    Unsigned32,
      ethIfSrcReducedBitRateThreshold      Unsigned32,
      ethIfSnkReducedBitRateThreshold      Unsigned32,
      ethIfSrcReducedBitRateHighThreshold  Unsigned32,
      ethIfSnkReducedBitRateHighThreshold  Unsigned32,
      ethIfSrcReducedBitRateAIS            TruthValue,
      ethIfSnkReducedBitRateAIS            TruthValue,
      ethIfSnkDegAIS                       TruthValue,
      ethIfSrcMinorReducedBitRateThreshold Unsigned32,
      ethIfSnkMinorReducedBitRateThreshold Unsigned32,
      ethIfSrcMinorReducedBitRateHighThreshold  Unsigned32,
      ethIfSnkMinorReducedBitRateHighThreshold  Unsigned32,
      ethIfSrcFailure                      SnmpAdminString,
      ethIfSnkFailure                      SnmpAdminString,
      ethIfInterfaceGroup                  Integer32,
      ethIfMaxMaxQueueFrames               Unsigned32,
      ethIfDefaultDropPrecedence           Unsigned32,
      ethIfDropPrecedenceMap               OCTET STRING
 }

 ethIfIndex OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An index for the interface.  The index is maintained across
          restarts of the managed system.  The management system may
          require that the value of this object is within a certain
          value range depending of the type of interface.

          If the interface is a physical interface, the index matches
          the port number as printed on the front of the device.  The
          management system allocates and assigns necessary indices
          for the physical ports.

          If the interface represents an ETS TTP, then the value of
          this is provided when the conceptual row is created.  The
          management system may require the value to be within a range
          allocated for ETS TTPs.  This would be a value larger than
          the highest physical port number, and lower than the value
          range reserved for interface groups.  The next available
          index in this range can be retrieved from
          ethDevEtsNextIndex.

          If the interface represents an interface group, then the
          value of this is provided with the conceptual row is
          created.  The management system may require the value to be
          within a range allocated for interface groups.  This would
          be a value larger than or equal to the value of
          ethDevIfgFirstIndex.  The next available index can be
          retrieved from ethDevIfgNextIndex."
     ::= { ethIfEntry 1 }

 ethIfIfIndex OBJECT-TYPE
     SYNTAX      Integer32 (0..2147483647)
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "This variable uniquely identifies the interface in the
          ifTable. The value is 0 if the interface is not present in
          the ifTable."
     REFERENCE
         "RFC 2863, ifIndex"
     ::= { ethIfEntry 2 }

 ethIfName OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The name of the interface.  If the interface is a physical
          interface, it is named `eth<device>:<port>' where <device>
          is the value of ethDevIndex, and <port> is the value of
          ethIfIndex.  If the interface is an Ethernet Transport
          Service Trail Termination Point (ETS TTP), then the
          interface is named `ets<device>:<port>'."
     ::= { ethIfEntry 3 }

 ethIfType OBJECT-TYPE
     SYNTAX      EthInterfaceType
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The type of interface.  The value `unknown(1)' is presented
          if required hardware is missing, or if it otherwise is not
          possible to determined the type of interface."
     ::= { ethIfEntry 4 }

 ethIfCustomerId OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "An identification number representing the customer or user
          using the interface. The value could be used for e.g. Charge
          Data Records.  The value zero (0) indicates that no specific
          customer is associated with the interface."
     DEFVAL { 0 }
     ::= { ethIfEntry 5 }

 ethIfPurpose OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "A string representing the purpose of the interface.  The
          string is for administrative purpose."
     DEFVAL { ''H }
     ::= { ethIfEntry 6 }

 ethIfAdminStatus OBJECT-TYPE
     SYNTAX      INTEGER {
                     up(1),
                     down(2) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The administrative state of the interface. If the interface
          represents a Ethernet Transport Service Trail Termination
          Point (ETS TTP), then the variable controls the desired
          state of the connections.

          up(1). The interface shall be enabled.

          down(2). The interface shall be disabled."
     DEFVAL { down }
     ::= { ethIfEntry 7 }

 ethIfOperStatus OBJECT-TYPE
     SYNTAX      INTEGER {
                     up(1),
                     down(2),
                     dormant(5),
                     notPresent(6),
                     partial(9) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The actual operational state of the interface.  The value
          should normally follow the administrative state
          (ethIfAdminStatus).

          up(1). The interface is up and operational.  If the
          interface is representing a unicast ETS TTP, then both the
          originating and terminating connections have been
          established.  For a multicast type, the originating
          connection has been established to all the configured
          destinations.  Note that a multicast ETS TTP does not
          require terminating connections to be operational.  If the
          interface is representing an interface group, then the
          operational status of all member interfaces are set to
          `up(1)'.

          down(2). The interface is not operational.

          dormant(5). This value is only applicable for Ethernet
          Transport Service Trail Termination Points (ETS TTP).  The
          TTP is pending establishment of the terminating connection
          from the remote node.

          notPresent(6). The physical interface (and its device) is
          not present.

          partial(9). If the interface is representing a multicast ETS
          TTP, then the connections have been established to some, but
          not to all the configured destinations.  If the interface is
          representing an interface group, then some but not all
          member interfaces have their operational status set to
          `up(1)."
     ::= { ethIfEntry 8 }

 ethIfFailure OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A string describing the configuration or error status of the
          interface.  The string is the empty string if the
          configuration is correct, otherwise a message describing the
          error."
    ::= { ethIfEntry 9 }

 ethIfForwardingFunction OBJECT-TYPE
     SYNTAX      Integer32 (-1..2147483647)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The index (ethFwdIndex) in the ethFwdFuncTable of the
          forwarding function that this interface belongs to.  The
          value -1 denotes that the interface does not belong to any
          forwarding function.  If the referenced forwarding function
          is deleted, then the value of this object is automatically
          reset to -1.  Note that the interface can only belong to a
          forwarding function on the same device as the interface.  An
          interface group and its member interfaces always refer to
          the same forwarding function."
     DEFVAL { -1 }
     ::= { ethIfEntry 10 }

 ethIfAcceptableFrameTypes OBJECT-TYPE
     SYNTAX      INTEGER {
                     all(1),
                     vlanTagged(2),
                     untagged(3) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "all(1). All frames, regardless of whether they have a VLAN
          tag or not, shall be accepted.

          vlanTagged(2). Only frames that contain a non-zero VLAN id
          in the VLAN tag shall be accepted.

          untagged(3). Only frames without a VLAN tag or with VLAN id
          zero shall be accepted.

          The function of this variable depends on the setting of
          ethFwdVLANMode on the forwarding function to which the
          interface is connected. If the VLAN mode is set to
          `transparent(1)', then the setting of this variable is
          ignored. If the VLAN mode is set to `customer(2)', then only
          customer VLAN tags are examined. If the VLAN mode is set to
          `provider(3)', then only service VLAN tags are examined."
     DEFVAL { all }
     ::= { ethIfEntry 11 }

 ethIfTransmittedFrameType OBJECT-TYPE
     SYNTAX      INTEGER {
                     vlanTagged(2),
                     untagged(3),
                     legacy(4)
                 }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "vlanTagged(2). Forwarded frames are tagged according to
          setting on ethFwdVLANMode.

          untagged(3). VLAN tags on forwarded frames are removed
          according to setting of ethFwdVLANMode.

          legacy(4).  VLAN id is transported together with frame, but
          the frame is in itself not tagged.

          The function depends on the setting of ethFwdVLANMode. If
          ethFwdVLANMode is set to `transparent(1)', then the setting
          of this variable is ignored. If it is set to `customer(2),
          then only customer VLAN tags are handled, and a service VLAN
          tag on the frame is unchanged. If the value is
          `provider(3)', then only service VLAN tags are handled, and
          a customer VLAN tag is unchanged."
     DEFVAL { vlanTagged }
     ::= { ethIfEntry 12 }

 ethIfDefaultVLAN OBJECT-TYPE
     SYNTAX      Integer32 (1..4094)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "If an untagged frame is received on this interface, it will
          be tagged with a VLAN having a VLAN id as specified in this
          variable.  The VLAN tag will be a customer or service tag as
          set on ethFwdVLANMode, or ignored if set to `transparent(1)'."
     DEFVAL { 1 }
     ::= { ethIfEntry 13 }

 ethIfDefaultEthernetPriority OBJECT-TYPE
     SYNTAX      Integer32 (0..7)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Specifies the Ethernet priority assigned to a frame that has
          arrived via this port, and that does not have a VLAN tag.

          Priority will only be assigned to the frame if it should be
          sent out tagged on another port. This object is not
          affecting the traffic class assigned to the frame. The
          traffic class will be assigned to the frame based on the
          DSCP (if ethIfPriorityMode is set to `diffserv(2)') or to
          the value of ethIfDefaultTrafficClass."
     DEFVAL { 0 }
     ::= { ethIfEntry 14 }

 ethIfPriorityMode OBJECT-TYPE
     SYNTAX      INTEGER {
                     ethernet(1),
                     diffserv(2) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Selects the method to use when assigning a flow group to a
          frame that arrives via this interface:

          ethernet(1). The user bits are used.

          diffserv(2). The differential service code point (DSCP)
          field of the IP header is translated using the
          ethFwdDiffservTable into a flow group."
     DEFVAL { ethernet }
     ::= { ethIfEntry 15 }

 ethIfDefaultTrafficClass OBJECT-TYPE
     SYNTAX      TrafficClass
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Frames that do have any priority information are assigned 
          this traffic class.  See ethDevCapMaxTrafficClass for max
          value supported by the device."
     DEFVAL { 0 }
     ::= { ethIfEntry 16 }

 ethIfFlowGroupMap OBJECT-TYPE
     SYNTAX      OCTET STRING (SIZE(8))
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Represents a flow group to traffic class map.  The octet
          string consists of eight octets, one for each flow group.
          The position in the string represents the flow group, where
          the first (left-most) position represents flow group 0.  The
          value of the octet represents the mapped traffic class for
          the flow group, where the value of zero represents traffic
          class 0 and so on.  See ethDevCapMaxTrafficClass for max
          value supported by the device."
     DEFVAL { '00000000'H }
     ::= { ethIfEntry 17 }

 ethIfLearning OBJECT-TYPE
     SYNTAX      INTEGER {
                      on(1),
                      off(2) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Specifies if MAC learning is enabled on the interface.

          on(1). MAC learning is enabled.  The forwarding function
          learns what interface to use for a destination by looking at
          the source MAC address in received frames.

          off(2) MAC learning is disabled.

          Regardless of the setting, learning is disabled if
          ethFwdMACMode is set to nomac(3) or if it is set to auto(1)
          and less than three interfaces are connected to the
          forwarding function."
     DEFVAL { on }
     ::= { ethIfEntry 18 }

 ethIfInSpeed OBJECT-TYPE
     SYNTAX      Gauge32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "An estimate of the interface's current input bandwidth in
          bits per second.  If the interface is a physical interface
          (represented in ethDot3Table), then this value is the same
          as ethDot3ActiveSpeed.  If the interface represents an
          Ethernet Transport Service Trail Termination Point (ETS
          TTP), then this value is the sum of the bandwidth of all
          terminating channels connected to this interface.  If the
          bandwidth of the interface is greater than the maximum value
          reportable by this object then this object should report its
          maximum value (4,294,967,295) and ethIfInHighSpeed must be
          used to report the interface's speed."
     ::= { ethIfEntry 19 }

 ethIfInHighSpeed OBJECT-TYPE
     SYNTAX      Gauge32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "An estimate of the interface's current input bandwidth in
          units of 1,000,000 bits per second.  If this object reports a
          value of `n' then the speed of the interface is somewhere in
          the range of `n-500,000' to `n+499,999'.  For interfaces
          which do not vary in bandwidth or for those where no accurate
          estimation can be made, this object should contain the
          nominal bandwidth."
     ::= { ethIfEntry 20 }

 ethIfOutSpeed OBJECT-TYPE
     SYNTAX      Gauge32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "An estimate of the interface's current output bandwidth in
          bits per second.  If the interface is a physical interface
          (represented in ethDot3Table), then this value is the same
          as ethDot3ActiveSpeed.  If the interface represents an
          Ethernet Transport Service Trail Termination Point (ETS
          TTP), then this value is the sum of the bandwidth of all
          originating channels connected to this interface.  If the
          bandwidth of the interface is greater than the maximum value
          reportable by this object then this object should report its
          maximum value (4,294,967,295) and ethIfOutHighSpeed must be
          used to report the interface's speed."
     ::= { ethIfEntry 21 }

 ethIfOutHighSpeed OBJECT-TYPE
     SYNTAX      Gauge32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "An estimate of the interface's current output bandwidth in
          units of 1,000,000 bits per second.  If this object reports a
          value of `n' then the speed of the interface is somewhere in
          the range of `n-500,000' to `n+499,999'.  For interfaces
          which do not vary in bandwidth or for those where no accurate
          estimation can be made, this object should contain the
          nominal bandwidth."
     ::= { ethIfEntry 22 }

 ethIfVLANNextIndex OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Next available value of ethIfVLANSetIndex in
          ethIfVLANSetTable for this interface."
     ::= { ethIfEntry 23 }

 ethIfLastChange OBJECT-TYPE
     SYNTAX      TimeTicks
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The value of sysUpTime at the time when the operational
          state or any configuration was last changed on this
          interface."
     ::= { ethIfEntry 24 }

 ethIfSrcPmReference OBJECT-TYPE
     SYNTAX      RowPointer
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A reference to an object that presents performance data for
          the source side of the interface.  The object is not part of
          this MIB."
     ::= { ethIfEntry 25 }

 ethIfSnkPmReference OBJECT-TYPE
     SYNTAX      RowPointer
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A reference to an object that presents performance data for
          the sink side of the interface.  The object is not part of
          this MIB."
     ::= { ethIfEntry 26 }

 ethIfSrcDegThreshold OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Threshold in number of dropped frames per second for
          generating a degraded second.  A degraded second is
          generated when the number of dropped frames are equal or
          larger than the this threshold.  A value of 0 disables
          degraded seconds detection."
     DEFVAL { 100 }
     ::= { ethIfEntry 27 }

 ethIfSnkDegThreshold OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Threshold in number of dropped frames per second for
          generating a degraded second.  A degraded second is
          generated when the number of dropped frames are equal or
          larger than the this threshold.  A value of 0 disables
          degraded seconds detection."
     DEFVAL { 100 }
     ::= { ethIfEntry 28 }

 ethIfSrcDegPeriod OBJECT-TYPE
     SYNTAX      Unsigned32 (2..10)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Number of consecutive bad seconds that are needed for generating
          degraded signal alarm and/or AIS."
     DEFVAL { 7 }
     ::= { ethIfEntry 29 }

 ethIfSnkDegPeriod OBJECT-TYPE
     SYNTAX      Unsigned32 (2..10)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Number of consecutive bad seconds that are needed for generating
          degraded signal alarm and/or AIS."
     DEFVAL { 7 }
     ::= { ethIfEntry 30 }

 ethIfSrcReducedBitRateThreshold OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Reduced Bit Rate threshold in bits per second that is needed
          for generating a major alarm and/or AIS.  If the threshold
          for the interface is greater than the maximum value
          reportable by this object then this object should report its
          maximum value (4,294,967,295) and
          ethIfSrcReducedBitRateHighThreshold must be used to set or
          report the threshold value.  A value of 0 disables the
          reduced bit rate detection."
     DEFVAL { 0 }
     ::= { ethIfEntry 31 }

 ethIfSnkReducedBitRateThreshold OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Reduced Bit Rate threshold in bits per second that is needed
          for generating a major alarm and/or AIS.  If the threshold
          for the interface is greater than the maximum value
          reportable by this object then this object should report its
          maximum value (4,294,967,295) and
          ethIfSnkReducedBitRateHighThreshold must be used to set or
          report the threshold value.  A value of 0 disables the
          reduced bit rate detection."
     DEFVAL { 0 }
     ::= { ethIfEntry 32 }

 ethIfSrcReducedBitRateHighThreshold OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Reduced Bit Rate threshold in 1,000,000 bits per second that
          is needed for generating a major alarm and/or AIS.  If this
          object reports a value of `n' then the threshold value is
          somewhere in the range of `n-500,000' to `n+499,999'."
     DEFVAL { 0 }
     ::= { ethIfEntry 33 }

 ethIfSnkReducedBitRateHighThreshold OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Reduced Bit Rate threshold in 1,000,000 bits per second that
          is needed for generating a major alarm and/or AIS.  If this
          object reports a value of `n' then the threshold value is
          somewhere in the range of `n-500,000' to `n+499,999'."
     DEFVAL { 0 }
     ::= { ethIfEntry 34 }

 ethIfSrcReducedBitRateAIS OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Defines if Reduced Bit Rate signal shall result in
          generation of AIS."
     DEFVAL { false }
     ::= { ethIfEntry 35 }

 ethIfSnkReducedBitRateAIS OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Defines if Reduced Bit Rate signal shall result in
          generation of AIS."
     DEFVAL { false }
     ::= { ethIfEntry 36 }

 ethIfSnkDegAIS OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Defines if degraded signal on the sink interface shall
          result in generation of AIS."
     DEFVAL { false }
     ::= { ethIfEntry 37 }

 ethIfSrcMinorReducedBitRateThreshold OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Reduced Bit Rate threshold in bits per second that is needed
          for generating a minor alarm.  If the threshold for the
          interface is greater than the maximum value reportable by
          this object then this object should report its maximum value
          (4,294,967,295) and ethIfSrcMinorReducedBitRateHighThreshold
          must be used to set or report the threshold value.  A value 
          of 0 disables the reduced bit rate detection."
     DEFVAL { 0 }
     ::= { ethIfEntry 38 }

 ethIfSnkMinorReducedBitRateThreshold OBJECT-TYPE 
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Reduced Bit Rate threshold in bits per second that is needed
          for generating a minor alarm.  If the threshold
          for the interface is greater than the maximum value
          reportable by this object then this object should report its
          maximum value (4,294,967,295) and
          ethIfSnkMinorReducedBitRateHighThreshold must be used to set
          or report the threshold value.  A value of 0 disables the
          reduced bit rate detection."
     DEFVAL { 0 }
     ::= { ethIfEntry 39 }

 ethIfSrcMinorReducedBitRateHighThreshold OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Reduced Bit Rate threshold in 1,000,000 bits per second that
          is needed for generating a minor alarm.  If this object
          reports a value of `n' then the threshold value is somewhere
          in the range of `n-500,000' to `n+499,999'."
     DEFVAL { 0 }
     ::= { ethIfEntry 40 }

 ethIfSnkMinorReducedBitRateHighThreshold OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Reduced Bit Rate threshold in 1,000,000 bits per second that
          is needed for generating a minor alarm.  If this object
          reports a value of `n' then the threshold value is somewhere
          in the range of `n-500,000' to `n+499,999'."
     DEFVAL { 0 }
     ::= { ethIfEntry 41 }

 ethIfSrcFailure OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A string describing the configuration or error status of the
          source sub-interface.  The string is the empty string if the
          configuration is correct, otherwise a message describing the
          error."
    ::= { ethIfEntry 42 }

 ethIfSnkFailure OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A string describing the configuration or error status of the
          sink sub-interface.  The string is the empty string if the
          configuration is correct, otherwise a message describing the
          error."
    ::= { ethIfEntry 43 }

 ethIfInterfaceGroup OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The index (ethIfIndex) in the ethIfTable of the interface
          group that this interface belongs to.  The value -1 denotes
          that the interface does not belong to an interface group.
          Note that the interface can only belong to an interface
          group on the same device as the interface.  The interface
          can only belong to an interface group type of object,
          meaning that the object can only be set to an index of an
          object that exist in the ethIfgTable or where the value of
          ethIfType is `bETSGroup'.

          Setting this to the index of the interface group will add
          the interface to the interface group, making it a member of
          that interface group.  If this is the first interface added
          to the interface group, then the interface group will
          inherit values on some of its object from this interface.
          If this is an additional interface added to the interface
          group, then this interface will inherit the same values from
          the interface group."
     ::= { ethIfEntry 44 }

 ethIfMaxMaxQueueFrames OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The maximum allowed value for the maximum queue size for
          queues on the interface, ethIfQueueMaxFrames."
     ::= { ethIfEntry 45 }

 ethIfDefaultDropPrecedence OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Frames that do have any priority information are assigned
          this drop precedence (DP).  The drop precedence must be in
          the range 0 to (ethDevCapDropPrecedenceLevels - 1)."
     DEFVAL { 0 }
     ::= { ethIfEntry 46 }

 ethIfDropPrecedenceMap OBJECT-TYPE
     SYNTAX      OCTET STRING (SIZE(8))
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Represents a flow group to drop precedence (DP) map.  The
          octet string consists of eight octets, one for each flow
          group.  The position in the string represents the flow
          group, where the first (left-most) position represents flow
          group 0.  The value of the octet represents the mapped drop
          precedence for the flow group, where the value of zero
          represents drop precedence 0 and so on.  The drop precedence
          must be in the range 0 to (ethDevCapDropPrecedenceLevels -
          1)."
     DEFVAL { '00000000'H }
     ::= { ethIfEntry 47 }


 -- End of Interface base table


 -- Queue Table

 ethIfQueueTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthIfQueueEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Queues, one queue per interface and traffic class."
     ::= { ethInterfaceGroup 3 }

 ethIfQueueEntry OBJECT-TYPE
     SYNTAX      EthIfQueueEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An entry representing one queue."
     INDEX { ethDevIndex, ethIfIndex, ethIfQueueTrafficClass }
     ::= { ethIfQueueTable 1 }

 EthIfQueueEntry ::= SEQUENCE {
      ethIfQueueTrafficClass TrafficClass,
      ethIfQueueMaxOctets    Integer32,
      ethIfQueueMaxFrames    Integer32
 }

 ethIfQueueTrafficClass OBJECT-TYPE
     SYNTAX      TrafficClass
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Traffic class representing the queue.  The index ranges from
          0 to the max number of traffic classes - 1.  See
          ethDevCapMaxTrafficClass for max value supported by the
          device."
     ::= { ethIfQueueEntry 1 }

 ethIfQueueMaxOctets OBJECT-TYPE
     SYNTAX      Integer32 (-1..2147483647)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The maximum number of octets that can be queued for input on
          the interface and traffic class.  If an arriving frame is
          too large to fit into the queue, the frame is dropped.  A
          setting of -1 results in a queue setting so that the
          queuing delay is less than one second.  Note that
          ethDevCapMaxMaxQueueOctets specifies the maximum value
          supported by the device."
     DEFVAL { -1 }
     ::= { ethIfQueueEntry 2 }

 ethIfQueueMaxFrames OBJECT-TYPE
     SYNTAX      Integer32 (-1..2147483647)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The maximum number of frames that can be queued for input on
          the interface and traffic class.  A setting of 0 means that
          queuing is disabled and frames destined for the queue are
          dropped.  A setting of -1 means that the queue length is
          assigned automatically based on the number of available
          buffers.  Note that ethIfMaxMaxQueueFrames specifies the
          maximum value supported by the interface."
     DEFVAL { -1 }
     ::= { ethIfQueueEntry 3 }

 -- End of Queue table


 -- VLAN sets

 ethIfVLANSetsTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthIfVLANSetsEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "A table with VLAN sets.  An interface belongs to the VLANs
          described by the union of all VLAN ids specified in all VLAN
          sets for the interface.  Is possible to describe the same
          VLAN ids either by using one or by using multiple VLAN
          sets.  Because the administrative data customer id and purpose
          can be set per VLAN set, it is possible to assign these
          differently for different VLAN ids when using multiple VLAN
          sets."
     ::= { ethInterfaceGroup 4 }

 ethIfVLANSetsEntry OBJECT-TYPE
     SYNTAX      EthIfVLANSetsEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Represents a VLAN set.  A VLAN set represents a list of VLAN
          ids that an interface shall belong to."
     INDEX { ethDevIndex, ethIfIndex, ethIfVLANSetIndex }
     ::= { ethIfVLANSetsTable 1 }

 EthIfVLANSetsEntry ::= SEQUENCE {
      ethIfVLANSetIndex   Unsigned32,
      ethIfVLANRowStatus  RowStatus,
      ethIfVLANSet        VLANSet,
      ethIfVLANCustomerId Unsigned32,
      ethIfVLANPurpose    SnmpAdminString
 }

 ethIfVLANSetIndex OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An index representing the VLAN set."
     ::= { ethIfVLANSetsEntry 1 }

 ethIfVLANRowStatus OBJECT-TYPE
     SYNTAX      RowStatus
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
         "See SNMPv2-TC.  The following values are supported:

          active(1). The object always reads active.

          createAndGo(4). A new conceptual row is created representing
          a new VLAN set.

          destroy(6). The VLAN set is deleted."
     ::= { ethIfVLANSetsEntry 2 }

 ethIfVLANSet OBJECT-TYPE
     SYNTAX      VLANSet
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
        "A set of VLAN ids that the interface belongs to."
     DEFVAL { ''H }
     ::= { ethIfVLANSetsEntry 3 }

 ethIfVLANCustomerId OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
         "An identification number representing the customer or user
          using the VLAN set. The value could be used for e.g. Charge
          Data Records.  The value zero (0) indicates that no specific
          customer shall be associated with the VLAN set."
     DEFVAL { 0 }
     ::= { ethIfVLANSetsEntry 4 }

 ethIfVLANPurpose OBJECT-TYPE
     SYNTAX      SnmpAdminString
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
         "A string representing the purpose of the VLAN set.  The
          string is for administrative purpose."
     DEFVAL { ''H }
     ::= { ethIfVLANSetsEntry 5 }

 -- End of VLAN sets
 
 
 -- Dot3 table for physical interfaces
 
 ethDot3Table OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthDot3Entry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Table that contains representations of physical interfaces."
     ::= { ethInterfaceGroup 5 }
 
 ethDot3Entry OBJECT-TYPE
     SYNTAX      EthDot3Entry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An entry representing one physical interface.  For each
          conceptual row in this table, a conceptual row with the same
          index exists in the interface base table ethIfTable.  Entries
          in this table shall automatically be created when a device is
          added to the ethDevTable, and are removed when the device is
          destroyed."
     INDEX { ethDevIndex, ethIfIndex }
     ::= { ethDot3Table 1 }
 
 EthDot3Entry ::= SEQUENCE {
      ethDot3AutoNegotiate          TruthValue,
      ethDot3AdvertisedSpeed        AdvertisedSpeed,
      ethDot3AdvertisedDuplex       AdvertisedDuplex,
      ethDot3AdvertisedFlowControl  AdvertisedFlowControl,
      ethDot3ActiveSpeed            Unsigned32,
      ethDot3ActiveDuplex           INTEGER,
      ethDot3ActiveFlowControl      INTEGER,
      ethDot3ForceVLANTagged        VLANSet,
      ethDot3ForceVLANUntagged      VLANSet,
      ethDot3SupportedSpeeds        AdvertisedSpeed,
      ethDot3ResetToDefaults        Integer32,
      ethDot3AutoNegotiateStatus    TruthValue,
      ethDot3AutoNegotiateAllowed   TruthValue,
      ethDot3AutoNegotiateMandatory TruthValue,
      ethDot3SupportedIfType        BITS,
      ethDot3SelectedIfType         EthInterfaceType }
 
 ethDot3AutoNegotiate OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Controls the desired value of auto-negotiation:
         
          true(1). Auto-negotiation shall be enabled. If the interface
          does not allow auto-negotiation, then this object is ignored.

          false(2). Auto-negotiation shall be disabled.

          See ethDot3AutoNegotiateStatus for actual resulting status."
     DEFVAL { true }
     ::= { ethDot3Entry 1 }
 
 ethDot3AdvertisedSpeed OBJECT-TYPE
     SYNTAX      AdvertisedSpeed
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The link speeds that the interface shall advertise that it
          supports.
 
          If auto-negotiation is disabled, then use the highest set
          link speed."
    DEFVAL { { auto } }
     ::= { ethDot3Entry 2 }
 
 ethDot3AdvertisedDuplex OBJECT-TYPE
     SYNTAX      AdvertisedDuplex
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The duplex settings that the interface shall advertise that
          it supports. See ethDevCapAdvertisedDuplex for allowed duplex
          settings on the device."
     DEFVAL { { auto } }
     ::= { ethDot3Entry 3 }
 
 ethDot3AdvertisedFlowControl OBJECT-TYPE
     SYNTAX      AdvertisedFlowControl
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The flow control settings that the interface shall advertise
          that it supports.  If auto-negotiation is disabled
          (ethDot3SAutoNegotiate), then this object describes the
          flow control that shall be used. `auto(0)' is then equivalent
          to flow control in both direction."
     REFERENCE
         "IEEE 802.3-2005 Section Two"
     DEFVAL { { auto } }
     ::= { ethDot3Entry 4 }
 
 ethDot3ActiveSpeed OBJECT-TYPE
     SYNTAX      Unsigned32 (0|10|100|1000|10000)
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The active links speed in Mbps."
     ::= { ethDot3Entry 5 }
 
 ethDot3ActiveDuplex OBJECT-TYPE
     SYNTAX      INTEGER {
                     fullDuplex(1),
                     halfDuplex(2),
                     notApplicable(3) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The active link duplex. If the interface is down, then
          `notApplicable(3)' is presented."
 ::= { ethDot3Entry 6 }
 
 ethDot3ActiveFlowControl OBJECT-TYPE
     SYNTAX      INTEGER {
                     all(1),
                     receive(2),
                     transmit(3),
                     none(4),
                     notApplicable(5) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The active link flow control. If the interface is down, then
          `notApplicable(5)' is presented."
     ::= { ethDot3Entry 7 }
 
 ethDot3ForceVLANTagged OBJECT-TYPE
     SYNTAX      VLANSet
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Specifies a set of VLAN ids for which frames shall be
          forwarded with a tag although ethIfTransmittedFrameType is
          set to `untagged(3)'.  The setting of this variable has no
          meaning if ethIfTransmittedFrameType is set to
          `vlanTagged(2)', or if ethFwdVLANMode is set to
          `transparent(1)'
 
          The value of ethFwdVLANMode specifies if the customer or
          service VLAN ids are interpreted."
     DEFVAL { ''H }
     ::= { ethDot3Entry 8 }
 
 ethDot3ForceVLANUntagged OBJECT-TYPE
     SYNTAX      VLANSet
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Specifies a set of VLAN ids for which frames shall be
          forwarded without a tag although ethIfTransmittedFrameType
          is set to `vlanTagged(2)'.  The setting of this variable has
          no meaning if ethIfTransmittedFrameType is set to
          `untagged(3)', or if ethFwdVLANMode is set to
          `transparent(1)'.
 
          The value of ethFwdVLANMode specifies if the customer or
          service VLAN ids are interpreted."
     DEFVAL { ''H }
     ::= { ethDot3Entry 9 }
 
 ethDot3SupportedSpeeds OBJECT-TYPE
     SYNTAX      AdvertisedSpeed
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "All supported speeds for ethDot3AdvertisedSpeed.  Note that
          this value depends on the SFP."
     ::= { ethDot3Entry 10 }
 
 ethDot3ResetToDefaults OBJECT-TYPE
     SYNTAX      Integer32 (0)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Writing a zero (0) resets all the the settings on the
          interface to its default values."
     ::= { ethDot3Entry 11 }

 ethDot3AutoNegotiateStatus OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Indicates if auto-negotiation is enabled or not."
     ::= { ethDot3Entry 12 }

 ethDot3AutoNegotiateAllowed OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Indicates if auto-negotiation is permitted with the 
          current combination of interface type and speed."
     ::= { ethDot3Entry 13 }

 ethDot3AutoNegotiateMandatory OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Indicates if auto-negotiation is required with the 
          current combination of interface type and speed."
     ::= { ethDot3Entry 14 }

 ethDot3SupportedIfType OBJECT-TYPE
     SYNTAX      BITS {
                  -- auto(0),
                  -- unknown(1),
                  -- bETS(2),
                     b100baseTX(3),
                     b1000baseSX(4),
                     b1000baseLX(5),
                     b1000baseT(6),
                  -- bETSGroup(7),
                     b10GbaseSR(8),
                     b10GbaseLR(9),
                     b10GbaseLRM(10),
                     b10GbaseER(11),
                     b10GbaseZR(12) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "All supported interface types on the interface.  This
          denotes what can be set on ethDot3SelectedIfType.  Note that
          this value depends on the SFP."
     ::= { ethDot3Entry 15 }

 ethDot3SelectedIfType OBJECT-TYPE
     SYNTAX      EthInterfaceType
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Selected interface speed.  A selected value of `auto(0)'
          means that the interface type with the highest available
          line speed will be used.  See ethIfType for the currently
          used type. The interface type must correspond to a supported
          type as presented by ethDot3SupportedIfType. "
     ::= { ethDot3Entry 16 }

  
 
 -- End of Dot3 table for physical interfaces (MAU)
 
 
 -- Ethernet Transport Service (ETS) interfaces table
 
 ethEtsTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthEtsEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Table that contains definitions of Trail Termination Points
          (TTPs) for Ethernet Transport Service. For every row in the
          table, a corresponding row exists in the table
          ethIfTable."
     ::= { ethInterfaceGroup 6 }
 
 ethEtsEntry OBJECT-TYPE
     SYNTAX      EthEtsEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
        "An entry representing one ETS TTP."
     INDEX { ethDevIndex, ethIfIndex }
     ::= { ethEtsTable 1 }
 
 EthEtsEntry ::= SEQUENCE {
      ethEtsRowStatus            RowStatus,
      ethEtsMode                 INTEGER,
      ethEtsLocalDsti            Dsti,
      ethEtsODescription         Unsigned32,
      ethEtsOConnection          Unsigned32,
      ethEtsSnkExpectChannel     TruthValue
 }
 
 ethEtsRowStatus OBJECT-TYPE
     SYNTAX      RowStatus
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
         "See SNMPv2-TC. The following values are supported:
 
          active(1). The object always reads active.
 
          createAndGo(4). A new conceptual row is created representing
          a new Ethernet Transport Service Trail Termination Point,
          ETS TTP. To activate the connection, set the administrative
          status to up(1) after all columnar objects have been updated.
 
          destroy(6). The connection is terminated and deleted."
     ::= { ethEtsEntry 1 }
 
 ethEtsMode OBJECT-TYPE
     SYNTAX      INTEGER {
                      unicast(1),
                      multicast(2),
                      unspecified(3) }
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
         "Specifies whether the ETS TTP shall establish unicast or
          multicast connection."
     DEFVAL { unspecified }
     ::= { ethEtsEntry 2 }
 
 ethEtsLocalDsti OBJECT-TYPE
     SYNTAX      Dsti
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
         "The DSTI (DTM Service Type Instance) for the local
          application implementing the service. A valid value is
          automatically assigned when the conceptual row is created.
          Any unique value may be assigned to this object."       
     ::= { ethEtsEntry 3 }
 
 ethEtsODescription OBJECT-TYPE
     SYNTAX      Unsigned32 (1..4294967295)
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A reference to the corresponding description of the
          connection in the chmgrODescriptionTable in the Channel
          Manager MIB (NETI-CHMGR-MIB).  The value is the index into
          the table, i.e. the value of chmgrODescrIndex.  When a row is
          created in or deleted from this table, the corresponding row
          is created in or deleted from the table
          chmgrODescriptionTable."
     ::= { ethEtsEntry 4 }
 
 ethEtsOConnection OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A reference to the corresponding originating connection in
          the table chmgrOConnectionTable in the Channel Manager MIB
          (NETI-CHMGR-MIB).  When an originating connection is
          established from this trail termination point, an entry is
          created in the table.  The value is the index into that
          table, i.e. the value of chmgrOConnIndex.  If no connection
          is established or associated with this connection, this is
          indicated by a value of zero (0)."
     ::= { ethEtsEntry 5 }

 ethEtsSnkExpectChannel OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Controls whether a channel is expected to be terminated on
          this ETS TTP or not. This value can only be set if the mode 
          (ethEtsMode) is multicast.

          true(1).  A channel is expected to terminate.  If a channel
          is not terminating, then this is regarded as an anomaly.

          false(2).  A channel is not expected to terminate.  Absence
          of a terminating channel is considered to be correct."
     DEFVAL { false }
     ::= { ethEtsEntry 6 }

 
 -- End of the ETS table
 
 
 -- The ETS Terminating Connection table
 
 ethEtsTConnectionTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthEtsTConnectionEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Table that holds references to terminating connections for a
          ETS trail termination point. A trail termination point can
          terminate only one connection if a unicast connection is
          configured, and multiple connections if a multicast
          connection is configured."
     ::= { ethInterfaceGroup 7 }
 
 ethEtsTConnectionEntry OBJECT-TYPE
     SYNTAX      EthEtsTConnectionEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An entry representing the reference to one terminating
          connection."
     INDEX { ethDevIndex, ethIfIndex, ethEtsTConnectionIndex }
     ::= { ethEtsTConnectionTable 1 }
 
 EthEtsTConnectionEntry ::= SEQUENCE {
     ethEtsTConnectionIndex      Unsigned32,
     ethEtsTConnectionRowStatus  RowStatus,
     ethEtsTConnection           Unsigned32
 }
 
 ethEtsTConnectionIndex OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The index representing one terminating connection for the
          trail terminating point. If the trail terminating point is
          unicast, the value of the index is always one (1) as a
          unicast trail terminating point can only terminate one
          connection."
     ::= { ethEtsTConnectionEntry 1 }
 
 ethEtsTConnectionRowStatus OBJECT-TYPE
     SYNTAX      RowStatus
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Row status according to SNMPv2-TC. It is only possible to
          delete rows. Rows are created by the application. If a row is
          deleted that represents an active connection, a new row will
          be created representing that connection. The supported values
          are:
 
          active(1). The value always reads active.
 
          destroy(6). The terminating side of the connection is
          deleted."
     ::= { ethEtsTConnectionEntry 2 }
 
 ethEtsTConnection OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A reference to the corresponding terminating connection in
          the table chmgrTConnectionTable in the Channel Manager MIB
          (NETI-CHMGR-MIB). When a connection is terminated on this
          trail termination point, an entry is created in the
          table. The value is the index into that table, i.e. the value
          of chmgrTConnIndex.  If no terminating connections exist,
          this is indicated by a value of zero (0)."
     ::= { ethEtsTConnectionEntry 3 }
 
 -- End of the ETS Terminating Connection table
 
 
 -- The DSTI to Index Lookup Table
 
 ethEtsIndexLookupTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthEtsIndexLookupEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Table to lookup the index in the ethEtsTable, corresponding
          to a specific DSTI."
     ::= { ethInterfaceGroup 8 }
 
 ethEtsIndexLookupEntry OBJECT-TYPE
     SYNTAX      EthEtsIndexLookupEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "One conceptual row representing one lookup entry."
     INDEX { ethEtsLocalDsti }
     ::= { ethEtsIndexLookupTable 1 }
 
 EthEtsIndexLookupEntry ::= SEQUENCE {
      ethEtsIndexLookupDevIndex  Unsigned32,
      ethEtsIndexLookupIfIndex   Unsigned32
 }
 
 ethEtsIndexLookupDevIndex OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The value refers to the ethDevIndex in the ethEtsTable for
          the ETS interface represented by the DSTI."
     ::= { ethEtsIndexLookupEntry 1 }
 
 ethEtsIndexLookupIfIndex OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The value refers to the ethIfIndex in the ethEtsTable for 
          the ETS interface represented by the DSTI."
     ::= { ethEtsIndexLookupEntry 2 }
 
 -- End of the DSTI to Index Lookup Table


 -- Rapid Spanning Tree Protocol interface table

 ethIfRstpTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthIfRstpEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "The table contains Rapid Spanning Tree Protocol (RSTP)
          specific configurations and data for ports. If a port does
          not support RSTP, then the table will not hold an entry for
          that port."
     ::= { ethInterfaceGroup 9 }

 ethIfRstpEntry OBJECT-TYPE
     SYNTAX      EthIfRstpEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An entry represents Rapid Spanning Tree Protocol (RSTP) data
          for one port (interface)."
     INDEX { ethDevIndex, ethIfIndex }
     ::= { ethIfRstpTable 1 }

 EthIfRstpEntry ::= SEQUENCE {
      ethIfRstpPortIdentifier            PortIdentifier,
      ethIfRstpPriority                  Integer32,
      ethIfRstpState                     INTEGER,
      ethIfRstpTopologyChangeAcknowledge TruthValue,
      ethIfRstpPathCost                  Integer32,
      ethIfRstpDesignatedRoot            BridgeIdentifier,
      ethIfRstpDesignatedCost            Integer32,
      ethIfRstpDesignatedBridge          BridgeIdentifier,
      ethIfRstpDesignatedPort            PortIdentifier,
      ethIfRstpAdminEdgePort             INTEGER,
      ethIfRstpOperEdgePort              TruthValue,
      ethIfRstpAdminPointToPointMAC      INTEGER,
      ethIfRstpOperPointToPointMAC       TruthValue,
      ethIfRstpCurrentPathCost           Integer32
}

 ethIfRstpPortIdentifier OBJECT-TYPE
     SYNTAX      PortIdentifier
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The unique port identifier."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.2.1.3."
     ::= { ethIfRstpEntry 1 }

 ethIfRstpPriority OBJECT-TYPE
     SYNTAX      Integer32 (0..240)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The port priority. The value must be set in increments of
          16."
      REFERENCE
         "IEEE 802.1D-2004: clause 14.8.2.3.2 and 17.14."
    DEFVAL { 128 }
     ::= { ethIfRstpEntry 2 }

 ethIfRstpState OBJECT-TYPE
     SYNTAX      INTEGER {
                     discarding(1),
                     learning(2),
                     forwarding(3) }
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Describes if the port forwards MAC frames and whether
          or not it learns from their source addresses.

          discarding(1).  The port is not enabled or has been excluded
          from forwarding and learning.

          learning(2).  The port has learning enabled, but forwarding
          disabled.

          forwarding(3).  The port both learns and forwards frames."
     REFERENCE
         "IEEE 802.1D-2004: clause 7.4."
     ::= { ethIfRstpEntry 3 }

 ethIfRstpTopologyChangeAcknowledge OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "true(1).  A topology change is in progress and the port is
          about to acknowledge this.

          false(2).  A topology change is not in progress."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.2.1.3."
     ::= { ethIfRstpEntry 4 }

 ethIfRstpPathCost OBJECT-TYPE
     SYNTAX      Integer32 (0..200000000)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The contribution of this port to the path cost of paths
          towards the spanning tree root which include this port.

          A value of zero (0) means that the path cost is
          automatically calculated based on the port speed, as per
          formula:

             20,000,000 / min(ethIfInSpeed, ethIfOutSpeed) "
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.2.1.3."
     DEFVAL { 0 }
     ::= { ethIfRstpEntry 5 }

 ethIfRstpDesignatedRoot OBJECT-TYPE
     SYNTAX      BridgeIdentifier
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The unique bridge identifier of the root bridge."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.2.1.3."
     ::= { ethIfRstpEntry 6 }

 ethIfRstpDesignatedCost OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The path cost to the root bridge from the designated
          bridge."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.2.1.3."
     ::= { ethIfRstpEntry 7 }

 ethIfRstpDesignatedBridge OBJECT-TYPE
     SYNTAX      BridgeIdentifier
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The bridge identifier of the best bridge connected to 
          this port's segment."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.2.1.3."
     ::= { ethIfRstpEntry 8 }

 ethIfRstpDesignatedPort OBJECT-TYPE
     SYNTAX      PortIdentifier
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The port identifier of the best port on the Designated
          Bridge."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.2.1.3."
    ::= { ethIfRstpEntry 9 }

 ethIfRstpAdminEdgePort OBJECT-TYPE
     SYNTAX      INTEGER {
                     auto(0),
                     true(1),
                     false(2) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Setting of the edge port state of this port.

          auto(0).  The setting of the port as edge port or not is done
          automatically. See ethIfRstpOperEdgePort for the current value
          when this object is set to `auto(0)'.

          true(1).  The port is an edge port.

          false(2).  The port is not an edge port.  "
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.2.1.3 and 17.25."
     DEFVAL { auto }
     ::= { ethIfRstpEntry 10 }

 ethIfRstpOperEdgePort OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The actual state of the port. See ethIfRstpAdminEdgePort for
          setting of the port state.

          true(1).  The port is an edge port.

          false(2).  The port is not an edge port."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.2.1.3 and 17.25."
     ::= { ethIfRstpEntry 11 }

 ethIfRstpAdminPointToPointMAC OBJECT-TYPE
     SYNTAX      INTEGER {
                     auto(0),
                     true(1),
                     false(2) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Setting of the point-to-point state of this port.

          auto(0).  The state becomes `true(1)' if the port is a
          full-duplex physical port, or an ETS TTP with a maximum of
          one terminating channel. Otherwise the state becomes
          `false(2)'.

          true(1). The port is a point-to-point port.

          false(2).  The port is not a point-to-point port."
     REFERENCE
         "IEEE 802.1D-2004: clause 6.4.3."
     DEFVAL { auto }
     ::= { ethIfRstpEntry 12 }

  ethIfRstpOperPointToPointMAC OBJECT-TYPE
     SYNTAX      TruthValue
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         " The point-to-point state of this port."
     REFERENCE
         "IEEE 802.1D-2004: clause 14.8.2.1.3."
     ::= { ethIfRstpEntry 13 }

 ethIfRstpCurrentPathCost OBJECT-TYPE
     SYNTAX      Integer32 (1..200000000)
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The contribution of this port to the path cost of paths
          towards the spanning tree root which include this port.
          Unless ethIfRstpPathCost is `auto(1), then this always reads
          the same value as that object."
::= { ethIfRstpEntry 14 }

 -- End of Rapid Spanning Tree Protocol Table

 -- Start of Interface Group Table

 ethIfgTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF EthIfgEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Table that contains definitions of interface groups.  For
         every row in the table, a corresponding row exists in the
         table ethIfTable."
    ::= { ethInterfaceGroup 10 }

 ethIfgEntry OBJECT-TYPE
    SYNTAX      EthIfgEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
         "An entry representing one interface group.  An interface
          group is a virtual interface that groups two ETS interfaces
          for 1+1 protected transport of Ethernet."
    INDEX { ethDevIndex, ethIfIndex }
    ::= { ethIfgTable 1 }

 EthIfgEntry ::= SEQUENCE {
      ethIfgRowStatus                RowStatus,
      ethIfgMembers                  InterfaceIndexList,
      ethIfgDifferentialDelay        Unsigned32,
      ethIfgDifferentialDelayValid   TruthValue,
      ethIfgAheadInterface           Unsigned32,
      ethIfgHitlessProtection        TruthValue,
      ethIfgProtectionStatus         IfgProtectionStatus,
      ethIfgExpectedProtectionStatus IfgProtectionStatus,
      ethIfgForceHit                 Unsigned32,
      ethIfgActiveInterface          Unsigned32,
      ethIfgExpectChannel            TruthValue 
 }

 ethIfgRowStatus OBJECT-TYPE
     SYNTAX      RowStatus
     MAX-ACCESS  read-create
     STATUS      current
     DESCRIPTION
         "See SNMPv2-TC. The following values are supported:
 
          active(1). The object always reads active.
 
          createAndGo(4). A new conceptual row is created representing
          a new interface group.
 
          destroy(6). The connection is terminated and deleted.  An
          interface group can be destroyed only if it has no member
          interfaces."
     ::= { ethIfgEntry 1 }

 ethIfgMembers OBJECT-TYPE
     SYNTAX      InterfaceIndexList
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "A list of the interfaces that are members of the interface
          group.  An interface is added or removed from an interface
          group from the interface using ethIfInterfaceGroup."
     ::= { ethIfgEntry 2 }

 ethIfgDifferentialDelay OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
         "The measured difference delay in microseconds between the
          two channels in the interface group."
    ::= { ethIfgEntry 3 }

 ethIfgDifferentialDelayValid OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
         "Specifies if the value of ethIfgDifferentialDelay is valid
          or not."
    ::= { ethIfgEntry 4 }

 ethIfgAheadInterface OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
         "The value of ethIfIndex of the interface that is ahead of
          the other.  A value of zero (0) implies invalid, i.e. no
          channel is established.  If only one interface is a member
          of the interface group, then that interface is considered
          ahead."
    ::= { ethIfgEntry 5 }

 ethIfgHitlessProtection OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
         "Specifies if hitless protection shall be attempted or not.

          true(1).  Will attempt to reach a hitless protection state.

          false(2).  Will only attempt to reach a standby protection
          state."
    DEFVAL { false }
    ::= { ethIfgEntry 6 }

 ethIfgProtectionStatus OBJECT-TYPE
    SYNTAX      IfgProtectionStatus
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The current protection state."
    ::= { ethIfgEntry 7 }

 ethIfgExpectedProtectionStatus OBJECT-TYPE
    SYNTAX      IfgProtectionStatus
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
         "The expected protection state.  When the current protection
          state (see ethIfgProtectionStatus) is lower than the
          expected protection state, an alarm is raised.  The alarm is
          cleared when the expected protection state is equal or
          higher then the current protection state."
    DEFVAL { unavailable }
    ::= { ethIfgEntry 8 }

 ethIfgForceHit OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
         "A write of zero (0) resets the buffers, and will therefore
          minimize the the latency penalty incurred by the 1+1
          buffering."
    DEFVAL { 0 }
    ::= { ethIfgEntry 9 }

 ethIfgActiveInterface OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
         "The value of ethIfIndex of the interface from where frames
          are currently being forwarded.  If the ethIfgProtectionStatus
          is `unavailable(1)' then the value is zero (0)."
    ::= { ethIfgEntry 10 }

 ethIfgExpectChannel OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-create
    STATUS      current
    DESCRIPTION
         "Controls whether a channel is expected to be terminated on
          this ETS TTPs for the member interfaces or not.  This value
          can only be set if the mode (ethEtsMode) is multicast.

          true(1).  A channel is expected to terminate.  If a channel
          is not terminating, then this is regarded as an anomaly.

          false(2).  A channel is not expected to terminate.  Absence
          of a terminating channel is considered to be correct.

          This value of this object is inherited from the
          ethEtsSnkExpectChannel of the first interface added as a
          member.  Writing to this object updates the value of
          ethEtsSnkExpectChannel of all the member interfaces."
    ::= { ethIfgEntry 11 }

 -- End of Interface Group Table


 -- Queue Drop Thresholds table

 ethIfQDropThresholdTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthIfQDropThresholdEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "A queue (Traffic Class) can have multiple drop thresholds,
          one for each drop precedence.  The table contains
          configuration of how to drop frames per combination of
          traffic class (TC) and drop precedence (DP) for the
          interfaces."
     ::= { ethInterfaceGroup 11 }

 ethIfQDropThresholdEntry OBJECT-TYPE
     SYNTAX      EthIfQDropThresholdEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "An entry in the table."
     INDEX { ethDevIndex, ethIfIndex, ethIfQueueTrafficClass, ethIfQDropThresDropPrecedence }
     ::= { ethIfQDropThresholdTable 1 }

 EthIfQDropThresholdEntry ::= SEQUENCE {
     ethIfQDropThresDropPrecedence           Unsigned32,
     ethIfQDropThresMaxFrames                Integer32,
     ethIfQDropThresCurrentMaxFrames         Integer32,
     ethIfQDropThresDropProbabilityFunction  INTEGER 
 }

 ethIfQDropThresDropPrecedence OBJECT-TYPE
     SYNTAX      Unsigned32
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The value of drop precedence (DP).  The value range is given
          by the device and is from zero to and including
          (ethDeviceDropPrecedenceLevels - 1)."
     ::= { ethIfQDropThresholdEntry 1 }

  ethIfQDropThresMaxFrames OBJECT-TYPE
     SYNTAX      Integer32 (-1..2147483647)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The maximum number of frames that can be queued to this
          interface for this combination of traffic class and drop
          precedence.  Arriving frames are discarded when the queue
          has reached its maximum length.  A value of 0 denotes that
          all frames shall be discarded.  A value of -1 denotes that
          the device automatically assigns the threshold value.  The
          value must either be set to automatic threshold assignment
          (-1), or manually assigned (i.e. greater than 0) for all
          drop precedences on a queue."
     ::= { ethIfQDropThresholdEntry 2 }

 ethIfQDropThresCurrentMaxFrames OBJECT-TYPE
     SYNTAX      Integer32 (0..2147483647)
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The maximum number of frames that currently can be queued to
          this interface for this combination of traffic class and
          drop precedence.  This value contains the currently assigned
          threshold, both for automatic and manual threshold
          assignment set with ethIfQDropThresMaxFrames."
     ::= { ethIfQDropThresholdEntry 3 }

 ethIfQDropThresDropProbabilityFunction OBJECT-TYPE
     SYNTAX      INTEGER {
                    taildrop(0),
                    wred(1) }
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "The drop probability function that shall be used for the
          combination of traffic class and drop precedence on the
          interface.  The values supported by the device are presented
          in ethDevDropProbabilityFunctions."
     DEFVAL { taildrop }
     ::= { ethIfQDropThresholdEntry 4 }

 -- End of Queue Drop Thresholds table


 --
 -- Statistics
 --

 -- Interface groups DCAP-1 statistics table
 -- Note that DCAP-1 statistics for interfaces can be found in NETI-CHMGR-MIB.

 ethStatDcap1Table OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthStatDcap1Entry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Table holds statistical DCAP-1 data for interface groups
          that are implemented using ETS connections."
     ::= { ethStatisticsGroup 1 }

 ethStatDcap1Entry OBJECT-TYPE
     SYNTAX      EthStatDcap1Entry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "A conceptual row holding DCAP-1 statistical data for a single
          interface group."
     INDEX { ethDevIndex, ethIfIndex }
     ::= { ethStatDcap1Table 1 }

 EthStatDcap1Entry ::= SEQUENCE {
     ethStatDcap1Reset            Integer32,
     ethStatDcap1TxOctets         Counter64,
     ethStatDcap1TxPackets        Counter64,
     ethStatDcap1TxDiscardOctets  Counter64,
     ethStatDcap1TxDiscardPackets Counter64,
     ethStatDcap1TxBitrate        Counter64,
     ethStatDcap1TxLoad           Unsigned32,
     ethStatDcap1RxOctets         Counter64,
     ethStatDcap1RxPackets        Counter64,
     ethStatDcap1RxDiscardOctets  Counter64,
     ethStatDcap1RxDiscardPackets Counter64,
     ethStatDcap1RxErrorCRC       Counter64,
     ethStatDcap1RxBitrate        Counter64,
     ethStatDcap1RxLoad           Unsigned32
 }

 ethStatDcap1Reset OBJECT-TYPE
     SYNTAX      Integer32 (0)
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Writing a zero (0) to this object resets all counters
          for the interface."
     ::= { ethStatDcap1Entry 1 }

 ethStatDcap1TxOctets OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Total number of transmitted octets (bytes)."
     ::= { ethStatDcap1Entry 2 }

 ethStatDcap1TxPackets OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Total number of transmitted packets."
     ::= { ethStatDcap1Entry 3 }

 ethStatDcap1TxDiscardOctets OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Total number of transmitted and discarded octets (bytes)."
     ::= { ethStatDcap1Entry 4 }

 ethStatDcap1TxDiscardPackets OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Total number of transmitted and discarded packets."
     ::= { ethStatDcap1Entry 5 }

 ethStatDcap1TxBitrate OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The transmit utilization in bits per second on the
          connection as a mean value during the last 30 seconds."
     ::= { ethStatDcap1Entry 6  }
 
ethStatDcap1TxLoad OBJECT-TYPE
     SYNTAX      Unsigned32 (0..100)
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The transmit utilization (load) in percent on the connection
          as mean value measured during the last 30 seconds."
     ::= { ethStatDcap1Entry 7  }

 ethStatDcap1RxOctets OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Total number of received octets (bytes)."
     ::= { ethStatDcap1Entry 8 }

 ethStatDcap1RxPackets OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Total number of received packets."
     ::= { ethStatDcap1Entry 9 }

 ethStatDcap1RxDiscardOctets OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Total number of received and discarded octets (bytes)."
     ::= { ethStatDcap1Entry 10 }

 ethStatDcap1RxDiscardPackets OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Total number of received packets that are discarded and not
          counted in ethStatDcap1RxErrorCRC."
     ::= { ethStatDcap1Entry 11 }

 ethStatDcap1RxErrorCRC OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "Total number of received packets with CRC32 error. For an
          interface group where the protectionStatus is
          `hitlessProtected(5)', this value is not increased."
     ::= { ethStatDcap1Entry 12 }

 ethStatDcap1RxBitrate OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The receive utilization in bits per second on the connection
          as a mean value during the last 30 seconds."
     ::= { ethStatDcap1Entry 13 }
 
ethStatDcap1RxLoad OBJECT-TYPE
     SYNTAX      Unsigned32 (0..100)
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The receive utilization (load) in percent on the connection
          as mean value measured during the last 30 seconds."
     ::= { ethStatDcap1Entry 14 }

 -- End of interface group DCAP-1 statistics table

 -- Interface common statistics table

 ethIfStatTable OBJECT-TYPE
     SYNTAX      SEQUENCE OF EthIfStatEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "Table holds statistical data for Ethernet interfaces."
     ::= { ethStatisticsGroup 2 }

 ethIfStatEntry OBJECT-TYPE
     SYNTAX      EthIfStatEntry
     MAX-ACCESS  not-accessible
     STATUS      current
     DESCRIPTION
         "A conceptual row holding statistica data for a single interface."
     INDEX { ethDevIndex, ethIfIndex }
     ::= { ethIfStatTable 1 }

 EthIfStatEntry ::= SEQUENCE {
     ethIfStatReset      Integer32,
     ethIfStatTxBitrate  Counter64,
     ethIfStatTxLoad     Unsigned32,
     ethIfStatRxBitrate  Counter64,
     ethIfStatRxLoad     Unsigned32
 }

 ethIfStatReset OBJECT-TYPE
     SYNTAX      Integer32
     MAX-ACCESS  read-write
     STATUS      current
     DESCRIPTION
         "Writing a zero (0) to this object resets all counters
          for the interface."
     ::= { ethIfStatEntry 1 }

 ethIfStatTxBitrate OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The transmit utilization in bits per second on the interface
          as a mean value during the last 30 seconds."
     ::= { ethIfStatEntry 2 }

 ethIfStatTxLoad OBJECT-TYPE
     SYNTAX      Unsigned32 (0..100)
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The transmit utilization (load) in percent of the wire speed
          on the interface as mean value measured during the last 30
          seconds."
     ::= { ethIfStatEntry 3 }

 ethIfStatRxBitrate OBJECT-TYPE
     SYNTAX      Counter64
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The receive utilization in bits per second on the interface
          as a mean value during the last 30 seconds."
     ::= { ethIfStatEntry 4 }

 ethIfStatRxLoad OBJECT-TYPE
     SYNTAX      Unsigned32 (0..100)
     MAX-ACCESS  read-only
     STATUS      current
     DESCRIPTION
         "The receive utilization (load) in percent of the wire speed
          on the interface as mean value measured during the last 30
          seconds."
     ::= { ethIfStatEntry 5 }

 -- End interface common statistics table

END
 
