-- *****************************************************************
-- RUIJIE-INTERFACE-MIB.mib:  Ruijie interface MIB file
--
-- March 2002, Wuzg
--
-- Copyright (c) 2002 by Ruijie Networks Co.,Ltd.
-- All rights reserved.
-- 
-- *****************************************************************
--

RUIJIE-INTERFACE-MIB DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        NOTIFICATION-TYPE,
        Integer32,
        OBJECT-TYPE,
        Counter32,
        Counter64,
        Unsigned32,
        IpAddress
                FROM SNMPv2-SMI
        RowStatus, 
        DisplayString,
        PhysAddress,
        DateAndTime,
        MacAddress
                FROM SNMPv2-TC
        MODULE-COMPLIANCE,
        OBJECT-GROUP
                FROM SNMPv2-CONF
        ConfigStatus,
        IfIndex
                FROM RUIJIE-TC
        EnabledStatus 
                FROM P-BRIDGE-MIB
        ifIndex
                FROM RFC1213-MIB
        Gauge,
        TimeTicks
                FROM RFC1155-SMI
        ruijieMgmt
                FROM RUIJIE-SMI
        IANAifType
                FROM IANAifType-MIB
        VlanId
                FROM Q-BRIDGE-MIB
        InterfaceIndex,
        ifDescr
                FROM IF-MIB
        ifAdminStatus
                FROM IF-MIB
        ifOperStatus
                FROM IF-MIB
       SnmpAdminString
                FROM SNMP-FRAMEWORK-MIB          -- RFC3411
       InetAddressType, InetAddress
                FROM INET-ADDRESS-MIB;           -- RFC4001

                
ruijieInterfaceMIB MODULE-IDENTITY
        LAST-UPDATED "201002010000Z"
        ORGANIZATION "Ruijie Networks Co.,Ltd."
        CONTACT-INFO
                " 
                Tel: 4008-111-000 

                E-mail: service@ruijie.com.cn"
        DESCRIPTION
                "This module defines ruijie interface mibs."
        REVISION      "201002010000Z"
        DESCRIPTION
                "Add a table about vlan."
        REVISION      "200203200000Z"
        DESCRIPTION
                "Initial version of this MIB module."
        ::= { ruijieMgmt 10}

ruijieIfConfigMIBObjects OBJECT IDENTIFIER ::= { ruijieInterfaceMIB 1 }


ruijieIfTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "list of interface basic configuration objects."
        ::= { ruijieIfConfigMIBObjects 1 }
    
ruijieIfEntry OBJECT-TYPE
        SYNTAX RuijieIfEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entry contains interface basic configurations."
        INDEX { ruijieIfIndex }
        ::= { ruijieIfTable 1 }

RuijieIfEntry ::=
        SEQUENCE {
            ruijieIfIndex IfIndex,
            ruijieIfPortType INTEGER,
            ruijieIfFlowControlAdminStatus INTEGER,
            ruijieIfFlowControlOperStatus EnabledStatus,
            ruijieIfAdminSpeed INTEGER,
            ruijieIfAdminDuplex INTEGER,
            ruijieIfOperSpeed INTEGER,
            ruijieIfOperDuplex INTEGER,
            ruijieIfManageStatus EnabledStatus,
            ruijieIfIpBroadcast  IpAddress,            
            ruijieIfLayer INTEGER,
            ruijieIfMode  INTEGER,
            ruijieIfCounterClear Integer32,
            ruijieIfEntryStatus ConfigStatus,
            ruijieIfMediumType INTEGER,          
	    ruijieIfDownCounter Counter32,
            ruijieIfInOctets Counter64,
            ruijieIfOutOctets Counter64,
	    ruijieIfBcastInhibit INTEGER,
            ruijieIfNegotiation INTEGER,
            ruijieIfPhysAddress MacAddress,
            ruijieIfAdminSpeedRW INTEGER,
            ruijieIfAdminDuplexRW INTEGER,
            ruijieIfModeRW  INTEGER,
            ruijieIfSpeed Gauge,
            ruijieifAdminStatus INTEGER,
            ruijieifOperStatus INTEGER,
            ruijieIfInNUcastPkts Counter64,
            ruijieIfOutNUcastPkts Counter64,
            ruijieIfUpDownTimes Counter32,
            ruijieifAdminStatusw INTEGER,
            ruijieifOperStatusw INTEGER,
            ruijieifSpeedw Integer32,
            ruijieifMacAddress MacAddress,
            ruijieifLastChange TimeTicks,
            ruijieIfInPkts Counter64,
            ruijieIfDiscard Counter64,
            ruijieIfBandwidthUsage DisplayString,
            ruijieIfInBitsRate Counter64,
            ruijieIfInPktRate Counter64,
            ruijieIfOutBitsRate Counter64,
            ruijieIfOutPktRate Counter64,
            ruijieIfInBandwidthUsage  DisplayString,
            ruijieIfOutBandwidthUsage DisplayString,
            ruijieIfInErrorPktsRate DisplayString, 
            ruijieIfOutErrorPktsRate  DisplayString,
            ruijieIfInDropPktsRate    DisplayString,
            ruijieIfOutDropPktsRate  DisplayString,
            ruijieIfOutNoBuffer Counter64,
            ruijieIfOutPkts Counter64,
            ruijieIfNeighborIP  IpAddress,
            ruijieIfNeighborIPv6  DisplayString,
            ruijieIfIsSubPort  Unsigned32,
            ruijieIfDemux  DisplayString,
            ruijieIfDemuxChannelId  Integer32,
            ruijieIfInFecCorrect Counter64,
            ruijieIfInFecUnCorrect Counter64,
            ruijieIfLinkDownReason INTEGER
        }

ruijieIfIndex OBJECT-TYPE
        SYNTAX IfIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            " "
        ::= { ruijieIfEntry 1 }

