1-- ********************************************************************* 2-- CISCO-FCC-MIB.my Fibre Channel Congestion Control (FCC) MIB 3-- 4-- Jul 2003, Sanjeev Joshi, Dinkar Sitaram 5-- 6-- Copyright (c) 2003, 2004 by cisco Systems, Inc. 7-- All rights reserved. 8-- 9-- ********************************************************************* 10 11CISCO-FCC-MIB DEFINITIONS ::= BEGIN 12 13IMPORTS 14 MODULE-IDENTITY, 15 OBJECT-TYPE, 16 NOTIFICATION-TYPE, 17 Counter32,Integer32 18 FROM SNMPv2-SMI 19 MODULE-COMPLIANCE, OBJECT-GROUP,NOTIFICATION-GROUP 20 FROM SNMPv2-CONF 21 TruthValue,TimeStamp, TEXTUAL-CONVENTION 22 FROM SNMPv2-TC 23 ciscoMgmt 24 FROM CISCO-SMI 25 ifIndex 26 FROM IF-MIB 27 FcAddressId, VsanIndex 28 FROM CISCO-ST-TC; 29 30ciscoFCCMIB MODULE-IDENTITY 31 LAST-UPDATED "200407080000Z" 32 ORGANIZATION "Cisco Systems, Inc." 33 CONTACT-INFO 34 " Cisco Systems 35 Customer Service 36 37 Postal 170 W Tasman Drive 38 San Jose, CA 95134 39 USA 40 41 Tel +1 800 553-NETS 42 43 E-mail cs-san@cisco.com" 44 45 DESCRIPTION 46 "The MIB module for the management of Fibre Channel 47 Congestion Control(FCC). FCC is a Cisco proprietary 48 flow control mechanism that alleviates congestion 49 on Fibre Channel networks. This MIB enables managers 50 to configure the FCC mechanism on the switch, provides 51 statistics of the congestion control packets, 52 notification of congestion state changes of the 53 FC port and monitoring of the congestion state of 54 the FC port." 55 REVISION "200407080000Z" 56 DESCRIPTION 57 "Added the following objects to the 'cFCCPortTable' : 58 - 'cFCCLastCongestionStartTime' and 59 - 'cFCCIsRateLimitingApplied'." 60 REVISION "200402250000Z" 61 DESCRIPTION 62 "Changed the cFCCNotificationEnable DEFVAL to 'false' 63 instead of 1." 64 REVISION "200308060000Z" 65 DESCRIPTION 66 "Changed cFCCCongestionSourceID and 67 cFCCCongestionDestinationID to be FC_IDs 68 instead of WWNs and added 69 cFCCCongestionNotifyVSANIndex" 70 REVISION "200305260000Z" 71 DESCRIPTION 72 "Initial version of this MIB." 73 ::= { ciscoMgmt 365 } 74 75-- 76-- FCC-MIB object definitions 77-- 78 79ciscoFCCMIBNotifs OBJECT IDENTIFIER ::= { ciscoFCCMIB 0 } 80ciscoFCCMIBObjects OBJECT IDENTIFIER ::= { ciscoFCCMIB 1 } 81ciscoFCCMIBConformance OBJECT IDENTIFIER ::= { ciscoFCCMIB 2 } 82 83cFCCConfig OBJECT IDENTIFIER ::= { ciscoFCCMIBObjects 1 } 84cFCCPortEntries OBJECT IDENTIFIER ::= { ciscoFCCMIBObjects 2 } 85cFCCNotifObjects OBJECT IDENTIFIER ::= { ciscoFCCMIBObjects 3 } 86 87-- 88-- Textual Conventions 89-- 90 91CiscoFCCCongestionState ::= TEXTUAL-CONVENTION 92 STATUS current 93 DESCRIPTION 94 "The FCC Congestion state. This is to indicate the severity 95 of the Congestion 96 97 noCongestion(1) - No Congestion 98 Congested(2) - Congested 99 SeverelyCongested(3) - Severely Congested." 100 SYNTAX INTEGER { 101 noCongestion(1), 102 congested (2), 103 severelyCongested(3) 104 } 105 106-- 107-- FCC Configuration 108-- 109 110cFCCEnable OBJECT-TYPE 111 SYNTAX INTEGER { 112 enable(1), 113 disable(2) 114 } 115 MAX-ACCESS read-write 116 STATUS current 117 DESCRIPTION 118 "To enable/disable FCC on the device." 119 DEFVAL { disable } 120 ::= { cFCCConfig 1 } 121 122cFCCPacketPriority OBJECT-TYPE 123 SYNTAX Integer32(0..7) 124 MAX-ACCESS read-write 125 STATUS current 126 DESCRIPTION 127 "The traffic Priority for the FCC packets. The generated 128 FCC quench packets should be granted high, but not 129 highest priority, so that the FCC packet priority 130 is higher than the normal data traffic priority but lower 131 than control and critical traffic priority. This ensures 132 that the packets of the protocols guaranteeing the 133 proper behavior of the fabric are not disturbed by 134 quench packets. 135 136 0 is the lowest priority and 7 is the highest." 137 DEFVAL { 4 } 138 ::= { cFCCConfig 2 } 139 140cFCCNotificationEnable OBJECT-TYPE 141 SYNTAX TruthValue 142 MAX-ACCESS read-write 143 STATUS current 144 DESCRIPTION 145 "This object specifies whether the agent should 146 generate the notifications defined in this MIB 147 module. 148 If the value of this object is 'true', then the 149 notifications are generated. 150 If the value of this object is 'false', then the 151 notifications are not generated." 152 DEFVAL { false } 153 ::= { cFCCConfig 3 } 154 155-- 156-- FCC Port Data 157-- 158 159cFCCPortTable OBJECT-TYPE 160 SYNTAX SEQUENCE OF CFCCPortEntry 161 MAX-ACCESS not-accessible 162 STATUS current 163 DESCRIPTION 164 "A table providing statistics and status for FCC 165 on a per FC Port basis." 166 ::= { cFCCPortEntries 1 } 167 168cFCCPortEntry OBJECT-TYPE 169 SYNTAX CFCCPortEntry 170 MAX-ACCESS not-accessible 171 STATUS current 172 DESCRIPTION 173 "Each entry contains the FCC statistics and 174 status for a particular FC port identified 175 by the value of ifIndex." 176 INDEX { ifIndex 177 } 178 ::= { cFCCPortTable 1 } 179 180CFCCPortEntry::= 181 SEQUENCE { 182 cFCCEdgeQuenchPktsRecd Counter32, 183 cFCCEdgeQuenchPktsSent Counter32, 184 cFCCPathQuenchPktsRecd Counter32, 185 cFCCPathQuenchPktsSent Counter32, 186 cFCCCurrentCongestionState CiscoFCCCongestionState, 187 cFCCLastCongestedTime TimeStamp, 188 cFCCLastCongestionStartTime TimeStamp, 189 cFCCIsRateLimitingApplied TruthValue 190} 191 192cFCCEdgeQuenchPktsRecd OBJECT-TYPE 193 SYNTAX Counter32 194 MAX-ACCESS read-only 195 STATUS current 196 DESCRIPTION 197 "The number of Edge Quench packets received and processed 198 on this Port." 199 ::= { cFCCPortEntry 1 } 200 201cFCCEdgeQuenchPktsSent OBJECT-TYPE 202 SYNTAX Counter32 203 MAX-ACCESS read-only 204 STATUS current 205 DESCRIPTION 206 "The number of Edge Quench packets generated on this 207 Port as result of congestion." 208 ::= { cFCCPortEntry 2 } 209 210cFCCPathQuenchPktsRecd OBJECT-TYPE 211 SYNTAX Counter32 212 MAX-ACCESS read-only 213 STATUS current 214 DESCRIPTION 215 "The number of Path Quench packets recieved and processed 216 on this Port." 217 ::= { cFCCPortEntry 3 } 218 219cFCCPathQuenchPktsSent OBJECT-TYPE 220 SYNTAX Counter32 221 MAX-ACCESS read-only 222 STATUS current 223 DESCRIPTION 224 "The number of Path Quench packets generated on this 225 Port as result of congestion." 226 ::= { cFCCPortEntry 4 } 227 228cFCCCurrentCongestionState OBJECT-TYPE 229 SYNTAX CiscoFCCCongestionState 230 MAX-ACCESS read-only 231 STATUS current 232 DESCRIPTION 233 "The current FCC congestion state of this Port indicating the 234 severity of the congestion." 235 ::= { cFCCPortEntry 5 } 236 237cFCCLastCongestedTime OBJECT-TYPE 238 SYNTAX TimeStamp 239 MAX-ACCESS read-only 240 STATUS current 241 DESCRIPTION 242 "The value of sysUpTime at the most recent time the 243 congestion state of the Port changed to noCongestion(1) 244 from some other value. 0 if the congestion state of 245 the Port has never transitioned to noCongestion(1) 246 since the last restart of the device." 247 ::= { cFCCPortEntry 6 } 248 249cFCCLastCongestionStartTime OBJECT-TYPE 250 SYNTAX TimeStamp 251 MAX-ACCESS read-only 252 STATUS current 253 DESCRIPTION 254 "The value of sysUpTime at the most recent time the 255 congestion state (value of corresponding instance of 256 'cFCCCurrentCongestionState') of the Port changed from 257 'noCongestion' to some other value. 0 if the congestion 258 state of the Port has never transitioned from 259 'noCongestion' to some other value since the last 260 restart of the device." 261 ::= { cFCCPortEntry 7 } 262 263cFCCIsRateLimitingApplied OBJECT-TYPE 264 SYNTAX TruthValue 265 MAX-ACCESS read-only 266 STATUS current 267 DESCRIPTION 268 "The value of this object indicates if the rate 269 limiting is currently being applied on this Port. 270 If the value of this object is 'true', the rate 271 limiting is currently being applied on this 272 Port. If the value of this object is 'false', the 273 rate limiting is not being applied currently on 274 this Port." 275 ::= { cFCCPortEntry 8 } 276 277-- 278-- Objects for notification only 279-- 280 281cFCCCongestionSourceID OBJECT-TYPE 282 SYNTAX FcAddressId 283 MAX-ACCESS accessible-for-notify 284 STATUS current 285 DESCRIPTION 286 "The FC_ID associated with the Source causing 287 the congestion. The value is extracted from 288 the FCC congestion quench packet." 289 ::= { cFCCNotifObjects 1 } 290 291cFCCCongestionDestinationID OBJECT-TYPE 292 SYNTAX FcAddressId 293 MAX-ACCESS accessible-for-notify 294 STATUS current 295 DESCRIPTION 296 "The FC_ID associated with the Destination that 297 is part of Source-Destination Flow causing the 298 congestion. The value is extracted from the 299 FCC congestion quench packet." 300 ::= { cFCCNotifObjects 2 } 301 302cFCCCongestionNotifyVSANIndex OBJECT-TYPE 303 SYNTAX VsanIndex 304 MAX-ACCESS accessible-for-notify 305 STATUS current 306 DESCRIPTION 307 "Id of the VSAN containing the Source-Destination 308 flow causing the congestion. The value is extracted 309 from the FCC congestion quench packet. This along 310 with cFCCCongestionSourceID and 311 cFCCCongestionDestinationID gives the Flow causing 312 the congestion." 313 ::= { cFCCNotifObjects 3 } 314 315cFCCCongestionState OBJECT-TYPE 316 SYNTAX CiscoFCCCongestionState 317 MAX-ACCESS accessible-for-notify 318 STATUS current 319 DESCRIPTION 320 "This is to indicate the congestion state of the port." 321 ::= { cFCCNotifObjects 4 } 322 323-- 324-- Notifications 325-- 326 327ciscoFCCCongestionStateChange NOTIFICATION-TYPE 328 OBJECTS {ifIndex , 329 cFCCCongestionState} 330 STATUS current 331 DESCRIPTION 332 "Notification to indicate that the congestion state of 333 this port has changed. cFCCCongestionState indicates 334 the new state of the port." 335 ::= { ciscoFCCMIBNotifs 1 } 336 337ciscoFCCCongestionRateLimitStart NOTIFICATION-TYPE 338 OBJECTS {ifIndex, 339 cFCCCongestionSourceID, 340 cFCCCongestionDestinationID, 341 cFCCCongestionNotifyVSANIndex} 342 STATUS current 343 DESCRIPTION 344 "Notification to indicate that the rate limiting has 345 begun on this port for a source-destination pair." 346 ::= { ciscoFCCMIBNotifs 2 } 347 348ciscoFCCCongestionRateLimitEnd NOTIFICATION-TYPE 349 OBJECTS {ifIndex, 350 cFCCCongestionSourceID, 351 cFCCCongestionDestinationID, 352 cFCCCongestionNotifyVSANIndex} 353 STATUS current 354 DESCRIPTION 355 "Notification to indicate that the rate limiting has 356 been stopped on this port for a source-destination 357 pair." 358 ::= { ciscoFCCMIBNotifs 3 } 359 360-- 361-- Conformance 362-- 363 364ciscoFCCMIBCompliances OBJECT IDENTIFIER ::= {ciscoFCCMIBConformance 1} 365ciscoFCCMIBGroups OBJECT IDENTIFIER ::= {ciscoFCCMIBConformance 2} 366 367ciscoFCCMIBCompliance MODULE-COMPLIANCE 368 STATUS deprecated -- superseded by 369 -- ciscoFCCMIBComplianceRev1 370 DESCRIPTION 371 "The compliance statement for entities which implement the 372 CISCO-FCC-MIB." 373 MODULE 374 MANDATORY-GROUPS {cFCCConfigurationGroup, 375 cFCCPortEntriesGroup, 376 cFCCNotificationObjectsGroup, 377 cFCCNotificationGroup} 378 379 ::= { ciscoFCCMIBCompliances 1 } 380 381ciscoFCCMIBComplianceRev1 MODULE-COMPLIANCE 382 STATUS current 383 DESCRIPTION 384 "The compliance statement for entities which implement the 385 CISCO-FCC-MIB." 386 MODULE 387 MANDATORY-GROUPS {cFCCConfigurationGroup, 388 cFCCPortEntriesGroupRev1, 389 cFCCNotificationObjectsGroup, 390 cFCCNotificationGroup} 391 392 ::= { ciscoFCCMIBCompliances 2 } 393 394-- 395-- Units of Conformance 396-- 397 398cFCCConfigurationGroup OBJECT-GROUP 399 OBJECTS {cFCCEnable, 400 cFCCPacketPriority, 401 cFCCNotificationEnable} 402 STATUS current 403 DESCRIPTION 404 "A collection of objects for FCC configuration." 405 ::= { ciscoFCCMIBGroups 1 } 406 407cFCCPortEntriesGroup OBJECT-GROUP 408 OBJECTS {cFCCEdgeQuenchPktsRecd, 409 cFCCEdgeQuenchPktsSent, 410 cFCCPathQuenchPktsRecd, 411 cFCCPathQuenchPktsSent, 412 cFCCCurrentCongestionState, 413 cFCCLastCongestedTime} 414 STATUS deprecated 415 DESCRIPTION 416 "A collection of objects for FCC Statistics and Status." 417 ::= { ciscoFCCMIBGroups 2 } 418 419cFCCNotificationObjectsGroup OBJECT-GROUP 420 OBJECTS {cFCCCongestionDestinationID, 421 cFCCCongestionSourceID, 422 cFCCCongestionNotifyVSANIndex, 423 cFCCCongestionState} 424 STATUS current 425 DESCRIPTION 426 "A collection of objects defined for notification only." 427 ::= { ciscoFCCMIBGroups 3 } 428 429cFCCNotificationGroup NOTIFICATION-GROUP 430 NOTIFICATIONS {ciscoFCCCongestionStateChange, 431 ciscoFCCCongestionRateLimitStart, 432 ciscoFCCCongestionRateLimitEnd} 433 STATUS current 434 DESCRIPTION 435 "A collection of notifications for Congestion Monitoring." 436 ::= { ciscoFCCMIBGroups 4 } 437 438cFCCPortEntriesGroupRev1 OBJECT-GROUP 439 OBJECTS {cFCCEdgeQuenchPktsRecd, 440 cFCCEdgeQuenchPktsSent, 441 cFCCPathQuenchPktsRecd, 442 cFCCPathQuenchPktsSent, 443 cFCCCurrentCongestionState, 444 cFCCLastCongestedTime, 445 cFCCLastCongestionStartTime, 446 cFCCIsRateLimitingApplied} 447 STATUS current 448 DESCRIPTION 449 "A collection of objects for FCC Statistics and Status." 450 ::= { ciscoFCCMIBGroups 5 } 451 452END 453 454