TN-LLDP-MIB DEFINITIONS ::= BEGIN -- (c) Copyright 2021 Nokia Networks. All rights reserved. -- This software is the confidential and proprietary property of -- Nokia and may only be used in accordance with the terms of the -- license agreement provided with this software. IMPORTS SnmpAdminString FROM SNMP-FRAMEWORK-MIB MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter32, Unsigned32 FROM SNMPv2-SMI MacAddress, TEXTUAL-CONVENTION, TruthValue FROM SNMPv2-TC AddressFamilyNumbers FROM IANA-ADDRESS-FAMILY-NUMBERS-MIB LldpPortId, LldpPortIdSubtype, LldpChassisId, LldpChassisIdSubtype, LldpManAddress, LldpManAddrIfSubtype, LldpSystemCapabilitiesMap FROM LLDP-MIB TimeFilter, ZeroBasedCounter32 FROM RMON2-MIB tnSRMIBModules, tnSRNotifyPrefix, tnSRObjs FROM TROPIC-GLOBAL-REG TmnxEnabledDisabled FROM TN-TC-MIB tnSysSwitchId FROM TROPIC-SYSTEM-MIB tnPortPortID FROM TN-PORT-MIB ; tnLldpMIBModule MODULE-IDENTITY LAST-UPDATED "202009250000Z" ORGANIZATION "Nokia" CONTACT-INFO "Nokia SROS Support Web: http://support.nokia.com" DESCRIPTION "This document is the SNMP MIB module to manage and provision LLDP on the Nokia SROS device. This SNMP MIB module (Specification) embodies Nokia's proprietary intellectual property. Nokia retains all title and ownership in the Specification, including any revisions. Nokia grants all interested parties a non-exclusive license to use and distribute an unmodified copy of this Specification in connection with management of Nokia products, and without fee, provided this copyright notice and license appear on all copies. This Specification is supplied 'as is', and Nokia makes no warranty, either express or implied, as to the use, operation, condition, or performance of the Specification." -- -- Revision History -- REVISION "202009250000Z" DESCRIPTION "Changed DEFVAL of the following from 5 to 30 per IEEE802.1AB-2009 standard for lldpV2NotificationInterval: tnLldpNotificationInterval." REVISION "201904190000Z" DESCRIPTION "Added the following to the tnLldpStatsRxPortTable: tnLldpStatsRxPortTtl." REVISION "201701130000Z" DESCRIPTION "Changed SYNTAX of the following from TimeStamp to Unsigned32: tnLldpStatsRemTablesLastChangeTime." REVISION "201612170000Z" DESCRIPTION "Updated the description of the following: tnLldpRemTimeMark tnLldpStatsRemTablesLastChangeTime." REVISION "201606210000Z" DESCRIPTION "Added two MIB tables tnLldpRemPortIndexTable tnLldpRemManAddrPortIndexTable." REVISION "201603050000Z" DESCRIPTION "Added MIB support for TN-LLDP-MIB." REVISION "201602230000Z" -- 23 Feb 2016 00:00 DESCRIPTION "Initial version of the TN-LLDP-MIB, corresponding to Rev 7.0 of TIMETRA-LLDP-MIB." ::= { tnSRMIBModules 59 } tnLldpNotifications OBJECT IDENTIFIER ::= { tnSRNotifyPrefix 59 } tnLldpObjects OBJECT IDENTIFIER ::= { tnSRObjs 59 } -- tnLldpConformance OBJECT IDENTIFIER ::= { tnSRConfs 59 } tnLldpConfiguration OBJECT IDENTIFIER ::= { tnLldpObjects 1 } tnLldpStatistics OBJECT IDENTIFIER ::= { tnLldpObjects 2 } tnLldpLocalSystemData OBJECT IDENTIFIER ::= { tnLldpObjects 3 } tnLldpRemoteSystemsData OBJECT IDENTIFIER ::= { tnLldpObjects 4 } --%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -- -- TIMETRA-LLDP-MIB Textual Conventions -- TmnxLldpDestAddressTableIndex ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "An index value, used as the index to the table of destination MAC addresses used both as the destination addresses on transmitted LLDPDUs and on received LLDPDUs. This index value is also used as a secondary index value in tables indexed by fields of type ifIndex, in order to associate a destination address with each row of the table." SYNTAX Integer32 (1..4096) TmnxLldpManAddressIndex ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "An Index value, used as the index to the table of local port management addresses, tnLldpConfigManAddrPortsTable. The index represents a specific local management address application on the system which may, or may not exist." SYNTAX INTEGER { system (1) } --%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -- -- TN-LLDP-MIB Configuration -- --================================================== -- tnLldpConfigTable -- -- LLDP configuration indexed on a tnSysSwitchId basis. -- tnLldpConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table that controls LLDP agent configuration information." ::= { tnLldpConfiguration 1 } tnLldpConfigEntry OBJECT-TYPE SYNTAX TnLldpConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "LLDP agent configuration information. The content of this table is persistent across re-initializations or re-boots." INDEX { tnSysSwitchId } ::= { tnLldpConfigTable 1 } TnLldpConfigEntry ::= SEQUENCE { tnLldpMessageTxInterval Integer32, tnLldpMessageTxHoldMultiplier Integer32, tnLldpReinitDelay Integer32, tnLldpTxDelay Integer32, tnLldpNotificationInterval Integer32, tnLldpTxCreditMax Integer32, tnLldpMessageFastTx Integer32, tnLldpMessageFastTxInit Integer32, tnLldpAdminStatus TmnxEnabledDisabled } tnLldpMessageTxInterval OBJECT-TYPE SYNTAX Integer32(5..32768) UNITS "seconds" MAX-ACCESS read-write STATUS current DESCRIPTION "The interval at which LLDP frames are transmitted on behalf of this LLDP agent. The default value for tnLldpMessageTxInterval object is 30 seconds. The value of this object must be restored from non-volatile storage after a re-initialization of the management system." REFERENCE "IEEE 802.1AB-2005 10.5.3.3" DEFVAL { 30 } ::= { tnLldpConfigEntry 1 } tnLldpMessageTxHoldMultiplier OBJECT-TYPE SYNTAX Integer32(2..10) MAX-ACCESS read-write STATUS current DESCRIPTION "The time-to-live value expressed as a multiple of the tnLldpMessageTxInterval object. The actual time-to-live value used in LLDP frames, transmitted on behalf of this LLDP agent, can be expressed by the following formula: TTL = min(65535, (tnLldpMessageTxInterval * tnLldpMessageTxHoldMultiplier)) For example, if the value of tnLldpMessageTxInterval is '30', and the value of tnLldpMessageTxHoldMultiplier is '4', then the value '120' is encoded in the TTL field in the LLDP header. The default value for tnLldpMessageTxHoldMultiplier object is 4. The value of this object must be restored from non-volatile storage after a re-initialization of the management system." REFERENCE "IEEE 802.1AB-2005 10.5.3.3" DEFVAL { 4 } ::= { tnLldpConfigEntry 2 } tnLldpReinitDelay OBJECT-TYPE SYNTAX Integer32(1..10) UNITS "seconds" MAX-ACCESS read-write STATUS current DESCRIPTION "The tnLldpReinitDelay indicates the delay (in units of seconds) from when tnLldpPortConfigAdminStatus object of a particular port becomes 'disabled' until re-initialization will be attempted. The default value for tnLldpReintDelay object is two seconds. The value of this object must be restored from non-volatile storage after a re-initialization of the management system." REFERENCE "IEEE 802.1AB-2005 10.5.3.3" DEFVAL { 2 } ::= { tnLldpConfigEntry 3 } tnLldpTxDelay OBJECT-TYPE SYNTAX Integer32(1..8192) UNITS "seconds" MAX-ACCESS read-write STATUS current DESCRIPTION "The tnLldpTxDelay indicates the delay (in units of seconds) between successive LLDP frame transmissions initiated by value/status changes in the LLDP local systems MIB. The recommended value for the tnLldpTxDelay is set by the following formula: 1 <= tnLldpTxDelay <= (0.25 * tnLldpMessageTxInterval) The default value for tnLldpTxDelay object is two seconds. The value of this object must be restored from non-volatile storage after a re-initialization of the management system." REFERENCE "IEEE 802.1AB-2005 10.5.3.3" DEFVAL { 2 } ::= { tnLldpConfigEntry 4 } tnLldpNotificationInterval OBJECT-TYPE SYNTAX Integer32(5..3600) UNITS "seconds" MAX-ACCESS read-write STATUS current DESCRIPTION "This object controls the transmission of LLDP notifications. the agent must not generate more than one lldpRemTablesChange notification-event in the indicated period, where a 'notification-event' is the transmission of a single notification PDU type to a list of notification destinations. If additional changes in tnLldpRemoteSystemsData object groups occur within the indicated throttling period, then these trap- events must be suppressed by the agent. An NMS should periodically check the value of tnLldpStatsRemTableLastChangeTime to detect any missed lldpRemTablesChange notification-events, e.g. due to throttling or transmission loss. If notification transmission is enabled for particular ports, the suggested default throttling period is 5 seconds. The value of this object must be restored from non-volatile storage after a re-initialization of the management system." DEFVAL { 30 } ::= { tnLldpConfigEntry 5 } tnLldpTxCreditMax OBJECT-TYPE SYNTAX Integer32 (1..100) MAX-ACCESS read-write STATUS current DESCRIPTION "The maximum number of consecutive LLDPDUs that can be transmitted at any time. The default value for tnLldpTxCreditMax object is 5. The value of this object must be restored from non-volatile storage after a re-initialization of the management system." REFERENCE "IEEE Std 802.1AB-200X 10.2.5.16" DEFVAL { 5 } ::= { tnLldpConfigEntry 6 } tnLldpMessageFastTx OBJECT-TYPE SYNTAX Integer32 (1..3600) UNITS "seconds" MAX-ACCESS read-write STATUS current DESCRIPTION "The interval at which LLDP frames are transmitted on behalf of this LLDP agent during fast transmission period (e.g. when a new neighbor is detected). The default value for tnLldpMessageFastTx object is 1 second. The value of this object must be restored from non-volatile storage after a re-initialization of the management system." REFERENCE "IEEE Std 802.1AB-200X 10.2.5.3" DEFVAL { 1 } ::= { tnLldpConfigEntry 7 } tnLldpMessageFastTxInit OBJECT-TYPE SYNTAX Integer32 (1..8) MAX-ACCESS read-write STATUS current DESCRIPTION "The tnLldpMessageFastTxInit specifies the number of PDUs to transmit during a fast transmission period." DEFVAL { 4 } ::= { tnLldpConfigEntry 8 } tnLldpAdminStatus OBJECT-TYPE SYNTAX TmnxEnabledDisabled MAX-ACCESS read-write STATUS current DESCRIPTION "The tnLldpAdminStatus specifies whether or not LLDP is operationally 'enabled(1)' on the system, or 'disabled(2).' This is a system-wide configuration and overrides the individual port admin status." ::= { tnLldpConfigEntry 9 } --================================================== -- tnLldpPortConfigTable -- -- LLDP configuration indexed on a per port, per destination -- address basis. The ifIndex is used as a means of indexing -- individual ports in the system; an index into the -- tnLldpPortCfgDestAddressIndex is used to index per address. -- tnLldpPortConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpPortConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table that controls LLDP frame transmission on individual ports and using particular destination MAC addresses." ::= { tnLldpConfiguration 2 } tnLldpPortConfigEntry OBJECT-TYPE SYNTAX TnLldpPortConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "LLDP configuration information for a particular port and destination MAC address. This configuration parameter controls the transmission and the reception of LLDP frames on those interface/address combinations whose rows are created in this table. Rows in this table can only be created for MAC addresses that can validly be used in association with the type of interface concerned, as defined by table 8-2. The contents of this table is persistent across re-initializations or re-boots." INDEX { tnPortPortID, tnLldpPortCfgDestAddressIndex } ::= { tnLldpPortConfigTable 1 } TnLldpPortConfigEntry ::= SEQUENCE { tnLldpPortCfgDestAddressIndex TmnxLldpDestAddressTableIndex, tnLldpPortCfgAdminStatus INTEGER, tnLldpPortCfgNotifyEnable TruthValue, tnLldpPortCfgTLVsTxEnable BITS } tnLldpPortCfgDestAddressIndex OBJECT-TYPE SYNTAX TmnxLldpDestAddressTableIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index value used to identify the destination MAC address associated with this entry. Its value identifies the row in the tnLldpPortConfigTable where the MAC address can be found." ::= { tnLldpPortConfigEntry 1 } tnLldpPortCfgAdminStatus OBJECT-TYPE SYNTAX INTEGER { txOnly (1), rxOnly (2), txAndRx (3), disabled (4) } MAX-ACCESS read-write STATUS current DESCRIPTION "The administratively desired status of the local LLDP agent. If the associated tnLldpPortCfgAdminStatus object has a value of 'txOnly(1)', then LLDP agent will transmit LLDP frames on this port and it will not store any information about the remote systems connected. If the associated tnLldpPortCfgAdminStatus object has a value of 'rxOnly(2)', then the LLDP agent will receive, but it will not transmit LLDP frames on this port. If the associated tnLldpPortCfgAdminStatus object has a value of 'txAndRx(3)', then the LLDP agent will transmit and receive LLDP frames on this port. If the associated tnLldpPortCfgAdminStatus object has a value of 'disabled(4)', then LLDP agent will not transmit or receive LLDP frames on this port. If there is remote systems information which is received on this port and stored in other tables, before the port's tnLldpPortCfgAdminStatus becomes disabled, then the information will naturally age out." REFERENCE "IEEE 802.1AB-2005 10.5.1" DEFVAL { disabled } ::= { tnLldpPortConfigEntry 2 } tnLldpPortCfgNotifyEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "The tnLldpPortCfgNotifyEnable controls, on a per port basis, whether or not notifications from the agent are enabled. The value true(1) means that notifications are enabled; the value false(2) means that they are not." DEFVAL { false } ::= { tnLldpPortConfigEntry 3 } tnLldpPortCfgTLVsTxEnable OBJECT-TYPE SYNTAX BITS { portDesc (0), sysName (1), sysDesc (2), sysCap (3) } MAX-ACCESS read-write STATUS current DESCRIPTION "The tnLldpPortCfgTLVsTxEnable, defined as a bitmap, includes the basic set of LLDP TLVs whose transmission is allowed on the local LLDP agent by the network management. Each bit in the bitmap corresponds to a TLV type associated with a specific optional TLV. It should be noted that the organizationally-specific TLVs are excluded from the tnLldpPortCfgTLVsTxEnable bitmap. LLDP Organization Specific Information Extension MIBs should have similar configuration object to control transmission of their organizationally defined TLVs. The bit 'portDesc(0)' indicates that LLDP agent should transmit 'Port Description TLV'. The bit 'sysName(1)' indicates that LLDP agent should transmit 'System Name TLV'. The bit 'sysDesc(2)' indicates that LLDP agent should transmit 'System Description TLV'. The bit 'sysCap(3)' indicates that LLDP agent should transmit 'System Capabilities TLV'. There is no bit reserved for the management address TLV type since transmission of management address TLVs are controlled by another object. The default value for tnLldpPortCfgTLVsTxEnable object is empty set, which means no enumerated values are set. The value of this object must be restored from non-volatile storage after a re-initialization of the management system." REFERENCE "IEEE 802.1AB-2005 10.2.1.1" DEFVAL { { } } ::= { tnLldpPortConfigEntry 4 } --================================================== -- tnLldpConfigManAddrPortsTable -- -- LLDP configuration on a per port/per ManAddr basis. -- tnLldpConfigManAddrPortsTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpConfigManAddrPortsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table that controls selection of LLDP management address TLV instances to be transmitted on individual ports." ::= { tnLldpConfiguration 3 } tnLldpConfigManAddrPortsEntry OBJECT-TYPE SYNTAX TnLldpConfigManAddrPortsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "LLDP configuration information that specifies the set of ports on which the local system management address instance will be transmitted. This configuration object joins the tnLldpPortConfigTable and the tnLldpLocManAddrTable. An entry exists for each Port/Management address in the system. Rows are auto-created by the system when ports are provisioned." INDEX { tnPortPortID, tnLldpPortCfgDestAddressIndex, tnLldpPortCfgAddressIndex } ::= { tnLldpConfigManAddrPortsTable 1 } TnLldpConfigManAddrPortsEntry ::= SEQUENCE { tnLldpPortCfgAddressIndex TmnxLldpManAddressIndex, tnLldpPortCfgManAddrTxEnabled TmnxEnabledDisabled, tnLldpPortCfgManAddrSubtype AddressFamilyNumbers, tnLldpPortCfgManAddress LldpManAddress } tnLldpPortCfgAddressIndex OBJECT-TYPE SYNTAX TmnxLldpManAddressIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The tnLldpPortCfgAddressIndex represents the system man address associated with a particular row in the tnLldpConfigManAddrPortsTable." ::= { tnLldpConfigManAddrPortsEntry 1 } tnLldpPortCfgManAddrTxEnabled OBJECT-TYPE SYNTAX TmnxEnabledDisabled MAX-ACCESS read-write STATUS current DESCRIPTION "The tnLldpPortCfgManAddrTxEnabled specifies whether the port and MAC address will transmit the managment address information." DEFVAL { disabled } ::= { tnLldpConfigManAddrPortsEntry 2 } tnLldpPortCfgManAddrSubtype OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS read-only STATUS current DESCRIPTION "The tnLldpPortCfgManAddrSubtype indicates the management address representation in the tnLldpPortCfgManAddress object. The value of 'other (0)' indicates that no management address is in use." ::= { tnLldpConfigManAddrPortsEntry 3 } tnLldpPortCfgManAddress OBJECT-TYPE SYNTAX LldpManAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The tnLldpPortCfgManAddress indicates the management address used by the tnLldpPortCfgAddressIndex." ::= { tnLldpConfigManAddrPortsEntry 4 } --================================================== -- tnLldpDestAddressTable -- -- Destination MAC addresses used by LLDP -- tnLldpDestAddressTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpDestAddressTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table that contains the set of MAC addresses used by LLDP for transmission and reception of LLDPDUs." ::= { tnLldpConfiguration 4 } tnLldpDestAddressTableEntry OBJECT-TYPE SYNTAX TnLldpDestAddressTableEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Destination MAC address information for LLDP. This configuration parameter identifies a MAC address corresponding to a TmnxLldpDestAddressTableIndex value. Rows in this table are created as necessary, to support MAC addresses needed by other tables in the MIB that are indexed by MAC address. A given row in this table cannot be deleted if the MAC address table index value is in use in any other table in the MIB. The contents of this table is persistent across re-initializations or re-boots." INDEX { tnSysSwitchId, tnLldpAddressTableIndex } ::= { tnLldpDestAddressTable 1 } TnLldpDestAddressTableEntry ::= SEQUENCE { tnLldpAddressTableIndex TmnxLldpDestAddressTableIndex, tnLldpDestMacAddress MacAddress } tnLldpAddressTableIndex OBJECT-TYPE SYNTAX TmnxLldpDestAddressTableIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index value used to identify the destination MAC address associated with this entry. The value of this object is used as an index to the tnLldpDestAddressTable." ::= { tnLldpDestAddressTableEntry 1 } tnLldpDestMacAddress OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The MAC address associated with this entry. The octet string identifies an individual or a group MAC address that is in use by LLDP as a destination MAC address. The MAC address is encoded in the octet string in canonical format (see IEEE Std 802)." ::= { tnLldpDestAddressTableEntry 2 } --================================================== -- tnLldpStatsTxPortTable -- -- TX statistics -- revised LLDP version indexed by port (via tnPortPortID) and -- destination address. -- tnLldpStatsTxPortTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpStatsTxPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table containing LLDP transmission statistics for individual port/destination address combinations. Entries are not required to exist in this table while the tnLldpPortConfigEntry object is equal to 'disabled(4)'." ::= { tnLldpStatistics 1 } tnLldpStatsTxPortEntry OBJECT-TYPE SYNTAX TnLldpStatsTxPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "LLDP frame transmission statistics for a particular port and destination MAC address. The port must be contained in the same chassis as the LLDP agent. All counter values in a particular entry shall be maintained on a continuing basis and shall not be deleted upon expiration of rx Info TTL timing counters in the LLDP remote systems MIB of the receipt of a shutdown frame from a remote LLDP agent. All statistical counters associated with a particular port on the local LLDP agent become frozen whenever the admin status is disabled for the same port. Rows in this table can only be created for MAC addresses that can validly be used in association with the type of interface concerned, as defined by table 8-2. The contents of this table is persistent across re-initializations or re-boots." INDEX { tnPortPortID, tnLldpStatsTxDestMACAddress } ::= { tnLldpStatsTxPortTable 1 } TnLldpStatsTxPortEntry ::= SEQUENCE { tnLldpStatsTxDestMACAddress TmnxLldpDestAddressTableIndex, tnLldpStatsTxPortFrames Counter32, tnLldpStatsTxLLDPDULengthErrs Counter32 } tnLldpStatsTxDestMACAddress OBJECT-TYPE SYNTAX TmnxLldpDestAddressTableIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index value used to identify the destination MAC address associated with this entry. Its value identifies the row in the tnLldpPortConfigTable where the MAC address can be found. The value of this object is used as an index to the tnLldpStatsTxPortTable." ::= { tnLldpStatsTxPortEntry 1 } tnLldpStatsTxPortFrames OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of LLDP frames transmitted by this LLDP agent on the indicated port." REFERENCE "IEEE Std 802.1AB-200X 10.5.2" ::= { tnLldpStatsTxPortEntry 2 } tnLldpStatsTxLLDPDULengthErrs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of LLDPD Length Errors recorded for the Port." REFERENCE "IEEE Std 802.1AB-200X 10.2.7.2" ::= { tnLldpStatsTxPortEntry 3 } --================================================== -- tnLldpStatsRemTable -- -- RX statistics index on tnSysSwitchId basis. -- tnLldpStatsRemTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpStatsRemEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table that stores LLDP RX stats for remote systems." ::= { tnLldpStatistics 2 } tnLldpStatsRemEntry OBJECT-TYPE SYNTAX TnLldpStatsRemEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "LLDP RX stats for remote systems." INDEX { tnSysSwitchId } ::= { tnLldpStatsRemTable 1 } TnLldpStatsRemEntry ::= SEQUENCE { tnLldpStatsRemTablesLastChangeTime Unsigned32, tnLldpStatsRemTablesInserts ZeroBasedCounter32, tnLldpStatsRemTablesDeletes ZeroBasedCounter32, tnLldpStatsRemTablesDrops ZeroBasedCounter32, tnLldpStatsRemTablesAgeouts ZeroBasedCounter32 } tnLldpStatsRemTablesLastChangeTime OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime object (defined in IETF RFC 3418) at the time an entry is created, modified, or deleted in the in tables associated with the tnLldpRemoteSystemsData objects and all LLDP extension objects associated with remote systems. This attribute is the number of seconds since Unix Epoch time (ie, 1 January 1970 00:00:00), not the number of ticks since the LC card is up. An NMS can use this object to reduce polling of the tnLldpRemoteSystemsData objects." ::= { tnLldpStatsRemEntry 1 } tnLldpStatsRemTablesInserts OBJECT-TYPE SYNTAX ZeroBasedCounter32 UNITS "table entries" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of times the complete set of information advertised by a particular MSAP has been inserted into tables contained in tnLldpRemoteSystemsData and lldpExtensions objects. The complete set of information received from a particular MSAP should be inserted into related tables. If partial information cannot be inserted for a reason such as lack of resources, all of the complete set of information should be removed. This counter should be incremented only once after the complete set of information is successfully recorded in all related tables. Any failures during inserting information set which result in deletion of previously inserted information should not trigger any changes in tnLldpStatsRemTablesInserts since the insert is not completed yet or or in tnLldpStatsRemTablesDeletes, since the deletion would only be a partial deletion. If the failure was the result of lack of resources, the tnLldpStatsRemTablesDrops counter should be incremented once." ::= { tnLldpStatsRemEntry 2 } tnLldpStatsRemTablesDeletes OBJECT-TYPE SYNTAX ZeroBasedCounter32 UNITS "table entries" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of times the complete set of information advertised by a particular MSAP has been deleted from tables contained in tnLldpRemoteSystemsData and lldpExtensions objects. This counter should be incremented only once when the complete set of information is completely deleted from all related tables. Partial deletions, such as deletion of rows associated with a particular MSAP from some tables, but not from all tables are not allowed, thus should not change the value of this counter." ::= { tnLldpStatsRemEntry 3 } tnLldpStatsRemTablesDrops OBJECT-TYPE SYNTAX ZeroBasedCounter32 UNITS "table entries" MAX-ACCESS read-only STATUS current DESCRIPTION "The number of times the complete set of information advertised by a particular MSAP could not be entered into tables contained in tnLldpRemoteSystemsData and lldpExtensions objects because of insufficient resources." ::= { tnLldpStatsRemEntry 4 } tnLldpStatsRemTablesAgeouts OBJECT-TYPE SYNTAX ZeroBasedCounter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of times the complete set of information advertised by a particular MSAP has been deleted from tables contained in tnLldpRemoteSystemsData and lldpExtensions objects because the information timeliness interval has expired. This counter should be incremented only once when the complete set of information is completely invalidated (aged out) from all related tables. Partial aging, similar to deletion case, is not allowed, and thus, should not change the value of this counter." ::= { tnLldpStatsRemEntry 5 } --================================================== -- tnLldpStatsRxPortTable -- -- RX statistics -- This version is indexed by tnPortPortID and destination -- MAC address. -- tnLldpStatsRxPortTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpStatsRxPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table containing LLDP reception statistics for individual ports and destination MAC addresses. Entries are not required to exist in this table while the tnLldpPortCfgAdminStatus object is equal to 'disabled(4)'." ::= { tnLldpStatistics 3 } tnLldpStatsRxPortEntry OBJECT-TYPE SYNTAX TnLldpStatsRxPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "LLDP frame reception statistics for a particular port. The port must be contained in the same chassis as the LLDP agent. All counter values in a particular entry shall be maintained on a continuing basis and shall not be deleted upon expiration of rx Info TTL timing counters in the LLDP remote systems MIB of the receipt of a shutdown frame from a remote LLDP agent. All statistical counters associated with a particular port on the local LLDP agent become frozen whenever the admin status is disabled for the same port. Rows in this table can only be created for MAC addresses that can validly be used in association with the type of interface concerned, as defined by table 8-2. The contents of this table is persistent across re-initializations or re-boots." INDEX { tnPortPortID, tnLldpStatsRxDestMACAddress } ::= { tnLldpStatsRxPortTable 1 } TnLldpStatsRxPortEntry ::= SEQUENCE { tnLldpStatsRxDestMACAddress TmnxLldpDestAddressTableIndex, tnLldpStatsRxPortFrameDiscard Counter32, tnLldpStatsRxPortFrameErrs Counter32, tnLldpStatsRxPortFrames Counter32, tnLldpStatsRxPortTLVDiscard Counter32, tnLldpStatsRxPortTLVUnknown Counter32, tnLldpStatsRxPortAgeouts ZeroBasedCounter32, tnLldpStatsRxPortTtl Unsigned32 } tnLldpStatsRxDestMACAddress OBJECT-TYPE SYNTAX TmnxLldpDestAddressTableIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index value used to identify the destination MAC address associated with this entry. Its value identifies the row in the tnLldpStatsRxPortTable where the MAC address can be found." ::= { tnLldpStatsRxPortEntry 1 } tnLldpStatsRxPortFrameDiscard OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of LLDP frames received by this LLDP agent on the indicated port, and then discarded for any reason. This counter can provide an indication that LLDP header formating problems may exist with the local LLDP agent in the sending system or that LLDPDU validation problems may exist with the local LLDP agent in the receiving system." REFERENCE "IEEE Std 802.1AB-200X 10.5.2" ::= { tnLldpStatsRxPortEntry 2 } tnLldpStatsRxPortFrameErrs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of invalid LLDP frames received by this LLDP agent on the indicated port, while this LLDP agent is enabled." REFERENCE "IEEE Std 802.1AB-200X 10.5.2" ::= { tnLldpStatsRxPortEntry 3 } tnLldpStatsRxPortFrames OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of valid LLDP frames received by this LLDP agent on the indicated port, while this LLDP agent is enabled." REFERENCE "IEEE Std 802.1AB-200X 10.5.2" ::= { tnLldpStatsRxPortEntry 4 } tnLldpStatsRxPortTLVDiscard OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of LLDP TLVs discarded for any reason by this LLDP agent on the indicated port." REFERENCE "IEEE Std 802.1AB-200X 10.5.2" ::= { tnLldpStatsRxPortEntry 5 } tnLldpStatsRxPortTLVUnknown OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of LLDP TLVs received on the given port that are not recognized by this LLDP agent on the indicated port. An unrecognized TLV is referred to as the TLV whose type value is in the range of reserved TLV types (000 1001 - 111 1110) in Table 9.1 of IEEE Std 802.1AB-2004. An unrecognized TLV may be a basic management TLV from a later LLDP version." REFERENCE "IEEE Std 802.1AB-200X 10.5.2" ::= { tnLldpStatsRxPortEntry 6 } tnLldpStatsRxPortAgeouts OBJECT-TYPE SYNTAX ZeroBasedCounter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The counter that represents the number of age-outs that occurred on a given port. An age-out is the number of times the complete set of information advertised by a particular MSAP has been deleted from tables contained in tnLldpRemoteSystemsData and lldpExtensions objects because the information timeliness interval has expired. This counter is similar to tnLldpStatsRemTablesAgeouts, except that the counter is on a per port basis. This enables NMS to poll tables associated with the tnLldpRemoteSystemsData objects and all LLDP extension objects associated with remote systems on the indicated port only. This counter should be set to zero during agent initialization and its value should not be saved in non-volatile storage. When a port's admin status changes from 'disabled' to 'rxOnly', 'txOnly' or 'txAndRx', the counter associated with the same port should reset to 0. The agent should also flush all remote system information associated with the same port. This counter should be incremented only once when the complete set of information is invalidated (aged out) from all related tables on a particular port. Partial ageing is not allowed, and thus, should not change the value of this counter." REFERENCE "IEEE Std 802.1AB-200X 10.5.2" ::= { tnLldpStatsRxPortEntry 7 } tnLldpStatsRxPortTtl OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The last Time-To-Live (TTL) value that was received for a configured destination MAC by this LLDP agent on the indicated port,while this LLDP agent is enabled." REFERENCE "IEEE Std 802.1AB-200X 10.5.2" ::= { tnLldpStatsRxPortEntry 8 } --%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -- -- TN-LLDP-MIB Local System Data -- --================================================== -- tnLldpLocSysDataTable -- -- Local system data table indexed by tnSysSwitchId -- tnLldpLocSysDataTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpLocSysDataEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The table that stores LLDP local system data." ::= { tnLldpLocalSystemData 1 } tnLldpLocSysDataEntry OBJECT-TYPE SYNTAX TnLldpLocSysDataEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "LLDP local system data." INDEX { tnSysSwitchId } ::= { tnLldpLocSysDataTable 1 } TnLldpLocSysDataEntry ::= SEQUENCE { tnLldpLocChassisIdSubtype LldpChassisIdSubtype, tnLldpLocChassisId LldpChassisId, tnLldpLocSysName SnmpAdminString, tnLldpLocSysDesc SnmpAdminString, tnLldpLocSysCapSupported LldpSystemCapabilitiesMap, tnLldpLocSysCapEnabled LldpSystemCapabilitiesMap } tnLldpLocChassisIdSubtype OBJECT-TYPE SYNTAX LldpChassisIdSubtype MAX-ACCESS read-only STATUS current DESCRIPTION "The type of encoding used to identify the chassis associated with the local system." REFERENCE "IEEE 802.1AB-2005 9.5.2.2" ::= { tnLldpLocSysDataEntry 1 } tnLldpLocChassisId OBJECT-TYPE SYNTAX LldpChassisId MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the chassis component associated with the local system." REFERENCE "IEEE 802.1AB-2005 9.5.2.3" ::= { tnLldpLocSysDataEntry 2 } tnLldpLocSysName OBJECT-TYPE SYNTAX SnmpAdminString (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the system name of the local system. If the local agent supports IETF RFC 3418, tnLldpLocSysName object should have the same value of sysName object." REFERENCE "IEEE 802.1AB-2005 9.5.6.2" ::= { tnLldpLocSysDataEntry 3 } tnLldpLocSysDesc OBJECT-TYPE SYNTAX SnmpAdminString (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the system description of the local system. If the local agent supports IETF RFC 3418, tnLldpLocSysDesc object should have the same value of sysDesc object." REFERENCE "IEEE 802.1AB-2005 9.5.7.2" ::= { tnLldpLocSysDataEntry 4 } tnLldpLocSysCapSupported OBJECT-TYPE SYNTAX LldpSystemCapabilitiesMap MAX-ACCESS read-only STATUS current DESCRIPTION "The bitmap value used to identify which system capabilities are supported on the local system." REFERENCE "IEEE 802.1AB-2005 9.5.8.1" ::= { tnLldpLocSysDataEntry 5 } tnLldpLocSysCapEnabled OBJECT-TYPE SYNTAX LldpSystemCapabilitiesMap MAX-ACCESS read-only STATUS current DESCRIPTION "The bitmap value used to identify which system capabilities are enabled on the local system." REFERENCE "IEEE 802.1AB-2005 9.5.8.2" ::= { tnLldpLocSysDataEntry 6 } --================================================== -- tnLldpLocPortTable -- -- Port specific Local system data -- New version of the local system data table indexed -- by tnPortPortID and destination MAC address. -- tnLldpLocPortTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpLocPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains one or more rows, per port and destination MAC address, of information associated with the local system known to this agent." ::= { tnLldpLocalSystemData 2 } tnLldpLocPortEntry OBJECT-TYPE SYNTAX TnLldpLocPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about a particular port component. Entries may be created and deleted in this table by the agent. Rows in this table can only be created for MAC addresses that can validly be used in association with the type of interface concerned, as defined by table 8-2. The contents of this table is persistent across re-initializations or re-boots." INDEX { tnPortPortID, tnLldpLocPortDestMACAddress } ::= { tnLldpLocPortTable 1 } TnLldpLocPortEntry ::= SEQUENCE { tnLldpLocPortDestMACAddress TmnxLldpDestAddressTableIndex, tnLldpLocPortIdSubtype LldpPortIdSubtype, tnLldpLocPortId LldpPortId, tnLldpLocPortDesc SnmpAdminString } tnLldpLocPortDestMACAddress OBJECT-TYPE SYNTAX TmnxLldpDestAddressTableIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index value used to identify the destination MAC address associated with this entry. Its value identifies the row in the tnLldpLocPortTable where the MAC address can be found." ::= { tnLldpLocPortEntry 1 } tnLldpLocPortIdSubtype OBJECT-TYPE SYNTAX LldpPortIdSubtype MAX-ACCESS read-only STATUS current DESCRIPTION "The type of port identifier encoding used in the associated 'tnLldpLocPortId' object." REFERENCE "IEEE Std 802.1AB-200X 9.5.3.2" ::= { tnLldpLocPortEntry 2 } tnLldpLocPortId OBJECT-TYPE SYNTAX LldpPortId MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the port component associated with a given port in the local system." REFERENCE "IEEE Std 802.1AB-200X 9.5.3.3" ::= { tnLldpLocPortEntry 3 } tnLldpLocPortDesc OBJECT-TYPE SYNTAX SnmpAdminString (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the IEEE 802 LAN station's port description associated with the local system. If the local agent supports IETF RFC 2863, tnLldpLocPortDesc object should have the same value of ifDescr object." REFERENCE "IEEE Std 802.1AB-200X 9.5.5.2" ::= { tnLldpLocPortEntry 4 } --================================================== -- tnLldpLocManAddrTable : Management addresses of the local system -- tnLldpLocManAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpLocManAddrEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains management address information on the local system known to this agent." ::= { tnLldpLocalSystemData 3 } tnLldpLocManAddrEntry OBJECT-TYPE SYNTAX TnLldpLocManAddrEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Management address information about a particular chassis component. There may be multiple management addresses configured on the system identified by a particular tnLldpLocChassisId. Each management address should have distinct 'management address type' (tnLldpLocManAddrSubtype) and 'management address' (tnLldpLocManAddr.) Entries may be created and deleted in this table by the agent." INDEX { tnSysSwitchId, tnLldpLocManAddrSubtype, tnLldpLocManAddr } ::= { tnLldpLocManAddrTable 1 } TnLldpLocManAddrEntry ::= SEQUENCE { tnLldpLocManAddrSubtype AddressFamilyNumbers, tnLldpLocManAddr LldpManAddress, tnLldpLocManAddrLen Integer32, tnLldpLocManAddrIfSubtype LldpManAddrIfSubtype, tnLldpLocManAddrIfId Integer32, tnLldpLocManAddrOID OBJECT IDENTIFIER } tnLldpLocManAddrSubtype OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS not-accessible STATUS current DESCRIPTION "The type of management address identifier encoding used in the associated 'tnLldpLocManagmentAddr' object." REFERENCE "IEEE 802.1AB-2005 9.5.9.3" ::= { tnLldpLocManAddrEntry 1 } tnLldpLocManAddr OBJECT-TYPE SYNTAX LldpManAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The string value used to identify the management address component associated with the local system. The purpose of this address is to contact the management entity." REFERENCE "IEEE 802.1AB-2005 9.5.9.4" ::= { tnLldpLocManAddrEntry 2 } tnLldpLocManAddrLen OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total length of the management address subtype and the management address fields in LLDPDUs transmitted by the local LLDP agent. The management address length field is needed so that the receiving systems that do not implement SNMP will not be required to implement an iana family numbers/address length equivalency table in order to decode the management adress." REFERENCE "IEEE 802.1AB-2005 9.5.9.2" ::= { tnLldpLocManAddrEntry 3 } tnLldpLocManAddrIfSubtype OBJECT-TYPE SYNTAX LldpManAddrIfSubtype MAX-ACCESS read-only STATUS current DESCRIPTION "The enumeration value that identifies the interface numbering method used for defining the interface number, associated with the local system." REFERENCE "IEEE 802.1AB-2005 9.5.9.5" ::= { tnLldpLocManAddrEntry 4 } tnLldpLocManAddrIfId OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The integer value used to identify the interface number regarding the management address component associated with the local system." REFERENCE "IEEE 802.1AB-2005 9.5.9.6" ::= { tnLldpLocManAddrEntry 5 } tnLldpLocManAddrOID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-only STATUS current DESCRIPTION "The OID value used to identify the type of hardware component or protocol entity associated with the management address advertised by the local system agent." REFERENCE "IEEE 802.1AB-2005 9.5.9.8" ::= { tnLldpLocManAddrEntry 6 } --%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -- -- TN-LLDP-MIB Remote System Data -- -- This version of the remote systems data table includes an additional index -- to allow data to be recorded per tnPortPortID and destination MAC address --================================================== -- tnLldpRemTable -- -- tnLldpRemTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpRemEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains one or more rows per physical network connection known to this agent. The agent may wish to ensure that only one tnLldpRemEntry is present for each local port and destination MAC address, or it may choose to maintain multiple tnLldpRemEntry rows for the same local port and destination MAC address. The following procedure may be used to retrieve remote systems information updates from an LLDP agent: 1. NMS polls all tables associated with remote systems and keeps a local copy of the information retrieved. NMS polls periodically the values of the following objects: a. tnLldpStatsRemTablesInserts b. tnLldpStatsRemTablesDeletes c. tnLldpStatsRemTablesDrops d. tnLldpStatsRemTablesAgeouts e. tnLldpStatsRxPortAgeouts for all ports. 2. LLDP agent updates remote systems MIB objects, and sends out notifications to a list of notification destinations. 3. NMS receives the notifications and compares the new values of objects listed in step 1. Periodically, NMS should poll the object tnLldpStatsRemTablesLastChangeTime to find out if anything has changed since the last poll. if something has changed, NMS will poll the objects listed in step 1 to figure out what kind of changes occurred in the tables. if value of tnLldpStatsRemTablesInserts has changed, then NMS will walk all tables by employing TimeFilter with the last-polled time value. This request will return new objects or objects whose values are updated since the last poll. if value of tnLldpStatsRemTablesAgeouts has changed, then NMS will walk the tnLldpStatsRxPortAgeouts and compare the new values with previously recorded ones. For ports whose tnLldpStatsRxPortAgeouts value is greater than the recorded value, NMS will have to retrieve objects associated with those ports from table(s) without employing a TimeFilter (which is performed by specifying 0 for the TimeFilter.) tnLldpStatsRemTablesDeletes and tnLldpStatsRemTablesDrops objects are provided for informational purposes." ::= { tnLldpRemoteSystemsData 1 } tnLldpRemEntry OBJECT-TYPE SYNTAX TnLldpRemEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about a particular physical network connection. Entries may be created and deleted in this table by the agent, if a physical topology discovery process is active. Rows in this table can only be created for MAC addresses that can validly be used in association with the type of interface concerned, as defined by table 8-2. The contents of this table is persistent across re-initializations or re-boots." INDEX { tnSysSwitchId, tnLldpRemTimeMark, tnPortPortID, tnLldpRemLocalDestMACAddress, tnLldpRemIndex } ::= { tnLldpRemTable 1 } TnLldpRemEntry ::= SEQUENCE { tnLldpRemTimeMark TimeFilter, tnLldpRemLocalDestMACAddress TmnxLldpDestAddressTableIndex, tnLldpRemIndex Integer32, tnLldpRemChassisIdSubtype LldpChassisIdSubtype, tnLldpRemChassisId LldpChassisId, tnLldpRemPortIdSubtype LldpPortIdSubtype, tnLldpRemPortId LldpPortId, tnLldpRemPortDesc SnmpAdminString, tnLldpRemSysName SnmpAdminString, tnLldpRemSysDesc SnmpAdminString, tnLldpRemSysCapSupported LldpSystemCapabilitiesMap, tnLldpRemSysCapEnabled LldpSystemCapabilitiesMap } tnLldpRemTimeMark OBJECT-TYPE SYNTAX TimeFilter MAX-ACCESS not-accessible STATUS current DESCRIPTION "A TimeFilter for this entry. See the TimeFilter textual convention in IETF RFC 4502 and http://www.ietf.org/IESG/Implementations/RFC2021-Implementation.txt to see how TimeFilter works. This attribute is the number of seconds since Unix Epoch time (ie, 1 January 1970 00:00:00), not the number of ticks since the LC card is up. " REFERENCE "IETF RFC 4502 section 6" ::= { tnLldpRemEntry 1 } tnLldpRemLocalDestMACAddress OBJECT-TYPE SYNTAX TmnxLldpDestAddressTableIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index value used to identify the destination MAC address associated with this entry. Its value identifies the row in the tnLldpRemTable where the MAC address can be found." ::= { tnLldpRemEntry 2 } tnLldpRemIndex OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object represents an arbitrary local integer value used by this agent to identify a particular connection instance, unique only for the indicated remote system. An agent is encouraged to assign monotonically increasing index values to new entries, starting with one, after each reboot. It is considered unlikely that the tnLldpRemIndex will wrap between reboots." ::= { tnLldpRemEntry 3 } tnLldpRemChassisIdSubtype OBJECT-TYPE SYNTAX LldpChassisIdSubtype MAX-ACCESS read-only STATUS current DESCRIPTION "The type of encoding used to identify the chassis associated with the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.2.2" ::= { tnLldpRemEntry 4 } tnLldpRemChassisId OBJECT-TYPE SYNTAX LldpChassisId MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the chassis component associated with the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.2.3" ::= { tnLldpRemEntry 5 } tnLldpRemPortIdSubtype OBJECT-TYPE SYNTAX LldpPortIdSubtype MAX-ACCESS read-only STATUS current DESCRIPTION "The type of port identifier encoding used in the associated 'tnLldpRemPortId' object." REFERENCE "IEEE Std 802.1AB-200X 9.5.3.2" ::= { tnLldpRemEntry 6 } tnLldpRemPortId OBJECT-TYPE SYNTAX LldpPortId MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the port component associated with the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.3.3" ::= { tnLldpRemEntry 7 } tnLldpRemPortDesc OBJECT-TYPE SYNTAX SnmpAdminString (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the description of the given port associated with the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.5.2" ::= { tnLldpRemEntry 8 } tnLldpRemSysName OBJECT-TYPE SYNTAX SnmpAdminString (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the system name of the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.6.2" ::= { tnLldpRemEntry 9 } tnLldpRemSysDesc OBJECT-TYPE SYNTAX SnmpAdminString (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the system description of the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.7.2" ::= { tnLldpRemEntry 10 } tnLldpRemSysCapSupported OBJECT-TYPE SYNTAX LldpSystemCapabilitiesMap MAX-ACCESS read-only STATUS current DESCRIPTION "The bitmap value used to identify which system capabilities are supported on the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.8.1" ::= { tnLldpRemEntry 11 } tnLldpRemSysCapEnabled OBJECT-TYPE SYNTAX LldpSystemCapabilitiesMap MAX-ACCESS read-only STATUS current DESCRIPTION "The bitmap value used to identify which system capabilities are enabled on the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.8.2" ::= { tnLldpRemEntry 12 } --================================================== -- tnLldpRemManAddrTable -- -- Management addresses of the remote system -- tnLldpRemManAddrTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpRemManAddrEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains one or more rows per management address information on the remote system learned on a particular port contained in the local chassis known to this agent." ::= { tnLldpRemoteSystemsData 2 } tnLldpRemManAddrEntry OBJECT-TYPE SYNTAX TnLldpRemManAddrEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Management address information about a particular chassis component. There may be multiple management addresses configured on the remote system identified by a particular tnLldpRemIndex whose information is received on ifIndex and tnLldpRemLocalDestMACAddress of the local system. Each management address should have distinct 'management address type' (tnLldpRemManAddrSubtype) and 'management address' (tnLldpRemManAddr.) Entries may be created and deleted in this table by the agent." INDEX { tnSysSwitchId, tnLldpRemTimeMark, tnPortPortID, tnLldpRemLocalDestMACAddress, tnLldpRemIndex, tnLldpRemManAddrSubtype, tnLldpRemManAddr } ::= { tnLldpRemManAddrTable 1 } TnLldpRemManAddrEntry ::= SEQUENCE { tnLldpRemManAddrSubtype AddressFamilyNumbers, tnLldpRemManAddr LldpManAddress, tnLldpRemManAddrIfSubtype LldpManAddrIfSubtype, tnLldpRemManAddrIfId Integer32, tnLldpRemManAddrOID OBJECT IDENTIFIER } tnLldpRemManAddrSubtype OBJECT-TYPE SYNTAX AddressFamilyNumbers MAX-ACCESS not-accessible STATUS current DESCRIPTION "The type of management address identifier encoding used in the associated 'tnLldpRemManagmentAddr' object." REFERENCE "IEEE 802.1AB-2005 9.5.9.3" ::= { tnLldpRemManAddrEntry 1 } tnLldpRemManAddr OBJECT-TYPE SYNTAX LldpManAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The string value used to identify the management address component associated with the remote system. The purpose of this address is to contact the management entity." REFERENCE "IEEE 802.1AB-2005 9.5.9.4" ::= { tnLldpRemManAddrEntry 2 } tnLldpRemManAddrIfSubtype OBJECT-TYPE SYNTAX LldpManAddrIfSubtype MAX-ACCESS read-only STATUS current DESCRIPTION "The enumeration value that identifies the interface numbering method used for defining the interface number, associated with the remote system." REFERENCE "IEEE 802.1AB-2005 9.5.9.5" ::= { tnLldpRemManAddrEntry 3 } tnLldpRemManAddrIfId OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The integer value used to identify the interface number regarding the management address component associated with the remote system." REFERENCE "IEEE 802.1AB-2005 9.5.9.6" ::= { tnLldpRemManAddrEntry 4 } tnLldpRemManAddrOID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-only STATUS current DESCRIPTION "The OID value used to identify the type of hardware component or protocol entity associated with the management address advertised by the remote system agent." REFERENCE "IEEE 802.1AB-2005 9.5.9.8" ::= { tnLldpRemManAddrEntry 5 } --================================================== -- tnLldpRemPortIndexTable -- -- tnLldpRemPortIndexTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpRemPortIndexEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Note that this table is same as tnLldpRemTable except that the order of two indices tnLldpRemTimeMark and tnPortPortID are reversed. This table contains one or more rows per physical network connection known to this agent. The agent may wish to ensure that only one tnLldpRemEntry is present for each local port and destination MAC address, or it may choose to maintain multiple tnLldpRemEntry rows for the same local port and destination MAC address. The following procedure may be used to retrieve remote systems information updates from an LLDP agent: 1. NMS polls all tables associated with remote systems and keeps a local copy of the information retrieved. NMS polls periodically the values of the following objects: a. tnLldpStatsRemTablesInserts b. tnLldpStatsRemTablesDeletes c. tnLldpStatsRemTablesDrops d. tnLldpStatsRemTablesAgeouts e. tnLldpStatsRxPortAgeouts for all ports. 2. LLDP agent updates remote systems MIB objects, and sends out notifications to a list of notification destinations. 3. NMS receives the notifications and compares the new values of objects listed in step 1. Periodically, NMS should poll the object tnLldpStatsRemTablesLastChangeTime to find out if anything has changed since the last poll. if something has changed, NMS will poll the objects listed in step 1 to figure out what kind of changes occurred in the tables. if value of tnLldpStatsRemTablesInserts has changed, then NMS will walk all tables by employing TimeFilter with the last-polled time value. This request will return new objects or objects whose values are updated since the last poll. if value of tnLldpStatsRemTablesAgeouts has changed, then NMS will walk the tnLldpStatsRxPortAgeouts and compare the new values with previously recorded ones. For ports whose tnLldpStatsRxPortAgeouts value is greater than the recorded value, NMS will have to retrieve objects associated with those ports from table(s) without employing a TimeFilter (which is performed by specifying 0 for the TimeFilter.) tnLldpStatsRemTablesDeletes and tnLldpStatsRemTablesDrops objects are provided for informational purposes." ::= { tnLldpRemoteSystemsData 3 } tnLldpRemPortIndexEntry OBJECT-TYPE SYNTAX TnLldpRemPortIndexEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about a particular physical network connection. Entries may be created and deleted in this table by the agent, if a physical topology discovery process is active. Rows in this table can only be created for MAC addresses that can validly be used in association with the type of interface concerned, as defined by table 8-2. The contents of this table is persistent across re-initializations or re-boots." INDEX { tnSysSwitchId, tnPortPortID, tnLldpRemTimeMark, tnLldpRemLocalDestMACAddress, tnLldpRemIndex } ::= { tnLldpRemPortIndexTable 1 } TnLldpRemPortIndexEntry ::= SEQUENCE { tnLldpRemPortIndexChassisIdSubtype LldpChassisIdSubtype, tnLldpRemPortIndexChassisId LldpChassisId, tnLldpRemPortIndexPortIdSubtype LldpPortIdSubtype, tnLldpRemPortIndexPortId LldpPortId, tnLldpRemPortIndexPortDesc SnmpAdminString, tnLldpRemPortIndexSysName SnmpAdminString, tnLldpRemPortIndexSysDesc SnmpAdminString, tnLldpRemPortIndexSysCapSupported LldpSystemCapabilitiesMap, tnLldpRemPortIndexSysCapEnabled LldpSystemCapabilitiesMap } tnLldpRemPortIndexChassisIdSubtype OBJECT-TYPE SYNTAX LldpChassisIdSubtype MAX-ACCESS read-only STATUS current DESCRIPTION "The type of encoding used to identify the chassis associated with the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.2.2" ::= { tnLldpRemPortIndexEntry 1 } tnLldpRemPortIndexChassisId OBJECT-TYPE SYNTAX LldpChassisId MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the chassis component associated with the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.2.3" ::= { tnLldpRemPortIndexEntry 2 } tnLldpRemPortIndexPortIdSubtype OBJECT-TYPE SYNTAX LldpPortIdSubtype MAX-ACCESS read-only STATUS current DESCRIPTION "The type of port identifier encoding used in the associated 'tnLldpRemPortId' object." REFERENCE "IEEE Std 802.1AB-200X 9.5.3.2" ::= { tnLldpRemPortIndexEntry 3 } tnLldpRemPortIndexPortId OBJECT-TYPE SYNTAX LldpPortId MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the port component associated with the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.3.3" ::= { tnLldpRemPortIndexEntry 4 } tnLldpRemPortIndexPortDesc OBJECT-TYPE SYNTAX SnmpAdminString (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the description of the given port associated with the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.5.2" ::= { tnLldpRemPortIndexEntry 5 } tnLldpRemPortIndexSysName OBJECT-TYPE SYNTAX SnmpAdminString (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the system name of the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.6.2" ::= { tnLldpRemPortIndexEntry 6 } tnLldpRemPortIndexSysDesc OBJECT-TYPE SYNTAX SnmpAdminString (SIZE(0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The string value used to identify the system description of the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.7.2" ::= { tnLldpRemPortIndexEntry 7 } tnLldpRemPortIndexSysCapSupported OBJECT-TYPE SYNTAX LldpSystemCapabilitiesMap MAX-ACCESS read-only STATUS current DESCRIPTION "The bitmap value used to identify which system capabilities are supported on the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.8.1" ::= { tnLldpRemPortIndexEntry 8 } tnLldpRemPortIndexSysCapEnabled OBJECT-TYPE SYNTAX LldpSystemCapabilitiesMap MAX-ACCESS read-only STATUS current DESCRIPTION "The bitmap value used to identify which system capabilities are enabled on the remote system." REFERENCE "IEEE Std 802.1AB-200X 9.5.8.2" ::= { tnLldpRemPortIndexEntry 9 } --================================================== -- tnLldpRemManAddrPortIndexTable -- -- Management addresses of the remote system -- tnLldpRemManAddrPortIndexTable OBJECT-TYPE SYNTAX SEQUENCE OF TnLldpRemManAddrPortIndexEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Note that this table is same as tnLldpRemManAddrTable except that the order of two indices tnLldpRemTimeMark and tnPortPortID are reversed. This table contains one or more rows per management address information on the remote system learned on a particular port contained in the local chassis known to this agent." ::= { tnLldpRemoteSystemsData 4 } tnLldpRemManAddrPortIndexEntry OBJECT-TYPE SYNTAX TnLldpRemManAddrPortIndexEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Management address information about a particular chassis component. There may be multiple management addresses configured on the remote system identified by a particular tnLldpRemIndex whose information is received on ifIndex and tnLldpRemLocalDestMACAddress of the local system. Each management address should have distinct 'management address type' (tnLldpRemManAddrSubtype) and 'management address' (tnLldpRemManAddr.) Entries may be created and deleted in this table by the agent." INDEX { tnSysSwitchId, tnPortPortID, tnLldpRemTimeMark, tnLldpRemLocalDestMACAddress, tnLldpRemIndex, tnLldpRemManAddrSubtype, tnLldpRemManAddr } ::= { tnLldpRemManAddrPortIndexTable 1 } TnLldpRemManAddrPortIndexEntry ::= SEQUENCE { tnLldpRemManAddrPortIndexIfSubtype LldpManAddrIfSubtype, tnLldpRemManAddrPortIndexIfId Integer32, tnLldpRemManAddrPortIndexOID OBJECT IDENTIFIER } tnLldpRemManAddrPortIndexIfSubtype OBJECT-TYPE SYNTAX LldpManAddrIfSubtype MAX-ACCESS read-only STATUS current DESCRIPTION "The enumeration value that identifies the interface numbering method used for defining the interface number, associated with the remote system." REFERENCE "IEEE 802.1AB-2005 9.5.9.5" ::= { tnLldpRemManAddrPortIndexEntry 1 } tnLldpRemManAddrPortIndexIfId OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The integer value used to identify the interface number regarding the management address component associated with the remote system." REFERENCE "IEEE 802.1AB-2005 9.5.9.6" ::= { tnLldpRemManAddrPortIndexEntry 2 } tnLldpRemManAddrPortIndexOID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-only STATUS current DESCRIPTION "The OID value used to identify the type of hardware component or protocol entity associated with the management address advertised by the remote system agent." REFERENCE "IEEE 802.1AB-2005 9.5.9.8" ::= { tnLldpRemManAddrPortIndexEntry 3 } -- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -- -- TN-LLDP-MIB Conformance -- -- tnLldpCompliances OBJECT IDENTIFIER ::= { tnLldpConformance 1 } -- tnLldpGroups OBJECT IDENTIFIER ::= { tnLldpConformance 2 } -- -- tnLldpCompliance MODULE-COMPLIANCE -- STATUS current -- DESCRIPTION -- "The compliance statement for SNMP entities which implement the LLDP MIB." -- MODULE this module -- MANDATORY-GROUPS { -- tnLldpConfigGroup, -- tnLldpStatsRxGroup, -- tnLldpStatsTxGroup, -- tnLldpLocSysGroup, -- tnLldpRemSysGroup, -- tnLldpRemManAddrGroup -- } -- ::= { tnLldpCompliances 1 } -- -- -- MIB groupings -- -- tnLldpConfigGroup OBJECT-GROUP -- OBJECTS { -- tnLldpTxCreditMax, -- tnLldpMessageFastTx, -- tnLldpMessageFastTxInit, -- tnLldpAdminStatus, -- tnLldpPortCfgAdminStatus, -- tnLldpPortCfgNotifyEnable, -- tnLldpPortCfgTLVsTxEnable, -- tnLldpPortCfgManAddrTxEnabled, -- tnLldpPortCfgManAddrSubtype, -- tnLldpPortCfgManAddress, -- tnLldpDestMacAddress -- } -- STATUS current -- DESCRIPTION -- "The collection of objects which are used to configure the LLDP -- implementation behavior. -- -- This group is mandatory for agents which implement the LLDP." -- ::= { tnLldpGroups 1 } -- -- tnLldpStatsRxGroup OBJECT-GROUP -- OBJECTS { -- tnLldpStatsRxPortFrameDiscard, -- tnLldpStatsRxPortFrameErrs, -- tnLldpStatsRxPortFrames, -- tnLldpStatsRxPortTLVDiscard, -- tnLldpStatsRxPortTLVUnknown, -- tnLldpStatsRxPortAgeouts, -- tnLldpStatsRxPortTtl -- } -- STATUS current -- DESCRIPTION -- "The collection of objects which are used to represent LLDP -- reception statistics. -- -- This group is mandatory for agents which implement the LLDP -- and have the capability of receiving LLDP frames." -- ::= { tnLldpGroups 2 } -- -- tnLldpStatsTxGroup OBJECT-GROUP -- OBJECTS { -- tnLldpStatsTxPortFrames, -- tnLldpStatsTxLLDPDULengthErrs -- } -- STATUS current -- DESCRIPTION -- "The collection of objects which are used to represent LLDP -- transmission statistics. -- -- This group is mandatory for agents which implement the LLDP -- and have the capability of transmitting LLDP frames." -- ::= { tnLldpGroups 3 } -- -- tnLldpLocSysGroup OBJECT-GROUP -- OBJECTS { -- tnLldpLocPortIdSubtype, -- tnLldpLocPortId, -- tnLldpLocPortDesc -- } -- STATUS current -- DESCRIPTION -- "The collection of objects which are used to represent LLDP -- Local System Information. -- -- This group is mandatory for agents which implement the LLDP -- and have the capability of transmitting LLDP frames." -- ::= { tnLldpGroups 4 } -- -- tnLldpRemSysGroup OBJECT-GROUP -- OBJECTS { -- tnLldpRemChassisIdSubtype, -- tnLldpRemChassisId, -- tnLldpRemPortIdSubtype, -- tnLldpRemPortId, -- tnLldpRemPortDesc, -- tnLldpRemSysName, -- tnLldpRemSysDesc, -- tnLldpRemSysCapSupported, -- tnLldpRemSysCapEnabled -- -- } -- STATUS current -- DESCRIPTION -- "The collection of objects which are used to represent -- LLDP Remote Systems Information. The objects represent the -- information associated with the basic TLV set. Please note -- that even the agent doesn't implement some of the optional -- TLVs, it shall recognize all the optional TLV information -- that the remote system may advertise. -- -- This group is mandatory for agents which implement the LLDP -- and have the capability of receiving LLDP frames." -- ::= { tnLldpGroups 5 } -- -- tnLldpRemManAddrGroup OBJECT-GROUP -- OBJECTS { -- tnLldpRemManAddrIfSubtype, -- tnLldpRemManAddrIfId, -- tnLldpRemManAddrOID -- } -- STATUS current -- DESCRIPTION -- "The collection of objects which are used to represent LLDP -- Remote management address information. -- -- This group is mandatory for agents which implement the LLDP -- and have the capability of receiving LLDP frames." -- ::= { tnLldpGroups 6 } -- -- tnLldpRemPortIndexGroup OBJECT-GROUP -- OBJECTS { -- tnLldpRemPortIndexChassisIdSubtype, -- tnLldpRemPortIndexChassisId, -- tnLldpRemPortIndexPortIdSubtype, -- tnLldpRemPortIndexPortId -- tnLldpRemPortIndexPortDesc -- tnLldpRemPortIndexSysName -- tnLldpRemPortIndexSysDesc -- tnLldpRemPortIndexSysCapSupported -- tnLldpRemPortIndexSysCapEnabled -- } -- STATUS current -- DESCRIPTION -- "The collection of objects which are used to represent LLDP -- Remote Port information. -- -- This group is mandatory for agents which implement the LLDP -- and have the capability of receiving LLDP frames." -- ::= { tnLldpGroups 7 } -- -- tnLldpRemManAddrPortIndexGroup OBJECT-GROUP -- OBJECTS { -- tnLldpRemManAddrPortIndexIfSubtype, -- tnLldpRemManAddrPortIndexIfId, -- tnLldpRemManAddrPortIndexOID -- } -- STATUS current -- DESCRIPTION -- "The collection of objects which are used to represent LLDP -- Remote Mandatory Port information. -- -- This group is mandatory for agents which implement the LLDP -- and have the capability of receiving LLDP frames." -- ::= { tnLldpGroups 8 } END