ruijieIfPortType OBJECT-TYPE
        SYNTAX INTEGER {
            unknown(1),
            port10M100MBASETX(2),
            port100MBASEFXL(3),        
            port100MBASEFXS(4),
            port1000MBASESX(5),   
            port1000MBASELX(6),
            port1000MBASETX(7),
            portGBIC(8),
            port100MBASEFX(9),
            port1000MBASEFX(10),
            portSFP(11),
            port10GBASESR(12),
            port10GBASELR(13),
            port10GBASEER(14),
            port10GBASELX4(15),
            port10GBASESW(16),
            port10GBASELW(17),
            port10GBASEEW(18),
            port10GBASE(19),
            port40GBASEKR(20),
            port40GBASECR(21),
            port40GBASELR(22),
            port40GBASESR(23),
            port40GBASE(24),
            port100GBASECR(25),
            port100GBASESR(26),
            port100GBASELR(27),
            port100GBASEER(28),
            port100GBASE(29),
            port155MCPOS(50),
            port622MCPOS(51),
            port2G5CPOS(52),
            port10GCPOS(53),
            port155MPOS(54),
            port622MPOS(55),
            port2G5POS(56),
            port10GPOS(57),
            port155MATM(58),
            port622MATM(59),
            port2G5ATM(60),
            port10GATM(61),
            portE1ELC(62),
            port20GBASE(63),    
            port25GBASE(64),
            port2500MBASE(65),
            port5000MBASE(66),
            port50GBASE(67),
            port200GBASE(68),
            port400GBASE(69),
            port100MFE(70),
            port1000MSFP(71),
            port2500MMS(72),
            port5GFS(73),
            port10GXS(74),
            port50GFABRIC(75),
            port200GFABRIC(76),
            portXTS(77)
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Port type of this port, list as above.
             port100MBASEFX indicates that port is port100MBASEFXL or port100MBASEFXS,
             and system doesn't distinguish.
             port1000MBASEFX indicates that port is port1000MBASEFLX or port1000MBASEFSX,
             and system doesn't distinguish.
             
             This attribute apply physical port"
        ::= { ruijieIfEntry 2 }
           
ruijieIfFlowControlAdminStatus OBJECT-TYPE
        SYNTAX INTEGER {
            enabled(1),
            disabled(2),
            autonego(3),
            unknown(4),
            rxon(5),
            txon(6)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Flow control of a port management status.
            
            This attribute apply physical port and aggreate port"
        ::= { ruijieIfEntry 3 }
    
ruijieIfFlowControlOperStatus OBJECT-TYPE
        SYNTAX EnabledStatus
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Oper status: after the negotiation between two ports connetted 
            the flow contrl status.
            
            This attribute apply physical port and aggreate port"
        ::= { ruijieIfEntry 4 }
                     
ruijieIfAdminSpeed OBJECT-TYPE
        SYNTAX INTEGER {
            speed10Mb(1),
            speed100Mb(2),
            speed1000Mb(3),
            autonego(4),
            speed10Gb(5),
            unknown(6),
            speed40Gb(7),   
            speed100Gb(8),
            speed20Gb(9),
            speed25Gb(10),
            speed2500Mb(11),
            speed5000Mb(12),
            speed50Gb(13),
            speed200Gb(14),
            speed400Gb(15)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "port speed settings.
            
            This attribute apply physical port and aggreate port"
        ::= { ruijieIfEntry 5 }
        
ruijieIfAdminDuplex OBJECT-TYPE
        SYNTAX INTEGER {
            full(1),
            half(2),
            autonego(3),
            unknown(4)
        }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "port duplex settings.
            
            This attribute apply physical port and aggreate port"
        ::= { ruijieIfEntry 6 }        
    
ruijieIfOperSpeed OBJECT-TYPE
        SYNTAX INTEGER {
            speed10Mb(1),
            speed100Mb(2),
            speed1000Mb(3),
            unknown(4),
            speed10Gb(5),
            speed40Gb(6),
            speed100Gb(7),
            speed20Gb(8),
            speed25Gb(9),
            speed2500Mb(10),
            speed5000Mb(11),
            speed50Gb(12),
            speed200Gb(13),
            speed400Gb(14)
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "After two port have negotiated the speed status,and this object 
            is the working speed status. while the port link status is down ,
            then the speed status is unknown(4).
            
            This attribute apply physical port and aggreate port"
        ::= { ruijieIfEntry 7 }

ruijieIfOperDuplex OBJECT-TYPE
        SYNTAX INTEGER {
            full(1),
            half(2),
            unknown(3)
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "After two port have negotiated the duplex status, and this object 
            is the working duplex status. while the port link status is down ,
            then the speed status is unknown(3).
            
            This attribute apply physical port and aggreate port"
        ::= { ruijieIfEntry 8 }

ruijieIfManageStatus OBJECT-TYPE
        SYNTAX EnabledStatus 
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION 
                "Management status of the interface."
        DEFVAL { enabled }
        ::={ruijieIfEntry 9}

ruijieIfIpBroadcast OBJECT-TYPE
    SYNTAX IpAddress
    MAX-ACCESS read-create
    STATUS current
    DESCRIPTION
        "Broadcast address of the interface. if broadcast address not configured on interface, return 0.0.0.0"
       ::= { ruijieIfEntry 10 }
                      

ruijieIfLayer OBJECT-TYPE
        SYNTAX  INTEGER {
                  layer-2(1), -- the interface is a interface of L2
                  layer-3(2)  -- the interface is a interface of L3
              }
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
              ""
        ::= { ruijieIfEntry 11 }
        
ruijieIfMode OBJECT-TYPE
        SYNTAX  INTEGER {
            access(1), -- the mode of interface is access port
            trunk(2),  -- the mode of interface is trunk port
            dot1q-tunnel(3),   -- the mode of interface is 802.1q tunnel port
            hybrid(4), -- the mode of interface is hybrid port
            other(5), -- other mode 
            uplink(6), -- the mode of interface is uplink port
            host(7), -- the mode of interface is private-vlan host port
            promiscuous(8), -- the mode of interface is private-vlan promiscuous port
            ptrunk(9) -- the mode of interface is ptrunk port
              }
        MAX-ACCESS  read-create
        STATUS  current
        DESCRIPTION
              "This value is meaning for only physical port and aggreate port"
        ::= { ruijieIfEntry 12 }

ruijieIfCounterClear OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Setting its to any value but 0, will clear counters of this interface. 
             Setting its value to 0 will cause no action of the agent. and when
             query will always return 0.            "
        ::= { ruijieIfEntry 13 } 
        
ruijieIfEntryStatus OBJECT-TYPE
        SYNTAX ConfigStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Status of this entry, set this object to valid will create a interface, 
             and set its value to invalid will delete the interface of this entry."
        ::= { ruijieIfEntry 14 }
                       
ruijieIfMediumType OBJECT-TYPE
        SYNTAX INTEGER {
            unknown(0),
            copper(1),
            fiber(2)
         }
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Port medium type of this port,fiber or copper."
        ::= { ruijieIfEntry 15 }

ruijieIfDownCounter OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The counters of linkdown times of the interface."
        ::= { ruijieIfEntry 16 }

ruijieIfInOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The total number of octets received on the interface,
            including framing characters.
            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of ifCounterDiscontinuityTime."
    ::= { ruijieIfEntry 17 }
 
ruijieIfOutOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The total number of octets transmitted out of the
            interface, including framing characters.
            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of ifCounterDiscontinuityTime."
    ::= { ruijieIfEntry 18 } 

ruijieIfBcastInhibit OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The percentage of the broadcast storm restraint on the
            interface."
    ::= { ruijieIfEntry 19 } 

ruijieIfNegotiation OBJECT-TYPE
    SYNTAX INTEGER {
        disable(0),
        enable(1)
     }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "The negotiation status of the interface."
    ::= { ruijieIfEntry 20 } 

ruijieIfPhysAddress OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The interface's address at its protocol sub-layer.  For
            example, for an 802.x interface, this object normally
            contains a MAC address.  The interface's media-specific MIB
            must define the bit and byte ordering and the format of the
            value of this object.  For interfaces which do not have such
            an address (e.g., a serial line), this object should contain
            an octet string of zero length."
    ::= { ruijieIfEntry 21 }

ruijieIfAdminSpeedRW OBJECT-TYPE
        SYNTAX INTEGER {
            speed10Mb(1),
            speed100Mb(2),
            speed1000Mb(3),
            autonego(4),
            speed10Gb(5),
            unknown(6),
            speed40Gb(7),   
            speed100Gb(8),
            speed20Gb(9),
            speed25Gb(10),
            speed2500Mb(11),
            speed5000Mb(12),
            speed50Gb(13),
            speed200Gb(14),
            speed400Gb(15)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "port speed settings.
            
            This attribute apply physical port and aggreate port"
        ::= { ruijieIfEntry 22 }
        
ruijieIfAdminDuplexRW OBJECT-TYPE
        SYNTAX INTEGER {
            full(1),
            half(2),
            autonego(3),
            unknown(4)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "port duplex settings.
            
            This attribute apply physical port and aggreate port"
        ::= { ruijieIfEntry 23 }        

ruijieIfModeRW OBJECT-TYPE
        SYNTAX  INTEGER {
            access(1), -- the mode of interface is access port
            trunk(2),  -- the mode of interface is trunk port
            dot1q-tunnel(3),   -- the mode of interface is 802.1q tunnel port
            hybrid(4), -- the mode of interface is hybrid port
            other(5), -- other mode 
            uplink(6), -- the mode of interface is uplink port
            host(7), -- the mode of interface is private-vlan host port
            promiscuous(8), -- the mode of interface is private-vlan promiscuous port
            ptrunk(9) -- the mode of interface is ptrunk port
              }
        MAX-ACCESS  read-write
        STATUS  current
        DESCRIPTION
              "This value is meaning for only physical port and aggreate port"
        ::= { ruijieIfEntry 24 }

  ruijieIfSpeed OBJECT-TYPE
    SYNTAX      Gauge
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "An estimate of the interface's current bandwidth in units of 
        Mbits per second."
    ::= { ruijieIfEntry 25 }  
    
 ruijieifAdminStatus OBJECT-TYPE
    SYNTAX INTEGER {
        adminup(1),
        admindown(2),
        admintest(3)
        }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "the interface  keeps the admin state ."
    ::= { ruijieIfEntry 26 }  
      
 ruijieifOperStatus OBJECT-TYPE
   SYNTAX INTEGER {
        up(1),
        down(2),
        test(3),
        unknow(4),
        dormant(5),
        admindown(8)
        }
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "the interface  keeps the oper state ."
    ::= { ruijieIfEntry 27}  
      
  ruijieIfInNUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The counter of receiving  packets contain BROADCAST and PACKET_MULTICAST ."
    ::= { ruijieIfEntry 28 }    
         
  ruijieIfOutNUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The counter of sending  packets contain BROADCAST and PACKET_MULTICAST ."
    ::= { ruijieIfEntry 29 }   
    
  ruijieIfUpDownTimes OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The counters of linkup and linkdown times of the interface."
        ::= { ruijieIfEntry 30 }     
        
  ruijieifAdminStatusw OBJECT-TYPE
        SYNTAX INTEGER {
        up(0),
        admindown(1)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The desired state of the interface.  When a managed system initializes, all
        interfaces start with ifAdminStatus in the admindown(1)
        state.  As a result of either explicit management
        action or per configuration information retained by
        the managed system, ifAdminStatus is then changed to
        either the up(0)  states (or remains in
        the admindown(1) state)."
        ::= { ruijieIfEntry 31 }  
        
  ruijieifOperStatusw OBJECT-TYPE
        SYNTAX INTEGER {
        up(0),
        down(1),
        admindown(2)
          }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The current operational state of the interface.  
        If ruijieApIfAdminStatus is admindown(2) then
        ruijieApIfOperStatus should be admindown(2).  If ruijieApIfAdminStatus is
        changed to up(0) then ruijieApIfOperStatus should change to
        up(0) . it should remain in the down(1) state if
        and only if there is a fault that prevents it from
        going to the up(0) state; "
        ::= { ruijieIfEntry 32 }  
        
  ruijieifSpeedw OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "An estimate of the interface's current bandwidth in units of
        Mbits per second."
        ::= { ruijieIfEntry 33 }

   ruijieifMacAddress OBJECT-TYPE
        SYNTAX MacAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The interface's address at its protocol sub-layer.
        For example, for an 802.x interface, this object
        normally contains a MAC address.  The interface's
        media-specific MIB must define the bit and byte
        ordering and the format of the value of this object.
        For interfaces which do not have such an address
        (e.g., a serial line), this object should contain an
        octet string of zero length."
        ::= { ruijieIfEntry 34 }   
        
     ruijieifLastChange OBJECT-TYPE
        SYNTAX TimeTicks
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The length of the time that comes current state ."
        ::= { ruijieIfEntry 35 }

     ruijieIfInPkts OBJECT-TYPE
        SYNTAX      Counter64
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
          "The number of packets received on this interface,
           including framing characters.

          Discontinuities in the value of this counter can occur at
          re-initialization of the management system, and at other
          times as indicated by the value of
           ifCounterDiscontinuityTime."
         ::= { ruijieIfEntry 36 }   

     ruijieIfDiscard OBJECT-TYPE
        SYNTAX      Counter64
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "The number of bound packets which were chosen to be
         discarded even though no errors. One possible reason for
         discarding such a packet could be to free up buffer space.
        
         Discontinuities in the value of this counter can occur
         at re-initialization of the management system, and at
         other times as indicated by the value of
         ifCounterDiscontinuityTime."
         ::= { ruijieIfEntry 37 }   

     ruijieIfBandwidthUsage OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "Current bandwidth utilization of interface."
         ::= { ruijieIfEntry 38 }   

     ruijieIfInBitsRate OBJECT-TYPE
        SYNTAX      Counter64
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "The average input packet-rate over a period of time(configuration by interface command 'load-interval') 
          in bits per second on this interface."
         ::= { ruijieIfEntry 39 }   

     ruijieIfInPktRate OBJECT-TYPE
        SYNTAX      Counter64
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "The average input packet-rate over a period of time(configuration by interface command 'load-interval') 
          in packets per second on this interface."
         ::= { ruijieIfEntry 40 }   

     ruijieIfOutBitsRate OBJECT-TYPE
        SYNTAX      Counter64
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "The average output packet-rate over a period of time(configuration by interface command 'load-interval') 
          in bits per second on this interface."
         ::= { ruijieIfEntry 41 }   

     ruijieIfOutPktRate OBJECT-TYPE
        SYNTAX      Counter64
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "The average output packet-rate over a period of time(configuration by interface command 'load-interval') 
          in packets per second on this interface."
         ::= { ruijieIfEntry 42 }   

     ruijieIfInBandwidthUsage OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "RX bandwidth utilization ratio of interface."
         ::= { ruijieIfEntry 43 }   
         
     ruijieIfOutBandwidthUsage OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "TX bandwidth utilization ratio of interface."
         ::= { ruijieIfEntry 44 }  
           
      ruijieIfInErrorPktsRate OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "Input packet error rate."
         ::= { ruijieIfEntry 45 }    
         
       ruijieIfOutErrorPktsRate OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "Output packet error rate."
         ::= { ruijieIfEntry 46 }  
         
       ruijieIfInDropPktsRate OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "Input packet discarded rate."
         ::= { ruijieIfEntry 47 } 
         
       ruijieIfOutDropPktsRate OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "Output packet discarded rate."
         ::= { ruijieIfEntry 48 }   
         
     ruijieIfOutNoBuffer OBJECT-TYPE
        SYNTAX      Counter64
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
         "Ouyput drop packet rate on this interface due to resource lack."
         ::= { ruijieIfEntry 49 }

     ruijieIfOutPkts OBJECT-TYPE
        SYNTAX      Counter64
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
          "The number of packets sent on this interface,
           including framing characters.

          Discontinuities in the value of this counter can occur at
          re-initialization of the management system, and at other
          times as indicated by the value of
           ifCounterDiscontinuityTime."
         ::= { ruijieIfEntry 50 }

     ruijieIfNeighborIP OBJECT-TYPE
        SYNTAX      IpAddress
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
          "IP address of the neighbor. if none, return 0.0.0.0"
         ::= { ruijieIfEntry 51 }

     ruijieIfNeighborIPv6 OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
          "IPv6 address of the neighbor."
         ::= { ruijieIfEntry 52 }

     ruijieIfIsSubPort OBJECT-TYPE
        SYNTAX Unsigned32 (0..1)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "This object indicates whether the interface is a sub-interface."
        ::= { ruijieIfEntry 53 }
        
     ruijieIfDemux OBJECT-TYPE
        SYNTAX      DisplayString
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
          "Demux name of the inner physical port."
         ::= { ruijieIfEntry 54 }

     ruijieIfDemuxChannelId OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The channel id of inner physical port."
        ::= { ruijieIfEntry 55 }

     ruijieIfInFecCorrect OBJECT-TYPE
        SYNTAX      Counter64
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
          "Input fec error correction success statistics."
         ::= { ruijieIfEntry 56 }

     ruijieIfInFecUnCorrect OBJECT-TYPE
        SYNTAX      Counter64
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
          "Input fec error correction failure statistics."
         ::= { ruijieIfEntry 57 }

     ruijieIfLinkDownReason OBJECT-TYPE
        SYNTAX INTEGER {
          unknown(1),
          admin-down(2),
          err-disabled(3),
          apm-standby(4),
          apr(5),
          UPC-fault(6),
          peer-off(7),
          BF-failure(8),
          TF-failure(9)
        }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The link down reason of interface."
         ::= { ruijieIfEntry 58 }

ruijieIfIpTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF RuijieIfIpEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
               "A list of interface ip configuration entries."
       ::= { ruijieIfConfigMIBObjects 2}

ruijieIfIpEntry OBJECT-TYPE
       SYNTAX      RuijieIfIpEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
               "An entry containing configuration information applicable
               to a Layer3 interface."
       INDEX   { ruijieIfIpIfIndex, ruijieIfIpId, ruijieIfIp}
       ::= { ruijieIfIpTable 1 }

RuijieIfIpEntry ::=
       SEQUENCE {
          ruijieIfIpIfIndex         IfIndex,
          ruijieIfIpId              INTEGER,
          ruijieIfIp                IpAddress,
          ruijieIfIpMask            IpAddress,
          ruijieIfIpEntryStatus     RowStatus
        }
ruijieIfIpIfIndex OBJECT-TYPE
       SYNTAX      IfIndex
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
               "A unique value, for each Layer3 interface."
       ::= { ruijieIfIpEntry 1 }       
       
ruijieIfIpId OBJECT-TYPE
       SYNTAX      INTEGER{
                       primary(1),    -- primary ip address of Layer3 interface
                       secondary(2)   -- secondary ip address of Layer3 interface
                   }
       MAX-ACCESS  read-only
       STATUS      current
       DESCRIPTION
               "Type of interface ip address."
       ::= { ruijieIfIpEntry 2 }              

ruijieIfIp OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Ip address of the interface ruijieIfIndex refer to."
        ::= { ruijieIfIpEntry 3 }       
        
ruijieIfIpMask OBJECT-TYPE
        SYNTAX IpAddress
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "Ip mask of the interface ip address."
        ::= { ruijieIfIpEntry 4 }       
            
ruijieIfIpEntryStatus OBJECT-TYPE
        SYNTAX RowStatus
        MAX-ACCESS read-create
        STATUS current
        DESCRIPTION
            "entry status of this entry. and the means in this enviraments can
            reffer to the text-convention definition of the RowStatus."
        ::= { ruijieIfIpEntry 5 } 


ruijieIfStatusTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfStatusEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "list of interface status. Status information include some error state and
             result of examining to the interface,etc."
        ::= { ruijieIfConfigMIBObjects 3 }
    
ruijieIfStatusEntry OBJECT-TYPE
        SYNTAX RuijieIfStatusEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entry contains interface status information."
        INDEX { ruijieIfStatusIndex }
        ::= { ruijieIfStatusTable 1 }

RuijieIfStatusEntry ::=
        SEQUENCE {
            ruijieIfStatusIndex IfIndex,
            ruijieIfStatusLoopBackExamine Integer32,
            ruijieIfErrorStatus           INTEGER,
            ruijieIfLineDetect            Integer32
        }

ruijieIfStatusIndex OBJECT-TYPE
        SYNTAX IfIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            " "
        ::= { ruijieIfStatusEntry 1 }

ruijieIfStatusLoopBackExamine OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Setting its to any value but 0, will Checking whether this port or aggreate can
              receive and send packets normally, It indicates that port or aggreate is normal
              if opertion is success. 
                  Setting its value to 0 will cause no action of the agent. and when
             query will always return 0.
            
            This attribute apply physical port and aggreate port"
        ::= { ruijieIfStatusEntry  2 } 
        
ruijieIfErrorStatus OBJECT-TYPE
        SYNTAX INTEGER {
            no-error(1),               -- port is enabled normal
            err-disable-bpduguard(2),  -- port is disabled by port receive BPDU packet when port
                                       -- enable BPDU guard             
            err-disable-ptsecurity(3)  -- port is disabled by port security is violatd
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Port's error status information"
        ::= { ruijieIfStatusEntry 3 }
           
           
ruijieIfLineDetect OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "When reading this object, system detects the quality of line connecting the port.
             Detect whether the line is broken or short circuit or not. 
             
             The meaning of the obtained value:
             Return value=N*10000000+M
             N stands for the line state (0: perfect; 1: break; 2: short circuit)
             M stands for the location of the break or short circuit in the line(distance from the switch port, in metre)
             If the line is perfect, the value is zero."
        ::= { ruijieIfStatusEntry  4 }
           
ruijieGlobalIfDisableRecovery OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Setting its to any value but 0, the interfaces  which is shutted down by
             some error happened will recovery from disabled status . 
                  Setting its value to 0 will cause no action of the agent. and when
             query will always return 0.
            
            This attribute apply physical port and aggreate port"
        ::= { ruijieIfConfigMIBObjects  4 } 
                               
--
-- portType Choose
--
ruijiePortTypeChooseTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijiePortTypeChooseEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Table of entrance to choose port type." 
        ::= { ruijieIfConfigMIBObjects 5 }
    
ruijiePortTypeChooseEntry OBJECT-TYPE
        SYNTAX RuijiePortTypeChooseEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entrance to choose port type."  
        INDEX { ruijiePortTypeChooseIndex }
        ::= { ruijiePortTypeChooseTable 1 }

RuijiePortTypeChooseEntry ::=
        SEQUENCE {
            ruijiePortTypeChooseIndex IfIndex,
            ruijiePortTypeChooseType INTEGER
        }

ruijiePortTypeChooseIndex OBJECT-TYPE
        SYNTAX IfIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The logic port number." 
        ::= { ruijiePortTypeChooseEntry 1 }

ruijiePortTypeChooseType OBJECT-TYPE
        SYNTAX INTEGER {
    fiber(1),       --priority of fiber port
          copper(2)       --priority of copper port
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The chosen port type. This object is used to choose one of the multiple physical ports of different types,
            when the same logical port is correspondent with them.
            Apply this attribute to the physical port only." 
        ::= { ruijiePortTypeChooseEntry 2 }

--
-- mtu
--
ruijieIfMTUTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfMTUEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Access table of MTU on interface." 
        ::= { ruijieIfConfigMIBObjects 6 }
    
ruijieIfMTUEntry OBJECT-TYPE
        SYNTAX RuijieIfMTUEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Interfac MTU access." 
        INDEX { ruijieIfMTUIndex }
        ::= { ruijieIfMTUTable 1 }

RuijieIfMTUEntry ::=
        SEQUENCE {
            ruijieIfMTUIndex IfIndex,
            ruijieIfMTU Integer32
        }

ruijieIfMTUIndex OBJECT-TYPE
        SYNTAX IfIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Interface number"
        ::= { ruijieIfMTUEntry 1 }

ruijieIfMTU OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "Interface MTU."
        ::= { ruijieIfMTUEntry 2 }
--
-- Available Bandwidth
--
ruijieIfAvailableBWTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfAvailableBWEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Access table of Available Bandwidth on interface." 
        ::= { ruijieIfConfigMIBObjects 7 }
    
ruijieIfAvailableBWEntry OBJECT-TYPE
        SYNTAX RuijieIfAvailableBWEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Interfac available bandwidth access." 
        INDEX { ruijieIfAvailableBWIfIndex }
        ::= { ruijieIfAvailableBWTable 1 }

RuijieIfAvailableBWEntry ::=
        SEQUENCE {
            ruijieIfAvailableBWIfIndex IfIndex,
            ruijieIfAvailableBWIfBW Gauge
        }

ruijieIfAvailableBWIfIndex OBJECT-TYPE
        SYNTAX IfIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Interface number"
        ::= { ruijieIfAvailableBWEntry 1 }

ruijieIfAvailableBWIfBW OBJECT-TYPE
        SYNTAX Gauge
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Interface available bandwidth(bit)."
        ::= { ruijieIfAvailableBWEntry 2 }
        
--
-- Creat Interface Vlan
--
ruijieIfSVICreatTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfSVICreatEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Access table of Available Bandwidth on interface." 
        ::= { ruijieIfConfigMIBObjects 8 }
    
ruijieIfSVICreatEntry OBJECT-TYPE
        SYNTAX RuijieIfSVICreatEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Interfac available bandwidth access." 
        INDEX { ruijieIfSVICreatVlanNum }
        ::= { ruijieIfSVICreatTable 1 }

RuijieIfSVICreatEntry ::=
        SEQUENCE {
            ruijieIfSVICreatVlanNum Integer32,
            ruijieIfHandleSVI       INTEGER
        }

ruijieIfSVICreatVlanNum OBJECT-TYPE
        SYNTAX Integer32(1..4094)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Interface Vlan number"
        ::= { ruijieIfSVICreatEntry 1 }

ruijieIfHandleSVI OBJECT-TYPE
        SYNTAX INTEGER{create(0), delete(1)}
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "0 creat,1 delete."
        ::= { ruijieIfSVICreatEntry 2 }

--
-- Get Physical Interface Number
--
ruijieIfPhyIntNum OBJECT-TYPE
    SYNTAX      INTEGER
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of physical interfaces (regardless of their
            current state) present on this system."
    ::= { ruijieIfConfigMIBObjects 9 }        


--
-- Get Interface LinkUP Times
--
ruijieIfLinkUPTimesTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfLinkUPTimesEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Access table of Available Bandwidth on interface." 
        ::= { ruijieIfConfigMIBObjects 10 }
    
ruijieIfLinkUPTimesEntry OBJECT-TYPE
        SYNTAX RuijieIfLinkUPTimesEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Interfac available bandwidth access." 
        INDEX { ruijieInterfaceIndex }
        ::= { ruijieIfLinkUPTimesTable 1 }

RuijieIfLinkUPTimesEntry ::=
        SEQUENCE {
            ruijieInterfaceIndex   Integer32,
            ruijieIfLinkUPTimes    INTEGER
        }

ruijieInterfaceIndex OBJECT-TYPE
        SYNTAX Integer32 (1..2147483647)
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Interface Index"
        ::= { ruijieIfLinkUPTimesEntry 1 }

ruijieIfLinkUPTimes OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Vlaues Of Linkup Times."
        ::= { ruijieIfLinkUPTimesEntry 2 }
        
--
-- Interface encapsulation dot1q VLAN
--
ruijieIfEncapsulationTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfEncapsulationEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Access table of Encapsulation dot1q VLAN on interface." 
        ::= { ruijieIfConfigMIBObjects 11 }
    
ruijieIfEncapsulationEntry OBJECT-TYPE
        SYNTAX RuijieIfEncapsulationEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Interfac encapsulation dot1q VLAN access." 
        INDEX { ruijieIfEncapsulationIndex }
        ::= { ruijieIfEncapsulationTable 1 }

RuijieIfEncapsulationEntry ::=
        SEQUENCE {
            ruijieIfEncapsulationIndex  IfIndex,
            ruijieIfEncapsulationVlan   VlanId
        }

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

ruijieIfEncapsulationVlan OBJECT-TYPE
        SYNTAX VlanId
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The value indicate the VID of the dot1q vlan encapsulation. 
             The value 0 means de-encapsulation."
        ::= { ruijieIfEncapsulationEntry 2 }

--
-- Get ap interface number
--
ruijieApIfNumberTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieApIfNumberEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Access table of ap interface number." 
        ::= { ruijieIfConfigMIBObjects 12 }
    
ruijieApIfNumberEntry OBJECT-TYPE
        SYNTAX RuijieApIfNumberEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Interfac number of ap." 
        INDEX { ruijieApPhyAddress }
        ::= { ruijieApIfNumberTable 1 }

RuijieApIfNumberEntry ::=
        SEQUENCE {
            ruijieApPhyAddress   PhysAddress,
            ruijieApIfNumber     INTEGER,
            ruijieApIfPhyIntNum  INTEGER
        }

ruijieApPhyAddress OBJECT-TYPE
    SYNTAX PhysAddress (SIZE(6))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The ap's address at its protocol sub-layer.
        The ap's media-specific MIB must define the bit and byte
        ordering and the format of the value of this object.
        For interfaces which do not have such an address
        (e.g., a serial line), this object should contain an
        octet string of zero length."
    ::= { ruijieApIfNumberEntry 1 }

ruijieApIfNumber OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Vlaues Of interface number."
    ::= { ruijieApIfNumberEntry 2 }
        
ruijieApIfPhyIntNum OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Vlaues Of physical interface number."
    ::= { ruijieApIfNumberEntry 3 }
    
--
--ruijieApIfTable
--
ruijieApIfTable OBJECT-TYPE
    SYNTAX SEQUENCE OF RuijieApIfEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "A list of ruijieAp interface entries.  The number of entries
        is given by the value of ruijieApIfNumber."
    ::= { ruijieIfConfigMIBObjects 13 }

ruijieApIfEntry OBJECT-TYPE
    SYNTAX RuijieApIfEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "An entry containing management information ruijieApplicable
        to a particular interface."
    INDEX { 
           ruijieApPhysAddress, 
           ruijieApIfIndex 
    }
    ::= { ruijieApIfTable 1 }

RuijieApIfEntry ::= SEQUENCE {
    ruijieApPhysAddress  PhysAddress,
    ruijieApIfIndex IfIndex,
    ruijieApIfDescr DisplayString,
    ruijieApIfType IANAifType,
    ruijieApIfMtu INTEGER,
    ruijieApIfSpeed Gauge,
    ruijieApIfPhysAddress PhysAddress,
    ruijieApIfAdminStatus INTEGER,
    ruijieApIfOperStatus INTEGER,
    ruijieApIfLastChange TimeTicks,
    ruijieApIfInOctets Counter64,
    ruijieApIfInUcastPkts Counter64,
    ruijieApIfInNUcastPkts Counter64,
    ruijieApIfInDiscards Counter32,
    ruijieApIfInErrors Counter32,
    ruijieApIfInUnknownProtos Counter32,
    ruijieApIfOutOctets Counter64,
    ruijieApIfOutUcastPkts Counter64,
    ruijieApIfOutNUcastPkts Counter64,
    ruijieApIfOutDiscards Counter32,
    ruijieApIfOutErrors Counter32,
    ruijieApIfOutQLen Gauge,
    ruijieApIfLinkUPTimes INTEGER,
    ruijieApIfInDataOctets Counter64,
    ruijieApIfOutDataOctets Counter64,
    ruijieApIfMgmtUploadOctets Counter32,
    ruijieApIfMgmtDownloadOctets Counter32,  
    ruijieApIfSpeedw Integer32,
    ruijieApIfMtuw Integer32,
    ruijieApIfPhysAddressw MacAddress,     
    ruijieApIfInUcastPktsw Counter32,
    ruijieApIfInNUcastPktsw Counter32,
    ruijieApIfOutUcastPktsw Counter32,
    ruijieApIfOutNUcastPktsw Counter32,
    ruijieApIfLinkUPTimesw Counter32,
    ruijieApIfInPkts Counter64,
    ruijieApIfInFlow Counter32,
    ruijieApIfOutFlow Counter32,
    ruijieApIfInBrdcastPkts Counter64,
    ruijieApIfOutBrdcastPkts Counter64,
    ruijieApIfInMulcastPkts Counter64,
    ruijieApIfOutMulcastPkts Counter64,
    ruijieApIfInPayloadOctets Counter64,
    ruijieApIfOutPayloadOctets Counter64,
    ruijieApIfAlias DisplayString,
    ruijieApIfInDateRate Counter64,
    ruijieApIfOutDateRate Counter64,
    ruijieApifInNormalPkts Counter64,
    ruijieApIfOutPkts Counter64
    }

ruijieApPhysAddress OBJECT-TYPE
    SYNTAX PhysAddress (SIZE(6))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The ap's address at its protocol sub-layer.
        The ap's media-specific MIB must define the bit and byte
        ordering and the format of the value of this object.
        For interfaces which do not have such an address
        (e.g., a serial line), this object should contain an
        octet string of zero length."
    ::= { ruijieApIfEntry 1 }

ruijieApIfIndex OBJECT-TYPE
    SYNTAX IfIndex
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "A unique value, greater than zero, for each
        interface.  It is recommended that values are assigned
        contiguously starting from 1.  The value for each
        interface sub-layer must remain constant at least from
        one re-initialization of the entity's network
        management system to the next re-initialization."
    ::= { ruijieApIfEntry 2 }

ruijieApIfDescr OBJECT-TYPE
    SYNTAX DisplayString(SIZE(0..255))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "A textual string containing information about the
        interface.  This string should include the name of the
        manufacturer, the product name and the version of the
        interface hardware/software."
    ::= { ruijieApIfEntry 3 }

ruijieApIfType OBJECT-TYPE
    SYNTAX IANAifType
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The type of interface.  Additional values for ifType
        are assigned by the Internet Assigned Numbers
        Authority (IANA), through updating the syntax of the
        IANAifType textual convention."
    ::= { ruijieApIfEntry 4 }

ruijieApIfMtu OBJECT-TYPE
    SYNTAX INTEGER
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The size of the largest packet which can be
        sent/received on the interface, specified in octets.
        For interfaces that are used for transmitting network
        datagrams, this is the size of the largest network
        datagram that can be sent on the interface."
    ::= { ruijieApIfEntry 5 }

ruijieApIfSpeed OBJECT-TYPE
    SYNTAX Gauge
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "An estimate of the interface's current bandwidth in units of
        Mbits per second.  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.For a sub-layer which
        has no concept of bandwidth, this object should be
        zero."
    ::= { ruijieApIfEntry 6 }

ruijieApIfPhysAddress OBJECT-TYPE
    SYNTAX PhysAddress (SIZE(6))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The interface's address at its protocol sub-layer.
        For example, for an 802.x interface, this object
        normally contains a MAC address.  The interface's
        media-specific MIB must define the bit and byte
        ordering and the format of the value of this object.
        For interfaces which do not have such an address
        (e.g., a serial line), this object should contain an
        octet string of zero length."
    ::= { ruijieApIfEntry 7 }

ruijieApIfAdminStatus OBJECT-TYPE
    SYNTAX INTEGER {
        up(1),
        admindown(2),
        testing(3)
        }
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
        "The desired state of the interface.  The testing(3)
        state indicates that no operational packets can be
        passed.  When a managed system initializes, all
        interfaces start with ifAdminStatus in the admindown(2)
        state.  As a result of either explicit management
        action or per configuration information retained by
        the managed system, ifAdminStatus is then changed to
        either the up(1) or testing(3) states (or remains in
        the admindown(2) state)."
    ::= { ruijieApIfEntry 8 }

ruijieApIfOperStatus OBJECT-TYPE
    SYNTAX INTEGER {
        up(1),
        down(2),
        admindown(3),
        unknown(4),
        dormant(5),
        notPresent(6),
        lowerLayerDown(7)
        }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The current operational state of the interface.  
        If ruijieApIfAdminStatus is admindown(2) then
        ruijieApIfOperStatus should be admindown(3).  If ruijieApIfAdminStatus is
        changed to up(1) then ruijieApIfOperStatus should change to
        up(1) if the interface is ready to transmit and
        receive network traffic; it should change to
        dormant(5) if the interface is waiting for external
        actions (such as a serial line waiting for an incoming
        connection); it should remain in the down(2) state if
        and only if there is a fault that prevents it from
        going to the up(1) state; it should remain in the
        notPresent(6) state if the interface has missing
        (typically, hardware) components."
    ::= { ruijieApIfEntry 9 }

ruijieApIfLastChange OBJECT-TYPE
    SYNTAX TimeTicks
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The value of sysUpTime at the time the interface
        entered its current operational state.  If the current
        state was entered prior to the last re-initialization
        of the local network management subsystem, then this
        object contains a zero value."
    ::= { ruijieApIfEntry 10 }

ruijieApIfInOctets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total number of octets received on the interface,
        including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 11 }

ruijieApIfInUcastPkts OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The number of packets, delivered by this sub-layer to
        a higher (sub-)layer, which were not addressed to a
        multicast or broadcast address at this sub-layer.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 12 }

ruijieApIfInNUcastPkts OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS deprecated
    DESCRIPTION
        "The number of packets, delivered by this sub-layer to
        a higher (sub-)layer, which were addressed to a
        multicast or broadcast address at this sub-layer.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime.
        
        This object is deprecated in favour of
        ruijieApIfInMulticastPkts and ruijieApIfInBroadcastPkts."
    ::= { ruijieApIfEntry 13 }

ruijieApIfInDiscards OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The number of inbound packets which were chosen to be
        discarded even though no errors had been detected to
        prevent their being deliverable to a higher-layer
        protocol.  One possible reason for discarding such a
        packet could be to free up buffer space.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 14 }

ruijieApIfInErrors OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "For packet-oriented interfaces, the number of inbound
        packets that contained errors preventing them from
        being deliverable to a higher-layer protocol.  For
        character-oriented or fixed-length interfaces, the
        number of inbound transmission units that contained
        errors preventing them from being deliverable to a
        higher-layer protocol.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 15 }

ruijieApIfInUnknownProtos OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "For packet-oriented interfaces, the number of packets
        received via the interface which were discarded
        because of an unknown or unsupported protocol.  For
        character-oriented or fixed-length interfaces that
        support protocol multiplexing the number of
        transmission units received via the interface which
        were discarded because of an unknown or unsupported
        protocol.  For any interface that does not support
        protocol multiplexing, this counter will always be 0.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 16 }

ruijieApIfOutOctets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total number of octets transmitted out of the
        interface, including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 17 }

ruijieApIfOutUcastPkts OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total number of packets that higher-level
        protocols requested be transmitted, and which were not
        addressed to a multicast or broadcast address at this
        sub-layer, including those that were discarded or not
        sent.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 18 }

ruijieApIfOutNUcastPkts OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS deprecated
    DESCRIPTION
        "The total number of packets that higher-level
        protocols requested be transmitted, and which were
        addressed to a multicast or broadcast address at this
        sub-layer, including those that were discarded or not
        sent.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime.   
        This object is deprecated in favour of
        ifOutMulticastPkts and ruijieApIfOutBroadcastPkts."
    ::= { ruijieApIfEntry 19 }
    
ruijieApIfOutDiscards OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The number of outbound packets which were chosen to
        be discarded even though no errors had been detected
        to prevent their being transmitted.  One possible
        reason for discarding such a packet could be to free
        up buffer space.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 20 }
    
ruijieApIfOutErrors OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "For packet-oriented interfaces, the number of
        outbound packets that could not be transmitted because
        of errors.  For character-oriented or fixed-length
        interfaces, the number of outbound transmission units
        that could not be transmitted because of errors.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 21 }

ruijieApIfOutQLen OBJECT-TYPE
    SYNTAX Gauge
    MAX-ACCESS read-only
    STATUS deprecated
    DESCRIPTION
        "The length of the output packet queue (in packets)."
    ::= { ruijieApIfEntry 22 }

    
ruijieApIfLinkUPTimes OBJECT-TYPE
        SYNTAX INTEGER
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Vlaues Of Linkup Times."
    ::= { ruijieApIfEntry 23 }
       
ruijieApIfInDataOctets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The data octets received on the interface,
        including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 24 }

