some of you might have already encountered this issue in your SAN environment. portshow command will show high "Invalid_word" and there wont be any link errors or failures. This is identified as
usual behavior in Brocade 8G switches where fillword settings are not properly configured.
switch:admin>portshow 22
LE domain: 0
FC Fastwrite: OFF
Interrupts: 0 Link_failure: 0 Frjt: 0
Unknown: 252 Loss_of_sync: 0 Fbsy: 0
Lli: 0 Loss_of_sig: 0
Proc_rqrd: 322436 Protocol_err: 0
Timed_out: 0 Invalid_word: 3689281
Rx_flushed: 0 Invalid_crc: 0
Tx_unavail: 0 Delim_err: 0
Free_buffer: 0 Address_err: 0
Overrun: 0 Lr_in: 0
Suspended: 0 Lr_out: 0
Parity_err: 0 Ols_in: 0
2_parity_err: 0 Ols_out: 0
CMI_bus_err: 0
what is a fill-word?
A fill-word is a primitive signal which is needed to maintain bit and word synchronization between two adjacent ports. Is doesn't matter what port type (F-port,E-port,N-Port etc) it is. They are not data frames in the sense that they transport user-data but instead they communicate status messages between these two ports. If no user-data is transmitted the ports will send so called IDLE frames. These are just frames with some bit pattern where the ports are able to keep there synchronization on a bit-level as well as a word level.
ARB:- Arbitrative Primitive Signal. Applies only to an Arbitrated Loop topology, and
is transmitted as the fill word by an L_Port to indicate the port is arbitrating
access to the loop.
IDLE:- An ordered set transmitted continuously over a link when no data is being
transmitted to maintain an active link. It helps maintain bit, byte, and word
synchronization.
With the introduction of 8G Fibre Channel, to comply with the published FC standards, Brocade introduced options for ARB/ARB and IDLE/ARB link initialization/fill word support. Some devices are still not
capable of properly establishing link with Brocade 8G Fibre Channel switches when ARB/ARB or IDLE/ARB primitives are used. These 8G devices require the legacy IDLE/IDLE sequence to achieve successful link initialization. This issue can be addressed by using portcfgfillword command to set link initialization and fillword with three possible conbinations((IDLE/IDLE, ARB/ARB, or IDLE/ARB) and the supported modes are
Mode 0: IDLE/IDLE
Mode 1: ARB/ARB
Mode 2: IDLE/ARB
Mode 3: ARB/ARB then IDLE/ARB
Usage:
portcfgfillword [slot/]port, mode
Eg:- switch:admin> portcfgfillword 2/3, 3
The recommended mode is mode 3, as it will provides an option to automatically switch from ARB/ARB to IDLE/ARB if the former is not able to successfully establish a link.
If I get Not supported result when I choose mode 3 how I can reduce Invalid_word count in other way ?
ReplyDeleteHi, try to reset the port count and observe the port and check the data flow using port statistics. there could be an issue with the connected fiber cable which can also contribute the behavior.
ReplyDelete