NPIV permet à un unique port HBA FC d'enregistrer plusieurs WWN uniques dans la structure, chacun pouvant être assigné à une machine virtuelle.
Les objets SAN comme les commutateurs, HBA, périphériques de stockage ou machines virtuelles peuvent se voir assignés des identifiants Nom mondial WWN. Les WWN identifient de manière unique ces objets dans la structure Fibre Channel.
Lorsque les machines virtuelles possèdent des affectations WWN, elles les utilisent pour tout leur trafic RDM. Les LUN vers lesquels pointent tous les RDM de la machine virtuelle doivent donc rester non masqués pour ces WWN. Si les machines virtuelles ne possèdent pas d'affectations WWN, elles peuvent accéder aux LUN de stockage au moyen des WWN des HBA physiques de leur hôte. Grâce à NPIV, un administrateur SAN peut surveiller et router l'accès au stockage pour une machine virtuelle.
Lorsqu'une machine virtuelle possède un WWN qui lui est assigné, le fichier de configuration de la machine virtuelle (.vmx) est mis à jour pour inclure une paire WWN. Cette paire est composée d'un nom de port mondial (WWPN) et d'un nom de nœud mondial (WWNN). Au démarrage de cette machine virtuelle, VMkernel active un port virtuel (VPORT) sur le port physique HBA utilisé pour accéder au LUN. Le VPORT est un HBA virtuel qui s'affiche dans la structure FC comme un HBA physique. Le VPORT a son propre identifiant unique, la paire WWN qui a été attribuée à la machine virtuelle.
Chaque port VPORT est spécifique à la machine virtuelle. Lorsque cette machine est éteinte, le VPORT est détruit sur l'hôte et n'apparaît plus dans la structure FC. Lorsqu'une machine virtuelle est migrée d'un hôte vers un autre, le VPORT se ferme sur le premier hôte et s'ouvre sur l'hôte de destination.
Si NPIV est activé, les paires WWN (WWPN et WWNN) sont spécifiées pour chaque machine virtuelle au moment de leur création. Lorsqu'une machine virtuelle utilisant NPIV est mise sous tension, elle utilise chacune de ces paires WWN par séquence afin de découvrir un chemin d'accès au stockage. Le nombre de VPORT instanciés est égal au nombre de HBA physiques présents sur l'hôte. Un VPORT est créé sur chaque HBA physique où un chemin physique est trouvé. Chaque chemin physique détermine le chemin virtuel qui est utilisé pour accéder au LUN. Les HBA ne prenant pas en charge NPIV sont ignorés lors de ce processus de découverte, car les VPORT ne peuvent y être instanciés.