ESXi는 가상 시스템의 디스크 파일을 SAN 스토리지 디바이스에 있는 VMFS 데이터스토어 안에 저장합니다. 가상 시스템 게스트 운영 체제가 가상 디스크에 SCSI 명령을 보내면 SCSI 가상화 계층에서 이 명령을 VMFS 파일 작업으로 전환합니다.

가상 시스템이 SAN에 저장된 가상 디스크와 상호 작용할 때는 다음의 프로세스가 수행됩니다.

  1. 가상 시스템의 게스트 운영 체제는 SCSI 디스크를 읽거나 쓸 때 가상 디스크에 SCSI 명령을 보냅니다.
  2. 가상 시스템 운영 체제의 디바이스 드라이버가 가상 SCSI 컨트롤러와 통신합니다.
  3. 가상 SCSI 컨트롤러가 명령을 VMkernel로 전달합니다.
  4. VMkernel에서는 다음 작업을 수행합니다.
    1. VMFS 볼륨에서 적절한 가상 디스크 파일을 찾습니다.
    2. 가상 디스크의 블록에 대한 요청을 적절한 물리적 디바이스의 블록에 매핑합니다.
    3. 수정된 I/O 요청을 VMkernel의 디바이스 드라이버에서 iSCSI 이니시에이터(하드웨어 또는 소프트웨어)로 전송합니다.
  5. iSCSI 이니시에이터가 하드웨어 iSCSI 어댑터(독립 또는 종속 모두)인 경우 어댑터는 다음 작업을 수행합니다.
    1. I/O 요청을 iSCSI PDU(Protocol Data Unit)로 캡슐화합니다.
    2. iSCSI PDU를 TCP/IP 패킷으로 캡슐화합니다.
    3. IP 패킷을 이더넷을 통해 iSCSI 스토리지 시스템으로 전송합니다.
  6. iSCSI 이니시에이터가 소프트웨어 iSCSI 어댑터인 경우 다음 작업이 수행됩니다.
    1. iSCSI 이니시에이터가 I/O 요청을 iSCSI PDU로 캡슐화합니다.
    2. 이니시에이터가 TCP/IP 연결을 통해 iSCSI PDU를 전송합니다.
    3. VMkernel TCP/IP 스택이 TCP/IP 패킷을 물리적 NIC로 릴레이합니다.
    4. 물리적 NIC는 이더넷을 통해 iSCSI 스토리지 시스템에 IP 패킷을 전송합니다.
  7. 네트워크의 이더넷 스위치와 라우터에서 적절한 스토리지 디바이스에 대한 요청을 수행합니다.