QLogic Support
 
 
 
Skip Navigation

Announcements

Dear Customers,


Cavium is in the process of systems integration with the QLogic systems into one combined system for all products. Please bear with us during this process.


For warranty/service verification, please provide your product serial number(s)when contacting support. Serial numbers are located on product bar code labels or from management tools.


Ask Search:
Customer Support Article

How To Use The SNMP MIBs To Gather Performance Throughput On A Port

  • September 10, 2014
  • ·
  • Like
  • 1

Summary

By default, the supported SNMP MIBs for the QLogic FC switches do not include throughput data in MB/sec. As a workaround, use a SNMPget command to a particular OID defined in the supported MIBs done at regular intervals (1/sec), calculate the difference, then average it out to determine the MB/sec throughput.

Answer

By default, the supported SNMP MIBs for the QLogic FC switches do not include throughput data in MB/sec. As a workaround, use a SNMPget command to a particular OID defined in the supported MIBs done at regular intervals (1/sec), calculate the difference, then average it out to determine the MB/sec throughput.

Example:

First, determine which port counter or other port statistic to monitor. In this example, using connUnitPortStatCountTxElements as defined in the Fibre Alliance 4.0 MIB (FA_40.mib). See the SNMP manual included with the MIB download.

Do an snmpwalk of connUnitPortStatTable using snmp command (Linux snmp tools):

# snmpwalk -v1 -O b -c public -m MIB:./fa_40.mib 10.31.71.100 connUnitPortStatTable
In this output, it will return the connUnitPortStatCountTxElements values for each port. The output syntax is 'OID.<switch_wwn>.0.0.0.0.0.0.0.0.<port#> = value'. Note: the <switch_wwn> is in hex format, as is the value returned. The <port#> is 1-based. So switch port 0, starts at 1 on this 20 port switch.


Extracted:

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.1= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.2= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.3= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.4= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.5= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.6= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.7= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.8= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.9= Hex-STRING: 00 00 00 00 01 A2 43 80

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.10= Hex-STRING: 00 00 00 00 01 A2 4D C4

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.11= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.12= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.13= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.14= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.15= Hex-STRING: 00 00 00 00 00 46 7D 28

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.16= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.17= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.18= Hex-STRING: 00 00 00 00 00 01 92 20

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.19= Hex-STRING: 00 00 00 00 00 00 00 00

FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.20= Hex-STRING: 00 00 00 00 00 01 91 54


Using value returned for port 8 which is 01A24380 (hex), converting it to decimal would return 27411328 (This is the number of bytes transmitted on a port):


FCMGMT-MIB::connUnitPortStatCountTxElements.16.0.0.192.221.6.250.180.0.0.0.0.0.0.0.0.9= Hex-STRING: 00 00 00 00 01 A2 43 80


To verify it matches the port statistics counter, using telnet (clish), do the 'show port x' (x=port#) command:


SANbox5602.100 #> show port 8


Port Number: 8

------------

AdminState Online OperationalState Online

AsicNumber 0 PerfTuningMode Normal

AsicPort 8 PortID 020800

ConfigType GL PortWWN 20:08:00:c0:dd:06:fa:b4

DiagStatus Passed RunningType F

EpConnState None MediaPartNumber JSH-42S4AA3

EpIsoReason NotApplicable MediaRevision

IOStreamGuard Enabled MediaType 400-M5-SN-I

LinkSpeed 4Gb/s MediaVendor JDS UNIPHASE

LinkState Active MediaVendorID 0000019c

LoginStatus LoggedIn SymbolicName Port8

MaxCredit 16 SyncStatus SyncAcquired

MediaSpeeds 1Gb/s, 2Gb/s, 4Gb/s XmitterEnabled True

ALInit 5 LIP_F8_AL_PS 0

ALInitError 0 LIP_F8_F7 0

BadFrames 0 LinkFailures 3

Class2FramesIn 0 Login 4

Class2FramesOut 0 Logout 4

Class2WordsIn 0 LoopTimeouts 0

Class2WordsOut 0 LossOfSync 4

Class3FramesIn 1740 PrimSeqErrors 0

Class3FramesOut 15550 RxLinkResets 4

Class3Toss 0 RxOfflineSeq 0

Class3WordsIn 26339 TotalErrors 19

Class3WordsOut 6852832 TotalLinkResets 4

DecodeErrors 16 TotalLIPsRecvd 2

EpConnects 0 TotalLIPsXmitd 5

FBusy 0 TotalOfflineSeq 5

FlowErrors 0 TotalRxFrames 1740

FReject 0 TotalRxWords 26339

InvalidCRC 0 TotalTxFrames 15550

InvalidDestAddr0
TotalTxWords 6852832

LIP_AL_PD_AL_PS 0 TxLinkResets 0

LIP_F7_AL_PS 0 TxOfflineSeq 5

LIP_F7_F7 2

SANbox#>

connUnitPortStatCountTxElement matches up with 'TotalTxWords x 4'. connUnitPortStatCountTxElement returns the number of bytes transferred on a port. TotalTxWords returns the total number of FC words transmitted on a port. One FC word is 4 Bytes. So, to determine the total number of bytes transmitted on a port, take the TotalTxWords value multiplied by four and that should match the value returned for connUnitPortStatCountTxElements converted to decimal.


Now, to determine throughput, at regular intervals (1/sec) do the same snmpget command to get the before and after values, calculate the difference, and that will give you the number of Bytes transferred in one second.

Attachment