librenms/mibs/hpmsm/COLUBRIS-WDS-MIB.my
Tony Murray 4c0412b14d feature: Wireless Sensors Overhaul (#6471)
* feature: Wireless Sensors
Includes client counts for ios and unifi
Graphing could use some improvement.
Alerting and threshold ui not implemented

WIP: starting OO based wireless sensors.

Class based functionality working
remove old functional files
add schema file

discovery needs to be enabled, not polling

fix up schema

fix Unifi discovery not returning an array

Add some debug when discovering a sensor.
Fix style.

Add missing semicolin

Add a null object (Generic) for OS.
Fill out some phpdocs

Re-organized code
Each sensor type now has it's own discovery and polling interface
Custom polling tested with Unifi CCQ

Left to do:
Implement UI (Graphs and Custom thresholds)
Alerting
Testing

Fix event message text

Remove runDiscovery and runPolling from OS, they are unused and don't belong there.

Cleanups/docs

Missed this file.

Remove the requirement to fetch the current value to check validity.
Do that automatically if current is not specified
A few cleanups here and there

First pass at graphing.
device_ and wireless_ graphs added.

Add RouterOS support

Singleton OS instance isn't required right now.
Remove that to allow some memory to be freed.

Add wireless to the device list metrics.
Make all metrics clickable

Tweak graphs a bit

Implement limit configuration page.
Use sensors page as common code instead of duplicating.
Clean up some javascript interactions:  Allow enter on values to save. Cancel if update is not needed. Enable the clear custom button after setting a custom value.
Add some wireless alert rules to the library.

Add documentation.

Add unifi client counts by ssid in addition to radio.
Optimize Sensor polling a bit.

Add HP MSM clients support (for full controller)
Fix function accessibility

Formalize the discovery and poller interfaces.

Add Xirrus clients and noise floor
move module interfaces to a more appropriate place.
push caching code up to os, unsure about this do to the limitations

No point in selectively enabling wireless discovery.  We only discover if the device supports something.

Add RSSI, Power, and Rate.
Add these sensors for Ubnt Airos.
Clean up some copyrights.

Reduce the amount of files need to add new types.
Leave graph files for consistency and to allow customization.

Remove the old wifi clients graph completely.
ciscowlc should have improved counts (total and per-ssid)

Schema didn't get added.

Impelement the rest of the AirOS sensors
Reformat and re-organize the Airos.php class.

Add several UBNT AirFiber sensors

A few fixes add links to the section headers

Add HP MSM mibs.

* Schema file got dropped in rebase.

* Add wireless menu to view sensors across all devices.
Icons in the menu need help :/

* Add HeliOS, Mimosa, and Siklu support
Sensors added SNR + Noise

* Add power and utilization to Unifi

* Update polling to prefetch all sensor data in a few snmp requests as possible

* Add Extendair: tx+rx power, aggregate rate, frequency

* Add a check for duplicate sensors in discovery.  Just print an error for now.

* Add Bit Error Ratio (named error-ratio to allow for bit error rate to be added if needed)
Fix an incorrect link in the wireless sensors table

* Add error rate and change all bps and Hz to use si units

* Fixes to limits and frequency display

* Fix overview graph frequency display
A few decimal place tweaks

* Don't allow switching sensor and wireless-sensor graphs, it doesn't work.
Change individual distance graphs to use si units

* Go through the OS and make sure I got all the sensors I can (probably missed some still)
Because pollWirelessChannelAsFrequency() is generic and a little complex, so pull it up to OS.
Message to help developers adding supports that don't return an array from discover functions.

* Fix some issues

* Remove noise and signal for now at least
A couple more fixes
Add a notification

* Oopsie

* Bonus AirFiber sensors
2017-05-01 23:49:11 -05:00

602 lines
18 KiB
Plaintext

-- ****************************************************************************
-- COLUBRIS-WDS-MIB definitions
--
-- Copyright (c) 2006, Colubris Networks, Inc.
-- All Rights Reserved.
--
-- Colubris WDS MIB file.
--
-- ****************************************************************************
COLUBRIS-WDS-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, Integer32, Unsigned32
FROM SNMPv2-SMI
DisplayString, MacAddress, TruthValue
FROM SNMPv2-TC
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF
colubrisMgmtV2
FROM COLUBRIS-SMI
;
colubrisWdsMIB MODULE-IDENTITY
LAST-UPDATED "200801040000Z"
ORGANIZATION "Colubris Networks, Inc."
CONTACT-INFO "Colubris Networks
Postal: 200 West Street Ste 300
Waltham, Massachusetts 02451-1121
UNITED STATES
Phone: +1 781 684 0001
Fax: +1 781 684 0009
E-mail: cn-snmp@colubris.com"
DESCRIPTION "Colubris WDS MIB."
::= { colubrisMgmtV2 33 }
-- colubrisWdsMIB definition
colubrisWdsMIBObjects OBJECT IDENTIFIER ::= { colubrisWdsMIB 1 }
-- colubris WDS groups
coWDSInfoGroup OBJECT IDENTIFIER ::= { colubrisWdsMIBObjects 1 }
coWDSRadioGroup OBJECT IDENTIFIER ::= { colubrisWdsMIBObjects 2 }
coWDSGroupGroup OBJECT IDENTIFIER ::= { colubrisWdsMIBObjects 3 }
coWDSLinkGroup OBJECT IDENTIFIER ::= { colubrisWdsMIBObjects 4 }
coWDSNetworkScanGroup OBJECT IDENTIFIER ::= { colubrisWdsMIBObjects 5 }
coWDSNumberOfGroup OBJECT-TYPE
SYNTAX Unsigned32 (1..6)
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Number of WDS groups supported by the product."
::= { coWDSInfoGroup 1 }
coWDSDynamicModeImplemented OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Indicates if dynamic WDS mode is available in the product."
::= { coWDSInfoGroup 2 }
coWDSRadioTable OBJECT-TYPE
SYNTAX SEQUENCE OF CoWDSRadioEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Conceptual table for the ACK distance parameter."
::= { coWDSRadioGroup 1 }
coWDSRadioEntry OBJECT-TYPE
SYNTAX CoWDSRadioEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "An Entry (conceptual row) in the ACK distance Table.
coWDSRadioIndex - Radio number where the ACK
distance is applied."
INDEX { coWDSRadioIndex }
::= { coWDSRadioTable 1 }
CoWDSRadioEntry ::= SEQUENCE
{
coWDSRadioIndex Integer32,
coWDSRadioAckDistance Unsigned32,
coWDSRadioQoS INTEGER
}
coWDSRadioIndex OBJECT-TYPE
SYNTAX Integer32 (1..3)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Radio number."
::= { coWDSRadioEntry 1 }
coWDSRadioAckDistance OBJECT-TYPE
SYNTAX Unsigned32
UNITS "km"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Maximum distance between the device and the remote peers."
::= { coWDSRadioEntry 2 }
coWDSRadioQoS OBJECT-TYPE
SYNTAX INTEGER
{
disabled(1),
vlan(2),
veryHigh(3),
high(4),
normal(5),
low(6),
diffSrv(7),
tos(8),
ipQos(9)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "QoS priority mechanism used to maps the traffic to
one of the four WMM traffic queues."
::= { coWDSRadioEntry 3 }
coWDSGroupTable OBJECT-TYPE
SYNTAX SEQUENCE OF CoWDSGroupEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Conceptual table for the WDS Groups. This table contains
the six WDS Groups configuration information."
::= { coWDSGroupGroup 1 }
coWDSGroupEntry OBJECT-TYPE
SYNTAX CoWDSGroupEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "An Entry (conceptual row) in the WDS Group Table.
coWDSGroupIndex - Uniquely identify a WDS group
inside the WDS group table."
INDEX { coWDSGroupIndex }
::= { coWDSGroupTable 1 }
CoWDSGroupEntry ::= SEQUENCE
{
coWDSGroupIndex Integer32,
coWDSGroupName DisplayString,
coWDSGroupState INTEGER,
coWDSGroupSecurity INTEGER,
coWDSGroupAddressing INTEGER,
coWDSGroupStaticMacAddress MacAddress,
coWDSGroupDynamicMode INTEGER,
coWDSGroupDynamicGroupId Unsigned32
}
coWDSGroupIndex OBJECT-TYPE
SYNTAX Integer32 (1..6)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "The auxiliary variable used to identify instances of WDS
groups."
::= { coWDSGroupEntry 1 }
coWDSGroupName OBJECT-TYPE
SYNTAX DisplayString (SIZE(0..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Friendly name of the WDS group."
::= { coWDSGroupEntry 2 }
coWDSGroupState OBJECT-TYPE
SYNTAX INTEGER
{
enable(1),
disable(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Specifies if the WDS group is active in the radios."
::= { coWDSGroupEntry 3 }
coWDSGroupSecurity OBJECT-TYPE
SYNTAX INTEGER
{
none(1),
wep(2),
tkip(3),
aes(4)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Specifies the encryption used by the WDS group."
::= { coWDSGroupEntry 4 }
coWDSGroupAddressing OBJECT-TYPE
SYNTAX INTEGER
{
static(1),
dynamic(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Specifies if the WDS group is static or dynamic."
::= { coWDSGroupEntry 5 }
coWDSGroupStaticMacAddress OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION "For static WDS group, this object specify the MAC
address of the remote WDS device."
::= { coWDSGroupEntry 6 }
coWDSGroupDynamicMode OBJECT-TYPE
SYNTAX INTEGER
{
none(0),
master(1),
slave(2),
alternateMaster(3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Specifies the mode of the dynamic WDS group."
::= { coWDSGroupEntry 7 }
coWDSGroupDynamicGroupId OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Specifies the group identifier of the dynamic WDS group."
::= { coWDSGroupEntry 8 }
coWDSLinkTable OBJECT-TYPE
SYNTAX SEQUENCE OF CoWDSLinkEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Conceptual table for the WDS links. This table contains
up to 54 WDS links status information."
::= { coWDSLinkGroup 1 }
coWDSLinkEntry OBJECT-TYPE
SYNTAX CoWDSLinkEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "An Entry (conceptual row) in the WDS Link Table.
coWDSGroupIndex - Uniquely identify a WDS group
inside the WDS group table.
coWDSLinkIndex - Uniquely identify a WDS link
inside a WDS group."
INDEX { coWDSGroupIndex, coWDSLinkIndex }
::= { coWDSLinkTable 1 }
CoWDSLinkEntry ::= SEQUENCE
{
coWDSLinkIndex Integer32,
coWDSLinkState INTEGER,
coWDSLinkRadio Integer32,
coWDSLinkPeerMacAddress MacAddress,
coWDSLinkMaster TruthValue,
coWDSLinkAuthorized TruthValue,
coWDSLinkEncryption INTEGER,
coWDSLinkIdleTime Unsigned32,
coWDSLinkSNR Integer32,
coWDSLinkTxRate Unsigned32,
coWDSLinkRxRate Unsigned32,
coWDSLinkIfIndex Integer32,
coWDSLinkHT TruthValue,
coWDSLinkTxMCS Unsigned32,
coWDSLinkRxMCS Unsigned32,
coWDSLinkSignal Integer32,
coWDSLinkNoise Integer32
}
coWDSLinkIndex OBJECT-TYPE
SYNTAX Integer32 (1..54)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "The auxiliary variable used to identify instances of WDS
links."
::= { coWDSLinkEntry 1 }
coWDSLinkState OBJECT-TYPE
SYNTAX INTEGER
{
down(1),
acquiring(2),
inactive(3),
active(4)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Specifies the state of the WDS link."
::= { coWDSLinkEntry 2 }
coWDSLinkRadio OBJECT-TYPE
SYNTAX Integer32 (1..3)
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Radio number where the WDS peer was detected."
::= { coWDSLinkEntry 3 }
coWDSLinkPeerMacAddress OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION "MAC address of the WDS peer."
::= { coWDSLinkEntry 4 }
coWDSLinkMaster OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Determine if this link is a link to a master.
Providing upstream network access."
::= { coWDSLinkEntry 5 }
coWDSLinkAuthorized OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Encryption, if any, can proceed."
::= { coWDSLinkEntry 6 }
coWDSLinkEncryption OBJECT-TYPE
SYNTAX INTEGER
{
none(1),
wep(2),
tkip(3),
aes(4)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Specifies the encryption used by the WDS link."
::= { coWDSLinkEntry 7 }
coWDSLinkIdleTime OBJECT-TYPE
SYNTAX Unsigned32
UNITS "seconds"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Inactivity time."
::= { coWDSLinkEntry 8 }
coWDSLinkSNR OBJECT-TYPE
SYNTAX Integer32 (0..92)
UNITS "dBm"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Signal noise ratio of the WDS peer."
::= { coWDSLinkEntry 9 }
coWDSLinkTxRate OBJECT-TYPE
SYNTAX Unsigned32
UNITS "500Kb/s"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Current transmit rate of the WDS peer."
::= { coWDSLinkEntry 10 }
coWDSLinkRxRate OBJECT-TYPE
SYNTAX Unsigned32
UNITS "500Kb/s"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Current receive rate of the WDS peer."
::= { coWDSLinkEntry 11 }
coWDSLinkIfIndex OBJECT-TYPE
SYNTAX Integer32 (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION "ifIndex of the associated interface in the ifTable."
::= { coWDSLinkEntry 12 }
coWDSLinkHT OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Indicates if the link is using high throughput
data rates."
::= { coWDSLinkEntry 13 }
coWDSLinkTxMCS OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Current transmit MCS of the HT WDS peer."
::= { coWDSLinkEntry 14 }
coWDSLinkRxMCS OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Current receive MCS of the HT WDS peer."
::= { coWDSLinkEntry 15 }
coWDSLinkSignal OBJECT-TYPE
SYNTAX Integer32
UNITS "dBm"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Strength of the wireless signal."
::= { coWDSLinkEntry 16 }
coWDSLinkNoise OBJECT-TYPE
SYNTAX Integer32
UNITS "dBm"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Level of local background noise."
::= { coWDSLinkEntry 17 }
coWDSNetworkScanTable OBJECT-TYPE
SYNTAX SEQUENCE OF CoWDSNetworkScanEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Conceptual table for the WDS network scans."
::= { coWDSNetworkScanGroup 1 }
coWDSNetworkScanEntry OBJECT-TYPE
SYNTAX CoWDSNetworkScanEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "An Entry (conceptual row) in the WDS Network Scan
Table.
coWDSScanRadioIndex - Radio number where the WDS peer
was detected.
coWDSScanPeerIndex - Uniquely identify a WDS peer
on a radio inside the WDS
network scan table."
INDEX { coWDSScanRadioIndex, coWDSScanPeerIndex }
::= { coWDSNetworkScanTable 1 }
CoWDSNetworkScanEntry ::= SEQUENCE
{
coWDSScanRadioIndex Integer32,
coWDSScanPeerIndex Integer32,
coWDSScanGroupId Unsigned32,
coWDSScanPeerMacAddress MacAddress,
coWDSScanChannel Unsigned32,
coWDSScanSNR Integer32,
coWDSScanMode INTEGER,
coWDSScanAvailable TruthValue
}
coWDSScanRadioIndex OBJECT-TYPE
SYNTAX Integer32 (1..3)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Radio number where the WDS peer was detected."
::= { coWDSNetworkScanEntry 1 }
coWDSScanPeerIndex OBJECT-TYPE
SYNTAX Integer32 (1..100)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Uniquely identify a WDS peer on a radio."
::= { coWDSNetworkScanEntry 2 }
coWDSScanGroupId OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Group id used by the WDS peer."
::= { coWDSNetworkScanEntry 3 }
coWDSScanPeerMacAddress OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION "MAC address of the WDS peer."
::= { coWDSNetworkScanEntry 4 }
coWDSScanChannel OBJECT-TYPE
SYNTAX Unsigned32 (1..199)
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Channel on which the peer is transmitting."
::= { coWDSNetworkScanEntry 5 }
coWDSScanSNR OBJECT-TYPE
SYNTAX Integer32 (0..92)
UNITS "dBm"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Signal noise ratio of the WDS peer."
::= { coWDSNetworkScanEntry 6 }
coWDSScanMode OBJECT-TYPE
SYNTAX INTEGER
{
master(1),
slave(2),
alternateMaster(3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Current mode of the WDS peer."
::= { coWDSNetworkScanEntry 7 }
coWDSScanAvailable OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Peer is accepting connections."
::= { coWDSNetworkScanEntry 8 }
-- conformance information
colubrisWdsMIBConformance OBJECT IDENTIFIER ::= { colubrisWdsMIB 2 }
colubrisWdsMIBCompliances OBJECT IDENTIFIER ::= { colubrisWdsMIBConformance 1 }
colubrisWdsMIBGroups OBJECT IDENTIFIER ::= { colubrisWdsMIBConformance 2 }
-- compliance statements
colubrisWdsMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION "The compliance statement for the WDS MIB."
MODULE MANDATORY-GROUPS
{
colubrisWDSInfoMIBGroup,
colubrisWDSRadioMIBGroup,
colubrisWDSGroupMIBGroup,
colubrisWDSLinkMIBGroup,
colubrisWDSScanMIBGroup
}
::= { colubrisWdsMIBCompliances 1 }
-- units of conformance
colubrisWDSInfoMIBGroup OBJECT-GROUP
OBJECTS {
coWDSNumberOfGroup,
coWDSDynamicModeImplemented
}
STATUS current
DESCRIPTION "A collection of scalar objects for WDS."
::= { colubrisWdsMIBGroups 1 }
colubrisWDSRadioMIBGroup OBJECT-GROUP
OBJECTS {
coWDSRadioAckDistance,
coWDSRadioQoS
}
STATUS current
DESCRIPTION "A collection of objects for the WDS radios."
::= { colubrisWdsMIBGroups 2 }
colubrisWDSGroupMIBGroup OBJECT-GROUP
OBJECTS {
coWDSGroupName,
coWDSGroupState,
coWDSGroupSecurity,
coWDSGroupAddressing,
coWDSGroupStaticMacAddress,
coWDSGroupDynamicMode,
coWDSGroupDynamicGroupId
}
STATUS current
DESCRIPTION "A collection of objects for the WDS groups."
::= { colubrisWdsMIBGroups 3 }
colubrisWDSLinkMIBGroup OBJECT-GROUP
OBJECTS {
coWDSLinkState,
coWDSLinkRadio,
coWDSLinkPeerMacAddress,
coWDSLinkMaster,
coWDSLinkAuthorized,
coWDSLinkEncryption,
coWDSLinkIdleTime,
coWDSLinkSNR,
coWDSLinkTxRate,
coWDSLinkRxRate,
coWDSLinkIfIndex,
coWDSLinkHT,
coWDSLinkTxMCS,
coWDSLinkRxMCS,
coWDSLinkSignal,
coWDSLinkNoise
}
STATUS current
DESCRIPTION "A collection of objects for the WDS links."
::= { colubrisWdsMIBGroups 4 }
colubrisWDSScanMIBGroup OBJECT-GROUP
OBJECTS {
coWDSScanGroupId,
coWDSScanPeerMacAddress,
coWDSScanChannel,
coWDSScanSNR,
coWDSScanMode,
coWDSScanAvailable
}
STATUS current
DESCRIPTION "A collection of objects for the WDS network scan."
::= { colubrisWdsMIBGroups 5 }
END