mirror of
https://github.com/librenms/librenms.git
synced 2024-09-21 10:28:13 +00:00
4c0412b14d
* 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
351 lines
12 KiB
Plaintext
351 lines
12 KiB
Plaintext
-- ****************************************************************************
|
|
-- COLUBRIS-USER-SESSION-MIB definitions
|
|
--
|
|
-- Copyright (c) 2007, Colubris Networks, Inc.
|
|
-- All Rights Reserved.
|
|
--
|
|
-- Colubris Networks User Session MIB file.
|
|
--
|
|
-- ****************************************************************************
|
|
|
|
|
|
COLUBRIS-USER-SESSION-MIB DEFINITIONS ::= BEGIN
|
|
|
|
IMPORTS
|
|
MODULE-IDENTITY, OBJECT-TYPE,
|
|
IpAddress, Integer32, Unsigned32, Counter32, Gauge32, Counter64
|
|
FROM SNMPv2-SMI
|
|
MODULE-COMPLIANCE, OBJECT-GROUP
|
|
FROM SNMPv2-CONF
|
|
colubrisMgmtV2
|
|
FROM COLUBRIS-SMI
|
|
ColubrisSSIDOrNone
|
|
FROM COLUBRIS-TC
|
|
;
|
|
|
|
|
|
colubrisUserSessionMIB MODULE-IDENTITY
|
|
LAST-UPDATED "200703050000Z"
|
|
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 Networks User Session MIB."
|
|
|
|
::= { colubrisMgmtV2 36 }
|
|
|
|
|
|
-- colubrisUserSessionMIB definition
|
|
colubrisUserSessionMIBObjects OBJECT IDENTIFIER ::= { colubrisUserSessionMIB 1 }
|
|
|
|
-- user session groups
|
|
coUserSessionInfoGroup OBJECT IDENTIFIER ::= { colubrisUserSessionMIBObjects 1 }
|
|
coUserSessionStGroup OBJECT IDENTIFIER ::= { colubrisUserSessionMIBObjects 2 }
|
|
|
|
|
|
-- A collection of objects providing global information on
|
|
-- the users on the system.
|
|
coUserSessACUserMaxCount OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the maximum number of concurrent
|
|
authenticated AC users."
|
|
::= { coUserSessionInfoGroup 1 }
|
|
|
|
coUserSessNonACUserMaxCount OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the maximum number of concurrent
|
|
authenticated non AC users."
|
|
::= { coUserSessionInfoGroup 2 }
|
|
|
|
coUserSessACUserCount OBJECT-TYPE
|
|
SYNTAX Gauge32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the number of currently authenticated AC users."
|
|
::= { coUserSessionInfoGroup 3 }
|
|
|
|
coUserSessNonACUserCount OBJECT-TYPE
|
|
SYNTAX Gauge32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the number of currently authenticated non AC users."
|
|
::= { coUserSessionInfoGroup 4 }
|
|
|
|
|
|
-- A collection of objects providing status information on
|
|
-- the users on the system.
|
|
coUserSessionTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF CoUserSessionEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION "A table containing specific information for users authenticated
|
|
(AC and non-AC) by the authentication system."
|
|
::= { coUserSessionStGroup 1 }
|
|
|
|
coUserSessionEntry OBJECT-TYPE
|
|
SYNTAX CoUserSessionEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION "Information about a particular user that has been authenticated
|
|
by the authentication system.
|
|
coUserSessIndex - Uniquely identifies a user in the table."
|
|
INDEX { coUserSessIndex }
|
|
::= { coUserSessionTable 1 }
|
|
|
|
CoUserSessionEntry ::= SEQUENCE
|
|
{
|
|
coUserSessIndex Integer32,
|
|
coUserSessUserName OCTET STRING,
|
|
coUserSessClientIpAddress IpAddress,
|
|
coUserSessSessionDuration Counter32,
|
|
coUserSessIdleTime Counter32,
|
|
coUserSessMAPGroupName OCTET STRING,
|
|
coUserSessVSCName OCTET STRING,
|
|
coUserSessSSID ColubrisSSIDOrNone,
|
|
coUserSessVLAN Integer32,
|
|
coUserSessPHYType INTEGER,
|
|
coUserSessAuthType INTEGER,
|
|
coUserSessCalledStationID OCTET STRING,
|
|
coUserSessCallingStationID OCTET STRING,
|
|
coUserSessRADIUSServerProfileName OCTET STRING,
|
|
coUserSessRADIUSServerIpAddress IpAddress,
|
|
coUserSessBytesSent Counter64,
|
|
coUserSessBytesReceived Counter64,
|
|
coUserSessPacketsSent Counter32,
|
|
coUserSessPacketsReceived Counter32
|
|
}
|
|
|
|
coUserSessIndex OBJECT-TYPE
|
|
SYNTAX Integer32 (1..2147483647)
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION "Index of a user in the coUserSessionTable."
|
|
::= { coUserSessionEntry 1 }
|
|
|
|
coUserSessUserName OBJECT-TYPE
|
|
SYNTAX OCTET STRING (SIZE (0..252))
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the user's name."
|
|
::= { coUserSessionEntry 2 }
|
|
|
|
coUserSessClientIpAddress OBJECT-TYPE
|
|
SYNTAX IpAddress
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the user's IP address."
|
|
::= { coUserSessionEntry 3 }
|
|
|
|
coUserSessSessionDuration OBJECT-TYPE
|
|
SYNTAX Counter32
|
|
UNITS "seconds"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates how long the user's session has been active.
|
|
When this counter reaches its maximum value, it wraps
|
|
around and starts increasing again from zero."
|
|
::= { coUserSessionEntry 4 }
|
|
|
|
coUserSessIdleTime OBJECT-TYPE
|
|
SYNTAX Counter32
|
|
UNITS "seconds"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates for how long the user's session has been idle.
|
|
When this counter reaches its maximum value, it wraps
|
|
around and starts increasing again from zero."
|
|
::= { coUserSessionEntry 5 }
|
|
|
|
coUserSessMAPGroupName OBJECT-TYPE
|
|
SYNTAX OCTET STRING (SIZE (0..15))
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the user's MultiService Access Point Group
|
|
Name."
|
|
::= { coUserSessionEntry 6 }
|
|
|
|
coUserSessVSCName OBJECT-TYPE
|
|
SYNTAX OCTET STRING (SIZE (0..32))
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the user's Virtual Service Community Name."
|
|
::= { coUserSessionEntry 7 }
|
|
|
|
coUserSessSSID OBJECT-TYPE
|
|
SYNTAX ColubrisSSIDOrNone
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the user's Access Point SSID (ONLY when
|
|
Location-aware is enabled and properly configured).
|
|
If this information is not available, a zero-Length
|
|
string is returned."
|
|
::= { coUserSessionEntry 8 }
|
|
|
|
coUserSessVLAN OBJECT-TYPE
|
|
SYNTAX Integer32 (0..4094)
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Specifies the VLAN currently assigned to the user."
|
|
::= { coUserSessionEntry 9 }
|
|
|
|
coUserSessPHYType OBJECT-TYPE
|
|
SYNTAX INTEGER
|
|
{
|
|
unknown(0),
|
|
ieee802dot11a(1),
|
|
ieee802dot11b(2),
|
|
ieee802dot11g(3)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Specifies the user's radio type."
|
|
::= { coUserSessionEntry 10 }
|
|
|
|
coUserSessAuthType OBJECT-TYPE
|
|
SYNTAX INTEGER
|
|
{
|
|
ac(1),
|
|
nonAc(2)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "User's authentication type."
|
|
::= { coUserSessionEntry 11 }
|
|
|
|
coUserSessCalledStationID OBJECT-TYPE
|
|
SYNTAX OCTET STRING (SIZE (0..252))
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the user's called station ID."
|
|
::= { coUserSessionEntry 12 }
|
|
|
|
coUserSessCallingStationID OBJECT-TYPE
|
|
SYNTAX OCTET STRING (SIZE (0..252))
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the user's calling station ID."
|
|
::= { coUserSessionEntry 13 }
|
|
|
|
coUserSessRADIUSServerProfileName OBJECT-TYPE
|
|
SYNTAX OCTET STRING (SIZE (0..40))
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the RADIUS server profile name used to
|
|
authenticate the user."
|
|
::= { coUserSessionEntry 14 }
|
|
|
|
coUserSessRADIUSServerIpAddress OBJECT-TYPE
|
|
SYNTAX IpAddress
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the RADIUS server IP address used to
|
|
authenticate the user."
|
|
::= { coUserSessionEntry 15 }
|
|
|
|
coUserSessBytesSent OBJECT-TYPE
|
|
SYNTAX Counter64
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the total number of bytes sent by the user.
|
|
When this counter reaches its maximum value, it wraps
|
|
around and starts increasing again from zero."
|
|
::= { coUserSessionEntry 16 }
|
|
|
|
coUserSessBytesReceived OBJECT-TYPE
|
|
SYNTAX Counter64
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the total number of bytes received by the user.
|
|
When this counter reaches its maximum value, it wraps
|
|
around and starts increasing again from zero."
|
|
::= { coUserSessionEntry 17 }
|
|
|
|
coUserSessPacketsSent OBJECT-TYPE
|
|
SYNTAX Counter32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the total number of IP packets sent by the user.
|
|
When this counter reaches its maximum value, it wraps
|
|
around and starts increasing again from zero."
|
|
::= { coUserSessionEntry 18 }
|
|
|
|
coUserSessPacketsReceived OBJECT-TYPE
|
|
SYNTAX Counter32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION "Indicates the total number of IP packets received by the user.
|
|
When this counter reaches its maximum value, it wraps
|
|
around and starts increasing again from zero."
|
|
::= { coUserSessionEntry 19 }
|
|
|
|
|
|
-- user session notifications
|
|
userSessionMIBNotificationPrefix OBJECT IDENTIFIER ::= { colubrisUserSessionMIB 2 }
|
|
userSessionMIBNotifications OBJECT IDENTIFIER ::= { userSessionMIBNotificationPrefix 0 }
|
|
|
|
-- conformance information
|
|
colubrisUserSessionMIBConformance OBJECT IDENTIFIER ::= { colubrisUserSessionMIB 3 }
|
|
colubrisUserSessionMIBCompliances OBJECT IDENTIFIER ::= { colubrisUserSessionMIBConformance 1 }
|
|
colubrisUserSessionMIBGroups OBJECT IDENTIFIER ::= { colubrisUserSessionMIBConformance 2 }
|
|
|
|
-- compliance statements
|
|
colubrisUserSessionMIBCompliance MODULE-COMPLIANCE
|
|
STATUS current
|
|
DESCRIPTION "The compliance statement for entities which implement
|
|
the Colubris User Session MIB."
|
|
MODULE MANDATORY-GROUPS
|
|
{
|
|
colubrisUserSessionInfoMIBGroup,
|
|
colubrisUserSessionStMIBGroup
|
|
}
|
|
::= { colubrisUserSessionMIBCompliances 1 }
|
|
|
|
-- units of conformance
|
|
colubrisUserSessionInfoMIBGroup OBJECT-GROUP
|
|
OBJECTS {
|
|
coUserSessACUserMaxCount,
|
|
coUserSessNonACUserMaxCount,
|
|
coUserSessACUserCount,
|
|
coUserSessNonACUserCount
|
|
}
|
|
STATUS current
|
|
DESCRIPTION "A collection of objects providing global information
|
|
for the User Session MIB."
|
|
::= { colubrisUserSessionMIBGroups 1 }
|
|
|
|
colubrisUserSessionStMIBGroup OBJECT-GROUP
|
|
OBJECTS {
|
|
coUserSessUserName,
|
|
coUserSessClientIpAddress,
|
|
coUserSessSessionDuration,
|
|
coUserSessIdleTime,
|
|
coUserSessMAPGroupName,
|
|
coUserSessVSCName,
|
|
coUserSessSSID,
|
|
coUserSessVLAN,
|
|
coUserSessPHYType,
|
|
coUserSessAuthType,
|
|
coUserSessCalledStationID,
|
|
coUserSessCallingStationID,
|
|
coUserSessRADIUSServerProfileName,
|
|
coUserSessRADIUSServerIpAddress,
|
|
coUserSessBytesSent,
|
|
coUserSessBytesReceived,
|
|
coUserSessPacketsSent,
|
|
coUserSessPacketsReceived
|
|
}
|
|
STATUS current
|
|
DESCRIPTION "A collection of objects providing the user session MIB
|
|
capability."
|
|
::= { colubrisUserSessionMIBGroups 2 }
|
|
END
|