This article aims to address the issue of SCSI initiator and target, which has gained special relevance in recent times due to its impact on different areas of society. Since SCSI initiator and target, debates and controversies have arisen that have captured the attention of experts and the general public, generating an increasing interest in understanding their implications and consequences. Likewise, SCSI initiator and target has been the subject of numerous studies and investigations that seek to elucidate its multiple facets and delve into its influence in various areas. In this sense, essential aspects related to SCSI initiator and target will be addressed, with the purpose of offering a comprehensive and updated vision on this topic.
In computer data storage, a SCSI initiator is the endpoint that initiates a SCSI session, that is, sends a SCSI command over a network.[1][2][3] The initiator usually does not provide any Logical Unit Numbers (LUNs).
On the other hand, a SCSI target is the endpoint that does not initiate sessions, but instead waits for initiators' commands and provides required input/output data transfers. The target usually provides to the initiators one or more LUNs, because otherwise no read or write command would be possible.
Typically, a computer is an initiator and a data storage device is a target. As in a client–server architecture, an initiator is analogous to the client, and a target is analogous to the server. Each SCSI address (each identifier on a SCSI bus) displays behavior of initiator, target, or (rarely) both at the same time. There is nothing in the SCSI protocol that prevents an initiator from acting as a target or vice versa.
SCSI initiators are sometimes wrongly called controllers.[citation needed]
Initiator and target terms are applicable not only to traditional parallel SCSI, but also to Fibre Channel Protocol (FCP), iSCSI (see iSCSI target), HyperSCSI, (in some sense) SATA, ATA over Ethernet (AoE), InfiniBand, DSSI and many other storage networking protocols.
In most of these protocols, an address (whether it is initiator or target) is roughly equivalent to physical device's port. Situations where a single physical port hosts multiple addresses, or where a single address is accessible from one device's multiple ports are not very common, as of 2008. Even when using multipath I/O to achieve fault tolerance, the device driver switches between different targets or initiators statically bound on physical ports, instead of sharing a static address between physical ports.