From 98a672123c7872f6b9b75a9a2b6bb3aea504de6a Mon Sep 17 00:00:00 2001 From: David Leutgeb Date: Tue, 5 Dec 2023 12:25:34 +0100 Subject: Initial commit --- MIBS/fs/MAC-NOTIFICATION-MIB | 437 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 437 insertions(+) create mode 100644 MIBS/fs/MAC-NOTIFICATION-MIB (limited to 'MIBS/fs/MAC-NOTIFICATION-MIB') diff --git a/MIBS/fs/MAC-NOTIFICATION-MIB b/MIBS/fs/MAC-NOTIFICATION-MIB new file mode 100644 index 0000000..b1fbd65 --- /dev/null +++ b/MIBS/fs/MAC-NOTIFICATION-MIB @@ -0,0 +1,437 @@ +-- ***************************************************************** +-- gbnServiceMAC-NOTIFICATION-MIB.mi2: MAC Notification MIB + +-- ***************************************************************** + +MAC-NOTIFICATION-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Counter32, NOTIFICATION-TYPE, + Unsigned32, Integer32 + FROM SNMPv2-SMI + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF + TruthValue, TimeStamp, MacAddress, TEXTUAL-CONVENTION + FROM SNMPv2-TC + ifIndex + FROM IF-MIB + VlanId + FROM Q-BRIDGE-MIB + gbnServiceMACNotification + FROM ADMIN-MASTER-MIB; + + +macNotificationMIB MODULE-IDENTITY + LAST-UPDATED "201204080000Z" + ORGANIZATION "New admin, Inc." + CONTACT-INFO "http://www.admin.com" + DESCRIPTION + "This MIB module is for configuration of the MAC notification + feature. MAC notification is a mechanism to inform monitoring + devices when there are MAC addresses learnt or removed from + the forwarding database of the monitored devices." + + REVISION "201204080000Z" + DESCRIPTION + "Initial version of this MIB module." + ::= { gbnServiceMACNotification 1 } + +-- Textual Conventions + +Percent ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "An integer that is in the range of a percent value." + SYNTAX Integer32 (1..100) + +PhysicalIndex ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "An arbitrary value that uniquely identifies the physical + entity. The value should be a small, positive integer. + Index values for different physical entities are not + necessarily contiguous." + SYNTAX Integer32 (1..2147483647) + + +-- MAC Notification MIB object definitions + +macNotificationMIBObjects OBJECT IDENTIFIER + ::= { macNotificationMIB 1 } + +-- MAC Notification MIB consists of the following groups +-- [1] Mac Notification Global Group (mnGlobalObjects). +-- [2] Mac Notification Interface Group (mnInterfaceObjects). +mnGlobalObjects OBJECT IDENTIFIER + ::= { macNotificationMIBObjects 1 } +mnInterfaceObjects OBJECT IDENTIFIER + ::= { macNotificationMIBObjects 2 } +--********************************************************************** +-- Mac Notification Global Group +--********************************************************************** + +mnGlobalFeatureEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates whether the MAC notification feature is currently + running in the device. + + Setting this object to false(2) disables the MAC notification + feature globally thus disabling the feature at each interface. + + Setting this object to true(1) will start the MAC notification + feature running in the device. If the feature is already + running, setting to true(1) has no effect. Once the MAC + notification is enabled, whether the feature is running at each + interface is controlled by the mnIfConfigTable." + ::= { mnGlobalObjects 1 } + +mnNotificationInterval OBJECT-TYPE + SYNTAX Unsigned32 (0..4294967295) + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the maximum interval of time between + mnMacChangedNotifications being generated by the device. + If the value of mnNotificationsEnabled is true(1), the + device will send out the generated mnMacChangedNotifications + and archive the MAC change notification events in the + mnHistoryTable. If the value of mnNotificationsEnabled is + false(2), the device will not send out the generated + mnMacChangedNotifications but it will archive these events + in the mnHistoryTable. + + If the value of this object is equal to 0, the device will + generate mnMacChangedNotifications and archive the MAC + change notification events in the mnHistoryTable as soon as + there is MAC address learnt or removed by the device. + + If the value of this object is greater than 0, the device will + wait for a period of time equal to the value of this object + before generate the mnMacChangedNotifications and archive + the MAC change notification events in the mnHistoryTable." + ::= { mnGlobalObjects 2 } + +mnMacAddressesLearnt OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the number of MAC addresses learnt by the + device." + ::= { mnGlobalObjects 3 } + +mnMacAddressesRemoved OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the number of MAC addresses removed from the + forwarding database." + ::= { mnGlobalObjects 4 } + +mnNotificationsEnabled OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates whether mnMacChangedNotification notifications + will or will not be sent when there are MAC addresses + learnt or removed from the device's forwarding database. + Disabling notifications does not prevent the MAC address + info from being added to the mnHistoryTable." + DEFVAL { false } + ::= { mnGlobalObjects 5 } + +mnNotificationsSent OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the number of mnMacChangedNotifications sent out + by the device." + ::= { mnGlobalObjects 6 } + +mnHistTableMaxLength OBJECT-TYPE + SYNTAX Unsigned32 (0..500) + UNITS "entries" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The upper limit on the number of entries that the + mnHistoryTable may contain. A value of 0 will + prevent any history from being retained. When this + table is full, the oldest entry will be deleted and + a new one will be created." + DEFVAL { 1 } + ::= { mnGlobalObjects 7 } + +mnHistoryTable OBJECT-TYPE + SYNTAX SEQUENCE OF MnHistoryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table will archive the MAC change notification events + generated by this device. The MAC change notification + events are archived here even if mnMacChangesNotifications + are not actually sent." + ::= { mnGlobalObjects 8 } + +mnHistoryEntry OBJECT-TYPE + SYNTAX MnHistoryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A MAC change notification message that was previously + generated by this device. Each entry is indexed by a message + index." + INDEX { mnHistIndex } + ::= { mnHistoryTable 1 } + +MnHistoryEntry ::= + SEQUENCE { + mnHistIndex + Unsigned32, + mnHistMacChangedMsg + OCTET STRING, + mnHistTimestamp + TimeStamp + } + +mnHistIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An index that uniquely identifies a MAC change notification + event previously generated by the device. This index starts at + 1 and increases by one when a MAC change notification is + generated. When it reaches the maximum value, the agent wraps + the value back to 1." + ::= { mnHistoryEntry 1 } + +mnHistMacChangedMsg OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(1..254)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the information of a MAC change + notification event. It consists of several tuples packed + together in the format of '...'. + + Each tuple consist of 11 octets in the format of + '' where + + is of size 1 octet and supports the following values + 0 - End of MIB object. + 1 - MAC learnt. + 2 - MAC removed. + + is VLAN number of the VLAN which the MAC address is + belonged to and has size of 2 octet. + + is the Layer2 Mac Address and has size of 6 octets. + + is the value of dot1dBasePort for the + interface from which the MAC address is learnt and has size + of 2 octets." + ::= { mnHistoryEntry 2 } + +mnHistTimestamp OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The value of sysUpTime when the mnMacChangedNotification + containing the information denoted by the mnHistMacChangedMsg + object in this entry was generated." + ::= { mnHistoryEntry 3 } + +--********************************************************************* +-- Mac Notification Interface Group +--********************************************************************* + +-- +-- mnIfConfigTable +-- + +mnIfConfigTable OBJECT-TYPE + SYNTAX SEQUENCE OF MnIfConfigEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table enables or disables the generation of notification + at each interface when MAC address is learnt or removed." + ::= { mnInterfaceObjects 1 } + +mnIfConfigEntry OBJECT-TYPE + SYNTAX MnIfConfigEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry contains the configuration for enabling the + MAC notification at each interface that supports this + feature." + INDEX { ifIndex } + ::= { mnIfConfigTable 1 } + +MnIfConfigEntry ::= SEQUENCE { + mnMacAddrLearntEnable TruthValue, + mnMacAddrRemovedEnable TruthValue +} + +mnMacAddrLearntEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates whether this interface is enabled to send + mnMacChangedNotification when it learns a new MAC address. This + variable has no effect when the value of mnGlobalFeatureEnabled + object is false(2). + + Setting this object to true(1) enables the sending of + mnMacChangedNotification when this interface learns a + new MAC address. + + Setting this object to false(2) disables the sending + of mnMacChangedNotification when this interface learns + a new MAC address." + DEFVAL { false } + ::= { mnIfConfigEntry 1 } + +mnMacAddrRemovedEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates whether this interface is enabled to send + mnMacChangedNotification when a MAC address which it learnt + previously is removed from the forwarding table. This variable + has no effect when the value of mnGlobalFeatureEnabled object + is false(2). + + Setting this object to true(1) enables the sending of + mnMacChangedNotification when a MAC address which this + interface learnt previously is removed from the forwarding + table. + + Setting this object to false(2) disables the sending of + mnMacChangedNotification when a MAC address which this + interface learnt previously is removed from the forwarding + table." + DEFVAL { false } + ::= { mnIfConfigEntry 2 } + + + +-- +-- +-- Notification +-- + +mnMIBNotificationPrefix OBJECT IDENTIFIER + ::= { macNotificationMIB 2 } + +mnMIBNotifications + OBJECT IDENTIFIER ::= { mnMIBNotificationPrefix 0 } + +mnMacChangedNotification NOTIFICATION-TYPE + OBJECTS { mnHistMacChangedMsg, mnHistTimestamp } + STATUS current + DESCRIPTION + "This notification is generated when there is enough MAC + address information to fully occupy a maximum size SNMP trap + message. This notification is also generated when there + is at least one MAC address changed or removed and the amount + of time elapsed from the previous notification is greater + than the maximum wait time denoted by + mnNotificationInterval object. + + If there are more MAC addresses information than can fit into + one mmHistTrapContent object, then multiple notifications + will be generated." + ::= { mnMIBNotifications 1 } + +-- +-- Conformance +-- + +mnMIBConformance OBJECT IDENTIFIER ::= { macNotificationMIB 3 } + +mnMIBCompliances OBJECT IDENTIFIER + ::= { mnMIBConformance 1 } + +mnMIBGroups OBJECT IDENTIFIER + ::= { mnMIBConformance 2 } + + +-- Compliance + +mnMIBCompliance MODULE-COMPLIANCE + STATUS deprecated + DESCRIPTION + "The compliance statement for the MAC-NOTIFICATION-MIB." + MODULE + MANDATORY-GROUPS { mnGlobalGroup, + mnInterfaceGroup, + mnNotificationGroup } + ::= { mnMIBCompliances 1 } + +mnMIBComplianceVer1 MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for the MAC-NOTIFICATION-MIB." + MODULE + MANDATORY-GROUPS { mnGlobalGroup, + mnInterfaceGroup, + mnNotificationGroup + } + + ::= { mnMIBCompliances 2 } + +-- +-- Units of Conformance +-- +-- Units of Conformance +-- +mnGlobalGroup OBJECT-GROUP + OBJECTS { + mnGlobalFeatureEnabled, + mnNotificationInterval, + mnMacAddressesLearnt, + mnMacAddressesRemoved, + mnNotificationsEnabled, + mnHistTableMaxLength, + mnHistMacChangedMsg, + mnHistTimestamp, + mnNotificationsSent + } + STATUS current + DESCRIPTION + "A collection of objects providing the global configuration + and information for MAC notification." + ::= { mnMIBGroups 1 } + +mnInterfaceGroup OBJECT-GROUP + OBJECTS { + mnMacAddrLearntEnable, + mnMacAddrRemovedEnable + } + STATUS current + DESCRIPTION + "A collection of objects providing the configuration information + for MAC notification at each interface." + ::= { mnMIBGroups 2 } + +mnNotificationGroup NOTIFICATION-GROUP + NOTIFICATIONS { mnMacChangedNotification } + STATUS current + DESCRIPTION + "The notification generated by the MAC-NOTIFICATION-MIB." + ::= { mnMIBGroups 3 } +END -- cgit v1.2.3