Re: tcp/ip over scsi

From: Gérard Roudier (
Date: Fri Jun 02 2000 - 15:06:46 EST


Moving TCP/IP over SPI is probably no longer a great idea.
Has it ever been so?

We have different media and controllers specifically designed to
cope with TCP/IP mess-up nowadays. SPI haven't any value to added in
TCP/IP area, in my opinion.

Your cluster of 3174's was probably a great machine, but time have changed
and may-be you would use a different solution for an similar problem

Btw, I donnot mean that having SCSI target mode support would not be
interesting. This is in my todo list since one year and I haven't find
time enough for the moment for seriously working on it.


On Fri, 2 Jun 2000, Jeff V. Merkey wrote:

> David,
> We did something like this on SCSI-II in 1992 while I was at Memorex
> Telex for our S/370 mainframe cluster controllers. We used high speed
> SCSI to provide a clustering interconnect for S/370 and 3174 cluster
> controllers for IBM mainframes. We used an M64 embedded OS, NetWare
> (gag!) and ATT Unix OS's and I'll share what we discovered.
> A. You need to write your own SCSI-II initiator and SCSI-II target
> scripts for the chipsets because there are several special cases you
> must handle if you are using SCSI as a comm interconnect -- standard
> disk scripts don't cut it. If you put in these special cases,
> performance can be stunning and low latency on SCSI.
> B. We used NCR 53C720 chipsets on the SCSI-II cluster adapters we
> designed for the 1174 and 9432 (3172/3088) cluster controllers. We
> discovered that SCSI and S/370 channel had a lot of similiar behaviors
> in terms of data transfer architectures, and after 8 months of profiling
> and analysis, discovered that the 3088 method used by IBM was ideal when
> applied to a SCSI-II interconnect.
> C. The best method is to reserve two SCSI addresses per system, one for
> reads and one for writes. The IBM 3088 cluster controller does
> something similiar, it reserves a range of subchannel addresses (very
> similar to SCSI LUN addressing) and reserves some for writes and some
> for reads. On IBM channel, there is the ability to present two statuses
> which will tell the host controller when the I/O is completed
> (Channel-End) and when the channel device is ready to receive the next
> request (Device-End). On the read side, a 3088 will hold off
> Device_ending status to "prime" the device for the next read. You kind
> of need to do this since S/370 channel and SCSI both have this concept
> of master-slave and writes are "pushed" and reads "pulled" from the
> target by using selection and reselection protocols. We did something
> very similar to handle special case for multiple outstanding asynch
> reads from a SCSI-II address. We mapped IP addresses and adapter
> addresses to each R/W pair of SCSI addresses.
> D. With this, we were able to route TCP/IP, IPX/SPX, LLC8022, and all
> these different LAN protocols at very high data rates, and across
> multiple pairs of SCSI-II LUN addresses and SCSI-II adapters in a
> cluster, as well as standard SNA Request Unit traffic, to Network
> servers and devices as well as S/370 mainframes, 3172 gateways, etc.
> and at very low latency.
> Whether someone has done this on Linux I don't know, but someone like
> Gerard Roudier could easily whip out some SCSI scripts to do this, and
> envelope it with the Network routers in Linux. Network interconnects
> are a lot faster these days, and there's SSA, and Fibre Channel, and all
> this other stuff that is much better designed than SCSI. If you are
> interested in doing something with SCSI, here's some ideas to consider.
> :-)
> Jeff
> Rogier Wolff wrote:
> >
> > david wrote:
> > > has any one got tcp/ip over scsi working ?
> > > if not i am going to try it my self
> > > as i need the bandwidth
> >
> > > also if any one has any info to help this project please let me know
> > > as the more help the better
> >
> > The consensus on Linux-kernel is that you should buy a few gigabit
> > ethernet cards.
> >
> > Roger.
> >
> > --
> > ** ** ** +31-15-2137555 **
> > *-- BitWizard writes Linux device drivers for any device you may have! --*
> > * Common sense is the collection of *
> > ****** prejudices acquired by age eighteen. -- Albert Einstein ********

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

This archive was generated by hypermail 2b29 : Wed Jun 07 2000 - 21:00:16 EST