Features comparison between Linux SCSI targets
-As on October 2009
+As on October 2009. Partially updated in August 2010.
| Upstream kernel | - | Kernel part | - | - | ||||||||||||
| Generic Target Engine | + | + | iSCSI only | Under development | +Generic Target Engine | + | + | iSCSI only | + | |||||||
| Architecture | Kernel only | User space only @@ -74,7 +74,7 @@ | ||||||||||||||
| Stability | + | + 3 - | + | Under development | ++ | ? (no released packages) | ||||||||||
| Performance 4 | *****
@@ -95,7 +95,7 @@ backend drivers | +
transfer values (parallel SCSI, SAS) | + | - | - | - |
| ||||||||||
| Interface with user space | ProcFS | Custom | - | ConfigFS/IOCTL/ProcFS | +Interface with user space | SysFS/ProcFS | Custom | - | ConfigFS/IOCTL/ProcFS | + | - | Major features | ||||
| Target drivers in kernel space | + | + | - | Under development | +Target drivers in kernel space | + | + | - | + | |||||||
| Target drivers in user space | + | + | - | - | @@ -112,15 +112,11 @@ transfer values (parallel SCSI, SAS)+ | - | Backstorage handlers in kernel space | + | - | - | + | |||||
| Backstorage handlers in user space | + | + | - | - | +Backstorage handlers in user space | + | + | - | Through STGT | |||||||
| Local access to emulated backstorage devices -9 | + | - | - | - | -||||||||||||
| Advanced devices access control -10 | + | - | - | - | +10+ | - | - | + | ||||||||
| Support for Asynchronous Event Notifications @@ -132,14 +128,10 @@ resized through AENs or Unit Attentions (Initiators can instantly see any target reconfiguration in a PnP-like fashion) | + | - | - | - | ||||||||||||
| Bidirectional Commands | + - 11 - | + | - | - | +Bidirectional Commands | + | + | - | - | |||||||
| Extended CDB (size >16 bytes) | + - 11 - | + | - | - | +Extended CDB (size >16 bytes) | + | + | - | - | |||||||
| Descriptor sense support | + | + | - | - | @@ -169,8 +161,7 @@ ORDERED commands+ | + | -, data | |||||||||
| Persistent Reservations - (Windows 2008 clustering / RHEL5 I/O fencing) | Under testing - | + (limited + (Windows 2008 clustering / RHEL5 I/O fencing) | + | + (limited functionality implemented) | - | + | + | + | -, data | Failover Clustering | + | ? | + | + | ||
| Allocated buffers cache | + | - | - | - | +||||||||||||
| Protection against commands with +wrong transfer size or transfer direction (may lead to crash or +hard lockup) | + | - | - | - | +||||||||||||
| Protection against DoS'ing target by making it +allocate too much memory for buffers and taking it into an OOM state + | + | - | - | - | +||||||||||||
| SCSI MIBs | - | - | - | +- 15 | + | + | -, data | Marvell (SAS) | Beta | - | - | - | ||||
| FCoE | Under - development | Under - development | - | - | +FCoE | Alpha | Under + development | - | Alpha | |||||||
| LSI (Parallel (Wide) SCSI and Fibre Channel) @@ -227,7 +230,11 @@ ORDERED commands | + | + | -, data | |||||||||||||
| IBM pSeries Virtual SCSI | - | + | - | - | -||||||||||||
| Local access to emulated backstorage devices +9 | + | - | - | + | +||||||||||||
| Supported backstorage @@ -243,11 +250,13 @@ ORDERED commands | + | + | -, data | |||||||||||||
| SCSI pass-through - 16 | + | Disks only, single + 16 | + | Single initiator only, not - enforced + enforced, limited + for tapes 17 - | - | Single initiator only, not enforced + | - | Single initiator only, not enforced, + limited for tapes 17 | ||||||||
| - | Experimental | - | <Kernel only | |||||||||||||
| Interface with user space | IOCTL/ProcFS/ + | Interface with user space | SysFS/IOCTL/ProcFS/ Netlink | - | IOCTL/ProcFS/ Netlink | ConfigFS/IOCTL/ProcFS | ||||||||||
| Zero-copy data send/receive | Send only 19 - | None + | In some cases, + send only 8 | Send only | Send only | - | Experimental | - | <Max ErrorRecoveryLevel | 0 | 0 | 0 | 2 | |||
| Bidirectional Commands | + - 11 - | + | - | - | +Bidirectional Commands | + | + | - | - | |||||||
| Extended CDB (size >16 bytes) | + - 11 - | + | - | - | +Extended CDB (size >16 bytes) | + | + | - | - | |||||||
| Support for Asynchronous Event Notifications @@ -336,7 +342,7 @@ reinstatement 20 | Safe | N | ||||||||||||||
| Support for MaxOutstandingR2T >1 (write performance increase on high latency -links) | + | - | - | + | +links)+ | Partial | - | + | ||||||||
| iSCSI MIBs | - | - | - | +- @@ -374,7 +380,8 @@ links) | + | - | - | + | + | - | - | + | of devices from the same target. This feature is required for hardware targets, which don't have ability to create virtual targets. -+ | - | - | + | SCSI tape or SATA DVD-RW device to your iSCSI network.