ruijieApIfOutDataOctets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The data octets transmitted out of the
        interface, including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 25 }
    
ruijieApIfMgmtUploadOctets OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The upload octets received on the mgmt interface,
        including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 26 }

ruijieApIfMgmtDownloadOctets OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The download octets transmitted out of the
        mgmt interface, including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 27 }

ruijieApIfSpeedw OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "An estimate of the interface's current bandwidth in units of
        Mbits per second.  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. For a sub-layer which
        has no concept of bandwidth, this object should be
        zero."
    ::= { ruijieApIfEntry 28 }

ruijieApIfMtuw OBJECT-TYPE
    SYNTAX Integer32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The size of the largest packet which can be
        sent/received on the interface, specified in octets.
        For interfaces that are used for transmitting network
        datagrams, this is the size of the largest network
        datagram that can be sent on the interface."
    ::= { ruijieApIfEntry 29 }
        
ruijieApIfPhysAddressw OBJECT-TYPE
    SYNTAX MacAddress
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The interface's address at its protocol sub-layer.
        For example, for an 802.x interface, this object
        normally contains a MAC address.  The interface's
        media-specific MIB must define the bit and byte
        ordering and the format of the value of this object.
        For interfaces which do not have such an address
        (e.g., a serial line), this object should contain an
        octet string of zero length."
    ::= { ruijieApIfEntry 30 }

