You are on page 1of 3

FLOGI, PLOGI, and PRLI

By Amr Enan
June 28, 2013

Fabric Login (FLOGI)


When you connect your server or storage, it will send a Fabric login (FLOGI) request.
This FLOGI request serves two purposes:

 Fibre Channel ID is the WWPN connection to this port from the FLOGI server
 Exchange buffer credits with the switch
To better understand the first function, it is exactly the same if I rewrite it as, “request an
IP address for a MAC address from the DHCP server”.

Yes, that’s right, FCID in the FC world is more or less the same as an IP address in the
networking world. An IP address has two main IDs. The network ID is unique to devices
that exist in the same Layer 2 domain, and the host ID is unique to each host.

FCID has two main parts: the Domain ID is unique for all devices that are connected to
the same switch, and the Port ID is unique to each device connected to the same
switch.

If you connect your laptop to your network, what is the first thing it will do? It will request
an IP address so that it can communicate with other devices. In order to do so, it will
send a DHCP BC frame that contains the MAC address. The equivalent to MAC in the
FC world is WWPN, and the equivalent to a DHCP server is the LOGIN server (a
service running inside the FC switch).

LOGIN server is a service running inside each storage switch. It is responsible for
providing a unique FCID to each device connected to your switch, just like the DHCP
provides each network host with a unique IP address.

FLOGI is functional in that it provides the buffer credit exchange between server and
switch.
The FC is lossless, and the way it achieves this is on a link-by-link basis, meaning that
the two devices on the same link will exchange buffer credits with each other, but why?

Checking the above figure, you’ll see that the TX (Server) now knows that the maximum
number of frames RX (Switch) can hold in the buffer is 4. It will then send another
variable called BB_Credit_CNT. At the login, it will send its value to 0 and whenever the
TX sends a frame to the RX, the value will increase by 1. Then TX can send frames to
RX until the value of BB_Credit_CNT is less than the BB_Credit. When a buffer space is
offloaded on the RX side, an upper layer RX will send the TX a RDY frame. When the
TX receives that frame it will decrease the value of BB_Credit_CNT by one and be able
to send one more frame to TX.

All of this is what makes FC lossless. No frame will be sent from one device to another
unless it was a switch to switch or server to switch.

Port Login (PLOGI)


After each device finishes the FLOGI phase, they now each have their own FCID. But
they don’t know how to reach other devices connected to the same switch or connected
to other switches in the fabric. In order to communicate with other devices, each device
will need to do PLOGI.

There’s another service running inside the switch called Name server. When any device
registers with this server, it sends its WWPN map to its FCID. The Name server will
expose that device and all the register requests it receives this way can communicate
with each other.
Process Login (PRLI)
As the two devices can now communicate with each other using the FC network SCSI,
communication now takes place between the two devices. The SCSI has two main
operations which are SCSI read or SCSI write.

View Networking and Wireless training courses.

You might also like