QLogic Support
 
 
 
Skip Navigation

Announcements

Dear Customers,


QLogic Global Training has released the new FlexCert™ Certification program. Sales and Technical Professionals will be able to earn a certification in a modular format, taking the modules that are relevant for their current or future positions. Check out the What’s New tab at the top of the QLogic Training site.


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