Fabric OS Administrator's Guide v7.0.0 (53-1002148-02, June 2011)

Fabric OS Administrator’s Guide 451
53-1002148-02
Buffer credit management
22
To prevent a target device (either host or storage) from being overwhelmed with frames, the Fibre
Channel architecture provides flow control mechanisms based on a system of credits. Each of
these credits represents the ability of the device to accept additional frames. If a recipient issues
no credits to the sender, no frames can be sent. Pacing the transport of subsequent frames on the
basis of this credit system helps prevent the loss of frames and reduces the frequency of entire
Fibre Channel sequences needing to be retransmitted across the link.
Because the number of buffer credits available for use within each port group is limited,
configuring buffer credits for extended links may affect the performance of the other ports in the
group used for core-to-edge connections. You must balance the number of long-distance ISL
connections and core-to-edge ISL connections within a switch.
NOTE
Configuring long-distance ISLs between core and edge switches is possible, but is not a
recommended practice.
All switch ports provide protection against buffer depletion through buffer limiting. A buffer-limited
port reserves a minimum of eight buffer credits, allowing the port to continue to operate rather
than being disabled due to a lack of buffers.
Buffer-limited operations are supported for the LS and LD extended ISL modes only. For LD,
distance in kilometers is the smaller of the distance measured during port initialization versus the
desired distance value. For LS, distance in kilometers is always the desired distance value.
Buffer-to-Buffer flow control
Buffer-to-Buffer (BB) credit flow control is implemented to limit the amount of data that a port may
send based on the number and size of the frames sent from that port. Buffer credits represent
finite physical port memory. Within a fabric, each port may have a different number of BB credits.
Within a connection, each side may have a different number of BB credits.
Buffer-to-Buffer flow control is flow control between adjacent ports in the I/O path, for example,
transmission control over individual network links. A separate, independent pool of credits is used
to manage Buffer-to-Buffer flow control. Buffer-to-Buffer flow control works by a sending port using
its available credit supply and waiting to have the credits replenished by the port on the opposite
end of the link. These BB credits are used by Class 2 and Class 3 service and rely on the Fibre
Channel Receiver-Ready (R_RDY) control word to be sent by the receiving link port to the sender.
The rate of frame transmission is regulated by the receiving port based on the availability of buffers
to hold received frames.
Upon arrival at a receiver, a frame goes through several steps. It is received, deserialized, decoded,
and is stored in a receive buffer where it is processed by the receiving port. If another frame arrives
while the receiver is processing the first frame, a second receive buffer is needed to hold this new
frame. Unless the receiver is capable of processing frames as fast as the transmitter is capable of
sending them, it is possible for all of the receive buffers to fill up with received frames. At this point,
if the transmitter should send another frame, the receiver will not have a receive buffer available
and the frame will be lost. Buffer-to-Buffer flow control provides consistent and reliable frame
delivery of information from sender to receiver.