ruijieApIfInUcastPktsw OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The number of packets, delivered by this sub-layer to
        a higher (sub-)layer, which were not addressed to a
        multicast or broadcast address at this sub-layer.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 31 }

ruijieApIfInNUcastPktsw OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS deprecated
    DESCRIPTION
        "The number of packets, delivered by this sub-layer to
        a higher (sub-)layer, which were addressed to a
        multicast or broadcast address at this sub-layer.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime.
        
        This object is deprecated in favour of
        ruijieApIfInMulticastPkts and ruijieApIfInBroadcastPkts."
    ::= { ruijieApIfEntry 32 }

ruijieApIfOutUcastPktsw OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total number of packets that higher-level
        protocols requested be transmitted, and which were not
        addressed to a multicast or broadcast address at this
        sub-layer, including those that were discarded or not
        sent.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 33 }

ruijieApIfOutNUcastPktsw OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS deprecated
    DESCRIPTION
        "The total number of packets that higher-level
        protocols requested be transmitted, and which were
        addressed to a multicast or broadcast address at this
        sub-layer, including those that were discarded or not
        sent.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime.   
        This object is deprecated in favour of
        ifOutMulticastPkts and ruijieApIfOutBroadcastPkts."
    ::= { ruijieApIfEntry 34 }

ruijieApIfLinkUPTimesw OBJECT-TYPE
        SYNTAX Counter32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The counters of linkup and linkdown times of the interface."
    ::= { ruijieApIfEntry 35 }
        
ruijieApIfInPkts OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "The total number of packets received on the interface,
         including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 36 }

ruijieApIfInFlow OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The flow rate of data octets in units of Bytes per-second received on the interface,
	including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 37 }

ruijieApIfOutFlow OBJECT-TYPE
    SYNTAX Counter32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The flow rate of data octets in units of Bytes per-second transmitted out of the
        interface, including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 38 }

ruijieApIfInBrdcastPkts OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "The total number of broadcast packets received on the interface,
         including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 39 }

ruijieApIfOutBrdcastPkts OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "The total number of broadcast packets transmitted out of the interface,
         including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 40 }

ruijieApIfInMulcastPkts OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "The total number of multicast packets received on the interface,
         including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 41 }

ruijieApIfOutMulcastPkts OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "The total number of multicast packets transmitted out of the interface,
         including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 42 }

ruijieApIfInPayloadOctets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total number of payload octets received on the interface,
        including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 43 }

ruijieApIfOutPayloadOctets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total number of payload octets transmitted out of the interface,
        including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 44 }

ruijieApIfAlias OBJECT-TYPE
    SYNTAX DisplayString(SIZE(0..255))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "A textual string containing alias information about the
        interface."
    ::= { ruijieApIfEntry 45 }

ruijieApIfInDateRate OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
        "The flow rate of data octets in units of Kilo-Bits per-second received on the interface,
	including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 46 }

ruijieApIfOutDateRate OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The flow rate of data octets in units of Kilo-Bits per-second transmitted out of the
        interface, including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 47 }

ruijieApifInNormalPkts OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total number of normal packets received on the interface,
         including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 48 }

ruijieApIfOutPkts OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total number of packets transmitted out of the interface,
         including framing characters.
        
        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieApIfEntry 49 }

ruijieIfLinkTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RuijieIfLinkEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "A list of interface entries.  The number of entries is
            given by the value of ifNumber."
    ::= { ruijieIfConfigMIBObjects 14 }

ruijieIfLinkEntry OBJECT-TYPE
    SYNTAX      RuijieIfLinkEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
            "An entry containing management information applicable to a
            particular interface."
    INDEX   { ruijieIfLinkIndex }
    ::= { ruijieIfLinkTable 1 }

RuijieIfLinkEntry ::=
    SEQUENCE {
        ruijieIfLinkIndex                   IfIndex,
        ruijieIfUplinkInOctets              Counter32,
        ruijieIfUplinkInUcastPkts           Counter32,
        ruijieIfUplinkInNUcastPkts          Counter32,
        ruijieIfUplinkInDiscards            Counter32,
        ruijieIfUplinkInErrors              Counter32,
        ruijieIfUplinkOutOctets             Counter32,
        ruijieIfUplinkOutUcastPkts          Counter32,
        ruijieIfUplinkOutNUcastPkts         Counter32,
        ruijieIfUplinkOutDiscards           Counter32,
        ruijieIfUplinkOutErrors             Counter32,
        ruijieIfDownlinkInOctets            Counter32,
        ruijieIfDownlinkInUcastPkts         Counter32,
        ruijieIfDownlinkInNUcastPkts        Counter32,
        ruijieIfDownlinkInDiscards          Counter32,
        ruijieIfDownlinkInErrors            Counter32,
        ruijieIfDownlinkOutOctets           Counter32,
        ruijieIfDownlinkOutUcastPkts        Counter32,
        ruijieIfDownlinkOutNUcastPkts       Counter32,
        ruijieIfDownlinkOutDiscards         Counter32,
        ruijieIfDownlinkOutErrors           Counter32,
        ruijieIfUplinkInBcastPkts           Counter64,
        ruijieIfUplinkOutBcastPkts          Counter64,
        ruijieIfDownlinkInBcastPkts         Counter64,
        ruijieIfDownlinkOutBcastPkts        Counter64
    }

ruijieIfLinkIndex OBJECT-TYPE
    SYNTAX      IfIndex
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "A unique value, greater than zero, for each interface.  It
            is recommended that values are assigned contiguously
            starting from 1.  The value for each interface sub-layer
            must remain constant at least from one re-initialization of
            the entity's network management system to the next re-
            initialization."
    ::= { ruijieIfLinkEntry 1 }

ruijieIfUplinkInOctets OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The total number of octets received on the interface,
            including framing characters.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 2 }

ruijieIfUplinkInUcastPkts OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of packets, delivered by this sub-layer to a
            higher (sub-)layer, which were not addressed to a multicast
            or broadcast address at this sub-layer.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 3 }

ruijieIfUplinkInNUcastPkts OBJECT-TYPE
    SYNTAX  Counter32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
            "The number of packets, delivered by this sub-layer to a
            higher (sub-)layer, which were addressed to a multicast or
            broadcast address at this sub-layer.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime.

            This object is deprecated in favour of ifInMulticastPkts and
            ifInBroadcastPkts."
    ::= { ruijieIfLinkEntry 4 }

ruijieIfUplinkInDiscards OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of inbound packets which were chosen to be
            discarded even though no errors had been detected to prevent
            their being deliverable to a higher-layer protocol.  One
            possible reason for discarding such a packet could be to
            free up buffer space.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 5 }

ruijieIfUplinkInErrors OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "For packet-oriented interfaces, the number of inbound
            packets that contained errors preventing them from being
            deliverable to a higher-layer protocol.  For character-
            oriented or fixed-length interfaces, the number of inbound
            transmission units that contained errors preventing them
            from being deliverable to a higher-layer protocol.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 6 }

ruijieIfUplinkOutOctets OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The total number of octets transmitted out of the
            interface, including framing characters.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 7 }

ruijieIfUplinkOutUcastPkts OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The total number of packets that higher-level protocols
            requested be transmitted, and which were not addressed to a
            multicast or broadcast address at this sub-layer, including
            those that were discarded or not sent.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 8 }

ruijieIfUplinkOutNUcastPkts OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
            "The total number of packets that higher-level protocols
            requested be transmitted, and which were addressed to a
            multicast or broadcast address at this sub-layer, including
            those that were discarded or not sent.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime.

            This object is deprecated in favour of ifOutMulticastPkts
            and ifOutBroadcastPkts."
    ::= { ruijieIfLinkEntry 9 }

ruijieIfUplinkOutDiscards OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of outbound packets which were chosen to be
            discarded even though no errors had been detected to prevent
            their being transmitted.  One possible reason for discarding
            such a packet could be to free up buffer space.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 10 }

ruijieIfUplinkOutErrors OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "For packet-oriented interfaces, the number of outbound
            packets that could not be transmitted because of errors.
            For character-oriented or fixed-length interfaces, the
            number of outbound transmission units that could not be
            transmitted because of errors.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 11 }

ruijieIfDownlinkInOctets OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The total number of octets received on the interface,
            including framing characters.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 12 }

ruijieIfDownlinkInUcastPkts OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of packets, delivered by this sub-layer to a
            higher (sub-)layer, which were not addressed to a multicast
            or broadcast address at this sub-layer.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 13 }

ruijieIfDownlinkInNUcastPkts OBJECT-TYPE
    SYNTAX  Counter32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
            "The number of packets, delivered by this sub-layer to a
            higher (sub-)layer, which were addressed to a multicast or
            broadcast address at this sub-layer.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime.

            This object is deprecated in favour of ifInMulticastPkts and
            ifInBroadcastPkts."
    ::= { ruijieIfLinkEntry 14 }

ruijieIfDownlinkInDiscards OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of inbound packets which were chosen to be
            discarded even though no errors had been detected to prevent
            their being deliverable to a higher-layer protocol.  One
            possible reason for discarding such a packet could be to
            free up buffer space.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 15 }

ruijieIfDownlinkInErrors OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "For packet-oriented interfaces, the number of inbound
            packets that contained errors preventing them from being
            deliverable to a higher-layer protocol.  For character-
            oriented or fixed-length interfaces, the number of inbound
            transmission units that contained errors preventing them
            from being deliverable to a higher-layer protocol.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 16 }

ruijieIfDownlinkOutOctets OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The total number of octets transmitted out of the
            interface, including framing characters.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 17 }

ruijieIfDownlinkOutUcastPkts OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The total number of packets that higher-level protocols
            requested be transmitted, and which were not addressed to a
            multicast or broadcast address at this sub-layer, including
            those that were discarded or not sent.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 18 }

ruijieIfDownlinkOutNUcastPkts OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
            "The total number of packets that higher-level protocols
            requested be transmitted, and which were addressed to a
            multicast or broadcast address at this sub-layer, including
            those that were discarded or not sent.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime.

            This object is deprecated in favour of ifOutMulticastPkts
            and ifOutBroadcastPkts."
    ::= { ruijieIfLinkEntry 19 }

ruijieIfDownlinkOutDiscards OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of outbound packets which were chosen to be
            discarded even though no errors had been detected to prevent
            their being transmitted.  One possible reason for discarding
            such a packet could be to free up buffer space.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 20 }

ruijieIfDownlinkOutErrors OBJECT-TYPE
    SYNTAX      Counter32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "For packet-oriented interfaces, the number of outbound
            packets that could not be transmitted because of errors.
            For character-oriented or fixed-length interfaces, the
            number of outbound transmission units that could not be
            transmitted because of errors.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 21 }

ruijieIfUplinkInBcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
              "The number of upbound and inbound packets, delivered by this 
            sub-layer to a higher (sub-)layer, which were addressed to a 
            broadcast address at this sub-layer.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 22 }

ruijieIfUplinkOutBcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of upbound and outbound packets, delivered by this 
            sub-layer to a higher (sub-)layer, which were addressed to a 
            broadcast address at this sub-layer.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 23 }
	
ruijieIfDownlinkInBcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of downbound and inbound packets, delivered by this 
            sub-layer to a higher (sub-)layer, which were addressed to a 
            broadcast address at this sub-layer.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 24 }
	
ruijieIfDownlinkOutBcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
            "The number of downbound and outbound packets, delivered by this 
            sub-layer to a higher (sub-)layer, which were addressed to a 
            broadcast address at this sub-layer.

            Discontinuities in the value of this counter can occur at
            re-initialization of the management system, and at other
            times as indicated by the value of
            ifCounterDiscontinuityTime."
    ::= { ruijieIfLinkEntry 25 }

-- interface traffic statistics, added by Yin Xiaojie, March 2013

ruijieIfTrafficStatisticsObjects     OBJECT IDENTIFIER ::= { ruijieIfConfigMIBObjects 15 }
ruijieIfLinkTrafficStatistics        OBJECT IDENTIFIER ::= { ruijieIfTrafficStatisticsObjects 1 }
ruijieIfLinkQosStatistics            OBJECT IDENTIFIER ::= { ruijieIfTrafficStatisticsObjects 2 }
ruijieIfDeviceTrafficStatistics      OBJECT IDENTIFIER ::= { ruijieIfTrafficStatisticsObjects 3 }

-- physical interface configuration table

ruijieIfPhyTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfPhyEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "list of physical interface basic configuration objects."
        ::= { ruijieIfConfigMIBObjects 16 }

ruijieIfPhyEntry OBJECT-TYPE
        SYNTAX RuijieIfPhyEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entry contains physical interface basic configurations."
        INDEX { ruijieIfPhyIndex }
        ::= { ruijieIfPhyTable 1 }		
		
RuijieIfPhyEntry ::=
		SEQUENCE {
			ruijieIfPhyIndex IfIndex,
			ruijieifPhyOperStatus INTEGER
        }

