mirror of
https://github.com/SCST-project/scst.git
synced 2026-05-14 09:11:27 +00:00
ISCSI-SCST updates
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@163 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
@@ -201,6 +201,104 @@ enabling/disabling target mode on your target SCSI controller.<br>
|
||||
<p><a
|
||||
href="http://sourceforge.net/project/showfiles.php?group_id=110471">Download</a>
|
||||
</p>
|
||||
<hr
|
||||
style="width: 100%; height: 2px; margin-left: 0px; margin-right: 0px;">
|
||||
<h1><small>ISCSI target driver iSCSI-SCST<br>
|
||||
</small></h1>
|
||||
<div style="text-align: justify;">
|
||||
<p>ISCSI-SCST is a forked (with all respects) version of <a
|
||||
href="http://iscsitarget.sourceforge.net/">IET</a> with
|
||||
updates to work over SCST as well as with many improvements and
|
||||
bugfixes. The reason of fork is that the necessary changes are
|
||||
intrusive and with the current IET merge policy, where only simple
|
||||
bugfix-like patches, which doesn't touch the core code, could be
|
||||
merged, it is very unlikely that they will be merged in the main IET
|
||||
trunk.<br>
|
||||
</p>
|
||||
<p>ISCSI-SCST has the following major advantages over the mainline IET:<br>
|
||||
</p>
|
||||
<ul>
|
||||
<li>It uses full SCST power without loosing any existing feature
|
||||
(except, maybe, "illegal" from SCSI specifications point of view MPIO).
|
||||
Namely, you can use with it:</li>
|
||||
</ul>
|
||||
<ul style="list-style-type: circle; margin-left: 40px;">
|
||||
<li>Pass-through mode with one to many relationship, i.e. when
|
||||
multiple initiators can connect to the exported pass-through devices
|
||||
(see above). For instance, you can safely export your parallel SCSI
|
||||
tape or tape library on your iSCSI net and multiple initiators can
|
||||
share it without risk of data loss because of the shared usage.
|
||||
Existing "rawio" patch for IET supports only non-enforced 1:1
|
||||
relationship, so it is unsafe to use it in multiple initiators
|
||||
environments.<br>
|
||||
</li>
|
||||
<li>More advances devices visibility management, when different
|
||||
initiators can see different set of devices with different access
|
||||
permissions from the same target.</li>
|
||||
<li>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.</li>
|
||||
<li>With 4KB blocks you can forget about abysmal write performance
|
||||
caused by misaligned partitions. All modern OS'es, including Windows
|
||||
starting from, at least, Windows 2000, work perfectly with 4KB block
|
||||
devices without any additional storage or handling overhead.</li>
|
||||
<li>Virtual CD/DVD-ROMs without necessity for manual patching.</li>
|
||||
<li>Ability to create target devices emulators in the user space.</li>
|
||||
<li>Ability to create multi-transport SCSI targets, which can export
|
||||
(possibly, the same) devices over multiple transports.</li>
|
||||
</ul>
|
||||
<ul>
|
||||
<li>It has many code improvements and cleanups, including stability
|
||||
and iSCSI RFC violations fixes. If you are an IET user and consider IET
|
||||
problemless, I'm sorry for the bad news. 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, to crashing itself with BUG() macro, as it is
|
||||
for malformed packets from initiators. ChangeLog file lists most
|
||||
noticeable fixes, but there were a lot of many other smaller ones.</li>
|
||||
</ul>
|
||||
<ul>
|
||||
<li>Due to its reworked IO architecture and SCST backend iSCSI-SCST
|
||||
has better performance in many cases. In future with upcoming SCST
|
||||
improvements, like zero-copy with Linux cache FILEIO, 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 IET a on
|
||||
3-10% (by default IET has not too good settings, so it shows
|
||||
considerably worse results) or has the similar performance. The bigger
|
||||
difference is expected with 10GbE hardware or with higher number of
|
||||
initiators, since iSCSI-SCST has less commands processing overhead per
|
||||
command, hence put less load on CPU. If you find a case where
|
||||
iSCSI-SCST has worse performance, than IET, please report it to SCST
|
||||
mailing list scst-devel@lists.sourceforge.net, it will be greatly
|
||||
appreciated.</li>
|
||||
</ul>
|
||||
<p>Also, in contrast to IET, iSCSI-SCST is open for any new
|
||||
development, modifications and improvements, so people who want to fix
|
||||
or implement something new will not have to keep and maintain separate
|
||||
patches as it is currently necessary with IET. ISCSI-SCST is going to
|
||||
be actively developed and gain in the future new features like support
|
||||
for multiple connections per session, error recovery levels >0,
|
||||
etc., which eventually make it really "enterprise".<br>
|
||||
</p>
|
||||
<p>ISCSI-SCST is available for download from the <a
|
||||
href="http://svn.sourceforge.net/scst">SCST SVN repository</a>. See
|
||||
above how to setup access to it.<br>
|
||||
</p>
|
||||
<p>After some testing for month-two, iSCSI-SCST is going to be fully
|
||||
released.<br>
|
||||
</p>
|
||||
<p>If you are an IET user, please, before installation carefully read
|
||||
README files of both iSCSI-SCST and the SCST core. Especially pay
|
||||
attention that now the LUN information for iSCSI-SCST is configured not
|
||||
using iscsi-scstd.conf file in /etc, but using corresponding SCST
|
||||
facilities. This is because now the responsibilities are divided (as it
|
||||
should be) between the target driver (iSCSI-SCST) and the SCST core.
|
||||
The target driver is responsible for handling targets and their
|
||||
parameters, SCST core is responsible for handling backstorage.<br>
|
||||
</p>
|
||||
</div>
|
||||
<hr
|
||||
style="width: 100%; height: 2px; margin-left: 0px; margin-right: 0px;">
|
||||
<h1><small>Target driver for QLogic 2200/2300 cards<br>
|
||||
@@ -231,7 +329,7 @@ to it.<br>
|
||||
<h1><small>Target driver for LSI/MPT cards</small></h1>
|
||||
Target driver LSI/MPT cards was originally developed by Hu Gang, then
|
||||
Erik Habbinga has continued the development. This driver is on the
|
||||
alpha stage and available from the <a
|
||||
alpha stage and available for download from the <a
|
||||
href="http://svn.sourceforge.net/scst">SCST SVN repository</a>. See
|
||||
above how to setup access to it.<br>
|
||||
<br>
|
||||
@@ -257,7 +355,7 @@ One major difference of this driver from the above target driver for
|
||||
QLogic 2200/2300 cards is that it supports 24xx series of chipsets.<br>
|
||||
<br>
|
||||
This driver is unstable and on the
|
||||
alpha stage. It is available from the <a
|
||||
alpha stage. It is available for download from the <a
|
||||
href="http://svn.sourceforge.net/scst">SCST SVN repository</a>. See
|
||||
above how to setup access to it.<br>
|
||||
<br>
|
||||
|
||||
Reference in New Issue
Block a user