Brocade® Product Training
Brocade® Product Training
Brocade® Product Training
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Brocade ®<br />
1<br />
<strong>Product</strong> <strong>Training</strong><br />
Diagnostics and Troubleshooting<br />
Brocade Education Services<br />
© 2005 Brocade Communications Systems,<br />
Incorporated.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 1<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 1
Learning Objectives and Topics<br />
2<br />
Describe troubleshooting processes and best practices<br />
‣ Gather, Analyze & Solve (GAS)<br />
‣ Predictive SAN problems<br />
Identify and categorize problems and associated<br />
commands that fall into the following categories:<br />
Timeout/ Sluggishness; Segmented Fabric; Port<br />
Configuration Issue; Missing device; Marginal link<br />
Discuss SAN troubleshooting approaches<br />
Describe switchshow & errshow<br />
Discuss supportshow & some associated commands<br />
Introduce hardware diagnostics<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 2<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 2
Troubleshooting - Divide and Conquer<br />
3<br />
P<br />
o<br />
w<br />
e<br />
r<br />
O<br />
n<br />
S<br />
w<br />
i<br />
t<br />
c<br />
h<br />
P Light/<br />
O Signal<br />
S<br />
T<br />
-<br />
Power<br />
On<br />
Test<br />
LINK LOGIN FABRIC DEVICES<br />
Char<br />
Sync/<br />
Word<br />
Sync<br />
S<br />
p<br />
e<br />
e<br />
d<br />
N<br />
e<br />
g<br />
Hardware Diags/<br />
Marginal Links<br />
Loop<br />
Init /<br />
Link<br />
Init<br />
F<br />
L<br />
O<br />
G<br />
I<br />
S<br />
E<br />
C<br />
U<br />
R<br />
I<br />
T<br />
Y<br />
ACL<br />
P<br />
L<br />
O<br />
G<br />
I<br />
N<br />
S<br />
Query/<br />
Registr.<br />
Configuration/CLI Commands<br />
Portlog Analysis<br />
Device<br />
Exists<br />
In<br />
NS<br />
Device<br />
Exists<br />
In<br />
Remote<br />
NS<br />
Z<br />
O<br />
N<br />
I<br />
N<br />
G<br />
Troubleshooting<br />
Divide and Conquer<br />
Nx_port1<br />
communicates<br />
with<br />
Nx_port2<br />
L<br />
u<br />
n<br />
M<br />
a<br />
s<br />
k<br />
i<br />
n<br />
g<br />
D<br />
e<br />
v<br />
i<br />
c<br />
e<br />
D<br />
r<br />
i<br />
v<br />
e<br />
r<br />
s<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 3<br />
GATHER, ANALYZE, and SOLVE (GAS) represent the 3 main processes that flow throughout<br />
this course.<br />
We will GATHER, ANALYZE, and SOLVE and sometimes even PRESENT to make sure devices<br />
go through (GASP):<br />
Link Login Fabric Devices<br />
Connection occurred can see it in the fabric can see it<br />
(LIVE LONG FABRIC DEVICES)<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 3
Predictive SAN Problems<br />
Brocade Support Department’s Problem Areas<br />
4<br />
Typical trouble calls today are related to switch<br />
maintenance and monitoring - in alphabetical order<br />
Firmware download<br />
Fabric Watch (FW) error message interpretation<br />
Password recovery<br />
SNMP<br />
Common SAN problems related to device performance and<br />
connectivity issues - in alphabetical order<br />
Configuration Problems - Port/ device/ switch is not correctly<br />
configured<br />
License Problems - Customers do not have a full fabric license 1 ;<br />
Customers do not have the license to do what they are attempting;<br />
Single use transaction key used to retrieve switch license expired 2<br />
Marginal Links - Bad or marginal cables/GBICs/SFPs<br />
Zoning Problems - Zoning is not configured correctly<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 4<br />
Footnote 1: A single use transaction key is used to retrieve an expired switch license. The customer used a transaction key and<br />
did not read the switch license correctly. The customer then tried to go back into SLK using the same transaction key, but the<br />
transaction key can only be used once.<br />
Footnote 2:The customer used a transaction key and did not read the switch license correctly. The customer then tried to go<br />
back into SLK using the same transaction key, but the transaction key can only be used once.<br />
Associated supportshow command outputs:<br />
•Configuration Problems: configshow; portcfgshow, slotshow.Additional non supportshow configuration<br />
related commands: configupload, switchstatuspolicyset/show, ifmodeshow, ipaddrshow 4 (the 4<br />
operand is not needed on non v4.x switches), hashow, powerofflist, firmwareshow, firmwarestatus,<br />
fabstatsshow and configure and HBA configuration considerations (drivers, settings, & relationships with OSs).<br />
•Brocade Zoning Problems: cfgshow, nscamshow (not in v4.0.2 supportshow output at this time). Additional non<br />
supportshow zoning related commands: portzoneshow<br />
•Brocade QuickLoop Problems: qlshow (this feature is not available on v4.x switches)<br />
•License Problems: licenseshow. Additional non supportshow license related commands: licenseidshow,<br />
lutil.<br />
•Marginal Link Problems: switchshow; nsshow; porterrshow; portshow , portstatsshow<br />
Associated dual CP supportshow high availability (HA) command outputs:<br />
•supportshow commands to check switch status: slotshow, chassisshow, historyshow.<br />
•Additional dual CP non supportshow status checking commands: hashow, powerofflst, firmwareshow,<br />
firmwarestatus, killtelnet.<br />
The Brocade Support Department asks the customer to recreate the problem, capture a supportshow output, and to submit the<br />
output along with any troubleshooting steps already performed.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 4
Generic SAN Problem Possible Causes<br />
5<br />
1. Timeout/sluggishness ISL overloaded, insufficient BB-credit, marginal link<br />
2. Segmented Fabric Wrong product license, Domain ID conflicts, zoning<br />
conflicts, incompatible switch parameters<br />
3. Port/Node configuration Port/node offline and/or configured in wrong<br />
topology, incompatible node parameters or device drivers<br />
4. Missing Device Nx_Port is not registered with the name server, zoning is<br />
enabled and device is not in the zone, LUN masking is enabled and device is not<br />
properly defined, application accessing device is not configured correctly<br />
5. Marginal Link Unhealthy device or incomplete connection to device (bad<br />
contact), intermittent transmitting/receiving signal<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 5<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 5
Timeout/Sluggishness<br />
6<br />
Start<br />
What are the specifics<br />
regarding timeout<br />
symptoms?<br />
Congestion<br />
Marginal Link<br />
1<br />
Insufficient BB-Credit<br />
2<br />
Use Marginal Link<br />
Troubleshooting<br />
Flowchart<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 6<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 6
Timeout/Sluggishness – (cont’d)<br />
Label Analysis Commands with an “A” and Solve Commands with an “S”:<br />
1 2<br />
7<br />
Congestion Related<br />
Commands/Tools<br />
portperfshow<br />
topologyshow<br />
urouteshow<br />
linkcost/lsdbshow<br />
porterrshow<br />
errshow/mqshow<br />
portstatsshow<br />
PerfMon & Scripts/API<br />
Fabric Watch<br />
spinfab<br />
BB-Credit Related<br />
Commands/Tools<br />
FC Analyzer<br />
portstatsshow<br />
portlogdump<br />
portcfgshow √ distance<br />
Check HBA configuration<br />
from its utility<br />
How can we solve these types of<br />
problems?<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 7<br />
Localize<br />
Trunk<br />
Add ISLs<br />
Footnote 1: Look at TX/RX counters in porterrshow<br />
Footnote 2: Execute Performance Monitor (PM) commands at the command line<br />
and write scripts to chronologically capture this output.<br />
Footnote 3: Web Tools port stats can also be used to monitor<br />
Footnote 4: Look in portlogdump for LINK FAILURES (LF’s), LINK<br />
RESET’s (LR’s), and Timeouts (TMO’s)<br />
Footnote 5: BB_Credits can be changed using the configure command but all<br />
switches in the Fabric need to have the same BB_credit value<br />
Additionally check for long distance SAN implementations – Are long distance<br />
SAN’s (over 10km) being implemented without the Extended Fabric License?<br />
Check portcfgshow output for BB credit allocations related to long distance<br />
SAN implementations.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 7
Marginal Link<br />
8<br />
Start<br />
Move suspected marginal<br />
interface media to different<br />
port (See tip #1)<br />
Re-run the failing<br />
application to<br />
replicate the error<br />
(See tip #2)<br />
Does the error<br />
follow?<br />
No<br />
Run crossporttest<br />
in single port mode<br />
Does the test<br />
fail?<br />
Yes<br />
No<br />
Replace with known good<br />
media (See tip #3)<br />
Focus on Nx-Port<br />
(See Note 1)<br />
Yes<br />
Run loopporttest<br />
fporttest, spinfab<br />
or porttest<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 8<br />
Tip#1 – Interface media consists of GBIC/SFP, or Fibre Channel cable. Move each medium one at a<br />
time. Use porterrshow statistics to determine most likely medium to move 1 st .<br />
Tip#2 – If the original marginal link error was not initiated by I/O activities or POST, then run<br />
crossporttest to verify. While crossporttest is running, check the 8 statistic counts via<br />
errshow, porterrshow or portshow command outputs.<br />
Tip#3 – Always verify that new media is “known good”. If the error was not initiated by I/O<br />
activities or POST, then run crossporttest to verify correction.<br />
Note 1 – You have isolated the problem, it is the Nx_Port (HBA or storage controller card). Use the<br />
Nx_Port utilities to troubleshoot this problem. Suggestion: You may need to verify with the latest<br />
HBA/controller driver before replacing the device. Check the vendor compatibility matrix.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 8
Segmented Fabric<br />
9<br />
Start<br />
What are the specific<br />
Fabric segment<br />
symptoms?<br />
Domain ID conflict<br />
1<br />
Incompatible switch<br />
parameters<br />
2<br />
Zoning conflict<br />
3<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 9<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 9
Segmented Fabric – (cont’d)<br />
Label Analysis Commands with an “A” and Solve Commands with an “S”:<br />
1 2<br />
3<br />
10<br />
Domain Related<br />
Commands<br />
configshow<br />
configure<br />
fabricshow<br />
Incompatible Switch<br />
Parameter Related<br />
Commands<br />
<br />
<br />
<br />
<br />
<br />
configshow<br />
configure<br />
configdownload<br />
configupload<br />
portcfgshow<br />
Zoning Related<br />
Commands<br />
<br />
<br />
<br />
<br />
<br />
<br />
cfgshow<br />
licenseshow<br />
fashow<br />
portzoneshow<br />
zonehelp<br />
Zoning commands:<br />
‣ cfgcreate<br />
‣ zoneadd<br />
‣ alidelete<br />
FM 4.x Fabric merge capability, switchshow,<br />
errshow, fabstatsshow & portshow<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 10<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 10
Port Configuration<br />
11<br />
Start<br />
What are the specific<br />
port configuration<br />
symptoms?<br />
Topology related<br />
Speed related<br />
1<br />
Trunking related<br />
2<br />
3<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 11<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 11
Port Configuration – (cont’d)<br />
Label Analysis Commands with an “A” and Solve Commands with an “S”:<br />
12<br />
1 2<br />
3<br />
Topology Related<br />
Commands<br />
Trunking Related<br />
Commands<br />
Speed Related<br />
Commands<br />
configshow<br />
version 4<br />
version 4<br />
licenseshow 1<br />
licenseshow switchcfgspeed<br />
portshow<br />
portcfgtrunk portcfgspeed<br />
portcfglport<br />
switchcfgtrunk portcfglongdistance<br />
portcfggport<br />
trunkshow<br />
licenseshow<br />
portcfgeport<br />
islshow<br />
portshow<br />
fabricshow<br />
trunkdebug<br />
Web Tools<br />
topologyshow<br />
Web Tools<br />
Check HBA<br />
configuration 3<br />
portcfgshow 2 , switchshow & portlogdump<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 12<br />
Footnote 1: licenseshow can be used to validate switch has a full Fabric<br />
license, entry Fabric licenses only allow you to cascade to one other switch.<br />
There are also OEM “special” Fabric licenses that will only allow you to<br />
cascade to “n” switches, where n is defined by OEM. These switches<br />
would have different switch types than those listed under<br />
switchshow in reference guide.<br />
Footnote 2: For FOS versions prior to v3.x use portcfgeport,<br />
portcfglport, and portcfggport to independently view<br />
portcfgshow outputs.<br />
Footnote 3: Check OEM and/or Brocade compatibility matrices for correct driver<br />
version. Check Brocade release notes and Brocade Connect for known issues.<br />
Check HBA manufacturer’s web site release notes and FAQs.<br />
Footnote 4: The version command output can be used to determine if the switch<br />
is capable of performing configuration function. Ex: Switches with less than<br />
v3.x are not capable of speeds greater than 1 Gbit/sec, they are also not capable<br />
of trunking.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 12
Missing Device<br />
Start<br />
13<br />
Does device have a<br />
good physical connection<br />
to the Fabric?<br />
(See tip#1)<br />
No<br />
Use Marginal Link<br />
Troubleshooting<br />
Flowchart<br />
Yes<br />
Is the device<br />
logically connected<br />
to the Fabric?<br />
(See tip#2)<br />
Yes<br />
Does the device<br />
correctly follow FC<br />
connection protocol?<br />
(See tip#3)<br />
Yes<br />
Check zoning,<br />
QuickLoop (See<br />
tip#4) and LUN<br />
masking<br />
configurations<br />
No<br />
No<br />
Is there a port<br />
configuration problem?<br />
Yes<br />
Use port/node configuration<br />
troubleshooting commands/tools<br />
No<br />
Run loopporttest<br />
fporttest, spinfab<br />
or porttest<br />
Use device troubleshooting procedures<br />
(See tip#5)<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 13<br />
Tip#1 – Visually check port LEDs status, and use the switchshow port state command output to<br />
check link status.<br />
Tip#2 – use the nsshow, nsallshow and nscamshow commands.<br />
Tip#3 – Issue portlogclear and force the device to log into the Fabric (portdisable then<br />
portenable), then analyze the portlogdump/show or portlogdumpport command outputs and/or use a FC analyzer.<br />
Tip#4 – Prior to Brocade Fabric OS v2.6, the Name Server does not have QuickLoop entries. Check<br />
the QuickLoop database using the qlshow command for firmware releases less than v2.6. Use<br />
the cfgshow and nscamshow commands to check zoning.<br />
Tip#5 – Check host log files, compatibility matrices and vendor web sites (HBA, server, storage).<br />
Statistically, the most common culprit is the device driver (usually a mismatch with server OS<br />
version).<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 13
SAN Troubleshooting Approach<br />
14<br />
Host<br />
Fibre Channel Fabric<br />
Storage<br />
The “Cable”<br />
To troubleshoot this scenario (assuming a single switch SAN),<br />
you must concentrate on:<br />
‣The Storage<br />
‣The Host<br />
‣The HBA<br />
‣The Host OS/Driver<br />
‣The Cable/Terminator<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 14<br />
‣The FC Media (SFPs/GBICs/GLMs)<br />
‣The Switch and Brocade Fabric OS<br />
‣Heterogeneity<br />
How do you troubleshoot?<br />
Start at the switch switchshow and error log then look<br />
at additional supportshow output<br />
At a conceptual level there are really only three “pieces”: the storage, the host and the<br />
“cable”.<br />
Start in the middle and determine if you are “above” or “below” the problem.<br />
HBA – Host Bus Adapter<br />
GBIC – Gigabit Interface Converter<br />
SFP – Small Form Factor Pluggable<br />
GLM – Gigabit Link Modules<br />
How do you troubleshoot this? Use the process of deduction and logical elimination with<br />
an added caveat – Fabric problems could effect other devices in the Fabric. An example<br />
would be a marginal connection to an HBA. This could cause problems to any devices this<br />
marginally connected HBA accesses. This would not have occurred outside of the SCSI bus<br />
in the traditional world.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 14
Start at the Switch... Divide and Conquer<br />
RSL_SWT153:admin> switchshow<br />
switchName: RSL_SWT153<br />
switchType: 9.1<br />
switchState: Online<br />
switchMode: Native<br />
switchRole: Principal<br />
switchDomain: 1<br />
switchId: fffc01<br />
switchWwn: 10:00:00:60:69:50:0d:d6<br />
switchBeacon: OFF<br />
Zoning:<br />
ON (Main_cfgA)<br />
port 0: id N2 No_Light<br />
port 1: id N2 No_Light<br />
port 2: id N2 No_Light<br />
port 3: id N2 Online<br />
Loopback->3<br />
port 4: id N2 Online<br />
E-Port (segmented,incompatible,(Op Mode incompatible))<br />
port 5: id N2 Online<br />
E-Port (segmented,incompatible,(Op Mode incompatible))<br />
port 6: id N2 Online<br />
E-Port (segmented,incompatible,(Op Mode incompatible))<br />
port 7: id N2 Online<br />
E-Port (segmented,incompatible,(Op Mode incompatible))<br />
port 8: id N2 Online<br />
E-Port (segmented,incompatible,(Op Mode incompatible))<br />
port 9: id N2 Online<br />
E-Port (segmented,incompatible,(Op Mode incompatible))<br />
port 10: id N2 Online<br />
E-Port (segmented,incompatible,(Op Mode incompatible))<br />
port 11: id N2 Online<br />
E-Port (segmented,incompatible,(Op Mode incompatible))<br />
port 12: id N2 No_Light<br />
port 13: id N2 No_Light<br />
port 14: id N2 No_Light<br />
port 15: id N2 No_Light<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 15<br />
15<br />
errshow is the best tool to determine why there is a segmentation issue. Look for fabric.ops issues (domain overlaps,<br />
mismatched parameters), or look for zoning errors like cfg mismatch. The error log should be consulted first.<br />
The portshow command can also be used to analyze fabric segmentation issues.<br />
To see a generic reason for segmentation:<br />
RSL_SWT153:admin> fabstatsshow<br />
Description<br />
Count Port Time<br />
---------------------------------------------------------------<br />
Domain ID forcibly changed: 0<br />
E_Port offline transitions: 0<br />
Reconfigurations: 1 8 SUN MAY 15 18:16:46 2022<br />
Segmentations due to:<br />
Loopback: 0<br />
Incompatibility: 8 < SUN MAY 15 03:02:16 2022<br />
Overlap: 0<br />
Zoning: 0<br />
Routing: 0<br />
Licensing: 0<br />
Disabling E_Port: 0<br />
Incompatible platform DB: 0<br />
Security violation: 0<br />
Security incompatibility: 0<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 15
Error Logs and Sample Log Entry<br />
Error 02<br />
0x10fbdca0 (tSwitch): Feb 17 19:21:29<br />
Error DIAG-POST_SKIPPED, 3, (999)<br />
Skipped POST tests: assuming all ports are healthy,<br />
Err# 0004<br />
Task ID<br />
Task Name<br />
Date and Time<br />
of Occurrences<br />
Error Message Code = Error Types<br />
Error Types, and Error<br />
Level, (Level 3)<br />
Error Description<br />
16<br />
Logs can be forwarded to six locations using syslogdipadd<br />
Log file sizes for Loom and Bloom differ<br />
v2.x/3.x circular log with 64 entries, viewed with errshow<br />
v4.x circular log with 1536 entries (256 entries per message level)<br />
Persistent log saves errors across reboots, viewed with errshow -p<br />
Persistent log can be resized from 1024 to 2048 with errnvlogsizeset<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 16<br />
errdump<br />
•This command displays the error log, and shows all entries without page breaks. It is identical to<br />
errshow, except that errshow prompts the user to press Return between each log entry.<br />
•Error numbers start at one. If there are more errors than the size of the log, only the most recent<br />
errors are shown. If you want to keep a log of more errors, invoke the syslogipadd command.<br />
•Error Count - For errors that occur multiple times, the repeat count is shown in parentheses at the<br />
end of the first line of output just after the time stamp. The maximum count is 999.<br />
•Error Type - An upper-case string shows the error type.<br />
•Error Level (Note - Level information reflects SNMP usage):<br />
0 panic (the switch reboots)<br />
1 critical<br />
2 error<br />
3 warning<br />
4 information<br />
5 debugging<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 16
Brocade Support Department Procedures<br />
supportshow<br />
17<br />
<br />
<br />
<br />
<br />
supportshow is a “super” command<br />
Group of pre-selected Fabric OS and LINUX commands<br />
Commands can be controlled<br />
supportshowcfgshow<br />
supportshowcfgenable<br />
supportshowcfgdisable<br />
When executed, it will gather information and display numerous<br />
Brocade Fabric OS command outputs on the terminal screen<br />
If the problem can be reproduced:<br />
1. Clear the old portlog by invoking portlogclear<br />
2. Recreate the problem or force suspected port to login<br />
3. Capture supportshow<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 17<br />
supportshowcfgshow<br />
supportshowcfgenable<br />
Display which groups of commands are enabled to display under<br />
supportshow.<br />
Enable a group of commands to display under supportshow.<br />
supportshowcfgenable [os | exception | port | fabric | services |<br />
security | network | portlog | system extend | filter | perfmon]<br />
supportshowcfgdisable<br />
Disable a group of commands from displaying under<br />
supportshow.<br />
supportshowcfgdisable [os | exception | port | fabric | services |<br />
security | network | portlog | system extend | filter | perfmon]<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 17
supportshow Command Groups<br />
18<br />
switch:admin> supportshowcfgshow<br />
os<br />
enabled<br />
exception enabled<br />
port enabled<br />
fabric enabled<br />
services enabled<br />
security enabled<br />
network enabled<br />
portlog enabled<br />
system enabled<br />
extend disabled<br />
filter disabled<br />
perfmon disabled<br />
Remember to<br />
enable any groups<br />
you may disable,<br />
when a full<br />
supportshow is<br />
needed by your<br />
Support department<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 18<br />
Many of the commands executed by supportshow are intended for support use only. These<br />
commands are not intended for end-users.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 18
v3.1 supportshow<br />
19<br />
<br />
OS<br />
<br />
Fabric<br />
<br />
<br />
mqshow<br />
i<br />
memshow<br />
alishow<br />
fastcheckheap<br />
Exception<br />
faultshow<br />
traceshow<br />
errdump<br />
Ports<br />
portshow<br />
portregshow<br />
portstructshow<br />
bloomdatashow<br />
portrouteshow<br />
portsemshow<br />
bloomsemshow<br />
semashow<br />
<br />
<br />
fabricshow<br />
islshow<br />
trunkshow<br />
topologyshow<br />
fashow<br />
qlshow<br />
cfgshow<br />
fabstatsshow<br />
fablogdump<br />
Services<br />
nsshow<br />
nsallshow<br />
nscamshow<br />
Security<br />
secmodeshow<br />
secpolicydump<br />
secstatsshow<br />
secfabricshow<br />
<br />
portlogdump<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 19<br />
The v3.1 supportshow reference manual, 53-0000500-02 lists these commands<br />
in their entirety.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 19
v3.1 supportshow (Cont’d)<br />
20<br />
<br />
System<br />
<br />
Filter<br />
version<br />
uptime<br />
switchshow<br />
tempshow<br />
psshow<br />
licenseshow<br />
diagshow<br />
portflagsshow<br />
porterrshow<br />
portcfgshow<br />
configshow<br />
<br />
filtershow<br />
PerfMon<br />
ps_dump<br />
<br />
Extend<br />
bloomlistdisplay<br />
bloomfdetshow<br />
bloomramdump<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 20<br />
The v3.1 supportshow reference manual, 53-0000500-02 lists these commands<br />
in their entirety.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 20
v4.1 supportshow<br />
21<br />
<br />
OS<br />
<br />
Fabric<br />
<br />
<br />
mii-tool –vv<br />
/usr/bin/du -xh / | /bin/sort:<br />
/bin/ps –elfh<br />
/bin/echo /bin/rpm –qa<br />
/bin/cat /var/log/dmesg<br />
/bin/cat /etc/fstab<br />
/bin/cat /etc/mtab<br />
Exception<br />
errdump –a/-p<br />
Ports<br />
diagshow<br />
portshow<br />
portloginshow<br />
protregshow<br />
portrouteshow<br />
fabricshow<br />
islshow<br />
trunkshow<br />
topologyshow<br />
fabstatsshow<br />
fabswitchshow<br />
fabstatsshow<br />
fabportshow<br />
fspfshow<br />
fcplogsshow<br />
/fabos/bin/zone stateshow<br />
portzoneshow<br />
portcamshow<br />
cfgsize<br />
cfgshow<br />
rcssmshow<br />
rcsinfoshow<br />
rcsregistryshow<br />
<br />
portlogdump<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 21<br />
The v4.1 supportshow reference manual, 53-0000519-02 lists these commands<br />
in their entirety.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 21
v4.1 supportshow (Cont’d)<br />
22<br />
<br />
Services<br />
<br />
Network<br />
<br />
nsshow<br />
nsallshow<br />
fdmishow<br />
fdmicacheshow<br />
Security<br />
/sbin/bootenv<br />
/sbin/sin<br />
/bin/df<br />
/sbin/ifconfig<br />
/sbin/route<br />
/bin/hostname<br />
<br />
Extend<br />
secmodeshow<br />
secpolicydump<br />
secstatsshow<br />
secfabricshow<br />
ptbufshow<br />
ptcreditshow<br />
ptdatashow<br />
ptphantomshow<br />
ptpropshow<br />
ptstatsshow<br />
<br />
<br />
Filter<br />
filtershow<br />
PerfMon<br />
ps_dump –a –n port#<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 22<br />
The v4.1 supportshow reference manual, 53-0000519-02 lists these commands<br />
in their entirety.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 22
v4.1 supportshow (Cont’d)<br />
23<br />
<br />
System<br />
myid<br />
version<br />
firmwareshow<br />
uptime<br />
switchstatusshow<br />
switchshow<br />
hadump<br />
tempshow<br />
sensorshow<br />
psshow<br />
fanshow<br />
licenseshow<br />
portflagsshow<br />
portcfgshow<br />
sfpshow<br />
porterrshow<br />
fwsamshow<br />
agtcfgshow<br />
chassisshow<br />
switchstatuspolicyshow<br />
fwalarmsfiltershow<br />
timeout<br />
historyshow<br />
configshow<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 23<br />
The v4.1 supportshow reference manual, 53-0000519-02 lists these commands<br />
in their entirety.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 23
Commands to Help Troubleshoot<br />
24<br />
<br />
<br />
<br />
diagshow<br />
porterrshow<br />
portshow<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 24<br />
•Indicates commands that we will review because they are the commands used to ascertain the source(s) of the<br />
most common problems Brocade support encounters. More information on all other commands can be found in<br />
the supportShow Reference Guide. These commands, including the ones for Brocade use only, are all executed at<br />
approximately the same time to permit more accurate investigation by development engineers if needed.<br />
1.There are more than 100 Brocade Fabric OS commands. Instead of asking the customer to issue every single<br />
command, Brocade engineers took the most useful commands and combined them into the supportshow<br />
super command.<br />
2.The supportshow command prints the switch information for debugging purposes. Not all versions of<br />
Brocade Fabric OS include headers to identify and distinguish command outputs, so we must be able to identify<br />
relevant outputs. Version 3.0 and above includes header information.<br />
3.Some commands are used only by Brocade software developers. These command generate information about<br />
the registers to the component level. We are only interested in the Field Replaceable Unit (FRU) level.<br />
4.One of the main objectives of this module for you is to learn how to collect and interpret supportshow data<br />
using Telnet commands outputs.<br />
5.There is a supportshow Reference Guide available.<br />
We will use the supportshow Reference Guide to briefly discuss each output shown above with an asterisk (*).<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 24
v3.x sw1:admin> diagshow<br />
Note: v4.x output is depicted vertically<br />
Diagnostics Status: Thu Oct 17 15:24:01 2002<br />
Date of Capture<br />
port#: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15<br />
diags: OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK<br />
state: UP UP UP UP UP UP UP UP UP DN UP UP UP UP UP UP<br />
speed: 2G 2G 1G 2G 2G 2G 2G 2G 2G 2G 2G 2G 2G 2G 2G 2G<br />
pt0: 43036276 frTx 107084405 frRx 38 LLI_errs.<br />
pt1: 35673191 frTx 107090193 frRx 39 LLI_errs.<br />
pt2: 70084586 frTx 29565015 frRx 1619 LLI_errs.<br />
pt3: 10575553 frTx 7349761 frRx 95825 LLI_errs. porterrshow<br />
pt4: 3009638 frTx 2011177 frRx 22 LLI_errs.<br />
pt5: 1376961 frTx 859950 frRx 35 LLI_errs.<br />
pt6: 108459734 frTx 36419372 frRx 78 LLI_errs.<br />
pt7: 8352074 frTx 5070104 frRx 29 LLI_errs.<br />
pt8: 8352358 frTx 5074068 frRx 20 LLI_errs.<br />
pt10: 103004 frTx 69219 frRx 77 LLI_errs.<br />
pt11: 8184489 frTx 4875626 frRx 35 LLI_errs.<br />
pt12: 80614266 frTx 10923977 frRx 54 LLI_errs.<br />
pt13: 8737327 frTx 20781940 frRx 133 LLI_errs.<br />
pt14: 23116364 frTx 46936163 frRx 37 LLI_errs.<br />
pt15: 21436681 frTx 47017360 frRx 38 LLI_errs.<br />
Central Memory OK<br />
Total Diag Frames Tx: 3472 Diagnostic frames from POST<br />
Total Diag Frames Rx: 5068<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 25<br />
diagshow outputs for Linux based switches are depicted vertically and are displayed for specified blades after the portlogdump, before<br />
specified port command outputs (portshow, portregshow and portrouteshow)<br />
Example: diagshow [ --slot number ] [ -uports itemlist ] [ -bports itemlist ] [ -use_bports<br />
value ]<br />
This view is from a production SAN. If diagnostics were running you would see ptx loopback information:<br />
pt0: 100 frTx 100 frRx 0 LLI_errs. <br />
pt7: 100 frTx 100 frRx 0 LLI_errs. <br />
•diagshow prints the information listed since the switch was last rebooted and shows the state of all ports in the switch that are based on<br />
the results of diagnostic executions.<br />
• Ports that passed diagnostic testing are marked OK.<br />
• Ports that failed one or more diagnostic tests are marked BAD.<br />
• Ports that failed centralmemorytest are marked FAULTY.<br />
•Current state of the ports (current state): Active ports are shown as UP and inactive ports are shown as DN.<br />
•Current speed of the port: NX => negotiated to X speed; 1G => set to 1 Gbps speed; 2G => set to 2 Gbps speed. Ports can be set to specific<br />
speeds using the portcfgspeed command.<br />
•Frame counts of active ports. The number of frames transmitted are indicated by frTx and the number of frames received are indicated by<br />
frRx.<br />
•The LLI_errs ( Low Level Interrupt errors) are the sum of the port's 8 statistical error counters: ENC_in, CRC_err, TruncFrm,<br />
FrmTooLong, BadEOF, Enc_out, BadOrdSet & DiscC3. Check porterrshow output to determine what generated the<br />
LLI_errs.<br />
•Total diagnostic frames transmitted and received since last reboot.<br />
The section with the ptX: shows the number of frames transmitted and received so far by each present and active port. These are the values<br />
as read from the statistical counters. At the beginning of each functional test, these statistical counters are reset to 0.<br />
The section with the Total Diag Frames shows the state of the central memory and the total number of frames transmitted and<br />
received, as kept by the diagnostics, since the last reboot. This means portloopbacktest and crossporttest update both frame<br />
counters; spinSilk updates only the frames-transmitted counter.<br />
To re-test a failed port, to clear the BAD or FAULTY state by invoking the diagclearerror command.<br />
25<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 25
v3.x sw1:admin> porterrshow<br />
Note: v4.x has identical output<br />
26<br />
d<br />
i<br />
a<br />
g<br />
S<br />
h<br />
o<br />
w<br />
frames enc crc too too bad enc disc link loss loss frjt fbsy<br />
tx rx in err shrt long eof out c3 fail sync sig<br />
--------------------------------------------------------------------------------------------------------------------------<br />
0: 33 32 0 0 0 0 0 15 0 271 14 0 0 0<br />
1: 35m 107m 0 0 0 0 0 39 0 75 111 17 0 0<br />
2: 70m 29m 0 0 0 0 0 1.6k 0 9 5 9 0 0<br />
3: 10m 7.3m 0 0 0 0 0 95k 33 0 21 30 0 0<br />
4: 3.0m 2.0m 0 0 0 0 0 0 22 1 15 22 0 0<br />
5: 1.3m 859k 0 0 0 0 0 0 35 2 16 18 0 0<br />
6: 08m 36m 0 0 0 0 0 8 70 0 10 13 0 0<br />
… < truncated output> …<br />
14: 23m 46m 0 0 0 0 0 37 0 826 107 20 0 0<br />
15: 21m 47m 0 0 0 0 0 38 0 888 140 20 0 0<br />
portstatsclear can be used to clear port errors on error statistics to left<br />
of the dotted line. The other counters get cleared on a reboot/fastboot.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 26<br />
The lines of the display show:<br />
frames tx<br />
frames rx<br />
enc in<br />
crc err<br />
too shrt<br />
too long<br />
bad eof<br />
enc out<br />
disc c3<br />
link fail<br />
loss sync<br />
loss sig<br />
frjt<br />
fbsy<br />
LLI ERRORS<br />
Frames transmitted.<br />
Frames received.<br />
Encoding errors inside of frames.<br />
Frames with CRC errors.<br />
Frames shorter than minimum.<br />
Frames longer than maximum.<br />
Frames with bad end-of-frame delimiters.<br />
Encoding error outside of frames.<br />
Class 3 frames discarded.<br />
Link failures (LF1 or LF2 states).<br />
Loss of synchronization.<br />
Loss of signal.<br />
Frames rejected with F_RJT.<br />
Frames busied with F_BSY.<br />
Note - Loss of Sync; Loss of Signal; Enc_Out Error are expected every time<br />
a user brings the port down and up (reboots host, power-cycles storage subsystem,<br />
disconnects/reconnects cable, or invokes portdisable portenable, etc.). Enc_Out<br />
Errors are also generated during the speed negotiation process so should be cleared after ports<br />
have negotiated speed. If speeds are known and these errors are being tracked then the port can be<br />
set to the same speed as attached device using the portcfgspeed command.<br />
Statistically, enc_out errors alone imply primarily cable problems, the enc_out and<br />
crc_err combination imply primarily GBIC/SFP problems.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 26
v3.x sw1:admin> portshow<br />
Note: v4.x has identical output<br />
portFlags: 0x1023805b portLbMod: 0x0 PRESENT ACTIVE F_PORT G_PORT U_PORT<br />
LOGIN NOELP LED ACCEPT<br />
portType: 4.1<br />
portState: 1<br />
Online<br />
portPhys: 6<br />
In_Sync<br />
portScn: 6 F_Port<br />
portRegs: 0x81030000<br />
portData: 0x1022d830<br />
portId: 0b0300<br />
portWwn: 20:03:00:60:69:51:3a:ba<br />
portWwn of device(s) connected: 50:06:0b:00:00:10:e9:26<br />
Distance: normal<br />
Speed: 2Gbps<br />
Interrupts: 2957 Link_failure: 0 Frjt: 0<br />
Unknown: 119 Loss_of_sync: 21 Fbsy: 0<br />
Lli: 174 Loss_of_sig: 30<br />
Proc_rqrd: 2730 Protocol_err: 0<br />
Timed_out: 0 Invalid_word: 0<br />
Rx_flushed: 0 Invalid_crc: 0<br />
Tx_unavail: 0 Delim_err: 0<br />
Free_buffer: 0 Address_err: 0<br />
Overrun: 0 Lr_in: 0<br />
Suspended: 0 Lr_out: 22<br />
Parity_err: 0 Ols_in: 22<br />
Ols_out: 0<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 27<br />
Standards: Link Error Status<br />
Block (LESB) Counters<br />
27<br />
This command displays port status. Information varies with the switch model and port type.<br />
Interrupts Total number of interrupts to the port<br />
Unknown<br />
Interrupts that are not counted elsewhere<br />
Lli<br />
Low-level interface (physical state, primitive sequences)<br />
Proc_rqrd Frames delivered for embedded N_Port processing<br />
Timed_out Frames which have timed out<br />
Rx_flushed Frames requiring translation<br />
Tx_unavail Frames returned from an unavailable transmitter<br />
Free_buffer Free buffer available interrupts<br />
Overrun<br />
Buffer overrun interrupts<br />
Suspended Transmission suspended interrupts<br />
Parity_err Real Tx data parity errors<br />
2ndary_parity_err Secondary Tx data parity errors. These are not real data parity errors, but instead are forced by the ASIC<br />
due to certain central memory problems.<br />
The box in the second column shows Link Error Status Block (LESB) counters. These errors are generated over time by a port in response<br />
to a read link error status (RLS) command. The rest of the second column shows delimiter, address, link reset (LR), and offline sequence<br />
(OLs) errors. The third column shows the number of Fabric Rejects (F_RJT) and Fabric Busies (F_BSY) generated. For L_Ports, the third<br />
column also shows the number of LIPs received, number of LIPs transmitted, and the last LIP received. Invoke the portshow command<br />
for link-level and LIP statistics (link failure, loss of synchronization, loss of signal, etc.). Updated statistics are gathered in software when a<br />
port interrupt is received. Errors occurring between interrupts are not logged (they are in portstatsshow) but portshow provides LIP<br />
statistics that portstatsshow does not provide. Examples include: Lip_in ≤ Lip_out<br />
Lip_in - # tx LIPs from connected device to switch port<br />
Lip_out - # of LIPs tx switch port to connected device<br />
Lip_rx – Type of LIP (F7,F8) last received from connected device<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 27
portlogdump<br />
28<br />
What a portlogdump is:<br />
The command invoked to retrieve switch portlog information<br />
A “recorder” inside the switch with a limited length or record time<br />
Captures only activities that are related to the fabric and fabric services<br />
Port states, fabric and port logins, state changes, name service queries<br />
What a portlogdump is not:<br />
portlogdump is not an FC analyzer trace<br />
No “trigger” capability<br />
Limited storage capacity<br />
No “end-to-end” device activity<br />
portlogdump is not an Event Log<br />
The Event Log is separate<br />
portlogdump does not “point out” errors<br />
You must analyze and catch abnormal fabric activities<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 28<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 28
portlog Entry Example<br />
29<br />
Port 6<br />
D_ID = name server<br />
ELS -> PLOGI<br />
21:01:30.216 tReceive Rx3 6 116 22fffffc,00011600,00f2ffff,03000000, 11e14ae0<br />
Timestamp<br />
Task<br />
Class 3<br />
frame<br />
received<br />
R_CTL Task Task<br />
Frame<br />
payload<br />
size<br />
S_ID =<br />
Domain 1<br />
Port 6<br />
Source file<br />
debug code,<br />
Internal use only<br />
If the portlog output persuades you to investigate further,<br />
use an analyzer<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 29<br />
Brocade switch portlogs and Fibre Channel analyzers are often referred to as low-level<br />
debugging tools.<br />
The 5 th field only appears in v3.x code.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 29
Hardware Diagnostics<br />
General Behavior of the Tests<br />
30<br />
The first argument of most of the tests is the number of passes:<br />
If none entered, most tests default to run one set<br />
If none entered, the following tests default to an infinite loop:<br />
portloopback crossporttest spinsilk<br />
Tests are invoked from either the command line or the front panel, with results<br />
shown in both interfaces.<br />
If a test is invoked from a command line:<br />
The test stops at the first error it finds<br />
The test can be interrupted with the Enter key while still running, if the<br />
number of passes is not specified. The QCSL prompts:<br />
Diags: (Q)uit, (C)ontinue, (S)tats, (L)og:<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 30<br />
When you put a value for the number of passes, the test is no longer interruptible. The only two<br />
exceptions to the # of passes rule are the ramtest and the portregtest.<br />
Type ? at the QCSL prompt to get the following:<br />
QCSL command summary:<br />
q<br />
quits<br />
c<br />
continues testing<br />
s<br />
runs diagshow<br />
l<br />
runs errshow<br />
? prints this help message<br />
e<br />
runs porterrshow with optional repeat delay interval<br />
f<br />
runs portflagsshow<br />
g<br />
runs portperfshow and prompts user for delay if absent<br />
p runs portregshow and prompts user for port# if N is absent<br />
u runs portrouteshow and prompts user for port# if N is absent<br />
v<br />
runs versionshow<br />
x runs statsclear on ASIC containing port N. Stats for all ports on the ASIC<br />
are cleared. Prompts user for port# if N is absent.<br />
z runs portstatsshow and prompts user for port# if N is absent<br />
The above is for a Brocade SilkWorm 3200/3800. A Brocade SilkWorm 2xx0 displays slightly<br />
different choices, but both are viewed by entering ? at the QCSL prompt.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 30
Telnet Interface Error Message Format<br />
31<br />
0x103d7bf0 (tPBmenu): Mar 22 11:03:23<br />
Error DIAG-REGERR, 1, RegTest,<br />
Pt0 (Lm0) "WordsTx" is 0x200020 sb 0x400040 er 0x600060,<br />
off 0x100 phy 0x80030100 msk 0xffffffff, Err# 0415<br />
Line 1 shows the task (tPBmenu) and the date/time (Mar 22 11:03:23)<br />
<br />
<br />
<br />
Line 2 shows the error (DIAG-REGERR), the severity (1) and the test (RegTest)<br />
Line 3 (or more lines) describes the failure often showing the actual (is) and<br />
the expected (sb) values<br />
The last line shows the equivalent error number<br />
See the Brocade Fabric OS Diagnostic and Error Reference Guides<br />
–per OS version<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 31<br />
Some keywords appear in several error messages:<br />
bLine Central Memory buffer Line number<br />
bNum Central Memory buffer Number<br />
er<br />
bit error difference between the actual and expected values<br />
is<br />
actual value “seen” by the test<br />
lineOff Central Memory buffer line offset number<br />
Lm Loom ASIC number (if from Loom driver, then port #)<br />
msk<br />
test mask – a 1 means test that bit; a 0 means “do not test”.<br />
off<br />
offset<br />
phy<br />
physical address<br />
Pt<br />
port number<br />
sb<br />
expected value the test wants to “see”<br />
TX Transmitter port as in TX Pt 2<br />
RX Receiver port as in RX Pt 2<br />
SilkWorm 2800 Front Panel Display format:<br />
02 Aug 28 19:03:23<br />
Err DIAG-REGERR-1<br />
1st line shows the chrono. no. (02) and date/time (Aug 28 19:03:23)<br />
2nd line shows the error (DIAG-REGERR) and the severity (1)<br />
The severity codes are: 0: PANIC (switch reboots), 1: CRITICAL, 2: ERROR, 3: WARNING, 4: INFO,<br />
5: DEBUG.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 31
Hardware Diagnostic Test Commands<br />
Structural Tests (POST 1):<br />
ramtest 3 5 6<br />
portregtest 13<br />
centralmemorytest 13<br />
cmitest 13<br />
sramretentiontest 13<br />
cmemretentiontest 13<br />
turboramtest 13<br />
backport 4<br />
1<br />
Part of v4.x ↑ POST 1<br />
2<br />
Part of v4.x ↑ POST 2<br />
3<br />
Part of v3.x ↓ POST<br />
4<br />
Available on v4.x ↑ only<br />
5<br />
Can be run while switch is online<br />
6<br />
Can be run in OS versions 2.x<br />
while switch is online<br />
<br />
Port (or Frame-based)<br />
Functional Tests (POST 2):<br />
camtest 2 3<br />
portloopbacktest 2 3<br />
portloopbacktestserdes 2<br />
txdtest 2<br />
crossporttest 5 6<br />
spinsilk 3<br />
spinsilktestserdes 2<br />
filtertest 3<br />
statstest 3<br />
porttest 5<br />
loopporttest 5<br />
spinfab 5<br />
fporttest 5 6<br />
backplanetest 2 4<br />
32<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 32<br />
See the diagHelp Reference Manual for additional information:<br />
portregtest<br />
Port register diagnostic<br />
sramretentiontest SRAM Data Retention diagnostic<br />
spinsilk<br />
Cross-connected line-speed exerciser<br />
minicycle<br />
Cross-connected line-speed exerciser<br />
spinjitter<br />
line-speed jitter measurement<br />
crossporttest Cross-connected port diagnostic<br />
loopporttest L-port diagnostic<br />
portloopbacktest Port internal loopback diagnostic<br />
txdpath<br />
Miniswitch TX data path diagnostic<br />
spinfab<br />
circulates frames between live switches<br />
backport<br />
backplane routing and VC allocation test<br />
centralmemorytest Central memory diagnostic<br />
cmemretentiontest Central Mem Data Retention diagnostic<br />
cmitest<br />
CMI bus connection diagnostic<br />
camtest<br />
Quickloop CAM diagnostic<br />
turboramtest Turbo speed ASIC SRAM diagnostic<br />
statstest<br />
Statistics counter diagnostic<br />
portledtest<br />
User Ports LED exerciser<br />
filtertest<br />
Frame filter diagnostic<br />
backplanetest Backplane connection diagnostic<br />
v4.x POST is divided into two sections:<br />
• The structural tests do basic tests of the circuitry tested during POST 1<br />
• The functional tests verify intended operational behavior and are tested<br />
during POST 2<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 32
v3.x Power-On Self-Test (POST)<br />
33<br />
<br />
<br />
<br />
<br />
POST includes the following tests:<br />
ramtest<br />
turboramtest<br />
portregtest<br />
camtest<br />
centralmemorytest statstest<br />
cmitest<br />
filtertest<br />
sramretentiontest portloopbacktest<br />
spinsilk<br />
diagpostdisable permanently disables POST<br />
diagpostenable turns POST back on<br />
fastboot disables POST this boot only<br />
There are 3 boot types:<br />
Cold boot<br />
Warm boot (reboot)<br />
Fast boot (fastboot)<br />
Full POST<br />
Partial POST<br />
No POST<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 33<br />
POST includes the following tests:<br />
ramtest - Bit write and read test of SDRAMS in the switch.<br />
portregtest - Bit write and read test of the ASIC SRAMs and registers.<br />
centralmemorytest - Bit write and read test of the ASIC central memory.<br />
cmitest – ASIC-to-ASIC connection test of the Control Message Interface bus.<br />
sramretentiontest - Data retention test of the SRAMs in the ASIC.<br />
turboramtest - Functional test of RAM.<br />
camtest - Functional test of the CAM memory.<br />
statstest - Runs a statistics counter diagnostic test.<br />
filtertest - Functional test of filter configuration.<br />
portloopbacktest - Functional test of switch by sending and receiving frames from the same port.<br />
spinsilk - Functional test of port-to-port path at maximum switch speed.<br />
Note - The cold boot (power reset) runs the long ramtest while the warm boot (software reset) runs the<br />
short ramtest. fastboot does not run POST in this boot. diagdisablepost disables POST for all<br />
power cycles and reboots until it is reset using diagenablepost. See the diaghelp Reference<br />
Guide for more information about each of these tests.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 33
v4.x Power-On Self-Test (POST)<br />
34<br />
POST 1 includes the<br />
following tests 1 :<br />
turboramtest<br />
portregtest<br />
centralmemorytest<br />
cmitest<br />
sramretentiontest<br />
cmemretentiontest<br />
POST 2 includes the<br />
following tests 2 :<br />
camtest<br />
portloopbacktest<br />
portloopbacktestserdes<br />
txdpath<br />
spinsilkserdes<br />
backplanetest<br />
There are 4 boot types<br />
Cold boot<br />
Warm boot (reboot)<br />
Fast boot (fastboot)<br />
Logical switch boot (switchreboot)<br />
Full POST<br />
Partial POST<br />
No POST<br />
Partial POST<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 34<br />
POST 1 includes the following tests:<br />
turboramtest - Functional test of RAM.<br />
portregtest - Bit write and read test of the ASIC SRAMs and registers.<br />
centralmemorytest - Bit write and read test of the ASIC central memory.<br />
cmitest – ASIC-to-ASIC connection test of the Control Message Interface bus.<br />
sramretentiontest - Data retention test of the SRAMs in the ASIC.<br />
centralmemorytest - Bit write and read test of the ASIC central memory.<br />
POST 2 includes the following tests:<br />
camtest - Functional test of the CAM memory.<br />
portloopbacktest - Functional test of switch by sending and receiving frames from the same<br />
port.<br />
portloopbacktestserdes - Functional test of switch by sending and receiving frames from<br />
the same port Serdes chip.<br />
txdpath - Functional test of ASIC TXA, TXD connections<br />
spinsilkserdes - Functional test of port-to-port path at maximum switch speed.<br />
backplanetest - Backplane connection diagnostic<br />
Footnote 1: POST 1 tests could change by firmware version. What is actually being testing is<br />
displayed in /fabos/share/switchpost1.sh.<br />
Footnote 2: POST 2 tests could change by firmware version. What is actually being testing is<br />
displayed in /fabos/share/switchpost2.sh.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 34
Hardware Diagnostic Tests For the Field<br />
35<br />
crossporttest<br />
spinsilk<br />
spinfab<br />
loopporttest<br />
fporttest<br />
porttest/stopporttest/porttestshow<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 35<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 35
crossporttest<br />
36<br />
<br />
<br />
<br />
<br />
Functionally verifies the port’s ability to send and receive<br />
frames across different or same port(s)<br />
Tests the entire path: main board, SFP/GBIC, and cable<br />
To run this test, external cables are required<br />
It tests the data integrity of each frame<br />
Ports can be connected to any port according to these rules:<br />
SW connects to SW<br />
LW connects to LW<br />
Only one frame is transmitted and received at any one time<br />
The port LEDs rapidly flicker green while the test is running<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 36<br />
This test is similar to the portloopbacktest except that the loopback is done via an external cable thus testing<br />
all the switch components: main board, SFP/ GBIC, and cabling. The cables can be connected in any combination<br />
except for the one condition that the cables and SPF/ GBICs connected are of the same technology. If a short<br />
wavelength cable is used, both its ends should be connected to SWL SFP/ GBICs also. Any port connection is<br />
allowed; but for best test coverage, ports connected should be from different ASICs. A connection from port 0 to port<br />
15 “crosses” ASICs. A connection from port 0 to port 3 tests only one ASIC. The test method is as follows:<br />
1.Determine which ports are connected to each other.<br />
2.Enable ports for cabled loopback mode.<br />
3.Create a frame F of maximum data size (2112 bytes).<br />
4.Transmit frame F via port M.<br />
5.Pick up frame from its cross connected port N - complain if port other than N actually received the frame.<br />
6.Check if any of the 8 statistic error counters are non-zero: ENC_in, CRC_err, TruncFrm,<br />
FrmTooLong, BadEOF, Enc_out, BadOrdSet, DiscC3.<br />
7.Check if the tx, rx or class 3 receiver counters are stuck at some value.<br />
8.Check if the number of frames tx is not equal to the number of frames rx.<br />
9.Repeat steps 3 through 8 for all ports present until:<br />
a. the number of frames requested is reached,<br />
b. all ports are marked bad.<br />
At each pass, a different data type is used to create the frame from a palette of 7 below; meaning if a pass of 13 is<br />
requested, all 7 from the pallete are used and then 6 of the 7 are used next:<br />
CSPAT: 0x7e, 0x7e, 0x7e, 0x7e, ...<br />
BYTE_LFSR: 0x69, 0x01, 0x02, 0x05, ...<br />
CHALF_SQ: 0x4a, 0x4a, 0x4a, 0x4a, ...<br />
QUAD_NOT: 0x00, 0xff, 0x00, 0xff, ...<br />
CQTR_SQ: 0x78, 0x78, 0x78, 0x78, ...<br />
CRPAT: 0xbc, 0xbc, 0x23, 0x47, ...<br />
RANDOM: 0x25, 0x7f, 0x6e, 0x9a, ...<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 36
crossporttest Modes<br />
37<br />
<br />
<br />
With the switch enabled; it probes for at least one M-M or M-N<br />
connection, the test fails if at least one loop (M-M or M-N) is not<br />
found<br />
Two ports cross connected (M-N)where N is on the same or different<br />
switches<br />
Single ports using a loopback cable (M-M) using the singlePortAlso<br />
With the switch disabled; it probes all ports cross or self<br />
connected on the same switch<br />
Test aborts if any port is not connected<br />
If setgbicmode 1 (a separate FOS command):<br />
‣ Only ports with SFPs or GBICs are included in the test<br />
‣ Disconnect all non-looped SFPs/GBICs<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 37<br />
Since this test includes the GBIC and the fiber cable in its test path, its results combined with the results of<br />
portLoopbackTest and spinSilk can be used to deduce which components of the switch are bad.<br />
switchname:admin> setgbicmode 1<br />
When activated, only ports with GBICs present are included in the crossporttest list of ports to<br />
test. For example if only ports 0 and 3 are connected with GBICs and the GBIC mode is activated,<br />
crossporttest limits its testing solely to ports 0 and 3. The state of the GBIC mode is saved in flash<br />
memory. It stays activated (even after reboots or power cycles) until it is disabled as follows:<br />
sw1:admin> setgbicmode 0<br />
To determine if diag.mode.gbic is enabled invoke diagmodeshow:<br />
V3.X_ sw1:admin> diagmodeshow Note: For v4.x use setgbicmode –show, some mode<br />
names could be slightly different.<br />
diag.mode* parameters saved in flash:<br />
diag.mode.burnin = 0<br />
diag.mode.burnin.level = 0<br />
diag.mode.burnin.firstPowerUp<br />
= NONE<br />
diag.mode.esd = 0<br />
diag.mode.gbic = 0<br />
diag.mode.splb = 0<br />
diag.mode.parity = 1<br />
diag.mode.lab = 0<br />
diag.mode.mfg = 0<br />
Burnin passnum = 5<br />
Burnin nExec = 86<br />
SilkWorm Mode<br />
= OFF<br />
Disable Modes Print<br />
= OFF<br />
diag.mode.skipenable = 1<br />
See the diagHelp Reference Guide for more information.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 37
crossporttest Examples<br />
38<br />
<br />
This example will run crossporttest an infinite number of times (or until you<br />
press Enter) and allows ports to be connected to themselves (M-M):<br />
v3.x:admin> crossporttest 0,1<br />
Running Cross Port Test ...<br />
This example will run crossporttest online or offline 100 (default value is 10)<br />
times on slot 2 to the SERDES at 2 Gbit/sec, not all SFPs are looped back, it only<br />
uses ports 4 and 15:<br />
v4.x:admin> crossporttest –nframes 100 –lb_mode 2 –spd_mode 2<br />
–ports 2/4,15<br />
Running Cross Port Test ...<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 38<br />
What is displayed when you execute this test depends on the level of verbosity that you have selected.<br />
The diagdebugshow command depicts available levels of debugging. It is not recommended going<br />
over level 5 – there is such a thing as too much information! This setting could adversely effect other<br />
switch operations, so set it back to the default setting after you have finished using it. Depending on<br />
the tests, setting the debugging level high (via the command: setdbg “DIAG”, 9) may generate<br />
more informative messages. Put the debugging mode back to the default by invoking setdbg<br />
“DIAG”,0 because verbose mode (9) could affect the behavior of the switch!<br />
See the diaghelp Reference Guide for a complete “help” output.<br />
nframes count will specify the number of frames to send. The test will progress until the<br />
specified number of frames has been transmitted on each port. The default value is 10.<br />
lb_mode will select the loopback point for the test. By default, crossporttest uses cable<br />
loopback.<br />
spd_mode will specify the speed mode for the test. This parameter is only used for Bloom- based<br />
products where it controls the speed at which each port is operated. The exact operation of each modes<br />
3-6 depends upon the loopback mode selected. When speed modes 3-6 are used with cables, they must<br />
be connected EVEN->ODD or the test will fail.<br />
gbic_mode the option may be used to override the global GBIC mode described above for the<br />
duration of this test. When it is enabled (1) then testing is limited to user ports with media installed.<br />
no_restore this option may be set in order to force the test to skip part of the POST cleanup<br />
normally performed. This may be helpful during debugging. This parameter should normally be left at<br />
the default value of 0.<br />
ports itemlist will specify a list of user ports to test. By default all of the user ports in the<br />
selected slot will be assumed.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 38
spinsilk<br />
39<br />
<br />
<br />
<br />
<br />
<br />
<br />
Full speed functional test of internal/external tx and rx paths<br />
Configures each looped port pair to route received frames to each other<br />
Four frames spin around each two-port loop at full hardware speed<br />
continuously<br />
All loop back plug ports will send frames to all other loop back plugs and<br />
themselves 1<br />
There is no CPU intervention during the test<br />
Some variations of this test require external cables<br />
Ports can be connected to any port as long as SW connects to SW and LW<br />
connects to LW<br />
Tests the entire path: main board, SFP/GBIC, and cable<br />
To run this test, the switch must be disabled<br />
Looks at the error counters like enc_in enc_out these are the 8b/10b<br />
encoders<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 39<br />
This test is different from the other functional tests. It does not transmit a frame one-at-a- time, nor receive it via the<br />
CPU one-at-a-time, nor does it check the data at all. It sets up the routing hardware so that no CPU intervention is<br />
required to route frames continuously back and forth between a pair of loopback cabled ports. In effect the test spins the<br />
frames between the paired ports at the maximum hardware speed of 1Gbps or 2Gbps.<br />
Note - If you wish to specify a single operand, the others may become required, because operands are identified by<br />
position. For example, if you want to specify a gbic_mode value, you must also specify an nmegs value as well.<br />
Footnote 1: If all ports have loop back plugs installed then, for example, port 15 will send one frame to all other ports<br />
and two frames to itself.<br />
Command syntax spinsilk [ nMillionFrames [, gbicMode [, lbMode [, spdMode]]]]<br />
The following operands are optional:<br />
nMillionFrames The number of million frames per port to execute this test.<br />
If omitted, the default value used is 0xfffffffe (or almost infinite for<br />
practical purposes) as passCount.<br />
gbicMode Puts it in gbic mode for this execution only.<br />
lbMode<br />
Loopback Mode selector.<br />
0 cabled loopback Port MN only (default)<br />
1 cabled loopback Port M->M & MN allowed<br />
3 external silkscreen loopback (no retry)<br />
none of the above means internal loopback<br />
spdMode<br />
Speed at which test will be run.<br />
0 set port speed for auto-negotiate<br />
1 set port speed to lock at 1 GBit<br />
2 set port speed to lock at 2 GBit<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 39
spinsilk Examples<br />
40<br />
v3.x sw1:admin> spinsilk 10,1,1,0<br />
Test will run 10 times, only ports with SFP/GBICs will be tested (this test<br />
only), both M-M and M-N cables are allowed, ports with SFPs/ GBICs will<br />
auto-negotiate speed<br />
v4.x sw1:admin> spinsilk –slot 1 -nmegs 100 -lb_mode 1<br />
–spd_mode 2 -verbose 1 –ports 1/4-15<br />
Test will run on slot 1, test will run 100 times, only ports with GBICs will be<br />
tested (this test only), both M-M and M-N cables are allowed, ports are<br />
locked at 2 Gbit/sec, verbosity is on, will run test port 4 - 15 on slot 1<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 40<br />
v3.x+: spinsilk [nmegs, gbic_mode, lb_mode, spd_mode]<br />
v4.x+: spinsilk [--slot number] [-nmegs count] [-gbic_mode mode] [lb_mode<br />
mode][-spd_mode mode] [-norestore mode][-verbose mode] [-ports<br />
itemlist]<br />
nmegs - The number of times (or number of frames per port) to execute this test (default value is almost<br />
infinite)<br />
gbic_mode - Determines which ports are included in the test<br />
0 all ports are included (default)<br />
1 only ports with SFPs or GBICs are included<br />
Use is for this execution only<br />
Permanently set gbic_mode by using the setgbicmode command<br />
lb_mode - Specify the loopback mode<br />
0 cabled loopback Port M-N only (default)<br />
1 cabled loopback Port M-M and M-N allowed<br />
2 external loopback (loopback in Serdes chip)<br />
5 internal loopback (loopback in ASIC)<br />
spd_mode - Specify the speed of the connection to test<br />
0 set port speed for auto-negotiate (AN)<br />
1 set port speed to lock at 1 Gbps<br />
2 set port speed to lock at 2 Gbps<br />
3 odd ports 1Gbps, even ports AN<br />
4 odd ports 2 Gbps, even ports AN<br />
5 even ports 1 Gbps, odd ports AN<br />
6 even ports 2 Gbps, odd ports AN<br />
See Fabric OS Error message guides for additional information.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 40
spinfab<br />
41<br />
Exercises E_Port connections in a manner similar to<br />
what spinsilk does for a single switch<br />
Sends frames out ISL or Trunk Group with OX_ID,<br />
spins them, verifies that the frames are still in order<br />
and there are no 8b/10b encoder errors<br />
The frame is sent with the original switches S_ID so<br />
it returns to same place<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 41<br />
The frames are continuously transmitted and received in all ports in parallel. The port LEDs flicker<br />
green rapidly while the test is running. While the frames are circulating the Rx frame count and port<br />
CRC and encoder error statistics will be monitored and errors will be generated if a port stops or a<br />
low level error occurs. Every one million frames, the circulating frames will be captured to verify<br />
that they are still circulating and that they are still in-order. In this manner the entire path to the<br />
remote switch may be verified.<br />
The switch will remain in normal operation while this test is running. However, some performance<br />
degradation will occur due to the ISL links being saturated with test frames. Because of this you<br />
should use caution when running this test on live Fabrics. Consider only testing one ISL link at a<br />
time. Do not run the tests for extended periods of time.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 41
spinfab Examples<br />
42<br />
v3.x sw1:admin> spinfab 4,4,10<br />
will run spinfab 4 million frames on ports 4 – 10<br />
v4.x sw1:admin> spinfab –nmegs 4 -ports 2/4 – 2/10<br />
will run spinfab 4 million frames on slot 2 ports 4 – 10<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 42<br />
v3.X spinfab [nMillionFrames, ePortBeg, ePortEnd, setFail]<br />
nMillionFrames The number of million frames per port to execute this test. If omitted, the default value used is 100.<br />
This operand is optional.<br />
ePortBeg First port to test, if omitted 0 will be used. This operand is optional.<br />
ePortEnd The last port to test. The test will be performed on ePortBeg to ePortEnd inclusive. If ePortEnd is<br />
omitted, then the default will be to test all ports if ePortBeg is also omitted or to test only ePortBeg if it is specified.<br />
This operand is optional.<br />
setFail Specify 1 to mark failing ports as BAD, or specify 0 to not mark failed ports as bad. To minimize the impact on<br />
live Fabrics, this test normally logs errors but does not set the port status to FAILED. This parameter is provided to force<br />
the failing ports to be marked as BAD in the same manner as other diagnostics. In test or qualification environments without<br />
live traffic, this may be useful with large values of nMillionFrames. This operand is optional.<br />
v4.X spinfab [-nmegs count] [-ports itemlist] [-setfail mode] [-domain value]<br />
nmegs The number of million frames per port to execute this test (default is 100);<br />
ports Specify a list user ports to test. By default, all of the ISL ports in the current switch will be tested<br />
setFail Specify 1 to mark failing ports as bad, or 0 to not mark failed ports as bad<br />
domain This parameter is used to specify a specific remote domain that the switch is connected to (default is to<br />
automatically determine the remote domain number)<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 42
loopporttest<br />
43<br />
Used to test NL_Ports and the devices attached<br />
Tests from main board through devices<br />
Should be connected with the same SFP/GBIC type; SW<br />
connects to SW and LW connects to LW<br />
Only one frame is transmitted at a time<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 43<br />
This command verifies the intended functional operation of the switch by sending frames<br />
from port M's transmitter and looping the frames back via an external fiber cable (including<br />
all the devices on the loop) into port M's receiver. This exercises all the switch components:<br />
main board; SFP/GBIC; fiber cable; SFP/GBICs (of the devices and the switch) and back to<br />
the main board.<br />
The cables and SFP/GBICs connected should be of the same technology: a short wavelength<br />
SFP/ GBICed (switch) port is connected to another short wavelength SFP/ GBICed (device)<br />
port via a short wavelength cable; a long wavelength port is connected to a long wavelength<br />
port; and a copper port is connected to a copper. Only one frame is transmitted and received<br />
at any one time. The port LEDs flicker green rapidly while the test is running. The test<br />
method is as follows:<br />
1) Determine which ports are L-ports<br />
2) Enable ports for cabled loopback mode<br />
3) Create a frame F of data size (1024 bytes)<br />
4) Transmit frame F via port M, with D_ID to the FL port (ALPA = 0)<br />
5) Pick up the frame from port M, the FL_Port<br />
6) Check if any of the 8 statistic error counters are non-zero: ENC_in, CRC_err,<br />
TruncFrm, FrmTooLong, BadEOF, Enc_out, BadOrdSet, DiscC3<br />
7) Check if the transmit, receive or class 3 receiver counters are stuck at some value<br />
8) Check if the number of frames transmitted is not equal to the number of frames received<br />
9) Repeat steps 3 through 8 for all ports present until:<br />
a) the number of frames (or passCount) requested is reached<br />
b) all ports are marked bad<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 43
loopporttest - Examples<br />
44<br />
v3.x sw1:admin> loopporttest 100,8,0xaa55,2<br />
This will execute loopporttest 100 times on port 8 with payload pattern<br />
0xaa55 and pattern width 2 (meaning word width)<br />
v4.x sw1:admin> loopporttest –nframes 100 –ports 1/8<br />
This will execute loopporttest with 100 frames on port 8<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 44<br />
v3.x+ loopporttest [passcount, port_number, payload_pattern, pattern_width]<br />
passcount The number of frames per port) to execute this test (default is infinite or until enter key is hit)<br />
port_number The port to run to test on - the test will be executed on all online L-ports by default<br />
payload_pattern The pattern of the test packets payload<br />
pattern_width The width of the pattern which user specified – it could be 1, 2, or 4 (which are byte, word, or quad)<br />
v4.x+ loopporttest [-nframes count] [-ports itemlist ] [-seed payload_pattern] [-width<br />
pattern_width]<br />
nframes The number of million frames per port to execute this test (default is 10)<br />
ports Specify a list of user ports to test<br />
seed The pattern of the test packets payload<br />
width The width of the pattern which user specified. It could be 1, 2, and 4 (which are byte, word, and quad)<br />
User could specify a payload pattern to be used when executing this test. If the pattern was not user specified, then at every 30th pass, a<br />
different built-in data type from a palette of 7 is used to generate different data pattern to create the frame. The data pattern will be<br />
generated based on each data type. Some data types may generate different data patterns on every pass; conversely, some data types<br />
may not change data patterns in every pass. These 7 data types will be repeated every 210 passes.<br />
Pattern_width 2 which is word represents 2 bytes, while 4 which is quad represents 4 bytes.<br />
payload_pattern:<br />
The data palette of 7 consists of:<br />
1) CSPAT: 0x7e, 0x7e, 0x7e, 0x7e, ...<br />
2) BYTE_LFSR: 0x69, 0x01, 0x02, 0x05, ...<br />
3) CHALF_SQ: 0x4a, 0x4a, 0x4a, 0x4a, ...<br />
4) QUAD_NOT: 0x00, 0xff, 0x00, 0xff, ...<br />
5) CQTR_SQ: 0x78, 0x78, 0x78, 0x78, ...<br />
6) CRPAT: 0xbc, 0xbc, 0x23, 0x47, ...<br />
7) RANDOM: 0x25, 0x7f, 0x6e, 0x9a, ...<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 44
fporttest<br />
45<br />
Functional test of F N, N F Ports<br />
Tests from mainboard through devices N_Port receiver<br />
and back again by sending ECHO frames<br />
Should be connected with the same SFP/GBIC type; SW<br />
connects to SW and LW connects to LW<br />
Only one frame is transmitted at a time<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 45<br />
This command verifies the intended functional operation of the switch by sending els<br />
ECHO frames from switch F_Port's transmitter, and receive els ECHO ACC back<br />
from N_Port device into F_Port's receiver; thus exercising all the switch components<br />
from the main board to the GBIC to the fiber cable to the GBICs(of the N_Port devices<br />
and the switch F_Port) and back to the main board.<br />
The cables and GBICs connected should be of the same technology, meaning a short<br />
wavelength GBIC (switch) port is connected to another short wavelength GBIC (device)<br />
port via a short wavelength cable; and a long wavelength port is connected to a long<br />
wavelength port; and a copper port is connected to a copper port.<br />
Only one frame is transmitted and received at any one time. The port LEDs flicker green<br />
rapidly while the test is running. The test method is as follows:<br />
1) Determine which ports are F_Port<br />
2) Create a ELS_ECHO frame with payload size, data pattern build in, or user payload<br />
size, data pattern<br />
3) Transmit frame F via F_Port, with D_ID to the N_Port device<br />
4) Wait for N_Port device to response ECHO ACC<br />
5) Compare ECHO data transmitted is equal to the ECHO data received<br />
6) Repeat steps 3 through 5 for all ports present until:<br />
a) the number of frames (or passCount) requested is reached<br />
b) all ports are marked bad<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 45
fporttest - Examples<br />
46<br />
v3.x sw1:admin> fporttest 100,8,0xaa55,2, 512<br />
This will execute fporttest 100 times on port 8 with payload pattern 0xaa55,<br />
pattern width 2 (meaning word width) and default payload size 512 bytes<br />
v4.x sw1:admin> fporttest –nframes 100 -ports 1/8<br />
This will execute fporttest with 100 frames on port 8 and default payload size 512<br />
bytes<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 46<br />
The following operands are optional:<br />
passcount (nframes count) times (or number of frames per port) to execute this test. If omitted, or set to 0<br />
the default value used is 0xfffffffe (or almost infinite for practical purposes) as passCount.<br />
port_number (-ports) The port to run to test on. If omitted, the test will be executed on all online F_Ports<br />
seed Used for the payload pattern<br />
payload_pattern The same as loopporttest<br />
pattern_width The width of the pattern which user specified. It could be 1, 2, and 4 (which are byte, word, and<br />
quad). When payload_pattern is set to 0x00, pattern_width will be ignored.<br />
pattern_size (-size) Number of words of the test packets payload. If omitted, the default value is 512.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 46
porttest<br />
47<br />
Used to isolate problems to a single replaceable element<br />
Diagnostics can be run on demand<br />
Verifies functional operation of the switch by sending<br />
frames from port’s Tx to the Rx<br />
Exercises all components:<br />
Main board<br />
SFP<br />
Cable<br />
Should be connected with the same SFP/GBIC type; SW<br />
connects to SW and LW connects to LW<br />
Only one frame is transmitted at a time<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 47<br />
v3.x porttest [ports, iteration, delay, timeout, pattern, patsize, seed]<br />
ports The type of port on which to run the test<br />
iteration Number of times to run the test; -1 runs infinitely<br />
delay Time delay in minutes between frames being sent; 20 is default<br />
timeout Max seconds to allow test to run; default is 0<br />
pattern The pattern of the test packets payload (refer to notes)<br />
patsize The width of the pattern; default is 2112<br />
seed Seed value used with the pattern; default is 0xaa<br />
v4.x porttest [-ports itemlist, -iteration count, -userdelay time,-timeout time, -pattern pattern,<br />
-patsize size, -seed seed, -listtype porttype]<br />
userdelay Time delay in minutes between frames sent; 10 is default<br />
seed Seed value used with the pattern; default is 0xaa<br />
lisType Type of ports on which to run the test (v4.1.0 is case sensitive)<br />
This command verifies the intended functional operation of the switch by sending frames from port M's transmitter and looping the frames back<br />
via an external fiber cable (including all the devices on the loop) into port M's receiver. This exercises all the switch components: main board;<br />
SFP/GBIC; fiber cable; SFP/GBICs (of the devices and the switch) and back to the main board.<br />
The cables and SFP/GBICs connected should be of the same technology: a short wavelength SFP/GBICed (switch) port is connected to another<br />
short wavelength SFP/ GBICed (device) port via a short wavelength cable; a long wavelength port is connected to a long wavelength port; and a<br />
copper port is connected to a copper. Only one frame is transmitted and received at any one time. The port LEDs flicker green rapidly while the<br />
test is running. The following port types are supported:<br />
1) E_Ports, 2) F_Ports that support ELS ECHO, 3) L_Ports, 4) N->N loopback ports<br />
Tests are initiated with certain ports with porttest. Tests can be stopped at any time with stopporttest. Snapshot output can be viewed<br />
with porttestshow.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 47
v3.1:admin> porttest<br />
Command Example<br />
v3.1:admin> porttest –4,30<br />
48<br />
Test run with 4 ports on switch:<br />
Port 12 contained a loopback adapter<br />
Port 13 was an F_Port attached to a server<br />
Port 14 was an E_Port<br />
Port 15 was an L_port attached to a JBOD<br />
Operand –4,30 used to run the test only against E_Ports, 30 iterations<br />
Possible port types are as follows:<br />
-1 All ports<br />
-2 All L_Ports<br />
-3 All F_Ports<br />
-4 All E_Ports<br />
-5 All N->N loopback ports<br />
stopporttest used to halt test<br />
porttestshow displays the output<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 48<br />
Sample output from porttestshow (Ports 0-11 are truncated):<br />
Port 13 : PASS<br />
PortType: F PORT<br />
PortState: NO TEST<br />
PortInternalState: INIT<br />
PortTypeToTest: NO_TEST<br />
Pattern: 0xb Seed: 0xaa UserDelay: 10<br />
TotalIteration: 30 CurrentIteration: 0<br />
TotalFail: 0 ConsecutiveFail: 0<br />
StartTime: NONE<br />
StopTime: NONE<br />
Timeout: 0 ErrorCode: 0<br />
Port 14 : PASS<br />
PortType: E PORT(MASTER)<br />
PortState: TEST DONE<br />
PortInternalState: INIT<br />
PortTypeToTest: NO_TEST<br />
Pattern: 0xb Seed: 0xaa UserDelay: 10<br />
TotalIteration: 30 CurrentIteration: 30<br />
TotalFail: 0 ConsecutiveFail: 0<br />
StartTime: Apr 25 11:51:39<br />
StopTime: Apr 25 11:51:50<br />
Timeout: 0 ErrorCode: 0<br />
Port 15 : PASS<br />
PortType: L PORT<br />
PortState: NO TEST<br />
PortInternalState: INIT<br />
PortTypeToTest: NO_TEST<br />
Pattern: 0xb Seed: 0xaa UserDelay: 10<br />
TotalIteration: 30 CurrentIteration: 0<br />
TotalFail: 0 ConsecutiveFail: 0<br />
StartTime: NONE<br />
StopTime: NONE<br />
Timeout: 0 ErrorCode: 0<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 48
v4.1:admin> porttest<br />
Command Example<br />
49<br />
v4.1:admin> porttest -ports 1/12-14 -iteration 50<br />
Test run with 3 ports on switch:<br />
Port 12 contained a loopback adapter<br />
Port 13 was an F_Port attached to a server<br />
Port 14 was an E_Port<br />
Operand –ports 1/12-14 indicates test run against slot 1, ports 12-14<br />
Operand -iteration 50 used to run test 50 times<br />
stopporttest used to halt test<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 49<br />
Sample output from porttestshow:<br />
left_12k:admin> porttest -ports 1/12-14 -iteration 50<br />
left_12k:admin><br />
left_12k:admin> porttestshow -ports 1/12-14<br />
Port 12 : PASS<br />
PortType: LOOPBACK PORT<br />
PortState: TEST DONE<br />
PortInternalState: INIT<br />
PortTypeToTest: NO_TEST<br />
Pattern: 0xb Seed: 0xaa UserDelay: 10<br />
TotalIteration: 50 CurrentIteration: 50<br />
TotalFail: 0 ConsecutiveFail: 0<br />
StartTime: Fri Apr 25 12:25:06 2003<br />
StopTime: Fri Apr 25 12:25:17 2003<br />
Timeout: 0 ErrorCode: 0<br />
Port 13 : PASS<br />
PortType: F PORT<br />
PortState: TEST DONE<br />
PortInternalState: INIT<br />
PortTypeToTest: NO_TEST<br />
Pattern: 0xb Seed: 0xaa UserDelay: 10<br />
TotalIteration: 50 CurrentIteration: 50<br />
TotalFail: 0 ConsecutiveFail: 0<br />
StartTime: Fri Apr 25 12:25:06 2003<br />
StopTime: Fri Apr 25 12:25:17 2003<br />
Timeout: 0 ErrorCode: 0<br />
Port 14 : PASS<br />
PortType: E PORT(MASTER)<br />
PortState: TEST DONE<br />
PortInternalState: INIT<br />
PortTypeToTest: NO_TEST<br />
Pattern: 0xb Seed: 0xaa UserDelay: 10<br />
TotalIteration: 50 CurrentIteration: 50<br />
TotalFail: 0 ConsecutiveFail: 0<br />
StartTime: Fri Apr 25 12:25:06 2003<br />
StopTime: Fri Apr 25 12:25:17 2003<br />
Timeout: 0 ErrorCode: 0<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 49
Probably Failing Modules<br />
50<br />
Structural test fails:<br />
ramtest failed:<br />
portregtest failed:<br />
centralmemorytest failed:<br />
cmitest failed:<br />
(sram,cmem)retentiontest failed:<br />
camtest failed:<br />
turboramtest failed:<br />
Action<br />
replace MB<br />
replace MB<br />
replace MB<br />
replace MB<br />
replace MB<br />
replace MB<br />
replace MB<br />
Group tests:<br />
systemtest failed:<br />
Action<br />
replace MB<br />
MB: main board<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 50<br />
Each line in the table shows the probable bad components for each failing test. To use this<br />
table, all of the tests must be run and all of the results recorded in the assessment. The<br />
tests must be run in the above sequence. Certain tests depend on others to pass before they<br />
can be expected to pass. For example, the portloopbacktest requires that all of the<br />
tests prior to it must pass before it can be expected to pass.<br />
The high integration of the switch means that the major components that might possibly<br />
fail are limited to either the Loom ASIC or the main board. In the field, the main board is<br />
replaceable, but not the ASIC.<br />
The “circuit” tests are standalone. The error results directly point to the probably failing<br />
modules. For example if Port N fails portregtest,this directly points to a bad Port N<br />
or a bad CPU. To further isolate, the results of the other ports from the same test are<br />
required. If only Port N failed, then the most probable failure is port N. If all ports failed<br />
similarly, then it points to a common problem - the CPU.<br />
The results of the functional tests may need to be correlated with results of the other<br />
functional tests or/and the bit write/read tests. For example if portloopbacktest,<br />
crossporttest, and spinsilk failed while all other tests passed, that implies that<br />
the (B)loom or main board is bad since they appear as probably failing modules among<br />
the failing three tests.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 50
Probably Failing Modules, Cont.<br />
51<br />
Functional test fails:<br />
portloopbacktest failed:<br />
crossporttest failed:<br />
spinsilk failed:<br />
filtertest failed:<br />
statstest failed:<br />
Action:<br />
replace MB<br />
replace CBL, GBC, SFP or MB<br />
replace CBL, GBC, SFP or MB<br />
replace MB<br />
replace MB<br />
porttest failed:<br />
loopporttest failed:<br />
fporttest failed:<br />
spinfab failed:<br />
replace CBL, GBC, SFP, MB, or<br />
attached device, CBL, GBC,<br />
SFP, MB<br />
MB: mainboard<br />
GBC: GBIC<br />
SFP : Small Form-Factor Pluggable<br />
CBL: cable<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 51<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 51
Summary<br />
52<br />
Divide and Conquer - Troubleshoot starting at the<br />
switch<br />
Brocade commands in supportshow can help<br />
determine where problem breakdown occurred in<br />
LINK, LOGIN, FABRIC, DEVICE process<br />
Hardware diagnostics can be useful to the field<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 52<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 52
Review Questions<br />
1. Trunking problems fall into which categories? Choose all that apply:<br />
a. Port Configuration Problem<br />
b. Fabric Issues<br />
c. Marginal Link<br />
d. Optional <strong>Product</strong> License<br />
53<br />
2. How can the nsshow command output help you to troubleshoot a SAN?<br />
3. What are the differences between the portstatsclear and the<br />
portlogclear commands?<br />
4. What information is provided in response to the diagshow command?<br />
5. Why would you use crossporttest at your site?<br />
6. What is the first argument of most of the tests?<br />
7. Describe how to perform a supportshow.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 53<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 53
Review Answers<br />
54<br />
1. Trunking problems fall into which categories? Choose all that apply:<br />
a. Port Configuration Problem<br />
b. Fabric Issues<br />
c. Marginal Link<br />
d. Optional <strong>Product</strong> License<br />
2. How can the nsshow command output help you to troubleshoot a SAN?<br />
3. What are the differences between the portstatsclear and the<br />
portlogclear commands?<br />
4. What information is provided in response to the diagshow command?<br />
5. Why would you use crossporttest at your site?<br />
6. What is the first argument of most of the tests?<br />
7. Describe how to perform a supportshow.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 54<br />
1. All of them apply<br />
2. When a device is displayed in the name server with nsshow, the device has<br />
successfully attached and been registered to the fabric.<br />
3. portstatsclear will clear ASIC counters displayed with the command<br />
porterrshow. portlogclear will clear the error log on the switch.<br />
4. Status of all ports based on the diagnostics since the last reboot, current state of<br />
the ports (UP or DN) and frame count of active ports (frTX and frRX)<br />
5. Used to verify the functional operation of the switch by sending frames from<br />
port M's transmitter, and looping the frames back via an external fiber cable into<br />
another port N's receiver; thus exercising all of the switch components from the<br />
main board to the media to the fiber cable to the media and back to the main<br />
board.<br />
6. Pass count<br />
7. Open telnet, turn on capture and issue supportshow.<br />
© 2005 Brocade Communications Systems, Incorporated.<br />
Revision CFP261-02-2005<br />
Chapter 8 - 54