ruijieIfPhyIndex OBJECT-TYPE
        SYNTAX IfIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Physical port index."
        ::= { ruijieIfPhyEntry 1 }		
		
ruijieifPhyOperStatus OBJECT-TYPE
        SYNTAX INTEGER {
			up(0),
			down(1),
			admindown(2)
		}
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The current operational state of the physical interface."
        ::= { ruijieIfPhyEntry 2 }

-- interface peak rate information table

ruijieIfPeakRateTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfPeakRateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "list of interface peak rate information objects."
        ::= { ruijieIfConfigMIBObjects 17 }

ruijieIfPeakRateEntry OBJECT-TYPE
        SYNTAX RuijieIfPeakRateEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entry contains interface peak rate information."
        INDEX { ruijieIfPeakRateIndex }
        ::= { ruijieIfPeakRateTable 1 }		
		
RuijieIfPeakRateEntry ::=
		SEQUENCE {
			ruijieIfPeakRateIndex IfIndex,
			ruijieIfRxPeakRate Counter64,
			ruijieIfRxPeakRateTime DisplayString,
			ruijieIfTxPeakRate Counter64,
			ruijieIfTxPeakRateTime DisplayString
        }

ruijieIfPeakRateIndex OBJECT-TYPE
        SYNTAX IfIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "interface index."
        ::= { ruijieIfPeakRateEntry 1 }		
		
ruijieIfRxPeakRate OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The receiving peak rate of interface."
        ::= { ruijieIfPeakRateEntry 2 }
		
ruijieIfRxPeakRateTime OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The occuring time of receiving peak rate of interface."
        ::= { ruijieIfPeakRateEntry 3 }

ruijieIfTxPeakRate OBJECT-TYPE
        SYNTAX Counter64
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The transmission peak rate of interface."
        ::= { ruijieIfPeakRateEntry 4 }
		
ruijieIfTxPeakRateTime OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The occuring time of transmission peak rate of interface."
        ::= { ruijieIfPeakRateEntry 5 }

-- AP info table

ruijieApInfoTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieApInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "list of ap information objects."
        ::= { ruijieIfConfigMIBObjects 18 }

ruijieApInfoEntry OBJECT-TYPE
        SYNTAX RuijieApInfoEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entry contains ap information."
        INDEX { ruijieApInfoAddress }
        ::= { ruijieApInfoTable 1 }		
		
RuijieApInfoEntry ::=
		SEQUENCE {
			ruijieApInfoAddress        PhysAddress,
			ruijieApInfoWireInRate     Counter64,
			ruijieApInfoWireOutRate    Counter64,
            ruijieApInfoWireInOctets   Counter64,
			ruijieApInfoWireOutOctets  Counter64
        }

ruijieApInfoAddress OBJECT-TYPE
    SYNTAX PhysAddress (SIZE(6))
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The ap's address at its protocol sub-layer.
        The ap's media-specific MIB must define the bit and byte
        ordering and the format of the value of this object.
        For interfaces which do not have such an address
        (e.g., a serial line), this object should contain an
        octet string of zero length."
    ::= { ruijieApInfoEntry 1 }

ruijieApInfoWireInRate OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The input rate in bps of all ap wire-ports."
    ::= { ruijieApInfoEntry 2 }
    
ruijieApInfoWireOutRate OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The output rate in bps of all ap wire-ports."
    ::= { ruijieApInfoEntry 3 }

ruijieApInfoWireInOctets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total number of octets received on the ap wire-ports."
    ::= { ruijieApInfoEntry 4 }

ruijieApInfoWireOutOctets OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The total number of octets transmitted out of the ap wire-ports."
    ::= { ruijieApInfoEntry 5 }

-- units of ruijieIfDropTable
       ruijieIfDropTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF RuijieIfDropEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "A table of interface drop statistics."
       ::= { ruijieIfConfigMIBObjects 19 }

       ruijieIfDropEntry OBJECT-TYPE
       SYNTAX      RuijieIfDropEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "Interface statistics drop entry"
       INDEX { ruijieIfDropIndex }
       ::= { ruijieIfDropTable 1 }

       RuijieIfDropEntry ::=
       SEQUENCE {
           ruijieIfDropIndex                Unsigned32,
           ruijieIfInDropPkts               Counter64,
           ruijieIfInResLackPkts            Counter64,
           ruijieIfInQosDropPkts            Counter64,
           ruijieIfFwdEntryDropPkts         Counter64,
           ruijieIfOutDropPkts              Counter64,
           ruijieIfOutResLackPkts           Counter64,
           ruijieIfNoBufferCount            Counter64,
           ruijieIfOBMDropPkts              Counter64,
           ruijieIfInErrorPkts              Counter64,
           ruijieIfOutErrorPkts             Counter64
       }

       ruijieIfDropIndex OBJECT-TYPE
       SYNTAX        Unsigned32 
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
           "The device traffic drop interface index."
       ::= { ruijieIfDropEntry 1 }

       ruijieIfInDropPkts OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Input discarded packets without drop by QOS."
       ::= { ruijieIfDropEntry 2 }

       ruijieIfInResLackPkts OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Input discarded packets by resources lack."
       ::= { ruijieIfDropEntry 3 }

       ruijieIfInQosDropPkts OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Discarded packets by QOS."
       ::= { ruijieIfDropEntry 4 }

       ruijieIfFwdEntryDropPkts OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Input discarded packets by forwardind entry."
       ::= { ruijieIfDropEntry 5 }

       ruijieIfOutDropPkts OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Output discarded packets."
       ::= { ruijieIfDropEntry 6 }

       ruijieIfOutResLackPkts OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Output discarded packets by resources lack."
       ::= { ruijieIfDropEntry 7 }

       ruijieIfNoBufferCount OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "discarded packets by no buffer."
       ::= { ruijieIfDropEntry 8 }

       ruijieIfOBMDropPkts OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "OBM discarded packets."
       ::= { ruijieIfDropEntry 9 }

       ruijieIfInErrorPkts OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Input error packets."
       ::= { ruijieIfDropEntry 10 }

       ruijieIfOutErrorPkts OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Output error packets."
       ::= { ruijieIfDropEntry 11 }

-- units of ruijieEthIfTable

ruijieEthIfTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF RuijieEthStaEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "A table of ethernet interface statistics."
    ::= { ruijieIfConfigMIBObjects 20 }

ruijieEthStaEntry OBJECT-TYPE
    SYNTAX      RuijieEthStaEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Ethernet interface statistics entry"
    INDEX { ruijieEthIndex }
    ::= { ruijieEthIfTable 1 }

RuijieEthStaEntry ::=
    SEQUENCE {
        ruijieEthIndex                  Unsigned32,
        ruijieEthDiscard                Counter64,
        ruijieEthBandwidthUsage         DisplayString,
        ruijieEthInOctets               Counter64,
        ruijieEthInPkts                 Counter64,
        ruijieEthInBroadcastPkts        Counter64,
        ruijieEthInMulticastPkts        Counter64,
        ruijieEthInUcastPkts            Counter64,
        ruijieEthInNUcastPkts           Counter64,
        ruijieEthInResLackPkts          Counter64,
        ruijieEthInDropPkts             Counter64,
        ruijieEthInErrors               Counter64,
        ruijieEthOBMDropPkts            Counter64,
        ruijieEthNoBufferCount          Counter64,
        ruijieEthFwdEntryDropPkts       Counter64,
        ruijieEthInQosDropPkts          Counter64,
        ruijieEthInUnknownProtos        Counter64,
        ruijieEthInDropPktsRate         DisplayString,
        ruijieEthInErrorPktsRate        DisplayString,
        ruijieEthInPktRate              Counter64,
        ruijieEthInBitsRate             Counter64,
        ruijieEthInBandwidthUsage       DisplayString,
        ruijieEthRxPeakRate             Counter64,
        ruijieEthRxPeakRateTime         DisplayString,
        ruijieEthOutOctets              Counter64,
        ruijieEthOutPkts                Counter64,
        ruijieEthOutBroadcastPkts       Counter64,
        ruijieEthOutMulticastPkts       Counter64,
        ruijieEthOutUcastPkts           Counter64,
        ruijieEthOutNUcastPkts          Counter64,
        ruijieEthOutResLackPkts         Counter64,
        ruijieEthOutDropPkts            Counter64,
        ruijieEthOutErrors              Counter64,
        ruijieEthOutCollisionPkts       Counter64,
        ruijieEthOutDropPktsRate        DisplayString,
        ruijieEthOutErrorPktsRate       DisplayString,
        ruijieEthOutPktRate             Counter64,
        ruijieEthOutBitsRate            Counter64,
        ruijieEthOutBandwidthUsage      DisplayString,
        ruijieEthTxPeakRate             Counter64,
        ruijieEthTxPeakRateTime         DisplayString,
        ruijieEthUplinkInOctets         Counter64,
        ruijieEthUplinkInUcastPkts      Counter64,
        ruijieEthUplinkInNUcastPkts     Counter64,
        ruijieEthUplinkInDiscards       Counter64,
        ruijieEthUplinkInErrors         Counter64,
        ruijieEthUplinkOutOctets        Counter64,
        ruijieEthUplinkOutUcastPkts     Counter64,
        ruijieEthUplinkOutNUcastPkts    Counter64,
        ruijieEthUplinkOutDiscards      Counter64,
        ruijieEthUplinkOutErrors        Counter64,
        ruijieEthUplinkInBcastPkts      Counter64,
        ruijieEthUplinkOutBcastPkts     Counter64,
        ruijieEthDownlinkInOctets       Counter64,
        ruijieEthDownlinkInUcastPkts    Counter64,
        ruijieEthDownlinkInNUcastPkts   Counter64,
        ruijieEthDownlinkInDiscards     Counter64,
        ruijieEthDownlinkInErrors       Counter64,
        ruijieEthDownlinkOutOctets      Counter64,
        ruijieEthDownlinkOutUcastPkts   Counter64,
        ruijieEthDownlinkOutNUcastPkts  Counter64,
        ruijieEthDownlinkOutDiscards    Counter64,
        ruijieEthDownlinkOutErrors      Counter64,
        ruijieEthDownlinkInBcastPkts    Counter64,
        ruijieEthDownlinkOutBcastPkts   Counter64,
        ruijieEthBitErrorRate           DisplayString
    }

ruijieEthIndex OBJECT-TYPE
    SYNTAX        Unsigned32 
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The ethernet interface index."
    ::= { ruijieEthStaEntry 1 }

ruijieEthDiscard OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of bound packets which were chosen to be
        discarded even though no errors. One possible reason for
        discarding such a packet could be to free up buffer space.

        Discontinuities in the value of this counter can occur
        at re-initialization of the management system, and at
        other times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 2 }

ruijieEthBandwidthUsage OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "RX bandwidth utilization ratio of interface."
    ::= { ruijieEthStaEntry 3 }

ruijieEthInOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of octets received on the interface,
        including framing characters.
        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 4 }

ruijieEthInPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets received on this interface,
        including framing characters.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 5 } 

ruijieEthInBroadcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets, delivered by this sub-layer to a
        higher (sub-)layer, which were addressed to a broadcast
        address at this sub-layer.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 6 }

ruijieEthInMulticastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets, delivered by this sub-layer to a
        higher (sub-)layer, which were addressed to a multicast
        address at this sub-layer.  For a MAC layer protocol, this
        includes both Group and Functional addresses.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 7 }

ruijieEthInUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets, delivered by this sub-layer to a
        higher (sub-)layer, which were not addressed to a multicast
        or broadcast address at this sub-layer.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 8 }

ruijieEthInNUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The counter of receiving  packets contain BROADCAST and PACKET_MULTICAST ."
    ::= { ruijieEthStaEntry 9 }

ruijieEthInResLackPkts OBJECT-TYPE
   SYNTAX       Counter64
   MAX-ACCESS   read-only
   STATUS       current
   DESCRIPTION   "Input discarded packets by resources lack."
   ::= { ruijieEthStaEntry 10 }

ruijieEthInDropPkts OBJECT-TYPE
   SYNTAX       Counter64
   MAX-ACCESS   read-only
   STATUS       current
   DESCRIPTION   "Input discarded packets without drop by QOS."
   ::= { ruijieEthStaEntry 11 }

ruijieEthInErrors OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "For packet-oriented interfaces, the number of inbound
        packets that contained errors preventing them from being
        deliverable to a higher-layer protocol.  For character-
        oriented or fixed-length interfaces, the number of inbound
        transmission units that contained errors preventing them
        from being deliverable to a higher-layer protocol.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 12 }

ruijieEthOBMDropPkts OBJECT-TYPE
   SYNTAX       Counter64
   MAX-ACCESS   read-only
   STATUS       current
   DESCRIPTION   "OBM discarded packets."
   ::= { ruijieEthStaEntry 13 }

ruijieEthNoBufferCount OBJECT-TYPE
   SYNTAX       Counter64
   MAX-ACCESS   read-only
   STATUS       current
   DESCRIPTION   "discarded packets by no buffer."
   ::= { ruijieEthStaEntry 14 }

ruijieEthFwdEntryDropPkts OBJECT-TYPE
   SYNTAX       Counter64
   MAX-ACCESS   read-only
   STATUS       current
   DESCRIPTION   "Input discarded packets by forwardind entry."
   ::= { ruijieEthStaEntry 15 }

ruijieEthInQosDropPkts OBJECT-TYPE
   SYNTAX       Counter64
   MAX-ACCESS   read-only
   STATUS       current
   DESCRIPTION   "Discarded packets by QOS."
   ::= { ruijieEthStaEntry 16 }

ruijieEthInUnknownProtos OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "For packet-oriented interfaces, the number of packets
        received via the interface which were discarded because of
        an unknown or unsupported protocol.  For character-oriented
        or fixed-length interfaces that support protocol
        multiplexing the number of transmission units received via
        the interface which were discarded because of an unknown or
        unsupported protocol.  For any interface that does not
        support protocol multiplexing, this counter will always be
        0.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 17 }

ruijieEthInDropPktsRate OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Input packet discarded rate."
    ::= { ruijieEthStaEntry 18 }

ruijieEthInErrorPktsRate OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Input packet error rate."
    ::= { ruijieEthStaEntry 19 }

ruijieEthInPktRate OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The average input packet-rate over a period of time(configuration by interface command 'load-interval') 
        in packets per second on this interface."
    ::= { ruijieEthStaEntry 20 }

ruijieEthInBitsRate OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The average input packet-rate over a period of time(configuration by interface command 'load-interval') 
        in bits per second on this interface."
    ::= { ruijieEthStaEntry 21 }

ruijieEthInBandwidthUsage OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "RX bandwidth utilization ratio of interface."
    ::= { ruijieEthStaEntry 22 }

ruijieEthRxPeakRate OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The receiving peak rate of interface."
    ::= { ruijieEthStaEntry 23 }

ruijieEthRxPeakRateTime OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The occuring time of receiving peak rate of interface."
    ::= { ruijieEthStaEntry 24 }

ruijieEthOutOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of octets transmitted out of the
        interface, including framing characters.
        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 25 }

ruijieEthOutPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets sent on this interface,
        including framing characters.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
     ::= { ruijieEthStaEntry 26 }

ruijieEthOutBroadcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of packets that higher-level protocols
        requested be transmitted, and which were addressed to a
        broadcast address at this sub-layer, including those that
        were discarded or not sent.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 27 }

ruijieEthOutMulticastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of packets that higher-level protocols
        requested be transmitted, and which were addressed to a
        multicast address at this sub-layer, including those that
        were discarded or not sent.  For a MAC layer protocol, this
        includes both Group and Functional addresses.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 28 }

ruijieEthOutUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of packets that higher-level protocols
        requested be transmitted, and which were not addressed to a
        multicast or broadcast address at this sub-layer, including
        those that were discarded or not sent.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 29 }

ruijieEthOutNUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The counter of sending  packets contain BROADCAST and PACKET_MULTICAST ."
    ::= { ruijieEthStaEntry 30 }

ruijieEthOutResLackPkts OBJECT-TYPE
    SYNTAX       Counter64
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION   "Output discarded packets by resources lack."
    ::= { ruijieEthStaEntry 31 }

ruijieEthOutDropPkts OBJECT-TYPE
    SYNTAX       Counter64
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION   "Output discarded packets."
    ::= { ruijieEthStaEntry 32 }

ruijieEthOutErrors OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "For packet-oriented interfaces, the number of outbound
        packets that could not be transmitted because of errors.
        For character-oriented or fixed-length interfaces, the
        number of outbound transmission units that could not be
        transmitted because of errors.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 33 }

ruijieEthOutCollisionPkts OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Interfac frames collision counter."
    ::= { ruijieEthStaEntry 34 }

ruijieEthOutDropPktsRate OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Output packet discarded rate."
    ::= { ruijieEthStaEntry 35 }

ruijieEthOutErrorPktsRate OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Output packet error rate."
    ::= { ruijieEthStaEntry 36 }

ruijieEthOutPktRate OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The average output packet-rate over a period of time(configuration by interface command 'load-interval') 
        in packets per second on this interface."
    ::= { ruijieEthStaEntry 37 }

ruijieEthOutBitsRate OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The average output packet-rate over a period of time(configuration by interface command 'load-interval') 
        in bits per second on this interface."
    ::= { ruijieEthStaEntry 38 }

ruijieEthOutBandwidthUsage OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "TX bandwidth utilization ratio of interface."
     ::= { ruijieEthStaEntry 39 }

ruijieEthTxPeakRate OBJECT-TYPE
    SYNTAX Counter64
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The transmission peak rate of interface."
    ::= { ruijieEthStaEntry 40 }

ruijieEthTxPeakRateTime OBJECT-TYPE
    SYNTAX DisplayString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The occuring time of transmission peak rate of interface."
    ::= { ruijieEthStaEntry 41 }

ruijieEthUplinkInOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of octets received on the interface,
        including framing characters.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 42 }

ruijieEthUplinkInUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets, delivered by this sub-layer to a
        higher (sub-)layer, which were not addressed to a multicast
        or broadcast address at this sub-layer.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 43 }

ruijieEthUplinkInNUcastPkts OBJECT-TYPE
    SYNTAX  Counter64
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "The number of packets, delivered by this sub-layer to a
        higher (sub-)layer, which were addressed to a multicast or
        broadcast address at this sub-layer.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime.

        This object is deprecated in favour of ifInMulticastPkts and
        ifInBroadcastPkts."
    ::= { ruijieEthStaEntry 44 }

ruijieEthUplinkInDiscards OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of inbound packets which were chosen to be
        discarded even though no errors had been detected to prevent
        their being deliverable to a higher-layer protocol.  One
        possible reason for discarding such a packet could be to
        free up buffer space.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 45 }

ruijieEthUplinkInErrors OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "For packet-oriented interfaces, the number of inbound
        packets that contained errors preventing them from being
        deliverable to a higher-layer protocol.  For character-
        oriented or fixed-length interfaces, the number of inbound
        transmission units that contained errors preventing them
        from being deliverable to a higher-layer protocol.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 46 }

ruijieEthUplinkOutOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of octets transmitted out of the
        interface, including framing characters.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 47 }

ruijieEthUplinkOutUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of packets that higher-level protocols
        requested be transmitted, and which were not addressed to a
        multicast or broadcast address at this sub-layer, including
        those that were discarded or not sent.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 48 }

ruijieEthUplinkOutNUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "The total number of packets that higher-level protocols
        requested be transmitted, and which were addressed to a
        multicast or broadcast address at this sub-layer, including
        those that were discarded or not sent.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime.

        This object is deprecated in favour of ifOutMulticastPkts
        and ifOutBroadcastPkts."
    ::= { ruijieEthStaEntry 49 }

ruijieEthUplinkOutDiscards OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of outbound packets which were chosen to be
        discarded even though no errors had been detected to prevent
        their being transmitted.  One possible reason for discarding
        such a packet could be to free up buffer space.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 50 }

ruijieEthUplinkOutErrors OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "For packet-oriented interfaces, the number of outbound
        packets that could not be transmitted because of errors.
        For character-oriented or fixed-length interfaces, the
        number of outbound transmission units that could not be
        transmitted because of errors.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 51 }

ruijieEthUplinkInBcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of upbound and inbound packets, delivered by this 
        sub-layer to a higher (sub-)layer, which were addressed to a 
        broadcast address at this sub-layer.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 52 }

ruijieEthUplinkOutBcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of upbound and outbound packets, delivered by this 
        sub-layer to a higher (sub-)layer, which were addressed to a 
        broadcast address at this sub-layer.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 53 }

ruijieEthDownlinkInOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of octets received on the interface,
        including framing characters.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 54 }

ruijieEthDownlinkInUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of packets, delivered by this sub-layer to a
        higher (sub-)layer, which were not addressed to a multicast
        or broadcast address at this sub-layer.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 55 }

ruijieEthDownlinkInNUcastPkts OBJECT-TYPE
    SYNTAX  Counter64
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "The number of packets, delivered by this sub-layer to a
        higher (sub-)layer, which were addressed to a multicast or
        broadcast address at this sub-layer.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime.

        This object is deprecated in favour of ifInMulticastPkts and
        ifInBroadcastPkts."
    ::= { ruijieEthStaEntry 56 }

ruijieEthDownlinkInDiscards OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of inbound packets which were chosen to be
        discarded even though no errors had been detected to prevent
        their being deliverable to a higher-layer protocol.  One
        possible reason for discarding such a packet could be to
        free up buffer space.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 57 }

ruijieEthDownlinkInErrors OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "For packet-oriented interfaces, the number of inbound
        packets that contained errors preventing them from being
        deliverable to a higher-layer protocol.  For character-
        oriented or fixed-length interfaces, the number of inbound
        transmission units that contained errors preventing them
        from being deliverable to a higher-layer protocol.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 58 }

ruijieEthDownlinkOutOctets OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of octets transmitted out of the
        interface, including framing characters.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 59 }

ruijieEthDownlinkOutUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The total number of packets that higher-level protocols
        requested be transmitted, and which were not addressed to a
        multicast or broadcast address at this sub-layer, including
        those that were discarded or not sent.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 60 }

ruijieEthDownlinkOutNUcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      deprecated
    DESCRIPTION
        "The total number of packets that higher-level protocols
        requested be transmitted, and which were addressed to a
        multicast or broadcast address at this sub-layer, including
        those that were discarded or not sent.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime.

        This object is deprecated in favour of ifOutMulticastPkts
        and ifOutBroadcastPkts."
    ::= { ruijieEthStaEntry 61 }

ruijieEthDownlinkOutDiscards OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of outbound packets which were chosen to be
        discarded even though no errors had been detected to prevent
        their being transmitted.  One possible reason for discarding
        such a packet could be to free up buffer space.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 62 }

ruijieEthDownlinkOutErrors OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "For packet-oriented interfaces, the number of outbound
        packets that could not be transmitted because of errors.
        For character-oriented or fixed-length interfaces, the
        number of outbound transmission units that could not be
        transmitted because of errors.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 63 }

ruijieEthDownlinkInBcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of downbound and inbound packets, delivered by this 
        sub-layer to a higher (sub-)layer, which were addressed to a 
        broadcast address at this sub-layer.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 64 }

ruijieEthDownlinkOutBcastPkts OBJECT-TYPE
    SYNTAX      Counter64
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The number of downbound and outbound packets, delivered by this 
        sub-layer to a higher (sub-)layer, which were addressed to a 
        broadcast address at this sub-layer.

        Discontinuities in the value of this counter can occur at
        re-initialization of the management system, and at other
        times as indicated by the value of
        ifCounterDiscontinuityTime."
    ::= { ruijieEthStaEntry 65 }

ruijieEthBitErrorRate OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The bit error rate of interface."
     ::= { ruijieEthStaEntry 66 }	

-- units of LinkTrafficStatistics
       ruijieIfLinkTrafficTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF RuijieIfLinkTrafficEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "A table of link traffic statistics, including interface rate and bandwidth utilization."
       ::= { ruijieIfLinkTrafficStatistics 1 }

       ruijieIfLinkTrafficEntry OBJECT-TYPE
       SYNTAX      RuijieIfLinkTrafficEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "The link traffic statistics entry."
       INDEX { ruijieIfLinkTrafficIndex }
       ::= { ruijieIfLinkTrafficTable 1 }

       RuijieIfLinkTrafficEntry ::=
       SEQUENCE {
           ruijieIfLinkTrafficIndex         Unsigned32,
           ruijieIfLinkAvgRate              Counter32,
           ruijieIfLinkPeakRate             Counter32,
           ruijieIfLinkAvgBWUtilization     INTEGER,
           ruijieIfLinkPeakBWUtilization    INTEGER
       }
       
       ruijieIfLinkTrafficIndex OBJECT-TYPE
       SYNTAX        Unsigned32 
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
           "The link traffic interface index."
       ::= { ruijieIfLinkTrafficEntry 1 }
       
       ruijieIfLinkAvgRate OBJECT-TYPE
       SYNTAX        Counter32 
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
           "An estimate of the interface's average bandwidth in units of bits per second." 
       DEFVAL { 0 }
       ::= { ruijieIfLinkTrafficEntry 2 }
		
       ruijieIfLinkPeakRate OBJECT-TYPE
       SYNTAX        Counter32
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
           "An estimate of the interface's current peak bandwidth in units of bits per second."
       DEFVAL { 0 }
       ::= { ruijieIfLinkTrafficEntry 3 }

       ruijieIfLinkAvgBWUtilization OBJECT-TYPE
       SYNTAX       INTEGER 
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
           "An estimate of the interface's average bandwidth Utilization." 
       DEFVAL { 0 }
       ::= { ruijieIfLinkTrafficEntry 4 }
        
       ruijieIfLinkPeakBWUtilization OBJECT-TYPE
       SYNTAX       INTEGER 
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION
           "An estimate of the interface's current peak bandwidth Utilization." 
       DEFVAL { 0 }
       ::= { ruijieIfLinkTrafficEntry 5 }
        
