2.7 iSCSI Introduction
iSCSI (Internet SCSI) is a protocol which encapsulates SCSI (Small Computer System Interface) commands and data in TCP/IP packets for linking storage devices with servers over common IP infrastructures. iSCSI provides high performance SANs over standard IP networks like LAN, WAN or the Internet.
IP SANs are true SANs (Storage Area Networks) which allow few of servers to attach to an infinite number of storage volumes by using iSCSI over TCP/IP networks. IP SANs can scale the storage capacity with any type and brand of storage system. In addition, using any type of network (Ethernet, Fast Ethernet, Gigabit Ethernet) and combining operating systems (Microsoft Windows, Linux, Solaris, …etc.) within the SAN network.
Storage protocol, such as iSCSI, has “two ends” in the connection. These ends are the initiator and the target. In iSCSI we call them iSCSI initiator and iSCSI target. The iSCSI initiator requests or initiates any iSCSI communication. It requests all SCSI operations like read or write. An initiator is usually located on the host/server side (either an iSCSI HBA or iSCSI SW initiator).
The iSCSI target is the storage device itself or an appliance which controls and serves volumes or virtual volumes. The target is the device which performs SCSI commands or bridges it to an attached storage device. iSCSI targets can be disks, tapes, RAID arrays, tape libraries, and etc.
Host 1
(initiator)
NIC
Host 2
(initiator)
iSCSI
HBA
IP SAN
iSCSI device 1 | iSCSI device 2 |
(target) | (target) |
The host side needs an iSCSI initiator. The initiator is a driver which handles the SCSI traffic over iSCSI. The initiator can be software or hardware (HBA). Please refer to the certification list of iSCSI HBA(s) in Appendix A. OS native initiators or other software initiators use the standard TCP/IP stack and Ethernet hardware, while iSCSI HBA(s) use their own iSCSI and TCP/IP stacks on board.
Hardware iSCSI HBA(s) would provide its initiator tool. Please refer to the vendors’ HBA user manual. Microsoft, Linux and Mac provide software iSCSI initiator driver. Below are the available links:
[21]