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