-- units of LinkQosStatistics

        ruijieLinkQosCtlTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RuijieLinkQosCtlEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The results of these operations are stored in the ruijieLinkQosResultsTable"
        ::= { ruijieIfLinkQosStatistics 1 }

        ruijieLinkQosCtlEntry OBJECT-TYPE
        SYNTAX      RuijieLinkQosCtlEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Defines an entry in the ruijieLinkQosCtlTable.  The first index
           element, ruijieLinkQosCtlOwnerIndex, is of type SnmpAdminString,
           a textual convention that allows for use of the SNMPv3
           View-Based Access Control Model (RFC 3415, VACM)
           and that allows a management application to identify its
           entries.  The second index, ruijieLinkQosCtlTestName (also an
           SnmpAdminString), enables the same management
           application to have multiple outstanding requests."
        INDEX {
                 ruijieLinkQosCtlOwnerIndex,
                 ruijieLinkQosCtlTestName
              }
        ::= { ruijieLinkQosCtlTable 1 }

        RuijieLinkQosCtlEntry ::=
        SEQUENCE {
            ruijieLinkQosCtlOwnerIndex             SnmpAdminString,
            ruijieLinkQosCtlTestName               SnmpAdminString,
            ruijieLinkQosCtlTargetAddressType      InetAddressType,
            ruijieLinkQosCtlTargetAddress          InetAddress, 
            ruijieLinkQosCtlAdminStatus            INTEGER,
            ruijieLinkQosCtlRowStatus              RowStatus
        }

        ruijieLinkQosCtlOwnerIndex OBJECT-TYPE
        SYNTAX      SnmpAdminString (SIZE(0..32))
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
           "To facilitate the provisioning of access control by a
          security administrator using the View-Based Access
          Control Model (RFC 2575, VACM) for tables in which
          multiple users may need to create or
          modify entries independently, the initial index is used
          as an 'owner index'.  Such an initial index has a syntax
          of SnmpAdminString and can thus be trivially mapped to a
          securityName or groupName defined in VACM, in
          accordance with a security policy."
        ::= { ruijieLinkQosCtlEntry 1 }
       
        ruijieLinkQosCtlTestName OBJECT-TYPE
        SYNTAX      SnmpAdminString (SIZE(0..32))
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The name of the ping-based test.  This is locally unique, 
            within the scope of a ruijieLinkQosCtlOwnerIndex."
        ::= { ruijieLinkQosCtlEntry 2 }

        ruijieLinkQosCtlTargetAddressType OBJECT-TYPE
        SYNTAX      InetAddressType
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Specifies the type of host address to be used at a remote
            host for performing a ping-based operation."
        DEFVAL { unknown }
        ::= { ruijieLinkQosCtlEntry 3 }

        ruijieLinkQosCtlTargetAddress OBJECT-TYPE
        SYNTAX      InetAddress
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "Specifies the host address to be used at a remote host for
            performing a ping-based operation.  The host address type is
            determined by the value of the corresponding
            ruijieLinkQosCtlTargetAddressType."
        DEFVAL { ''H }
        ::= { ruijieLinkQosCtlEntry 4 }

        ruijieLinkQosCtlAdminStatus OBJECT-TYPE
        SYNTAX      INTEGER {
                             enabled(1), -- test should be started
                             disabled(2) -- test should be stopped
                           }
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
           "Reflects the desired state that a ruijieLinkQosCtlEntry should be
           in:
              enabled(1)  - Attempt to activate the test as defined by
                            this ruijieLinkQosCtlEntry.
              disabled(2) - Deactivate the test as defined by this
                            ruijieLinkQosCtlEntry.

           Refer to the corresponding ruijieLinkQosResultsOperStatus to
           determine the operational state of the test defined by
           this entry."
        DEFVAL { disabled }
        ::= { ruijieLinkQosCtlEntry 5 }

        ruijieLinkQosCtlRowStatus OBJECT-TYPE
        SYNTAX      RowStatus
        MAX-ACCESS  read-create
        STATUS      current
        DESCRIPTION
            "This variable is used to create, modify, and/or
             delete a row in this table."
        REFERENCE
            "See definition of RowStatus in RFC 2579, 'Textual
            Conventions for SMIv2.'"
        ::= { ruijieLinkQosCtlEntry 6 }

   -- Results Table
        ruijieLinkQosResultsTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF RuijieLinkQosResultsEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The results of these operations are stored in the ruijieLinkQosResultsTable."
        ::= { ruijieIfLinkQosStatistics 2 }

        ruijieLinkQosResultsEntry OBJECT-TYPE
        SYNTAX      RuijieLinkQosResultsEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "Defines an entry in the ruijieLinkQosResultsTable.  The
            ruijieLinkQosResultsTable has the same indexing as the
            ruijieLinkQosCtlTable so that a ruijieLinkQosResultsEntry
            corresponds to the ruijieLinkQosCtlEntry that caused it to
            be created."
        INDEX {
                 ruijieLinkQosCtlOwnerIndex,
                 ruijieLinkQosCtlTestName
              }
        ::= { ruijieLinkQosResultsTable 1 }

        RuijieLinkQosResultsEntry ::=
        SEQUENCE {
           ruijieLinkQosResultsOperStatus          INTEGER,
           ruijieLinkQosResultsIpTargetAddressType InetAddressType,
           ruijieLinkQosResultsIpTargetAddress     InetAddress,
           ruijieLinkQosResultsMaxRtt              Unsigned32,
           ruijieLinkQosResultsMinRtt              Unsigned32,
           ruijieLinkQosResultsAverageRtt          Unsigned32,
           ruijieLinkQosResultsDelayJitter         Unsigned32,
           ruijieLinkQosResultsPktsLossRate        Unsigned32,
           ruijieLinkQosResultsNetworkAF           Unsigned32
        }

        ruijieLinkQosResultsOperStatus OBJECT-TYPE
        SYNTAX      INTEGER {
                             enabled(1),   -- test is in progress
                             disabled(2),  -- test has stopped
                             completed(3)  -- test is completed
                           }
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "Reflects the operational state of a ruijieLinkQosCtlEntry:
              enabled(1)    - Test is active.
              disabled(2)   - Test has stopped.
              completed(3)  - Test is completed."
        ::= { ruijieLinkQosResultsEntry 1 }

        ruijieLinkQosResultsIpTargetAddressType OBJECT-TYPE
        SYNTAX      InetAddressType
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This object indicates the type of address stored in the 
            corresponding ruijieLinkQosResultsIpTargetAddress object."
        DEFVAL { unknown }
        ::= { ruijieLinkQosResultsEntry 2 }

        ruijieLinkQosResultsIpTargetAddress OBJECT-TYPE
        SYNTAX      InetAddress
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This object reports the IP address associated with a 
            ruijieLinkQosCtlTargetAddress value when the destination
            address is specified as a DNS name.  The value of this 
            object should be a zero-length octet string when a DNS 
            name is not specified or when a specified DNS name fails
            to resolve.

            The address type (InetAddressType) that relates to
            this object is specified by the corresponding value
            of ruijieLinkQosResultsIpTargetAddressType."
        DEFVAL { ''H }
        ::= { ruijieLinkQosResultsEntry 3 }

        ruijieLinkQosResultsMaxRtt OBJECT-TYPE
        SYNTAX      Unsigned32
        UNITS       "milliseconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The maximum packet round-trip-time (RTT) that received. A value
            of 0 for this object implies that no RTT has been received."
        ::= { ruijieLinkQosResultsEntry 4 }

        ruijieLinkQosResultsMinRtt OBJECT-TYPE
        SYNTAX      Unsigned32
        UNITS       "milliseconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The minimum packet round-trip-time (RTT) that received. A value
            of 0 for this object implies that no RTT has been received."
        ::= { ruijieLinkQosResultsEntry 5 }

        ruijieLinkQosResultsAverageRtt OBJECT-TYPE
        SYNTAX      Unsigned32
        UNITS       "milliseconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The current average packet round-trip-time (RTT)."
        ::= { ruijieLinkQosResultsEntry 6 }

        ruijieLinkQosResultsDelayJitter OBJECT-TYPE
        SYNTAX      Unsigned32
        UNITS       "milliseconds"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This object contains the sum of the squares for all ping
            responses received.  Its purpose is to enable standard
            deviation calculation. The estimate value of the delay jitter."
        ::= { ruijieLinkQosResultsEntry 7 } 
       
        ruijieLinkQosResultsPktsLossRate OBJECT-TYPE
        SYNTAX      Unsigned32     
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The packets loss rate of the link."
        ::= { ruijieLinkQosResultsEntry 8 }

        ruijieLinkQosResultsNetworkAF  OBJECT-TYPE
        SYNTAX       Unsigned32 
        MAX-ACCESS   read-only
        STATUS       current
        DESCRIPTION
            "The network availability factor." 
        ::= { ruijieLinkQosResultsEntry 9 }
        
-- units of DeviceTrafficStatistics
       ruijieIfDeviceTrafficTable OBJECT-TYPE
       SYNTAX      SEQUENCE OF RuijieIfDeviceTrafficEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "A table of device traffic statistics."
       ::= { ruijieIfDeviceTrafficStatistics 1 }

       ruijieIfDeviceTrafficEntry OBJECT-TYPE
       SYNTAX      RuijieIfDeviceTrafficEntry
       MAX-ACCESS  not-accessible
       STATUS      current
       DESCRIPTION
           "Device traffic statistics entry"
       INDEX { ruijieIfDeviceTrafficIndex }
       ::= { ruijieIfDeviceTrafficTable 1 }

       RuijieIfDeviceTrafficEntry ::=
       SEQUENCE {
           ruijieIfDeviceTrafficIndex       Unsigned32,
           ruijieIfFC                       INTEGER,
           ruijieIfFCTransRate              Counter32,
           ruijieIfFCTransPktsNum           Counter64,
           ruijieIfFCDiscardRate            Counter32,
           ruijieIfFCDiscardPktsNum         Counter64,
           ruijieIfFCPktsLossRate           INTEGER,
           ruijieIfFCBandwidthRate          Counter32,
           ruijieIfFCBandwidthPercentage    INTEGER,
           ruijieIfDeviceFCGathers          INTEGER,
           ruijieIfFullMeshFCGathers        INTEGER,
           ruijieIfClassBasedGathers        INTEGER,
           ruijieIfNodeBasedGathers         INTEGER,
           ruijieIfNodeClassBasedGathers    INTEGER,
           ruijieIfNodeFCBasedGathers       INTEGER,
           ruijieIfNodeDeviceFCBasedGathers INTEGER
       }
       
       ruijieIfDeviceTrafficIndex OBJECT-TYPE
       SYNTAX        Unsigned32 
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
           "The device traffic interface index."
       ::= { ruijieIfDeviceTrafficEntry 1 }

       ruijieIfFC OBJECT-TYPE
       SYNTAX       INTEGER
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   
           "The FC type. 
            2--BASE_X_10
            4--BASE_X_100
            6--BASE_X_1000
            8--BASE_X_10000
            9--BASE_ERROR"
       ::= { ruijieIfDeviceTrafficEntry 2 }
        
       ruijieIfFCTransRate OBJECT-TYPE
       SYNTAX       Counter32
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "The transmission rate of the FC."
       ::= { ruijieIfDeviceTrafficEntry 3 }
        
       ruijieIfFCTransPktsNum OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "The transmission packets number of the FC."
       ::= { ruijieIfDeviceTrafficEntry 4 } 
        
       ruijieIfFCDiscardRate OBJECT-TYPE
       SYNTAX       Counter32
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "The discard rate of the FC."
       ::= { ruijieIfDeviceTrafficEntry 5 }
        
       ruijieIfFCDiscardPktsNum OBJECT-TYPE
       SYNTAX       Counter64
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "The discard packets number of the FC."
       ::= { ruijieIfDeviceTrafficEntry 6 }
        
       ruijieIfFCPktsLossRate OBJECT-TYPE
       SYNTAX       INTEGER
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "The packets loss rate of the FC."
       ::= { ruijieIfDeviceTrafficEntry 7 } 
        
       ruijieIfFCBandwidthRate OBJECT-TYPE
       SYNTAX       Counter32
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "The bandwidth rate of the FC."
       ::= { ruijieIfDeviceTrafficEntry 8 }
        
       ruijieIfFCBandwidthPercentage OBJECT-TYPE
       SYNTAX       INTEGER
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "The bandwidth percentage of the FC."
       ::= { ruijieIfDeviceTrafficEntry 9 }        
        
       ruijieIfDeviceFCGathers OBJECT-TYPE
       SYNTAX       INTEGER
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Gathers of the device FC."
       ::= { ruijieIfDeviceTrafficEntry 10 }
        
       ruijieIfFullMeshFCGathers OBJECT-TYPE
       SYNTAX       INTEGER
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Gathers of the whole network FC."
       ::= { ruijieIfDeviceTrafficEntry 11 }
        
       ruijieIfClassBasedGathers OBJECT-TYPE
       SYNTAX       INTEGER
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Class-based Gathers."
       ::= { ruijieIfDeviceTrafficEntry 12 } 
        
       ruijieIfNodeBasedGathers OBJECT-TYPE
       SYNTAX       INTEGER
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Node-based Gathers."
       ::= { ruijieIfDeviceTrafficEntry 13 }
        
       ruijieIfNodeClassBasedGathers OBJECT-TYPE
       SYNTAX       INTEGER
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Node&class-based Gathers."
       ::= { ruijieIfDeviceTrafficEntry 14 }
        
       ruijieIfNodeFCBasedGathers OBJECT-TYPE
       SYNTAX       INTEGER
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Node&FC-based Gathers."
       ::= { ruijieIfDeviceTrafficEntry 15 }
        
       ruijieIfNodeDeviceFCBasedGathers OBJECT-TYPE
       SYNTAX       INTEGER
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION   "Node&device&FC-based Gathers."
       ::= { ruijieIfDeviceTrafficEntry 16 }
           
ruijieIfOMCTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfOMCEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "A table of OMC interface info entries."
        ::= { ruijieIfConfigMIBObjects 21 }
               
ruijieIfOMCEntry OBJECT-TYPE
        SYNTAX RuijieIfOMCEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
            "Entry contains OMC interface info."
        INDEX { ruijieIfOMCIndex }
        ::= { ruijieIfOMCTable 1 }
                
        RuijieIfOMCEntry ::=
        SEQUENCE { 
            ruijieIfOMCIndex                InterfaceIndex,
            ruijieIfOMCNativeName           DisplayString,
            ruijieIfOMCPhysicalOrLogical    INTEGER,
            ruijieIfOMCPortType             INTEGER,
            ruijieIfOMCPortSubType          DisplayString,
            ruijieIfOMCSignalType           INTEGER,
            ruijieIfOMCSlotInformation      DisplayString,
            ruijieIfOMCCVID                 DisplayString
         }

        ruijieIfOMCIndex OBJECT-TYPE
        SYNTAX InterfaceIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "The interface index."
        ::= { ruijieIfOMCEntry 1 }
                
        ruijieIfOMCNativeName OBJECT-TYPE
        SYNTAX DisplayString (SIZE (0..255))
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "The native name of the interface."
        ::= { ruijieIfOMCEntry 2 }
         
        ruijieIfOMCPhysicalOrLogical OBJECT-TYPE
        SYNTAX INTEGER {
            unknown(1),
            ptp(2),
            ftp(3)
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "This object indicates whether the interface is a logical interface(FTP) or a physical interface(PTP)."
        ::= { ruijieIfOMCEntry 3 }
            
        ruijieIfOMCPortType OBJECT-TYPE
        SYNTAX INTEGER {
          unknown(1),
          eth(2),
          pos(3),
          lag(4),
          ve(5),
          trunk(6),
          vlan(7),
          other(8)
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Port type of this port.
        When the port type is PTP, the value of this item can only be ETH, POS, other;
        When the Port type is FTP, the value of this item can only be LAG, VE, Trunk, VLAN, and other."
        ::= { ruijieIfOMCEntry 4 }
            
        ruijieIfOMCPortSubType OBJECT-TYPE
        SYNTAX DisplayString (SIZE (0..255))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "When the molecular type is no longer defined under a certain type of port, 
        the value of this item is consistent with the value of the port type attribute.
        For example, the subtype of VE port can be L2VE, L3VE, for example, the subtype of ETH port can be LAN, WAN, etc."
        ::= { ruijieIfOMCEntry 5 }
           
        ruijieIfOMCSignalType OBJECT-TYPE
        SYNTAX INTEGER {
            unknown(1),
            optical(2),
            electrical(3),
            invalid(4)
        }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Optical properties of the interface"
        ::= { ruijieIfOMCEntry 6 }

        ruijieIfOMCSlotInformation OBJECT-TYPE
        SYNTAX DisplayString
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
            "Information about the card where the interface is located."
        ::= { ruijieIfOMCEntry 7 }

        ruijieIfOMCCVID OBJECT-TYPE
        SYNTAX DisplayString (SIZE (0..512))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "CVLAN ID of the access point."
        ::= { ruijieIfOMCEntry 8 }

ruijieIfOMCBindMainTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfOMCBindMainEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "Bound main interface table."
        ::= { ruijieIfConfigMIBObjects 22 }

ruijieIfOMCBindMainEntry OBJECT-TYPE
        SYNTAX RuijieIfOMCBindMainEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "Bound main interface entry."
        INDEX { ruijieIfOMCBindMainIndex }
        ::= { ruijieIfOMCBindMainTable 1 }

        RuijieIfOMCBindMainEntry ::=
        SEQUENCE { 
            ruijieIfOMCBindMainIndex            InterfaceIndex,
            ruijieIfOMCBindType                 INTEGER
        }

        ruijieIfOMCBindMainIndex OBJECT-TYPE
        SYNTAX InterfaceIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The interface index."
        ::= { ruijieIfOMCBindMainEntry 1 }

        ruijieIfOMCBindType OBJECT-TYPE
        SYNTAX INTEGER{
                unknown(1),
                logicAndPhy(2),
                subAndMain(3)
                }
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Type of interface binding, logical interface and physical interface, or sub-interface and main interface."
        ::= { ruijieIfOMCBindMainEntry 2 }

ruijieIfSubInterfaceTable OBJECT-TYPE
        SYNTAX SEQUENCE OF RuijieIfSubInterfaceEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "List of sub-interface and it's main-interface table."
        ::= { ruijieIfConfigMIBObjects 24 }

ruijieIfSubInterfaceEntry OBJECT-TYPE
        SYNTAX RuijieIfSubInterfaceEntry
        MAX-ACCESS not-accessible
        STATUS current
        DESCRIPTION
                "List of sub-interface and it's main-interface entry."
        INDEX { ruijieIfSubInterfaceIndex }
        ::= { ruijieIfSubInterfaceTable 1 }

        RuijieIfSubInterfaceEntry ::=
        SEQUENCE { 
            ruijieIfSubInterfaceIndex       InterfaceIndex,
            ruijieIfMainInterface           Integer32
        }

        ruijieIfSubInterfaceIndex OBJECT-TYPE
        SYNTAX InterfaceIndex
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "The sub-interface index."
        ::= { ruijieIfSubInterfaceEntry 1 }

        ruijieIfMainInterface OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
                "Main interface of subinterface."
        ::= { ruijieIfSubInterfaceEntry 2 }

-- Notification
ruijieInterfaceTraps      OBJECT IDENTIFIER ::= { ruijieInterfaceMIB 2 }
                                 
lineDetectStatus OBJECT-TYPE
        SYNTAX INTEGER{
            ok(1),       --line has restored to normal state 
            open(2),     --a break in the line 
            short(3)     --short circuit in the line             
        }
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
          "The type of storm of interface"
        ::= { ruijieInterfaceTraps 1 }

lineDetectPosition OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
          "Location where the break or short circuit in the line happens
           (Distance from the switch port, in metre.)" 
        ::= { ruijieInterfaceTraps 2 }        

lineQualityDetect NOTIFICATION-TYPE
    OBJECTS {ifIndex, lineDetectStatus,lineDetectPosition}
    STATUS  current
    DESCRIPTION
            "The notification of discovering a break or short circuit in the line,
             or restoring the line to the normal state." 
    ::= { ruijieInterfaceTraps 3 }        

ruijieIfInBwUsageRisingThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "Inbound bandwidth usage alarm threshold."
        ::= { ruijieInterfaceTraps 4 }

ruijieIfOutBwUsageRisingThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "Outbound bandwidth usage alarm threshold."
        ::= { ruijieInterfaceTraps 5 }

ruijieIfInBwUsageResumeThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "Inbound bandwidth occupancy recovery threshold."
        ::= { ruijieInterfaceTraps 6 }

ruijieIfOutBwUsageResumeThreshold OBJECT-TYPE
        SYNTAX Integer32
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "Outbound bandwidth occupancy recovery threshold."
        ::= { ruijieInterfaceTraps 7 }

ruijieIfInBwUsageRising NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ruijieIfInBandwidthUsage, ruijieIfInBwUsageRisingThreshold}
        STATUS     current
        DESCRIPTION
          "When it is detected that the port input bandwidth utilization exceeds the threshold,
           then this trap will be sent."
    ::= { ruijieInterfaceTraps 8 }

ruijieIfInBwUsageResume NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ruijieIfInBandwidthUsage, ruijieIfInBwUsageResumeThreshold}
        STATUS     current
        DESCRIPTION
          "When the port input bandwidth utilization is detected to recover, then this trap will be sent."
    ::= { ruijieInterfaceTraps 9 }

