[ANNOUNCE]: ISCSI target driver iSCSI-SCST released

From: Vladislav Bolkhovitin
Date: Tue Jul 08 2008 - 15:38:14 EST


I'm glad to announce that version 1.0.0 of iSCSI target driver iSCSI-SCST released and available for download from http://scst.sourceforge.net/downloads.html.

ISCSI-SCST is a forked (with all respects) version of IET with updates to work in SCST environment (http://scst.sourceforge.net) as well as with many improvements and bugfixes. ISCSI-SCST has the following major advantages over the mainline IET:

* It uses full power of SCST without loosing existing features. Namely, you can additionally use with it:

o Pass-through mode with one to many relationship, i.e. when
multiple initiators can connect to the exported pass-through
devices.

o More advances devices visibility management, when different
initiators can see different set of devices with different
access permissions from the same target.

o O_DIRECT, i.e. "BLOCKIO on files", mode, which has all
advantages of BLOCKIO, but also supports files on file
systems. Sometimes, in the appropriate cases, this mode
can make performance difference in 100% or even more.

o With 4KB blocks you can forget about abysmal write
performance caused by misaligned partitions.

o Virtual CD/DVD-ROMs without necessity for manual patching.

o Ability to create target devices emulators in the user
space.

o Ability to create multi-transport SCSI targets, which can
export (possibly, the same) devices over multiple
transports.

* It has many code improvements and cleanups, including stability and iSCSI RFC violations fixes. Many IET users use it for ages without problems, so they consider it problemless. But, in fact, unfortunately, it isn't so. IET works well only on "fast" paths and regularly used branches, in many other less used cases IET has various problems, from simply ignoring error processing, as it is with memory allocations, and crashing itself with BUG() macro, as it is for malformed packets from initiators, to possible data corruption.

* Due to reworked I/O architecture and SCST backend iSCSI-SCST has better performance in many cases. In future with upcoming improvements in SCST core, like zero-copy with Linux cache, the performance difference is going to be even bigger. Currently in tests from a single initiator over a single connection on 1GbE hardware over FILEIO vdisk iSCSI-SCST with default settings usually outperforms tuned for best performance IET a on 3-30%. The difference is especially noticeably with real storage, not NULLIO or RAM disks. On 10GbE hardware the performance difference is often as high as 100-200% or even more. With higher number of initiators the difference will be even bigger. This is because iSCSI-SCST has less commands processing overhead per command, hence has smaller processing latency and puts less load on CPU.

Detail description of iSCSI-SCST you can find on its page
http://scst.sourceforge.net/target_iscsi.html.

This driver is being prepared in form of patch for review and
inclusion into the kernel.

Vlad

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/