-- ********************************************************************* -- CISCO-FCS-MIB.my: Fabric Configuration Server Mib -- -- September 2002, H K Vivek -- -- Copyright (c) 2002 by cisco Systems, Inc. -- All rights reserved. -- -- ********************************************************************* CISCO-FCS-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Counter32, Integer32, Unsigned32 FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF TruthValue, TestAndIncr, TimeStamp, RowStatus, TEXTUAL-CONVENTION FROM SNMPv2-TC ciscoMgmt FROM CISCO-SMI SnmpAdminString FROM SNMP-FRAMEWORK-MIB ListIndex, ListIndexOrZero, TimeIntervalSec FROM CISCO-TC FcNameId, FcAddressId, DomainIdOrZero, FcPortTypes, FcPortTxTypes, FcPortModuleTypes, VsanIndex FROM CISCO-ST-TC vsanIndex FROM CISCO-VSAN-MIB FcGs3RejectReasonCode FROM CISCO-NS-MIB FcList FROM CISCO-ZS-MIB; ciscoFcsMIB MODULE-IDENTITY LAST-UPDATED "200402190000Z" ORGANIZATION "Cisco Systems Inc." CONTACT-INFO " Cisco Systems Customer Service Postal: 170 W Tasman Drive San Jose, CA 95134 USA Tel: +1 800 553 -NETS E-mail: cs-san@cisco.com" DESCRIPTION "The MIB module for the management of a Fabric Configuration Server (FCS). An FCS is defined by the FC-GS3 standard. This MIB enables managers to configure and monitor FCS parameters." REVISION "200402190000Z" DESCRIPTION "Added notification fcsMgmtAddrChangeNotify." REVISION "200308200000Z" DESCRIPTION "Changed the max lengths of fcsPlatformName, fcsIeLogicalName and fcsMgmtAddr to 255 from 256. Changed the min length of fcsPlatformName from 2 to 1." REVISION "200212180000Z" DESCRIPTION "Changed the ranges of fcsPortNumber and fcsPlatformNumber objects, so that they start from 0." REVISION "200210070000Z" DESCRIPTION "Initial version of this MIB module." ::= { ciscoMgmt 297 } ciscoFcsMIBObjects OBJECT IDENTIFIER ::= { ciscoFcsMIB 1 } fcsMIBConformance OBJECT IDENTIFIER ::= { ciscoFcsMIB 2 } fcsConfiguration OBJECT IDENTIFIER ::= { ciscoFcsMIBObjects 1 } fcsStats OBJECT IDENTIFIER ::= { ciscoFcsMIBObjects 2 } fcsInformation OBJECT IDENTIFIER ::= { ciscoFcsMIBObjects 3 } fcsNotification OBJECT IDENTIFIER ::= { ciscoFcsMIBObjects 4 } fcsNotifications OBJECT IDENTIFIER ::= { fcsNotification 0 } CreatedBy ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "When an object with this syntax is specified as a columnar object, then each instance of the object indicates how the row which contains that instance was created. createdByMgmt(1) - indicates that the entry was created via SNMP. learnedviaGS3(2) - indicates that the entry was configured by GS-3." SYNTAX INTEGER { createdByMgmt(1), learnedviaGS3(2) } FcIeType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The type of Interconnect Element (IE). unknown(1) - unknown IE. other(2) - other type of IE. switch(3) - IE is a switch. hub(4) - IE is a hub. bridge(5) - IE is a bridge." SYNTAX INTEGER { unknown(1), other(2), switch(3), hub(4), bridge(5) } FcPortState ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The state of a port. unknown(1) - unknown state. online(2) - port is in online state. offline(3) - port is in offline state. testing(4) - port is in testing state. fault(5) - port is faulty. other(6) - other state." SYNTAX INTEGER { unknown(1), online(2), offline(3), testing(4), fault(5), other(6) } FcPlatformType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The type of platform. unknown(1) - unknown type. other(2) - other than the listed types. gateway(3) - platform is a gateway. converter(4) - platform is a converter. hostBusAdapter(5) - platform is a Host Bus Adapter (HBA). swProxyAgent(6) - platform is a s/w proxy agent. storageDevice(7) - platform is a Storage device. host(8) - platform is a host. storageSubSys(9) - platform is a storage sub-system module(10) - platform is a module. swDriver(11) - platform is a s/w driver. storageAccessDev(12) - platform is a storage access device." SYNTAX INTEGER { unknown(1), other(2), gateway(3), converter(4), hostBusAdapter(5), swProxyAgent(6), storageDevice(7), host(8), storageSubSys(9), module(10), swDriver(11), storageAccessDev(12) } FcFcsRejReasonExplanation ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The reject reason code explanation. noAdditionalExplanation(1) - no additional expl. invNameIdForIEOrPort(2) - the format of IE or port name is invalid. ieListNotAvailable(3) - IE list is not available. ieTypeNotAvailable(4) - IE type is not available. domainIdNotAvailable(5) - Domain ID is not available. mgmtIdNotAvailable(6) - mgmt ID is not available. fabNameNotAvailable(7) - fabric name is not available. ielogNameNotAvailable(8) - IE logical name is not available. mgmtAddrListNotAvailable(9) - mgmt address list is not available. ieInfoListNotAvailable(10) - IE info list is not available. portListNotAvailable(11) - port list is not available. portTypeNotAvailable(12) - port type is not available. phyPortNumNotAvailable(13) - physical port number is not available. attPortNameListNotAvailable(14) - attached port name list is not available. portStateNotAvailable(15) - port state is not available. unableToRegIELogName(16) - not able to register IE logical name. platformNameNoExist(17) - platform name does not exist. platformNameAlreadyExists(18) - platform name already exists. platformNodeNameNoExists(19) - platform node name does not exist. platformNodeNameAlreadyExists(20) - platform node name already exists." SYNTAX INTEGER { noAdditionalExplanation(1), invNameIdForIEOrPort(2), ieListNotAvailable(3), ieTypeNotAvailable(4), domainIdNotAvailable(5), mgmtIdNotAvailable(6), fabNameNotAvailable(7), ielogNameNotAvailable(8), mgmtAddrListNotAvailable(9), ieInfoListNotAvailable(10), portListNotAvailable(11), portTypeNotAvailable(12), phyPortNumNotAvailable(13), attPortNameListNotAvailable(14), portStateNotAvailable(15), unableToRegIELogName(16), platformNameNoExist(17), platformNameAlreadyExists(18), platformNodeNameNoExists(19), platformNodeNameAlreadyExists(20) } fcsVsanDiscoverySpinLock OBJECT-TYPE SYNTAX TestAndIncr MAX-ACCESS read-write STATUS current DESCRIPTION "This object is used to facilitate modification of fcsVsanDiscoveryList2k, fcsVsanDiscovery- List4k, fcsVsanDiscoveryName and fcsStartDiscovery objects by multiple managers. The procedure for modifying the above four objects is as follows: 1. Determine new values for fcsVsanDiscoveryList2k, fcsVsanDiscoveryList4k and fcsVsanDiscoveryName. 2. Retrieve the value of fcsVsanDiscoverySpinLock. 3. Set the value of fcsVsanDiscoverySpinLock to the retrieved value, and (in the same PDU) the value of fcsVsanDiscoveryList2k to the new value. If the set fails for the fcsVsanDiscoverySpinLock object, go back to step 2. 4. Set the value of fcsVsanDiscoverySpinLock to the retrieved value incremented by one, and (in the same PDU) the value of fcsVsanDiscoveryList4k to its new value. If the set fails for fcsVsanDiscoverySpinLock, go back to step 2. 5. Set the value of fcsVsanDiscoverySpinLock to the retrieved value incremented by two, and (in the same PDU) the value of fcsStartDiscovery to 'startDiscovery'. If the set fails for fcsVsanDiscoverySpinLock, go back to step 2. 6. Set the value of fcsVsanDiscoverySpinLock to the retrieved value incremented by three, and (in the same PDU) the value of fcsVsanDiscoveryName to its new value. If the set fails for fcsVsanDiscoverySpinLock, go back to step 2. Note that if it's possible to include fcsVsanDiscoveryList4k, fcsStartDiscovery, and/or fcsVsanDiscoveryName in the (Set Request) PDU of an earlier step, then step 4, 5 and/or 6, respectively , can be eliminated." ::= { fcsConfiguration 1 } fcsVsanDiscoveryName OBJECT-TYPE SYNTAX SnmpAdminString (SIZE (0..32)) MAX-ACCESS read-write STATUS current DESCRIPTION "The name of the discovery triggered by a manager. This object is sent along with the fcsDiscoveryCompleteNotify notification. This object cannot be modified when the discovery status is 'inProgress' on the selected set of VSANs as indicated by the fcsDiscoveryStatus object in the fcsDiscoveryStatusTable." ::= { fcsConfiguration 2 } fcsVsanDiscoveryList2k OBJECT-TYPE SYNTAX FcList MAX-ACCESS read-write STATUS current DESCRIPTION "A bitmap which represents VSANs starting from VSAN id 1 to VSAN id 2048. Discovery will be carried out on all those VSANs for which the corresponding bits are set to 1 in this object. Note that if multiple managers set this object one after the other, the discovery is carried out on the union of the multiple requests. When read, the value of this object is the union of the in-progress discovery requests." ::= { fcsConfiguration 3 } fcsVsanDiscoveryList4k OBJECT-TYPE SYNTAX FcList MAX-ACCESS read-write STATUS current DESCRIPTION "A bitmap which represents VSANs starting from VSAN id 2049 to VSAN id 4096. Discovery will be carried out on all those VSANs for which the corresponding bits are set to 1 in this object. Note that if multiple managers set this object one after the other, the discovery is carried out on the union of the multiple requests. When read, the value of this object is the union of the in-progress discovery requests." ::= { fcsConfiguration 4 } fcsStartDiscovery OBJECT-TYPE SYNTAX INTEGER { startDiscovery(1), -- start the discovery noOp(2) -- no operation } MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies whether a discovery cycle should be started by the Fabric Configuration Server. If this object is set to 'startDiscovery', then the discovery is started by the Fabric Configuration Server on those VSANs that have been specified by the fcsVsanDiscoveryList objects. No action is taken if this object is set to 'noOp'. The value of this object when read is always 'noOp'." ::= { fcsConfiguration 5 } fcsDiscoveryStatusTable OBJECT-TYPE SYNTAX SEQUENCE OF FcsDiscoveryStatusEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains the status of the discovery for all VSANs." ::= { fcsConfiguration 6 } fcsDiscoveryStatusEntry OBJECT-TYPE SYNTAX FcsDiscoveryStatusEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in this table. The discovery status for a particular VSAN." INDEX { vsanIndex } ::= { fcsDiscoveryStatusTable 1 } FcsDiscoveryStatusEntry ::= SEQUENCE { fcsDiscoveryStatus INTEGER, fcsDiscoveryCompleteTime TimeStamp } fcsDiscoveryStatus OBJECT-TYPE SYNTAX INTEGER { inProgress(1), -- discovery in progress completed(2), -- discovery is complete databaseInvalid(3) -- database is invalid } MAX-ACCESS read-only STATUS current DESCRIPTION "The status of the discovery on the local switch. Initially when the switch comes up, this object will be set to 'databaseInvalid' state on all VSANs. This indicates that a discovery needs to be done. If the manager sets the fcsStartDiscovery object to 'startDiscovery' for this VSAN, then the discovery will be triggered on. The state of this object will be set to 'inProgress' for this VSAN during the discovery. Once the discovery is completed on this VSAN, this object will be set to 'completed'. After the discovery is completed for the specified list of VSANs, the data is cached for an interval of time specified by fcsVsanDiscoveryTimeOut object. Once this interval of time expires, the data is lost and this object will be set to 'databaseInvalid' state for the specified list of VSANs." ::= { fcsDiscoveryStatusEntry 1 } fcsDiscoveryCompleteTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "This object contains the value of sysUpTime when the last discovery was completed on this VSAN. This object will contain the value of zero before the first discovery on this VSAN." ::= { fcsDiscoveryStatusEntry 2 } fcsVsanDiscoveryTimeOut OBJECT-TYPE SYNTAX TimeIntervalSec (300..1800) UNITS "seconds" MAX-ACCESS read-write STATUS current DESCRIPTION "The minimum interval of time for which the discovered data on a VSAN is cached by the Fabric Configuration Server." DEFVAL { 900 } ::= { fcsConfiguration 7 } fcsDiscoveryInvalidateCache2k OBJECT-TYPE SYNTAX FcList MAX-ACCESS read-write STATUS current DESCRIPTION "A bitmap which represents VSANs from 1 to 2048. The discovered cache will be invalidated on those VSANs for which the corresponding bits are set to 1 in this object. If the bit corresponding to a particular VSAN is set to 1 and if the value of fcsDiscoveryStatus for that VSAN is 'completed', then the discovery cache on that VSAN will be invalidated and the fcsDiscoveryStatus object for that VSAN will be set to 'databaseInvalid'." ::= { fcsConfiguration 8 } fcsDiscoveryInvalidateCache4k OBJECT-TYPE SYNTAX FcList MAX-ACCESS read-write STATUS current DESCRIPTION "A bitmap which represents VSANs from 2049 to 4096. The discovered cache will be invalidated on those VSANs for which the corresponding bits are set to 1 in this object. If the bit corresponding to a particular VSAN is set to 1 and if the value of fcsDiscoveryStatus for that VSAN is 'completed', then the discovery cache on that VSAN will be invalidated and the fcsDiscoveryStatus object for that VSAN will be set to 'databaseInvalid'." ::= { fcsConfiguration 9 } fcsIeNumber OBJECT-TYPE SYNTAX Integer32 (0..489472) MAX-ACCESS read-only STATUS current DESCRIPTION "The number of entries currently present in the fcsIeTable." ::= { fcsConfiguration 10 } fcsIeTable OBJECT-TYPE SYNTAX SEQUENCE OF FcsIeEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of Interconnect Elements. Interconnect Elements (IEs) are switches, hubs, bridges etc. By default, the Fabric Configuration Server will maintain detailed information pertaining only to the local switch. As far as remote topology is concerned, only the IE name, type and domain-id information will be maintained. If a discovery cycle is triggered on a set of VSANs, this table along with the Port and Platform tables will be populated with the discovered information. The discovered data will be retained in this table for at least fcsVsanDiscoveryTimeOut seconds after the completion of its discovery or till the discovered data is invalidated by setting the appropriate bits of fcsDiscoveryInvalidateCache2k/4k." ::= { fcsConfiguration 11 } fcsIeEntry OBJECT-TYPE SYNTAX FcsIeEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (coneptual row) in this table. It gives information on an Interconnect Element." INDEX { vsanIndex, fcsIeName } ::= { fcsIeTable 1 } FcsIeEntry ::= SEQUENCE { fcsIeName FcNameId, fcsIeType FcIeType, fcsIeDomainId DomainIdOrZero, fcsIeMgmtId FcAddressId, fcsIeFabricName FcNameId, fcsIeLogicalName OCTET STRING, fcsIeMgmtAddrListIndex ListIndexOrZero, fcsIeInfoList OCTET STRING, fcsIePortListIndex ListIndexOrZero } fcsIeName OBJECT-TYPE SYNTAX FcNameId MAX-ACCESS not-accessible STATUS current DESCRIPTION "The WWN of an Interconnect Element. This object uniquely identifies an Interconnect Element on a VSAN. If the IE is a switch, then this object is the Node WWN of the switch." ::= { fcsIeEntry 1 } fcsIeType OBJECT-TYPE SYNTAX FcIeType MAX-ACCESS read-only STATUS current DESCRIPTION "The type of this Interconnect Element." ::= { fcsIeEntry 2 } fcsIeDomainId OBJECT-TYPE SYNTAX DomainIdOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "The Domain Id of this Interconnect Element. If the Domain Id has not been configured, then this object will have the value of zero." ::= { fcsIeEntry 3 } fcsIeMgmtId OBJECT-TYPE SYNTAX FcAddressId MAX-ACCESS read-only STATUS current DESCRIPTION "The management identifer of this Interconnect Element. If the Interconnect Element is a switch, then this object will be the Domain Controller identifier of the switch. If the value of this object is unknown to the local system, then it will contain the null value x'00 00 00'." DEFVAL { '000000'h } ::= { fcsIeEntry 4 } fcsIeFabricName OBJECT-TYPE SYNTAX FcNameId MAX-ACCESS read-only STATUS current DESCRIPTION "The fabric name of this Interconnect Element. If the value of this object is unknown to the local system, then it will contain the null value x'00 00 00 00 00 00 00 00'." DEFVAL { '0000000000000000'h } ::= { fcsIeEntry 5 } fcsIeLogicalName OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "The logical name of this Interconnect Element. If the value of this object is unknown to the local system, then it will contain the zero length string." ::= { fcsIeEntry 6 } fcsIeMgmtAddrListIndex OBJECT-TYPE SYNTAX ListIndexOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "The index of the management address list corresponding to this Interconnect Element. This object is an index into the fcsMgmtAddrListTable. Zero or more of the management address objects may be associated with an Interconnect Element object." ::= { fcsIeEntry 7 } fcsIeInfoList OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..256)) MAX-ACCESS read-only STATUS current DESCRIPTION "The information list corresponding to this Interconnect Element. This object contains multiple substrings: the vendor name, model name/number, release code and any vendor specific information. Each substring is terminated with a null x'00'." REFERENCE "ANSI NCITS xxx-200x, Fibre Channel - Generic Services 3 (FC-GS-3) T11/Project 1356D/Rev 7.01 Section 6.1.2.1.8" ::= { fcsIeEntry 8 } fcsIePortListIndex OBJECT-TYPE SYNTAX ListIndexOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "The index of the port list corresponding to this Interconnect Element. This object is an index into the fcsPortListTable." ::= { fcsIeEntry 9 } fcsMgmtAddrListTable OBJECT-TYPE SYNTAX SEQUENCE OF FcsMgmtAddrListEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains the set of management address lists currently referenced by any instance of the fcsIeMgmtAddrListIndex or fcsPlatformMgmtAddrListIndex objects." ::= { fcsConfiguration 12 } fcsMgmtAddrListEntry OBJECT-TYPE SYNTAX FcsMgmtAddrListEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in this table. A management address is represented by fcsMgmtAddrIndex. All management addresses which belong to the same list have a common fcsMgmtAddrListIndex." INDEX { fcsMgmtAddrListIndex, fcsMgmtAddrIndex } ::= { fcsMgmtAddrListTable 1 } FcsMgmtAddrListEntry ::= SEQUENCE { fcsMgmtAddrListIndex ListIndex, fcsMgmtAddrIndex Unsigned32, fcsMgmtAddr OCTET STRING, fcsMgmtAddrConfigSource CreatedBy, fcsMgmtAddrRowStatus RowStatus } fcsMgmtAddrListIndex OBJECT-TYPE SYNTAX ListIndex (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index of the management address list." ::= { fcsMgmtAddrListEntry 1 } fcsMgmtAddrIndex OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index of a management address." ::= { fcsMgmtAddrListEntry 2 } fcsMgmtAddr OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-create STATUS current DESCRIPTION "The management address corresponding to this entry. The format of this object may be based on the format of the Uniform Resource Locator (URL). For example, SNMP - snmp://ipaddress[:port#]. This object MUST be set to a valid value before or concurrently with setting the value of the corresponding instance of fcsMgmtAddrRowStatus to 'active'." REFERENCE "ANSI NCITS xxx-200x, Fibre Channel - Generic Services 3 (FC-GS-3) T11/Project 1356D/Rev 7.01 Section 6.1.2.1.7" ::= { fcsMgmtAddrListEntry 3 } fcsMgmtAddrConfigSource OBJECT-TYPE SYNTAX CreatedBy MAX-ACCESS read-only STATUS current DESCRIPTION "The source of configuration of this entry. Note that an entry which is configured via GS3 cannot be deleted through SNMP." ::= { fcsMgmtAddrListEntry 4 } fcsMgmtAddrRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this conceptual row." ::= { fcsMgmtAddrListEntry 5 } fcsPortListTable OBJECT-TYPE SYNTAX SEQUENCE OF FcsPortListEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains all the lists of ports that are associated with Interconnect Elements contained in fcsIeTable." ::= { fcsConfiguration 13 } fcsPortListEntry OBJECT-TYPE SYNTAX FcsPortListEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in this table. A port is represented by fcsPortName. All the ports that belong to the same list have the same fcsPortListIndex." INDEX { fcsPortListIndex, fcsPortName } ::= { fcsPortListTable 1 } FcsPortListEntry ::= SEQUENCE { fcsPortListIndex ListIndex } fcsPortListIndex OBJECT-TYPE SYNTAX ListIndex (1..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "The index of the port list." ::= { fcsPortListEntry 1 } fcsPortNumber OBJECT-TYPE SYNTAX Integer32 (0..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "The number of entries currently present in the fcsPortTable." ::= { fcsConfiguration 14 } fcsPortTable OBJECT-TYPE SYNTAX SEQUENCE OF FcsPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains information of all the ports. These ports are grouped into lists by the fcsPortListTable." ::= { fcsConfiguration 15 } fcsPortEntry OBJECT-TYPE SYNTAX FcsPortEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in this table." INDEX { vsanIndex, fcsPortName } ::= { fcsPortTable 1 } FcsPortEntry ::= SEQUENCE { fcsPortName FcNameId, fcsPortType FcPortTypes, fcsPortTXType FcPortTxTypes, fcsPortModuleType FcPortModuleTypes, fcsPortPhyPortNum Integer32, fcsPortAttachPortNameIndex ListIndexOrZero, fcsPortState FcPortState } fcsPortName OBJECT-TYPE SYNTAX FcNameId MAX-ACCESS not-accessible STATUS current DESCRIPTION "The WWN of the port for which this row contains information." ::= { fcsPortEntry 1 } fcsPortType OBJECT-TYPE SYNTAX FcPortTypes MAX-ACCESS read-only STATUS current DESCRIPTION "The type of this port. If it is a trunk port, the type of the port will be tePort. This is however not a standard port type. When information regarding such a port is sent using GS-3, it is represented in the GS-3 message and therefore in this table as an E_Port." ::= { fcsPortEntry 2 } fcsPortTXType OBJECT-TYPE SYNTAX FcPortTxTypes MAX-ACCESS read-only STATUS current DESCRIPTION "The TX type of this port." ::= { fcsPortEntry 3 } fcsPortModuleType OBJECT-TYPE SYNTAX FcPortModuleTypes MAX-ACCESS read-only STATUS current DESCRIPTION "The module type of this port." ::= { fcsPortEntry 4 } fcsPortPhyPortNum OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "The physical number corresponding to this port entry." ::= { fcsPortEntry 5 } fcsPortAttachPortNameIndex OBJECT-TYPE SYNTAX ListIndexOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "The index of the attached port name list corresponding to this port entry. This object is an index into the fcsAttachPortNameListTable." ::= { fcsPortEntry 6 } fcsPortState OBJECT-TYPE SYNTAX FcPortState MAX-ACCESS read-only STATUS current DESCRIPTION "The state of this port." ::= { fcsPortEntry 7 } fcsAttachPortNameListTable OBJECT-TYPE SYNTAX SEQUENCE OF FcsAttachPortNameListEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains all the lists of attach port names." REFERENCE "ANSI NCITS xxx-200x, Fibre Channel - Generic Services 3 (FC-GS-3) T11/Project 1356D/Rev 7.01 Section 6.1.2.2.6" ::= { fcsConfiguration 16 } fcsAttachPortNameListEntry OBJECT-TYPE SYNTAX FcsAttachPortNameListEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in this table. An Attached port name is represented by fcsAttachPortName. All the attach port names that belong to the same list have a common fcsAttachPortNameListIndex." INDEX { fcsAttachPortNameListIndex, fcsAttachPortName } ::= { fcsAttachPortNameListTable 1 } FcsAttachPortNameListEntry ::= SEQUENCE { fcsAttachPortNameListIndex ListIndex, fcsAttachPortName OCTET STRING } fcsAttachPortNameListIndex OBJECT-TYPE SYNTAX ListIndex(1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index of the attach port name list." ::= { fcsAttachPortNameListEntry 1 } fcsAttachPortName OBJECT-TYPE SYNTAX OCTET STRING (SIZE (12)) MAX-ACCESS read-only STATUS current DESCRIPTION "The attached port name corresponding to this entry. Zero or more of these names may be associated with a port object. The first 8 bytes of this object contain the WWN of the port followed by 2 reserved bytes. Following this is one byte of Port flags and one byte of Port type. See FC-GS3 for more details." REFERENCE "ANSI NCITS xxx-200x, Fibre Channel - Generic Services 3 (FC-GS-3) T11/Project 1356D/Rev 7.01 Section 6.1.2.2.6" ::= { fcsAttachPortNameListEntry 2 } fcsPlatformNumber OBJECT-TYPE SYNTAX Integer32 (0..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "The number of entries currently present in the fcsPlatformTable." ::= { fcsConfiguration 17 } fcsPlatformTable OBJECT-TYPE SYNTAX SEQUENCE OF FcsPlatformEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains information on platforms. By default, this table only contains information pertaining to the local switch. If a discovery is triggered, this table will contain all the information that was obtained from the discovery process. The information gathered from the discovery process shall be retained in this table for atleast fcsVsanDiscoveryTimeOut seconds after the completion of its discovery or until the discovered cache is invalidated by setting the appropriate bits of fcsDiscoveryInvalidateCache2k/4k." REFERENCE "ANSI NCITS xxx-200x, Fibre Channel - Generic Services 3 (FC-GS-3) T11/Project 1356D/Rev 7.01 Section 6.1.2.3" ::= { fcsConfiguration 18 } fcsPlatformEntry OBJECT-TYPE SYNTAX FcsPlatformEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in this table. A platform is uniquely represented by fcsPlatformIndex. There could be multiple platforms on a VSAN. A platform can contain multiple nodes. The node lists need to be created in the fcsNodeNameListTable. The fcsPlatformNodeNameListIndex object in this table points to the desired node list in the fcsNodeNameListTable. Similarly, the management addresses corresponding to the platform need to be created in the fcsMgmtAddrListTable. The fcsPlatformMgmtAddrListIndex object in this table points to the desired management address list in the fcsMgmtAddrListTable. Once a platform has been created, it can optionally be validated on a fabric-wide basis by setting the appropriate instance of fcsPlatformValidation object to 'validate'." INDEX { vsanIndex, fcsPlatformIndex } ::= { fcsPlatformTable 1 } FcsPlatformEntry ::= SEQUENCE { fcsPlatformIndex Unsigned32, fcsPlatformName OCTET STRING, fcsPlatformType FcPlatformType, fcsPlatformNodeNameListIndex ListIndexOrZero, fcsPlatformMgmtAddrListIndex ListIndexOrZero, fcsPlatformConfigSource CreatedBy, fcsPlatformValidation INTEGER, fcsPlatformValidationResult INTEGER, fcsPlatformRowStatus RowStatus } fcsPlatformIndex OBJECT-TYPE SYNTAX Unsigned32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index of this platform." ::= { fcsPlatformEntry 1 } fcsPlatformName OBJECT-TYPE SYNTAX OCTET STRING (SIZE (1..255)) MAX-ACCESS read-create STATUS current DESCRIPTION "The name of this platform. The name should be unique within a VSAN. This object cannot be modified while the value of the corresponding instance of fcsPlatformRowStatus is 'active'. This object MUST be set before or concurrently with setting the corresponding instance of fcsPlatformRowStatus to 'active'." REFERENCE "ANSI NCITS xxx-200x, Fibre Channel - Generic Services 3 (FC-GS-3) T11/Project 1356D/Rev 7.01 Section 6.1.2.3.1" ::= { fcsPlatformEntry 2 } fcsPlatformType OBJECT-TYPE SYNTAX FcPlatformType MAX-ACCESS read-create STATUS current DESCRIPTION "The type of this platform." ::= { fcsPlatformEntry 3 } fcsPlatformNodeNameListIndex OBJECT-TYPE SYNTAX ListIndexOrZero MAX-ACCESS read-create STATUS current DESCRIPTION "The index of the node name list corresponding to this platform entry. This object is an index into the fcsNodeNameListTable. The list of nodes that a platform contains should be unique within a VSAN. If this entry is configured via SNMP as indicated by the corresponding instance of fcsPlatformConfig- Source object, then this object should only point to entries in fcsNodeNameListTable that have been created via SNMP. Similarly, if this entry is configured via GS-3, then it can only point to entries configured via GS-3 in the fcsNodeNameListTable." ::= { fcsPlatformEntry 4 } fcsPlatformMgmtAddrListIndex OBJECT-TYPE SYNTAX ListIndexOrZero MAX-ACCESS read-create STATUS current DESCRIPTION "The index of the management address list corresponding to this Platform. This object is an index into the fcsMgmtAddrListTable. Zero or more of the management address objects may be associated with a Platform object. If this entry is configured via SNMP as indicated by the corresponding instance of fcsPlatformConfig- Source object, then this object should only point to entries in fcsMgmtAddrListTable that have been created via SNMP. Similarly, if this entry is configured via GS-3, then it can only point to entries configured via GS-3 in the fcsMgmtAddrListTable." ::= { fcsPlatformEntry 5 } fcsPlatformConfigSource OBJECT-TYPE SYNTAX CreatedBy MAX-ACCESS read-only STATUS current DESCRIPTION "The source of configuration of this entry. Note that an entry which is configured via GS3 cannot be deleted through SNMP." ::= { fcsPlatformEntry 6 } fcsPlatformValidation OBJECT-TYPE SYNTAX INTEGER { validate(1), -- perform validation noop(2) -- no operation } MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies whether the validation for the platform name and its constituent nodes should be done on a fabric-wide basis. The outcome of this validation will be present in the corresponding instance of fcsPlatformValidationResult. No action is taken if this object is set to 'noop'. The value of this object when read is always 'noop'." ::= { fcsPlatformEntry 7 } fcsPlatformValidationResult OBJECT-TYPE SYNTAX INTEGER { success(1), -- validation succeeded inProgress(2), -- validation in progress nameInvalid(3), -- Platform Name invalid nodeInvalid(4), -- Platform Node invalid failure(5) -- general failure } MAX-ACCESS read-only STATUS current DESCRIPTION "The result of the fabric-wide validation of this platform. If the name of the platform is not unique fabric-wide on this VSAN, then this object will contain the value 'nameInvalid'. If the list of nodes present in the platform is not unique, then this object will contain the value 'nodeInvalid'. If there is any other failure, this object will contain the value 'failure'. None of the configurable objects can be modified when the value of this object is 'inProgress'." ::= { fcsPlatformEntry 8 } fcsPlatformRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this conceptual row." ::= { fcsPlatformEntry 9 } fcsNodeNameListTable OBJECT-TYPE SYNTAX SEQUENCE OF FcsNodeNameListEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains all the lists of nodes." ::= { fcsConfiguration 19 } fcsNodeNameListEntry OBJECT-TYPE SYNTAX FcsNodeNameListEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in this table. Each node is represented uniquely by fcsNodeName. All nodes that belong to the same list have a common fcsNodeNameListIndex." INDEX { fcsNodeNameListIndex, fcsNodeName } ::= { fcsNodeNameListTable 1 } FcsNodeNameListEntry ::= SEQUENCE { fcsNodeNameListIndex ListIndex, fcsNodeName FcNameId, fcsNodeNameConfigSource CreatedBy, fcsNodeNameRowStatus RowStatus } fcsNodeNameListIndex OBJECT-TYPE SYNTAX ListIndex (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index of the node name list." ::= { fcsNodeNameListEntry 1 } fcsNodeName OBJECT-TYPE SYNTAX FcNameId MAX-ACCESS not-accessible STATUS current DESCRIPTION "The name of this node entry." ::= { fcsNodeNameListEntry 2 } fcsNodeNameConfigSource OBJECT-TYPE SYNTAX CreatedBy MAX-ACCESS read-only STATUS current DESCRIPTION "The source of configuration of this entry. Note that an entry configured via GS-3 cannot be deleted through SNMP." ::= { fcsNodeNameListEntry 3 } fcsNodeNameRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this conceptual row." ::= { fcsNodeNameListEntry 4 } fcsTotalRejects OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of requests rejected by the local switch across all VSANs." ::= { fcsStats 1 } fcsStatsTable OBJECT-TYPE SYNTAX SEQUENCE OF FcsStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains all the statistics related to the Fabric Configuration Server." ::= { fcsStats 2 } fcsStatsEntry OBJECT-TYPE SYNTAX FcsStatsEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry (conceptual row) in this table. Some statistics for a particular VSAN." INDEX { vsanIndex } ::= { fcsStatsTable 1 } FcsStatsEntry ::= SEQUENCE { fcsRxGetReqs Counter32, fcsTxGetReqs Counter32, fcsRxRegReqs Counter32, fcsTxRegReqs Counter32, fcsRxDeregReqs Counter32, fcsTxDeregReqs Counter32, fcsTxRscns Counter32, fcsRxRscns Counter32, fcsRejects Counter32 } fcsRxGetReqs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Get Requests received by the Fabric Configuration Server on this VSAN." ::= { fcsStatsEntry 1 } fcsTxGetReqs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Get Requests sent by the Fabric Configuration Server on this VSAN to other servers in the fabric." ::= { fcsStatsEntry 2 } fcsRxRegReqs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Registration Requests received by the Fabric Configuration Server on this VSAN." ::= { fcsStatsEntry 3 } fcsTxRegReqs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Registration Requests sent by the Fabric Configuration Server on this VSAN." ::= { fcsStatsEntry 4 } fcsRxDeregReqs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Deregistration Requests received by the Fabric Configuration Server on this VSAN." ::= { fcsStatsEntry 5 } fcsTxDeregReqs OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Deregistration Requests sent by the Fabric Configuration Server on this VSAN." ::= { fcsStatsEntry 6 } fcsTxRscns OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Registered State Change Notifications (RSCNs) sent by the Fabric Configuration Server on this VSAN." ::= { fcsStatsEntry 7 } fcsRxRscns OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Registered State Change Notifications (RSCNs) received by the Fabric Configuration Server on this VSAN." ::= { fcsStatsEntry 8 } fcsRejects OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The total number of requests rejected by the local switch on this VSAN." ::= { fcsStatsEntry 9 } -- Notification information. fcsRejReasonCode OBJECT-TYPE SYNTAX FcGs3RejectReasonCode MAX-ACCESS read-only STATUS current DESCRIPTION "This object contains the reason code corresponding to the latest Fabric Configuration Server request rejected by the local system." ::= { fcsInformation 1 } fcsRejReasonCodeExplanation OBJECT-TYPE SYNTAX FcFcsRejReasonExplanation MAX-ACCESS read-only STATUS current DESCRIPTION "This object contains the reason code explanation if the reason code is 'Unable to perform command req'. This object also corresponds to the latest Fabric Configuration Server request rejected by the local system." ::= { fcsInformation 2 } fcsMgmtAddrChangeVsanIndex OBJECT-TYPE SYNTAX VsanIndex MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "Represents the VSAN id on which a management address change has been detected." ::= { fcsInformation 3 } fcsMgmtAddrChangeIeName OBJECT-TYPE SYNTAX FcNameId MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "Represents the IE for which a management address change has been detected." ::= { fcsInformation 4 } -- Notification control objects fcsReqRejNotifyEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies if the Fabric Configuration Server should issue a 'fcsReqRejNotify' notification. If the value of this object is 'true', then the notification is issued. If the value of this object is 'false', then the notification is not issued." DEFVAL { false } ::= { fcsConfiguration 20 } fcsDiscoveryCompleteNotifyEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies if the Fabric Configuration Server should issue a 'fcsDiscoveryCompleteNotify' notification. If the value of this object is 'true', then the notification is issued. If the value of this object is 'false', then the notification is not issued." DEFVAL { false } ::= { fcsConfiguration 21 } -- Notifications fcsReqRejNotify NOTIFICATION-TYPE OBJECTS {fcsRejReasonCode, fcsRejReasonCodeExplanation} STATUS current DESCRIPTION "This notification is generated by the Fabric Configuration Server on this switch whenever it rejects a Fabric Configuration Server request. The Fabric Configuration Server should update the fcsRejReasonCode and fcsRejReasonCodeExplanation objects with the corresponding reason code and reason code explanation before sending the notification." ::= { fcsNotifications 1 } fcsDiscoveryCompleteNotify NOTIFICATION-TYPE OBJECTS {fcsVsanDiscoveryName} STATUS current DESCRIPTION "This notification is generated by the Fabric Configuration Server when a discovery cycle specified by fcsVsanDiscoveryList2k, fcsVsanDiscoveryList4k and fcsVsanDiscoveryName is completed." ::= { fcsNotifications 2 } fcsMgmtAddrChangeNotify NOTIFICATION-TYPE OBJECTS { fcsMgmtAddrChangeVsanIndex, fcsMgmtAddrChangeIeName } STATUS current DESCRIPTION "This notification is generated by the Fabric Configuration Server whenever the management address of a IE changes. This means that, this notification is generated whenever an entry in the fcsMgmtAddrListTable changes." ::= { fcsNotifications 3 } -- Conformance fcsMIBCompliances OBJECT IDENTIFIER ::= { fcsMIBConformance 1 } fcsMIBGroups OBJECT IDENTIFIER ::= { fcsMIBConformance 2 } fcsMIBCompliance MODULE-COMPLIANCE STATUS deprecated -- superceded by fcsMIBComplianceRev1 DESCRIPTION "The compliance statement for entities which implement the Fabric Configuration Server." MODULE MANDATORY-GROUPS {fcsConfigurationGroup, fcsStatisticsGroup, fcsNotificationControlGroup, fcsNotificationGroup} OBJECT fcsMgmtAddrRowStatus SYNTAX INTEGER { active(1), createAndGo(4), destroy(6)} MIN-ACCESS read-create DESCRIPTION "Only three values 'createAndGo', 'destroy' and 'active' out of the six enumerated values need to be supported." OBJECT fcsPlatformRowStatus SYNTAX INTEGER { active(1), createAndGo(4), destroy(6)} MIN-ACCESS read-create DESCRIPTION "Only three values 'createAndGo', 'destroy' and 'active' out of the six enumerated values need to be supported." OBJECT fcsNodeNameRowStatus SYNTAX INTEGER { active(1), createAndGo(4), destroy(6)} MIN-ACCESS read-create DESCRIPTION "Only three values 'createAndGo', 'destroy' and 'active' out of the six enumerated values need to be supported." ::= { fcsMIBCompliances 1 } fcsMIBComplianceRev1 MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for entities which implement the Fabric Configuration Server." MODULE MANDATORY-GROUPS {fcsConfigurationGroup, fcsStatisticsGroup, fcsNotificationControlGroupRev1, fcsNotificationGroupRev1} OBJECT fcsMgmtAddrRowStatus SYNTAX INTEGER { active(1), createAndGo(4), destroy(6)} MIN-ACCESS read-create DESCRIPTION "Only three values 'createAndGo', 'destroy' and 'active' out of the six enumerated values need to be supported." OBJECT fcsPlatformRowStatus SYNTAX INTEGER { active(1), createAndGo(4), destroy(6)} MIN-ACCESS read-create DESCRIPTION "Only three values 'createAndGo', 'destroy' and 'active' out of the six enumerated values need to be supported." OBJECT fcsNodeNameRowStatus SYNTAX INTEGER { active(1), createAndGo(4), destroy(6)} MIN-ACCESS read-create DESCRIPTION "Only three values 'createAndGo', 'destroy' and 'active' out of the six enumerated values need to be supported." ::= { fcsMIBCompliances 2 } -- Units of Conformance fcsConfigurationGroup OBJECT-GROUP OBJECTS {fcsVsanDiscoverySpinLock, fcsVsanDiscoveryName, fcsVsanDiscoveryList2k, fcsVsanDiscoveryList4k, fcsStartDiscovery, fcsDiscoveryStatus, fcsDiscoveryCompleteTime, fcsVsanDiscoveryTimeOut, fcsDiscoveryInvalidateCache2k, fcsDiscoveryInvalidateCache4k, fcsIeNumber, fcsIeType, fcsIeDomainId, fcsIeMgmtId, fcsIeFabricName, fcsIeLogicalName, fcsIeMgmtAddrListIndex, fcsIeInfoList, fcsIePortListIndex, fcsMgmtAddr, fcsMgmtAddrConfigSource, fcsMgmtAddrRowStatus, fcsPortListIndex, fcsPortNumber, fcsPortType, fcsPortTXType, fcsPortModuleType, fcsPortPhyPortNum, fcsPortAttachPortNameIndex, fcsPortState, fcsAttachPortName, fcsPlatformNumber, fcsPlatformName, fcsPlatformType, fcsPlatformNodeNameListIndex, fcsPlatformMgmtAddrListIndex, fcsPlatformConfigSource, fcsPlatformValidation, fcsPlatformValidationResult, fcsPlatformRowStatus, fcsNodeNameConfigSource, fcsNodeNameRowStatus} STATUS current DESCRIPTION "A collection of objects for displaying and configuring Fabric Configuration Server parameters." ::= { fcsMIBGroups 1 } fcsStatisticsGroup OBJECT-GROUP OBJECTS {fcsTotalRejects, fcsRxGetReqs, fcsTxGetReqs, fcsRxRegReqs, fcsTxRegReqs, fcsRxDeregReqs, fcsTxDeregReqs, fcsTxRscns, fcsRxRscns, fcsRejects} STATUS current DESCRIPTION "A collection of objects for displaying the Fabric Configuration Server statistics information." ::= { fcsMIBGroups 2 } fcsNotificationControlGroup OBJECT-GROUP OBJECTS {fcsReqRejNotifyEnable, fcsRejReasonCode, fcsRejReasonCodeExplanation, fcsDiscoveryCompleteNotifyEnable} STATUS deprecated DESCRIPTION "A collection of notification control and notification information objects for monitoring Fabric Configuration Server request rejection and discovery of remote toplogy information." ::= { fcsMIBGroups 3 } fcsNotificationGroup NOTIFICATION-GROUP NOTIFICATIONS {fcsReqRejNotify, fcsDiscoveryCompleteNotify} STATUS deprecated DESCRIPTION "A collection of notifications for monitoring Fabric Configuration Server request rejection and discovery of remote toplogy information." ::= { fcsMIBGroups 4 } fcsNotificationGroupRev1 NOTIFICATION-GROUP NOTIFICATIONS {fcsReqRejNotify, fcsDiscoveryCompleteNotify, fcsMgmtAddrChangeNotify} STATUS current DESCRIPTION "A collection of notifications for monitoring Fabric Configuration Server request rejection, discovery of remote toplogy information and management address changes." ::= { fcsMIBGroups 5 } fcsNotificationControlGroupRev1 OBJECT-GROUP OBJECTS {fcsReqRejNotifyEnable, fcsRejReasonCode, fcsRejReasonCodeExplanation, fcsDiscoveryCompleteNotifyEnable, fcsMgmtAddrChangeVsanIndex, fcsMgmtAddrChangeIeName} STATUS current DESCRIPTION "A collection of notification control and notification information objects for monitoring Fabric Configuration Server request rejection and discovery of remote toplogy information." ::= { fcsMIBGroups 6 } END