ruijieIfOutBwUsageRising NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ruijieIfOutBandwidthUsage, ruijieIfOutBwUsageRisingThreshold}
        STATUS     current
        DESCRIPTION
          "When it is detected that the port output bandwidth utilization exceeds the threshold,
           then this trap will be sent."
    ::= { ruijieInterfaceTraps 10 }

ruijieIfOutBwUsageResume NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ruijieIfOutBandwidthUsage, ruijieIfOutBwUsageResumeThreshold}
        STATUS     current
        DESCRIPTION
          "When the port output bandwidth utilization is detected to recover, then this trap will be sent."
    ::= { ruijieInterfaceTraps 11 }

ruijieIfLinkDown NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ifAdminStatus, ifOperStatus}
        STATUS     current
        DESCRIPTION
          "When the port linkdown, this trap will be sent."
    ::= { ruijieInterfaceTraps 12 }

ruijieIfLinkUp NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ifAdminStatus, ifOperStatus}
        STATUS     current
        DESCRIPTION
          "When the port linkup, this trap will be sent."
    ::= { ruijieInterfaceTraps 13 }

ruijieIfErrdisableReason  OBJECT-TYPE
        SYNTAX DisplayString(SIZE(0..255))
        MAX-ACCESS read-only
        STATUS current
        DESCRIPTION
          "Reason for alarm generation." 
    ::= { ruijieInterfaceTraps 14 } 

ruijieIfErrdisable NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ruijieIfErrdisableReason}
        STATUS     current
        DESCRIPTION
          "When the port errdisable, this trap will be sent."
    ::= { ruijieInterfaceTraps 15 }

ruijieIfErrdisableResume NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ruijieIfErrdisableReason}
        STATUS     current
        DESCRIPTION
          "When the port errdisable resume, this trap will be sent."
    ::= { ruijieInterfaceTraps 16 }

ruijieLicenseInstanceName OBJECT-TYPE
        SYNTAX DisplayString(SIZE(0..255))
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
          "The text indicates the name of the license that entered the grace period." 
    ::= { ruijieInterfaceTraps 17 }

ruijieIfInGracePeriod NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ruijieLicenseInstanceName}
        STATUS     current
        DESCRIPTION
          "When the interface is in grace period, this trap will be sent."
    ::= { ruijieInterfaceTraps 18 }

ruijieIfInGracePeriodResume NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ruijieLicenseInstanceName}
        STATUS     current
        DESCRIPTION
          "When the interface is not in grace period, this trap will be sent."
    ::= { ruijieInterfaceTraps 19 }

ruijieIfDither NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr}
        STATUS     current
        DESCRIPTION
          "when the link is astable, this trap will be sent."
    ::= { ruijieInterfaceTraps 20 }

ruijieIfPortSpeed  OBJECT-TYPE
        SYNTAX DisplayString(SIZE(0..255))
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
          "Port speed." 
    ::= { ruijieInterfaceTraps 21 } 

ruijieIfPortSpeedChange NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ruijieIfPortSpeed}
        STATUS     current
        DESCRIPTION
          "The speed of port mode is changed. This trap will be sent."
    ::= { ruijieInterfaceTraps 22 }

ruijieIfHardwareAlarmType OBJECT-TYPE
        SYNTAX INTEGER {
            unknown(1),
            uControllerException(2)
        }
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
            "The type of the port hardware alarm." 
    ::= { ruijieInterfaceTraps 23 }

ruijieIfHardwareAlarmDesc OBJECT-TYPE
        SYNTAX DisplayString (SIZE(0..255))
        MAX-ACCESS accessible-for-notify
        STATUS current
        DESCRIPTION
          "The description of the port hardware alarm." 
    ::= { ruijieInterfaceTraps 24 }

ruijieIfHardwareAlarm NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ruijieIfHardwareAlarmType, ruijieIfHardwareAlarmDesc}
        STATUS     current
        DESCRIPTION
          "The port hardware state is alarm. This trap will be sent."
    ::= { ruijieInterfaceTraps 25 }

ruijieIfHardwareAlarmResume NOTIFICATION-TYPE
        OBJECTS   {ifIndex, ifDescr, ruijieIfHardwareAlarmType, ruijieIfHardwareAlarmDesc}
        STATUS     current
        DESCRIPTION
          "The port hardware state is normal. This trap will be sent."
    ::= { ruijieInterfaceTraps 26 }

ruijieInterfaceMIBConformance OBJECT IDENTIFIER ::= { ruijieInterfaceMIB 3 }
ruijieInterfaceMIBCompliances OBJECT IDENTIFIER ::= { ruijieInterfaceMIBConformance 1 }
ruijieInterfaceMIBGroups      OBJECT IDENTIFIER ::= { ruijieInterfaceMIBConformance 2 }


-- compliance statements

ruijieInterfaceMIBCompliance MODULE-COMPLIANCE
        STATUS  current
        DESCRIPTION
                "The compliance statement for entities which implement
                the Ruijie Interface MIB"
        MODULE  -- this module
                MANDATORY-GROUPS { ruijieInterfaceMIBGroup
                 }

    GROUP ruijiePortTypeChooseMibGroup
    DESCRIPTION  
                     "This group is mandatory when system supports optional port type."  

                GROUP ruijieIfMTUMibGroup
    DESCRIPTION  
                     "This group is mandatory when system supports MTU setting."  

        GROUP ruijieIfLineDetectGroup
    DESCRIPTION  
                     "This group is mandatory when system supports line quality detection."                  
                     
        GROUP ruijieIfAvailableBWMibGroup
        DESCRIPTION  
                     "This group is mandatory when system supports available bandwidth getting."                   
        ::= { ruijieInterfaceMIBCompliances 1 }
                
-- units of conformance

ruijieInterfaceMIBGroup OBJECT-GROUP
        OBJECTS {
            ruijieIfIndex,
            ruijieIfPortType,
            ruijieIfFlowControlAdminStatus,
            ruijieIfFlowControlOperStatus,
            ruijieIfAdminSpeed,
            ruijieIfAdminDuplex,
            ruijieIfOperSpeed,
            ruijieIfOperDuplex,
            ruijieIfManageStatus,
            ruijieIfIpBroadcast,
            ruijieIfLayer,
            ruijieIfMode,
            ruijieIfCounterClear,
            ruijieIfEntryStatus,
            ruijieIfMediumType,
            ruijieIfDownCounter,
            ruijieIfInOctets,
            ruijieIfOutOctets,
            ruijieIfBcastInhibit,
            ruijieIfNegotiation,
            ruijieIfPhysAddress,
            ruijieIfAdminSpeedRW,
            ruijieIfAdminDuplexRW,
            ruijieIfModeRW,
            ruijieIfSpeed,
            ruijieifAdminStatus,
            ruijieifOperStatus,
            ruijieIfInNUcastPkts,
            ruijieIfOutNUcastPkts,
            ruijieIfUpDownTimes,
            ruijieifAdminStatusw,
            ruijieifOperStatusw, 
            ruijieifSpeedw,    
            ruijieifMacAddress, 
            ruijieifLastChange,
            ruijieIfInPkts,
            ruijieIfDiscard,
            ruijieIfBandwidthUsage,
            ruijieIfInBitsRate,
            ruijieIfInPktRate,
            ruijieIfOutBitsRate,
            ruijieIfOutPktRate,
            ruijieIfInBandwidthUsage,
            ruijieIfOutBandwidthUsage,
            ruijieIfInErrorPktsRate,
            ruijieIfOutErrorPktsRate,
            ruijieIfInDropPktsRate,
            ruijieIfOutDropPktsRate,
            ruijieIfIpIfIndex,
            ruijieIfIpId,
            ruijieIfIp,
            ruijieIfIpMask,
            ruijieIfIpEntryStatus,
            ruijieIfStatusIndex,
            ruijieIfStatusLoopBackExamine,
            ruijieIfErrorStatus,
            ruijieGlobalIfDisableRecovery,
            ruijieIfSVICreatVlanNum,
            ruijieIfHandleSVI,
            ruijieIfEncapsulationIndex,
            ruijieIfEncapsulationVlan,
            ruijieApPhyAddress,
            ruijieApIfNumber,
            ruijieApIfPhyIntNum,
            ruijieApPhysAddress,
            ruijieApIfIndex,
            ruijieApIfDescr,
            ruijieApIfType,
            ruijieApIfMtu,
            ruijieApIfSpeed,
            ruijieApIfPhysAddress,
            ruijieApIfAdminStatus,
            ruijieApIfOperStatus,
            ruijieApIfLastChange,
            ruijieApIfInOctets,
            ruijieApIfInUcastPkts,
            ruijieApIfInNUcastPkts,
            ruijieApIfInDiscards,
            ruijieApIfInErrors,
            ruijieApIfInUnknownProtos,
            ruijieApIfOutOctets,
            ruijieApIfOutUcastPkts,
            ruijieApIfOutNUcastPkts,
            ruijieApIfOutDiscards,
            ruijieApIfOutErrors,
            ruijieApIfOutQLen,
            ruijieApIfLinkUPTimes,
            ruijieApIfInDataOctets,
            ruijieApIfOutDataOctets,
            ruijieApIfMgmtUploadOctets,
            ruijieApIfMgmtDownloadOctets,
            ruijieApIfSpeedw,
            ruijieApIfMtuw,
            ruijieApIfPhysAddressw,     
            ruijieApIfInUcastPktsw,
   	    ruijieApIfInNUcastPktsw,
   	    ruijieApIfOutUcastPktsw,
            ruijieApIfOutNUcastPktsw,
            ruijieApIfLinkUPTimesw,
            ruijieApIfInPkts,
            ruijieApIfInFlow,
            ruijieApIfOutFlow,
            ruijieApIfInBrdcastPkts,
            ruijieApIfOutBrdcastPkts,
            ruijieApIfInMulcastPkts,
            ruijieApIfOutMulcastPkts,
            ruijieApIfInPayloadOctets,
            ruijieApIfOutPayloadOctets,
            ruijieApIfAlias,
            ruijieApIfInDateRate,
            ruijieApIfOutDateRate,
            ruijieApifInNormalPkts,
            ruijieApIfOutPkts,
            ruijieIfLinkIndex,
            ruijieIfUplinkInOctets,
            ruijieIfUplinkInUcastPkts,
            ruijieIfUplinkInNUcastPkts,
            ruijieIfUplinkInDiscards,
            ruijieIfUplinkInErrors,
            ruijieIfUplinkOutOctets,
            ruijieIfUplinkOutUcastPkts,
            ruijieIfUplinkOutNUcastPkts,
            ruijieIfUplinkOutDiscards,
            ruijieIfUplinkOutErrors,
            ruijieIfDownlinkInOctets,
            ruijieIfDownlinkInUcastPkts,
            ruijieIfDownlinkInNUcastPkts,
            ruijieIfDownlinkInDiscards,
            ruijieIfDownlinkInErrors,
            ruijieIfDownlinkOutOctets,
            ruijieIfDownlinkOutUcastPkts,
            ruijieIfDownlinkOutNUcastPkts,
            ruijieIfDownlinkOutDiscards,
            ruijieIfDownlinkOutErrors,
            ruijieIfUplinkInBcastPkts,
            ruijieIfUplinkOutBcastPkts,
            ruijieIfDownlinkInBcastPkts,
            ruijieIfDownlinkOutBcastPkts,
            ruijieIfNeighborIP,
            ruijieIfNeighborIPv6
        }
        STATUS  current
        DESCRIPTION
                "A collection of objects providing interface basic configure ."
        ::= { ruijieInterfaceMIBGroups 1 }         
                
ruijiePortTypeChooseMibGroup OBJECT-GROUP
        OBJECTS {
            ruijiePortTypeChooseIndex,
            ruijiePortTypeChooseType
        }
        STATUS  current
        DESCRIPTION
                "Information collection of choosing port type." 
        ::= { ruijieInterfaceMIBGroups 2 }         
                

ruijieIfMTUMibGroup OBJECT-GROUP
        OBJECTS {
            ruijieIfMTUIndex,
            ruijieIfMTU
        }
        STATUS  current
        DESCRIPTION
                "Interface MTU information collection." 
        ::= { ruijieInterfaceMIBGroups 3 }         
                
ruijieIfLineDetectGroup OBJECT-GROUP
        OBJECTS {
            ruijieIfLineDetect
        }
        STATUS  current
        DESCRIPTION
                "Information collection of line quality detection." 
        ::= { ruijieInterfaceMIBGroups 4 }           
                
ruijieIfAvailableBWMibGroup OBJECT-GROUP
        OBJECTS {
            ruijieIfAvailableBWIfIndex,
            ruijieIfAvailableBWIfBW
        }
        STATUS  current
        DESCRIPTION
                "Interface available bandwidth information collection." 
        ::= { ruijieInterfaceMIBGroups 5 }     

END
