NPIV
NPIV or N_Port ID Virtualization is a Fibre Channel feature whereby multiple Fibre Channel node port (N_Port) IDs can share a single physical N_Port. This allows multiple Fibre Channel initiators to occupy a single physical port, easing hardware requirements in Storage Area Network (SAN) design, especially where virtual SANs are called for. This allows each virtual server to see its own storage and no other virtual server's storage.[1] NPIV is defined by the Technical Committee T11 in the Fibre Channel - Link Services (FC-LS) specification.
N_Port initialization with and without NPIV
Normally N_Port initialization proceeds like this:
- N_Port sends FLOGI to address 0xFFFFFE to obtain a valid address
- N_Port sends PLOGI to address 0xFFFFFC to register this address with the name server
- N_Port sends SCR to address 0xFFFFFD to register for state change notifications
However with NPIV it may continue like this:
- N_Port sends FDISC to address 0xFFFFFE to obtain an additional address
- N_Port sends PLOGI to address 0xFFFFFC to register this additional address with the name server
- N_Port sends SCR to address 0xFFFFFD to register for state change notifications.
- ... (repeat FDISC/PLOGI/SCR for next address)
FDISC is an abbreviation for Fabric Discovery, or "Discover Fabric Service Parameters", which is a misleading name in this context. It works just like FLOGI.