--
--  LigoWave W-Jet MIB
--

LIGO-W-JET-MIB DEFINITIONS ::= BEGIN
IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
    Counter32, Integer32, Gauge32, IpAddress
        FROM SNMPv2-SMI
    MacAddress, TruthValue
        FROM SNMPv2-TC
    ifIndex, InterfaceIndex
        FROM IF-MIB
    sysLocation
        FROM SNMPv2-MIB
    ligoMgmt
        FROM LIGOWAVE-MIB;

ligoWJetMIB MODULE-IDENTITY
    LAST-UPDATED    "200907160000Z"
    ORGANIZATION    "LigoWave"
    CONTACT-INFO    "
        LigoWave Customer Support
        E-mail: support@ligowave.com"
    DESCRIPTION
        "The LigoWave W-Jet Protocol MIB."
    REVISION    "200907160000Z"
    DESCRIPTION
        "Added wJetP2pIpAddress to wJetP2pEndpStatsTable."
    REVISION    "200811270000Z"
    DESCRIPTION
        "First revision."
    ::= { ligoMgmt 6 }

ligoWJetMIBObjects
        OBJECT IDENTIFIER ::= { ligoWJetMIB 1 }

ligoWJetNotifs
        OBJECT IDENTIFIER ::= { ligoWJetMIBObjects 0 }
ligoWJetInfo
        OBJECT IDENTIFIER ::= { ligoWJetMIBObjects 1 }
ligoWJetConf
        OBJECT IDENTIFIER ::= { ligoWJetMIBObjects 2 }
ligoWJetStats
        OBJECT IDENTIFIER ::= { ligoWJetMIBObjects 3 }

wJetWrlssIfConfTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF WJetWrlssIfConfEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "Wireless interface configuration table with W-Jet protocol specific entries."
    ::= { ligoWJetConf 1 }

wJetWrlssIfConfEntry OBJECT-TYPE
    SYNTAX  WJetWrlssIfConfEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "Wireless interface configuration table entry with W-Jet protocol specific entries."
    INDEX { wJetIfIndex }
    ::= { wJetWrlssIfConfTable 1 }

WJetWrlssIfConfEntry ::=
    SEQUENCE {
        wJetIfIndex                     InterfaceIndex,
        wJetIfProtoEnabled              TruthValue,
        wJetIfDataRate                  Integer32,
        wJetIfAckRate                   Integer32,
        wJetIfAckTimeout                Integer32,
        wJetIfTxQueueMaxLength          Integer32,
        wJetIfRxTimeout                 Integer32,
        wJetIfMaxAggregBytes            Integer32,
        wJetIfMaxAggregPackets          Integer32,
        wJetIfCcaThreshold              Integer32
    }

wJetIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wireless interface index corresponds to ifIndex in MIB-II interfaces table."
    ::= { wJetWrlssIfConfEntry 1 }

wJetIfProtoEnabled OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "W-Jet protocol enabled on this interface."
    ::= { wJetWrlssIfConfEntry 2 }

wJetIfDataRate OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "kbit/s"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Data transmission rate."
    ::= { wJetWrlssIfConfEntry 3 }

wJetIfAckRate OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "kbit/s"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Data transmission rate for management packets."
    ::= { wJetWrlssIfConfEntry 4 }

wJetIfAckTimeout OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "microseconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Timeout value for management packets."
    ::= { wJetWrlssIfConfEntry 5 }

wJetIfTxQueueMaxLength OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "frames"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Maximum number of frames in transmission queue."
    ::= { wJetWrlssIfConfEntry 6 }

wJetIfRxTimeout OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "microseconds"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Frame reception timeout."
    ::= { wJetWrlssIfConfEntry 7 }

wJetIfMaxAggregBytes OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "bytes"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Aggregation limit."
    ::= { wJetWrlssIfConfEntry 8 }

wJetIfMaxAggregPackets OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Maximum packet count to be aggregated in one radio frame."
    ::= { wJetWrlssIfConfEntry 9 }

wJetIfCcaThreshold OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Clear Channel Assessment sensitivity threshold."
    ::= { wJetWrlssIfConfEntry 10 }

wJetP2pEndpStatsTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF WJetP2pEndpStatsEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "W-Jet endpoint statistics table for Point-to-Point links."
    ::= { ligoWJetStats 1 }

