The small computer system interface (SCSI) is a set of standards for connecting and transferring data between computing systems including storage systems and peripheral computing devices. The SCSI standard defines command sets for a variety of device types and communications between devices. Thus, the SCSI standards hide the complexity of computing systems communications and allow computing systems to independently operate. In addition, SCSI standards provide high communication speeds between computing systems. For example, ultra-640 SCSI offers interface speeds of up to 640 MB/second. Because of these features, SCSI has been popular since its inception in the 1980s.
Originally, SCSI as an interface standard was limited to small computer systems. In the early days of SCSI development, SCSI interfaces were limited to point-to-point systems. Additionally, in the beginning SCSI only supported small numbers of devices (e.g., up to 8) addressable by logical unit numbers (LUNs) and over limited distances (e.g., 25 meters in traditional SCSI configurations and 12 meters in ultra-SCSI configurations). Much progress has been made to move past these original limitations. For example, Internet small computer system interface (iSCSI) is an Internet Protocol (IP) based storage networking standard developed for applications such as linking data storage facilities. In an iSCSI-based system, SCSI commands are carried over IP networks such that data transfers may be performed over longer distances in comparison to traditional SCSI systems. With these increased performance abilities, iSCSI can be used to transmit data over local area networks (LANs), wide area networks (WANs), storage area networks (SANs), or the Internet. Further, iSCSI enables location-independent data storage and retrieval over long distances using existing network infrastructure. Thus, iSCSI and other variations of SCSI have gained popularity based on these improved performance characteristics.
Each of these variants of SCSI protocols and standards, including traditional SCSI, iSCSI, and other SCSI enhancement/variations, comprise the SCSI protocol family. As use of standards from the SCSI protocol family has elevated, the desire to enhance the efficiency and performance of SCSI systems has similarly increased.