Generic SCSI Target Subsystem for Linux
-The generic SCSI target subsystem for Linux (SCST) is an alternative - implementation of a SCSI target subsystem for Linux. It provides unified, - consistent interface between SCSI target drivers and - Linux kernel as well as between Linux kernel and storage backend - handlers, connecting target drivers with real or emulated storage backend. - -
SCST allows creation of sophisticated storage devices from any Linux box. Those +
The generic SCSI target subsystem for Linux (SCST) allows creation of sophisticated storage devices + from any Linux box. Those devices can provide advanced - functionality, like replication, thin provisioning, - deduplication, high availability, - automatic backup, etc. Another class of such devices - are Virtual Tape Libraries (VTL) - as well as other disk-based backup solutions. SCST created devices not - limited by IP networking only. They can use any link which supports - SCSI-style data exchange, including Fibre Channel, - iSCSI, SAS, - InfiniBand and parallel (Wide) SCSI. It might + functionality, like replication, thin provisioning, + deduplication, high availability, + automatic backup, etc. Another class of such devices + are Virtual Tape Libraries (VTL) + as well as other disk-based backup solutions.
+SCST devices not limited by IP networking only. They can use any link which supports + SCSI-style data exchange, including iSCSI, Fibre Channel, + SAS, + InfiniBand (SRP) and parallel (Wide) SCSI. It might well be that your favorite storage appliance running SCST in the firmware.
SCST project consists from a set of subprojects: generic SCSI target mid-layer itself (SCST core) @@ -58,9 +53,12 @@
Features of SCST Core
-
-
- SCST core has simple, easy to use interface with target drivers. - SCST core performs all required pre- and post- processing of incoming requests as well as - necessary error recovery. +
- SCST core provides unified, + consistent interface between SCSI target drivers and + Linux kernel as well as between Linux kernel and storage backend + handlers, connecting target drivers with real or emulated storage backend. +
- SCST core performs all required pre- and post- processing of incoming requests as well as + necessary error recovery.
- SCST core undertakes most problems, related to execution contexts, thus practically eliminating one of the most complicated problem in the kernel drivers development. For example, target drivers for Marvell SAS adapters or for InfiniBand SRP are less 3000 lines of code long.