wJetP2pEndpStatsEntry OBJECT-TYPE
    SYNTAX  WJetP2pEndpStatsEntry
    MAX-ACCESS  not-accessible
    STATUS  current
    DESCRIPTION
        "W-Jet endpoint statistics table entry for Point-to-Point links."
    INDEX { wJetP2pLocalIfIndex, wJetP2pEndpointType }
    ::= { wJetP2pEndpStatsTable 1 }

WJetP2pEndpStatsEntry ::=
    SEQUENCE {
        wJetP2pLocalIfIndex     InterfaceIndex,
        wJetP2pEndpointType     INTEGER,
        wJetP2pMacAddress       MacAddress,
        wJetP2pRssi             Gauge32,
        wJetP2pMaxRssi          Gauge32,
        wJetP2pSignalLevel      Integer32,
        wJetP2pNoiseLevel       Integer32,
        wJetP2pTxPower          Gauge32,
        wJetP2pRxStart          Counter32,
        wJetP2pTxStart          Counter32,
        wJetP2pRxStop           Counter32,
        wJetP2pRxBytes          Counter32,
        wJetP2pTxBytes          Counter32,
        wJetP2pRxPackets        Counter32,
        wJetP2pTxPackets        Counter32,
        wJetP2pTxAcked          Counter32,
        wJetP2pRxDuplicated     Counter32,
        wJetP2pRxDropped        Counter32,
        wJetP2pRxTimeouts       Counter32,
        wJetP2pTxTimeouts       Counter32,
        wJetP2pRxNoRetries      Counter32,
        wJetP2pTxNoRetries      Counter32,
        wJetP2pRx1Retry         Counter32,
        wJetP2pTx1Retry         Counter32,
        wJetP2pRx2Retries       Counter32,
        wJetP2pTx2Retries       Counter32,
        wJetP2pRx3Retries       Counter32,
        wJetP2pTx3Retries       Counter32,
        wJetP2pTxTotalRetries   Counter32,
        wJetP2pTxMaxRetries     Counter32,
        wJetP2pIpAddress        IpAddress
    }

wJetP2pLocalIfIndex OBJECT-TYPE
    SYNTAX      InterfaceIndex
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Wireless interface index corresponds to ifIndex in MIB-II interfaces table."
    ::= { wJetP2pEndpStatsEntry 1 }

wJetP2pEndpointType OBJECT-TYPE
    SYNTAX      INTEGER {local(0), remote(1)}
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Endpoint type."
    ::= { wJetP2pEndpStatsEntry 2 }

wJetP2pMacAddress OBJECT-TYPE
    SYNTAX      MacAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Endpoint MAC address."
    ::= { wJetP2pEndpStatsEntry 3 }

wJetP2pRssi OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Received signal strength for this endpoint."
    ::= { wJetP2pEndpStatsEntry 4 }

wJetP2pMaxRssi OBJECT-TYPE
    SYNTAX      Gauge32
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Maximum possible signal strength value for this endpoint."
    ::= { wJetP2pEndpStatsEntry 5 }

wJetP2pSignalLevel OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Endpoint's signal level."
    ::= { wJetP2pEndpStatsEntry 6 }

wJetP2pNoiseLevel OBJECT-TYPE
    SYNTAX      Integer32
    UNITS       "dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Endpoint's background noise level."
    ::= { wJetP2pEndpStatsEntry 7 }

wJetP2pTxPower OBJECT-TYPE
    SYNTAX      Gauge32
    UNITS       "dBm"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Transmission power."
    ::= { wJetP2pEndpStatsEntry 8 }

wJetP2pRxStart OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of RX window Start packets received."
    ::= { wJetP2pEndpStatsEntry 9 }

wJetP2pTxStart OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of TX window Start packets transmitted."
    ::= { wJetP2pEndpStatsEntry 10 }

wJetP2pRxStop OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of RX window Stop packets received. There is no TX stops counter 
        as it will always be equal to number of the TX start packets."
    ::= { wJetP2pEndpStatsEntry 11 }

wJetP2pRxBytes OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "bytes"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of received bytes."
    ::= { wJetP2pEndpStatsEntry 12 }

wJetP2pTxBytes OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "bytes"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of transmitted bytes."
    ::= { wJetP2pEndpStatsEntry 13 }

wJetP2pRxPackets OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of received packets."
    ::= { wJetP2pEndpStatsEntry 14 }

