ESXi stores a virtual machine's disk files within a VMFS datastore that resides on a SAN storage device. When virtual machine guest operating systems issue SCSI commands to their virtual disks, the SCSI virtualization layer translates these commands to VMFS file operations.

When a virtual machine interacts with its virtual disk stored on a SAN, the following process takes place:

1

When the guest operating system in a virtual machine reads or writes to a SCSI disk, it issues SCSI commands to the virtual disk.

2

Device drivers in the virtual machine’s operating system communicate with the virtual SCSI controllers.

3

The virtual SCSI controller forwards the command to the VMkernel.

4

The VMkernel performs the following tasks.

a

Locates the file in the VMFS volume that corresponds to the guest virtual machine disk.

b

Maps the requests for the blocks on the virtual disk to blocks on the appropriate physical device.

c

Sends the modified I/O request from the device driver in the VMkernel to the physical HBA.

5

The physical HBA performs the following tasks.

a

Packages the I/O request according to the rules of the FC protocol.

b

Transmits the request to the SAN.

6

Depending on a port the HBA uses to connect to the fabric, one of the SAN switches receives the request and routes it to the storage device that the host wants to access.