25.10.2014 Views

Brocade® Product Training

Brocade® Product Training

Brocade® Product Training

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!