wJetP2pTxPackets OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of transmitted packets."
    ::= { wJetP2pEndpStatsEntry 15 }

wJetP2pTxAcked OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets acknowledged by the receiver."
    ::= { wJetP2pEndpStatsEntry 16 }

wJetP2pRxDuplicated OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of duplicated packets."
    ::= { wJetP2pEndpStatsEntry 17 }

wJetP2pRxDropped OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of dropped packets."
    ::= { wJetP2pEndpStatsEntry 18 }

wJetP2pRxTimeouts OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "timeouts"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of receive timeouts."
    ::= { wJetP2pEndpStatsEntry 19 }

wJetP2pTxTimeouts OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "timeouts"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of transmit timeouts."
    ::= { wJetP2pEndpStatsEntry 20 }

wJetP2pRxNoRetries OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets that were received without retries."
    ::= { wJetP2pEndpStatsEntry 21 }

wJetP2pTxNoRetries OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets that were transmitted without retries."
    ::= { wJetP2pEndpStatsEntry 22 }

wJetP2pRx1Retry OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets received with 1 retry."
    ::= { wJetP2pEndpStatsEntry 23 }

wJetP2pTx1Retry OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets transmitted with 1 retry."
    ::= { wJetP2pEndpStatsEntry 24 }

wJetP2pRx2Retries OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets received with 2 retries."
    ::= { wJetP2pEndpStatsEntry 25 }

wJetP2pTx2Retries OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets transmitted with 2 retries."
    ::= { wJetP2pEndpStatsEntry 26 }

wJetP2pRx3Retries OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets received with 3 retries."
    ::= { wJetP2pEndpStatsEntry 27 }

wJetP2pTx3Retries OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "packets"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Number of packets transmitted with 3 retries."
    ::= { wJetP2pEndpStatsEntry 28 }

wJetP2pTxTotalRetries OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "retries"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Total number of attempts to retransmit data packets."
    ::= { wJetP2pEndpStatsEntry 29 }

wJetP2pTxMaxRetries OBJECT-TYPE
    SYNTAX      Counter32
    UNITS       "retries"
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The maximum number of attempts to retransmit data packets. 
        For example if data packet was retransmitted in 9th attempt, the value of this field will be 9."
    ::= { wJetP2pEndpStatsEntry 30 }

wJetP2pIpAddress OBJECT-TYPE
    SYNTAX      IpAddress
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "The device IP address."
    ::= { wJetP2pEndpStatsEntry 31 }

--
-- Notifications
--

wJetNodeConnected NOTIFICATION-TYPE
    OBJECTS { 
        sysLocation,
        ifIndex,
        wJetP2pMacAddress 
    }
    STATUS      current
    DESCRIPTION
        "This notification is sent on new node connection."
    ::= { ligoWJetNotifs 1 }

wJetNodeDisconnected NOTIFICATION-TYPE
    OBJECTS { 
        sysLocation,
        ifIndex,
        wJetP2pMacAddress
    }
    STATUS      current
    DESCRIPTION
        "This notification is sent when node disconnects."
    ::= { ligoWJetNotifs 2 }

wJetLowSignalStrength NOTIFICATION-TYPE
    OBJECTS {
        sysLocation,
        ifIndex,
        wJetP2pMacAddress,
        wJetP2pRssi
    }
    STATUS      current
    DESCRIPTION
        "This notification is sent when RSSI becomes lower than threshold."
    ::= { ligoWJetNotifs 3 }

wJetRxDroppedThresholdReached NOTIFICATION-TYPE
    OBJECTS {
        sysLocation,
        ifIndex,
        wJetP2pMacAddress,
        wJetP2pRxDropped 
    }
    STATUS      current
    DESCRIPTION
        "This notification is sent when delta of wJetP2pRxDropped becomes bigger than threshold."
    ::= { ligoWJetNotifs 4 }

wJetTxRetriesThresholdReached NOTIFICATION-TYPE
    OBJECTS {
        sysLocation,
        ifIndex,
        wJetP2pMacAddress,
        wJetP2pTxTotalRetries
    }
    STATUS      current
    DESCRIPTION
        "This notification is sent when delta of wJetP2pTxTotalRetries becomes bigger than threshold."
    ::= { ligoWJetNotifs 5 }

END
