public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
* Re: Re[2]: ata over ethernet question
       [not found]       ` <20050507150538.GA800@favonius>
@ 2005-05-10 22:00         ` Guennadi Liakhovetski
  2005-05-10 23:14           ` Dmitry Yusupov
                             ` (2 more replies)
  0 siblings, 3 replies; 29+ messages in thread
From: Guennadi Liakhovetski @ 2005-05-10 22:00 UTC (permalink / raw)
  To: Sander; +Cc: David Hollis, Maciej Soltysiak, linux-kernel, linux-scsi

Hi

On Sat, 7 May 2005, Sander wrote:

> David Hollis wrote (ao):
> > There seem to be a few iSCSI implementations floating around for
> > Linux, hopefully one will be added to mainline soon. Most of those
> > implementations are for the client side though there is at least one
> > target implementation that allows you to provide local storage to
> > iSCSI clients. I don't remember the name of it or if it's still
> > maintained or not.
> 
> Quite active even:
> 
> http://sourceforge.net/projects/iscsitarget/
> 
> The "Quick Guide to iSCSI on Linux" is a good starting point btw.
> 
> Also check out http://www.open-iscsi.org/ (the client, aka 'initiator').

A follow up question - I recently used nbd to access a CD-ROM. It worked 
nice, but, I had to read in 7 CDs, so, each time I had to replace a CD, I 
had to stop the client, the server, then replace the CD, re-start the 
server, re-start the client... I thought about extending NBD to (better) 
support removable media, but then you start thinking about all those 
features that your local block device has that don't get exported over 
NBD...

Now, my understanding (sorry, without looking at any docs - yet) is, that 
iSCSI is (or at least should be) free from these limitations. So, does it 
make any sense at all extending NBD or just switch to iSCSI? Should NBD be 
just kept simple as it is or would it be completely superseeded by iSCSI, 
or is there still something that NBD does that iSCSI wouldn't (easily) do?

Or am I completely misunderstanding what iSCSI target does?

Thanks
Guennadi
---
Guennadi Liakhovetski


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: Re[2]: ata over ethernet question
  2005-05-10 22:00         ` Re[2]: ata over ethernet question Guennadi Liakhovetski
@ 2005-05-10 23:14           ` Dmitry Yusupov
  2005-05-11  5:42             ` [Iscsitarget-devel] " FUJITA Tomonori
  2005-05-11  8:56           ` Vladislav Bolkhovitin
  2005-05-12 18:52           ` Re[2]: ata over ethernet question James Bottomley
  2 siblings, 1 reply; 29+ messages in thread
From: Dmitry Yusupov @ 2005-05-10 23:14 UTC (permalink / raw)
  To: Guennadi Liakhovetski
  Cc: Sander, David Hollis, Maciej Soltysiak, linux-scsi, iet-dev

I'll redirect this question to iSCSI Target folks, so they will lead
some light on current IET limitations and advantages comparing to NBD.

On Wed, 2005-05-11 at 00:00 +0200, Guennadi Liakhovetski wrote:
> Hi
> 
> On Sat, 7 May 2005, Sander wrote:
> 
> > David Hollis wrote (ao):
> > > There seem to be a few iSCSI implementations floating around for
> > > Linux, hopefully one will be added to mainline soon. Most of those
> > > implementations are for the client side though there is at least one
> > > target implementation that allows you to provide local storage to
> > > iSCSI clients. I don't remember the name of it or if it's still
> > > maintained or not.
> > 
> > Quite active even:
> > 
> > http://sourceforge.net/projects/iscsitarget/
> > 
> > The "Quick Guide to iSCSI on Linux" is a good starting point btw.
> > 
> > Also check out http://www.open-iscsi.org/ (the client, aka 'initiator').
> 
> A follow up question - I recently used nbd to access a CD-ROM. It worked 
> nice, but, I had to read in 7 CDs, so, each time I had to replace a CD, I 
> had to stop the client, the server, then replace the CD, re-start the 
> server, re-start the client... I thought about extending NBD to (better) 
> support removable media, but then you start thinking about all those 
> features that your local block device has that don't get exported over 
> NBD...
> 
> Now, my understanding (sorry, without looking at any docs - yet) is, that 
> iSCSI is (or at least should be) free from these limitations. So, does it 
> make any sense at all extending NBD or just switch to iSCSI? Should NBD be 
> just kept simple as it is or would it be completely superseeded by iSCSI, 
> or is there still something that NBD does that iSCSI wouldn't (easily) do?
> 
> Or am I completely misunderstanding what iSCSI target does?
> 
> Thanks
> Guennadi
> ---
> Guennadi Liakhovetski
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: [Iscsitarget-devel] Re: Re[2]: ata over ethernet question
  2005-05-10 23:14           ` Dmitry Yusupov
@ 2005-05-11  5:42             ` FUJITA Tomonori
  0 siblings, 0 replies; 29+ messages in thread
From: FUJITA Tomonori @ 2005-05-11  5:42 UTC (permalink / raw)
  To: iscsitarget-devel, linux-scsi
  Cc: dmitry_yus, g.liakhovetski, sander, dhollis, solt2

From: Dmitry Yusupov <dmitry_yus@yahoo.com>
Subject: [Iscsitarget-devel] Re: Re[2]: ata over ethernet question
Date: Tue, 10 May 2005 16:14:35 -0700

> I'll redirect this question to iSCSI Target folks, so they will lead
> some light on current IET limitations and advantages comparing to NBD.

I'm not familiar with NBD, so I'll talk about only iSCSI and the
current IET implementation.


> > A follow up question - I recently used nbd to access a CD-ROM. It worked 
> > nice, but, I had to read in 7 CDs, so, each time I had to replace a CD, I 
> > had to stop the client, the server, then replace the CD, re-start the 
> > server, re-start the client... I thought about extending NBD to (better) 
> > support removable media, but then you start thinking about all those 
> > features that your local block device has that don't get exported over 
> > NBD...
> > 
> > Now, my understanding (sorry, without looking at any docs - yet) is, that 
> > iSCSI is (or at least should be) free from these limitations. So, does it 
> > make any sense at all extending NBD or just switch to iSCSI? Should NBD be 
> > just kept simple as it is or would it be completely superseeded by iSCSI, 
> > or is there still something that NBD does that iSCSI wouldn't (easily) do?

The iSCSI protocol simply encapsulates the SCSI protocol into the
TCP/IP protocol, and carries packets over IP networks. You can handle
remote devices in the exact same way as local devices (which are
directly connected to your machine through SCSI cables). So iSCSI
enables you to access a remote SCSI CD-ROM withough the above trouble.

The current IET implementation can offer disk drives to
initiators. You can use files, that is, regular files, block devices,
LVM, or RAID.

The patch for SCSI tape and CD-ROM drive support is available. It
enables you to offer SCSI tape and CD-ROM drives connected the target
box to initiators. It works in most cases, however, it is not
finished. So it is not merged.

We've not started to work on virtual tape and CD-ROM support yet.

^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: ata over ethernet question
  2005-05-10 22:00         ` Re[2]: ata over ethernet question Guennadi Liakhovetski
  2005-05-10 23:14           ` Dmitry Yusupov
@ 2005-05-11  8:56           ` Vladislav Bolkhovitin
  2005-05-11 21:26             ` several messages Guennadi Liakhovetski
  2005-05-12 18:52           ` Re[2]: ata over ethernet question James Bottomley
  2 siblings, 1 reply; 29+ messages in thread
From: Vladislav Bolkhovitin @ 2005-05-11  8:56 UTC (permalink / raw)
  To: Guennadi Liakhovetski
  Cc: Sander, David Hollis, Maciej Soltysiak, FUJITA Tomonori,
	linux-scsi, linux-kernel

Guennadi Liakhovetski wrote:
> Hi
> 
> On Sat, 7 May 2005, Sander wrote:
> 
> 
>>David Hollis wrote (ao):
>>
>>>There seem to be a few iSCSI implementations floating around for
>>>Linux, hopefully one will be added to mainline soon. Most of those
>>>implementations are for the client side though there is at least one
>>>target implementation that allows you to provide local storage to
>>>iSCSI clients. I don't remember the name of it or if it's still
>>>maintained or not.
>>
>>Quite active even:
>>
>>http://sourceforge.net/projects/iscsitarget/
>>
>>The "Quick Guide to iSCSI on Linux" is a good starting point btw.
>>
>>Also check out http://www.open-iscsi.org/ (the client, aka 'initiator').
> 
> 
> A follow up question - I recently used nbd to access a CD-ROM. It worked 
> nice, but, I had to read in 7 CDs, so, each time I had to replace a CD, I 
> had to stop the client, the server, then replace the CD, re-start the 
> server, re-start the client... I thought about extending NBD to (better) 
> support removable media, but then you start thinking about all those 
> features that your local block device has that don't get exported over 
> NBD...
> 
> Now, my understanding (sorry, without looking at any docs - yet) is, that 
> iSCSI is (or at least should be) free from these limitations. So, does it 
> make any sense at all extending NBD or just switch to iSCSI? Should NBD be 
> just kept simple as it is or would it be completely superseeded by iSCSI, 
> or is there still something that NBD does that iSCSI wouldn't (easily) do?
> 
> Or am I completely misunderstanding what iSCSI target does?

Actually, this is property not of iSCSI target itself, but of any SCSI 
target. So, we implemented it as part of our SCSI target mid-level 
(SCST, http://scst.sourceforge.net), therefore any target driver working 
over it will automatically benefit from this feature. Unfortunately, 
currently available only target drivers for Qlogic 2x00 cards and for 
poor UNH iSCSI target (that works not too reliable and only with very 
specific initiators). The published version supports only real SCSI 
CDROMs. CDROM FILEIO module, which allows exporting ISO images as SCSI 
CDROM devices, going to be available not later end of May.

Vlad

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


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: several messages
  2005-05-11  8:56           ` Vladislav Bolkhovitin
@ 2005-05-11 21:26             ` Guennadi Liakhovetski
  2005-05-12  2:16               ` Ming Zhang
  2005-05-12 10:17               ` Vladislav Bolkhovitin
  0 siblings, 2 replies; 29+ messages in thread
From: Guennadi Liakhovetski @ 2005-05-11 21:26 UTC (permalink / raw)
  To: FUJITA Tomonori, Vladislav Bolkhovitin
  Cc: iscsitarget-devel, linux-scsi, dmitry_yus, Sander, David Hollis,
	Maciej Soltysiak, linux-kernel

Hello and thanks for the replies

On Wed, 11 May 2005, FUJITA Tomonori wrote:
> The iSCSI protocol simply encapsulates the SCSI protocol into the
> TCP/IP protocol, and carries packets over IP networks. You can handle
...

On Wed, 11 May 2005, Vladislav Bolkhovitin wrote:
> Actually, this is property not of iSCSI target itself, but of any SCSI target.
> So, we implemented it as part of our SCSI target mid-level (SCST,
> http://scst.sourceforge.net), therefore any target driver working over it will
> automatically benefit from this feature. Unfortunately, currently available
> only target drivers for Qlogic 2x00 cards and for poor UNH iSCSI target (that
> works not too reliable and only with very specific initiators). The published
...

The above confirms basically my understanding apart from one "minor" 
confusion - I thought, that parallel to hardware solutions pure software 
implementations were possible / being developed, like a driver, that 
implements a SCSI LDD API on one side, and forwards packets to an IP 
stack, say, over an ethernet card - on the initiator side. And a counter 
part on the target side. Similarly to the USB mass-storage and storage 
gadget drivers?

Thanks
Guennadi
---
Guennadi Liakhovetski


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: several messages
  2005-05-11 21:26             ` several messages Guennadi Liakhovetski
@ 2005-05-12  2:16               ` Ming Zhang
  2005-05-12 18:32                 ` Dmitry Yusupov
  2005-05-12 10:17               ` Vladislav Bolkhovitin
  1 sibling, 1 reply; 29+ messages in thread
From: Ming Zhang @ 2005-05-12  2:16 UTC (permalink / raw)
  To: Guennadi Liakhovetski
  Cc: FUJITA Tomonori, Vladislav Bolkhovitin, iet-dev, linux-scsi,
	Dmitry Yusupov, Sander, David Hollis, Maciej Soltysiak,
	linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1703 bytes --]

iscsi is scsi over ip.
usb disk is scsi over usb.
so just a different transport.
u are rite. ;)

ming

On Wed, 2005-05-11 at 23:26 +0200, Guennadi Liakhovetski wrote:
> Hello and thanks for the replies
> 
> On Wed, 11 May 2005, FUJITA Tomonori wrote:
> > The iSCSI protocol simply encapsulates the SCSI protocol into the
> > TCP/IP protocol, and carries packets over IP networks. You can handle
> ...
> 
> On Wed, 11 May 2005, Vladislav Bolkhovitin wrote:
> > Actually, this is property not of iSCSI target itself, but of any SCSI target.
> > So, we implemented it as part of our SCSI target mid-level (SCST,
> > http://scst.sourceforge.net), therefore any target driver working over it will
> > automatically benefit from this feature. Unfortunately, currently available
> > only target drivers for Qlogic 2x00 cards and for poor UNH iSCSI target (that
> > works not too reliable and only with very specific initiators). The published
> ...
> 
> The above confirms basically my understanding apart from one "minor" 
> confusion - I thought, that parallel to hardware solutions pure software 
> implementations were possible / being developed, like a driver, that 
> implements a SCSI LDD API on one side, and forwards packets to an IP 
> stack, say, over an ethernet card - on the initiator side. And a counter 
> part on the target side. Similarly to the USB mass-storage and storage 
> gadget drivers?
> 
> Thanks
> Guennadi
> ---
> Guennadi Liakhovetski
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: several messages
  2005-05-11 21:26             ` several messages Guennadi Liakhovetski
  2005-05-12  2:16               ` Ming Zhang
@ 2005-05-12 10:17               ` Vladislav Bolkhovitin
  2005-05-12 19:42                 ` SCSI/ISCSI, hardware/software Bryan Henderson
  1 sibling, 1 reply; 29+ messages in thread
From: Vladislav Bolkhovitin @ 2005-05-12 10:17 UTC (permalink / raw)
  To: Guennadi Liakhovetski
  Cc: FUJITA Tomonori, iscsitarget-devel, linux-scsi, dmitry_yus,
	Sander, David Hollis, Maciej Soltysiak, linux-kernel

Guennadi Liakhovetski wrote:
> Hello and thanks for the replies
> 
> On Wed, 11 May 2005, FUJITA Tomonori wrote:
> 
>>The iSCSI protocol simply encapsulates the SCSI protocol into the
>>TCP/IP protocol, and carries packets over IP networks. You can handle
> 
> ...
> 
> On Wed, 11 May 2005, Vladislav Bolkhovitin wrote:
> 
>>Actually, this is property not of iSCSI target itself, but of any SCSI target.
>>So, we implemented it as part of our SCSI target mid-level (SCST,
>>http://scst.sourceforge.net), therefore any target driver working over it will
>>automatically benefit from this feature. Unfortunately, currently available
>>only target drivers for Qlogic 2x00 cards and for poor UNH iSCSI target (that
>>works not too reliable and only with very specific initiators). The published
> 
> ...
> 
> The above confirms basically my understanding apart from one "minor" 
> confusion - I thought, that parallel to hardware solutions pure software 
> implementations were possible / being developed, like a driver, that 
> implements a SCSI LDD API on one side, and forwards packets to an IP 
> stack, say, over an ethernet card - on the initiator side. And a counter 
> part on the target side. Similarly to the USB mass-storage and storage 
> gadget drivers?

There is some confusion in the SCSI world between SCSI as a transport 
and SCSI as a commands set and software communication protocol, which 
works above the transport. So, you can implement SCSI transport at any 
software (eg iSCSI) or hardware (parallel SCSI, Fibre Channel, SATA, 
etc.) way, but if the SCSI message passing protocol is used overall 
system remains SCSI with all protocol obligations like task management. 
So, pure software SCSI solution is possible. BTW, there are pure 
hardware iSCSI implementations as well.

Vlad

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


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: several messages
  2005-05-12  2:16               ` Ming Zhang
@ 2005-05-12 18:32                 ` Dmitry Yusupov
  2005-05-13  8:12                   ` Christoph Hellwig
  0 siblings, 1 reply; 29+ messages in thread
From: Dmitry Yusupov @ 2005-05-12 18:32 UTC (permalink / raw)
  To: mingz
  Cc: Guennadi Liakhovetski, FUJITA Tomonori, Vladislav Bolkhovitin,
	iet-dev, linux-scsi, Sander, David Hollis, Maciej Soltysiak,
	linux-kernel

On Wed, 2005-05-11 at 22:16 -0400, Ming Zhang wrote:
> iscsi is scsi over ip.

correction. iSCSI today has RFC at least for two transports - TCP/IP and
iSER/RDMA(in finalized progress) with RDMA over Infiniband or RNIC. And
I think people start writing initial draft for SCTP/IP transport...

>From this perspective, iSCSI certainly more advanced and matured
comparing to NBD variations. 

> usb disk is scsi over usb.
> so just a different transport.
> u are rite. ;)
> 
> ming
> 
> On Wed, 2005-05-11 at 23:26 +0200, Guennadi Liakhovetski wrote:
> > Hello and thanks for the replies
> > 
> > On Wed, 11 May 2005, FUJITA Tomonori wrote:
> > > The iSCSI protocol simply encapsulates the SCSI protocol into the
> > > TCP/IP protocol, and carries packets over IP networks. You can handle
> > ...
> > 
> > On Wed, 11 May 2005, Vladislav Bolkhovitin wrote:
> > > Actually, this is property not of iSCSI target itself, but of any SCSI target.
> > > So, we implemented it as part of our SCSI target mid-level (SCST,
> > > http://scst.sourceforge.net), therefore any target driver working over it will
> > > automatically benefit from this feature. Unfortunately, currently available
> > > only target drivers for Qlogic 2x00 cards and for poor UNH iSCSI target (that
> > > works not too reliable and only with very specific initiators). The published
> > ...
> > 
> > The above confirms basically my understanding apart from one "minor" 
> > confusion - I thought, that parallel to hardware solutions pure software 
> > implementations were possible / being developed, like a driver, that 
> > implements a SCSI LDD API on one side, and forwards packets to an IP 
> > stack, say, over an ethernet card - on the initiator side. And a counter 
> > part on the target side. Similarly to the USB mass-storage and storage 
> > gadget drivers?
> > 
> > Thanks
> > Guennadi
> > ---
> > Guennadi Liakhovetski
> > 
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: Re[2]: ata over ethernet question
  2005-05-10 22:00         ` Re[2]: ata over ethernet question Guennadi Liakhovetski
  2005-05-10 23:14           ` Dmitry Yusupov
  2005-05-11  8:56           ` Vladislav Bolkhovitin
@ 2005-05-12 18:52           ` James Bottomley
  2005-05-12 19:05             ` Dmitry Yusupov
                               ` (2 more replies)
  2 siblings, 3 replies; 29+ messages in thread
From: James Bottomley @ 2005-05-12 18:52 UTC (permalink / raw)
  To: Guennadi Liakhovetski
  Cc: Sander, David Hollis, Maciej Soltysiak, Linux Kernel,
	SCSI Mailing List

On Wed, 2005-05-11 at 00:00 +0200, Guennadi Liakhovetski wrote:
> A follow up question - I recently used nbd to access a CD-ROM. It worked 
> nice, but, I had to read in 7 CDs, so, each time I had to replace a CD, I 
> had to stop the client, the server, then replace the CD, re-start the 
> server, re-start the client... I thought about extending NBD to (better) 
> support removable media, but then you start thinking about all those 
> features that your local block device has that don't get exported over 
> NBD...

That's correct; NBD is basically just a remote data pipe type block
device.  It doesn't understand arbitrary packet commands.

> Now, my understanding (sorry, without looking at any docs - yet) is, that 
> iSCSI is (or at least should be) free from these limitations. So, does it 
> make any sense at all extending NBD or just switch to iSCSI? Should NBD be 
> just kept simple as it is or would it be completely superseeded by iSCSI, 
> or is there still something that NBD does that iSCSI wouldn't (easily) do?

Caveat: I've done quite a bit of work on nbd, so I'm biased.  However,
for what it does, nbd is extremely small, simple and efficient, so I
think we'd want a hole in our head to replace it with something as
complex and bloated as iSCSI---remember we'd need both a target and an
initiator to do what nbd does today.

However, there is room for improvement in nbd, notably the handling of
packet commands, which looks to be eminently doable in the current
infrastructure (this would basically make nbd a replicator for the linux
block system, and would probably necessitate some client side changes to
achieve).  If you have any thoughts in this direction, you could drop an
email to the maintainer.

James



^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: Re[2]: ata over ethernet question
  2005-05-12 18:52           ` Re[2]: ata over ethernet question James Bottomley
@ 2005-05-12 19:05             ` Dmitry Yusupov
  2005-05-12 19:15               ` James Bottomley
  2005-05-13  8:14               ` Christoph Hellwig
  2005-05-13 18:50             ` iSCSI vs. NBD (was Re: ata over ethernet question) Guennadi Liakhovetski
  2005-05-25 23:41             ` NBD (vs. iSCSI vs. EATA vs...) Guennadi Liakhovetski
  2 siblings, 2 replies; 29+ messages in thread
From: Dmitry Yusupov @ 2005-05-12 19:05 UTC (permalink / raw)
  To: James Bottomley
  Cc: Guennadi Liakhovetski, Sander, David Hollis, Maciej Soltysiak,
	Linux Kernel, SCSI Mailing List

On Thu, 2005-05-12 at 14:52 -0400, James Bottomley wrote:
> On Wed, 2005-05-11 at 00:00 +0200, Guennadi Liakhovetski wrote:
> > A follow up question - I recently used nbd to access a CD-ROM. It worked 
> > nice, but, I had to read in 7 CDs, so, each time I had to replace a CD, I 
> > had to stop the client, the server, then replace the CD, re-start the 
> > server, re-start the client... I thought about extending NBD to (better) 
> > support removable media, but then you start thinking about all those 
> > features that your local block device has that don't get exported over 
> > NBD...
> 
> That's correct; NBD is basically just a remote data pipe type block
> device.  It doesn't understand arbitrary packet commands.
> 
> > Now, my understanding (sorry, without looking at any docs - yet) is, that 
> > iSCSI is (or at least should be) free from these limitations. So, does it 
> > make any sense at all extending NBD or just switch to iSCSI? Should NBD be 
> > just kept simple as it is or would it be completely superseeded by iSCSI, 
> > or is there still something that NBD does that iSCSI wouldn't (easily) do?
> 
> Caveat: I've done quite a bit of work on nbd, so I'm biased.  However,
> for what it does, nbd is extremely small, simple and efficient, so I
> think we'd want a hole in our head to replace it with something as
> complex and bloated as iSCSI---remember we'd need both a target and an
> initiator to do what nbd does today.

oh, please! don't compare nbd and iSCSI this way...
iSCSI is an emerging SAN technology, and the only technology to compare
is FC.

> However, there is room for improvement in nbd, notably the handling of
> packet commands, which looks to be eminently doable in the current
> infrastructure (this would basically make nbd a replicator for the linux
> block system, and would probably necessitate some client side changes to
> achieve).  If you have any thoughts in this direction, you could drop an
> email to the maintainer.
> 
> James
> 
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: Re[2]: ata over ethernet question
  2005-05-12 19:05             ` Dmitry Yusupov
@ 2005-05-12 19:15               ` James Bottomley
  2005-05-12 19:44                 ` Dmitry Yusupov
  2005-05-13  8:14               ` Christoph Hellwig
  1 sibling, 1 reply; 29+ messages in thread
From: James Bottomley @ 2005-05-12 19:15 UTC (permalink / raw)
  To: Dmitry Yusupov
  Cc: Guennadi Liakhovetski, Sander, David Hollis, Maciej Soltysiak,
	Linux Kernel, SCSI Mailing List

On Thu, 2005-05-12 at 12:05 -0700, Dmitry Yusupov wrote:
> oh, please! don't compare nbd and iSCSI this way...
> iSCSI is an emerging SAN technology, and the only technology to compare
> is FC.

Well, the question was whether iSCSI could replace nbd; It's rather
difficult to answer that question by comparing iSCSI to FC ...

But even projecting to iSCSI being totally mature, the amount of code
required to conform to the iSCSI standard is easily going to put it 10x
over the amount of code we have in nbd, principally because they're
aimed at solving different problems and nbd achieves a lot of
streamlining by being tied to the linux block subsystem instead of
trying to be a generic transport.

James



^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: SCSI/ISCSI, hardware/software
  2005-05-12 10:17               ` Vladislav Bolkhovitin
@ 2005-05-12 19:42                 ` Bryan Henderson
  2005-05-13  4:55                   ` Douglas Gilbert
  2005-05-13 10:34                   ` Vladislav Bolkhovitin
  0 siblings, 2 replies; 29+ messages in thread
From: Bryan Henderson @ 2005-05-12 19:42 UTC (permalink / raw)
  To: Vladislav Bolkhovitin
  Cc: David Hollis, dmitry_yus, FUJITA Tomonori, Guennadi Liakhovetski,
	iscsitarget-devel, linux-kernel, linux-scsi, Sander,
	Maciej Soltysiak

>There is some confusion in the SCSI world between SCSI as a transport 
>and SCSI as a commands set and software communication protocol, which 
>works above the transport. So, you can implement SCSI transport at any 
>software (eg iSCSI) or hardware (parallel SCSI, Fibre Channel, SATA, 
>etc.) way, but if the SCSI message passing protocol is used overall 
>system remains SCSI with all protocol obligations like task management. 

The above doesn't really resolve the confusion, since it uses some 
ambiguous terms and constructions.  I'm not sure what it's supposed to 
say, but let me try to state in the terminology of the SCSI standards what 
SCSI is:

SCSI is a family of separate specifications.  Some are specifications of 
transports, and others are specifications of command sets (a layer above 
the transports).  A SCSI device must implement a SCSI transport spec and a 
SCSI command set spec -- and also contain a piece that actually does the 
work (e.g. a disk drive), the details of which aren't specified by SCSI.

Examples of SCSI transport specification are (I'm paraphrasing the names) 
parallel SCSI, Fibre Channel, and ISCSI.  Examples of command sets are the 
disk device command set and the tape device command set.

>So, pure software SCSI solution is possible. BTW, there are pure 
>hardware iSCSI implementations as well.

I don't think it's even meaningful to talk about whether an implementation 
is hardware or software.  The "pure hardware" implementations contain 
megabytes of software, which was written in languages like C, contains 
operating systems like Linux, and can be transmitted across a network and 
updated easily.  The "pure software" implementation involve kilograms of 
hardware in every SCSI command -- CPUs, power supplies, etc.

Not only that, but the "all hardware" ISCSI initiators people talk about, 
which are PCI cards with Ethernet jacks, are not complete initiators.  The 
computer you plug the card into, on which you run Linux and some 
application programs, is the initiator.  The card is just the 
ISCSI-specific core of it.

There's really two distinctions people mean to make when talking about 
hardware vs software:

1) Is it preassembled?  Can you lift it out of box whole, or do you have 
to acquire some special software and some more generic parts separately 
and manage their combination?

2) Does it involve a general purpose computing system, particularly one 
that you share with some other computing, or a faster special purpose 
dedicated one?

In the context of a Linux SCSI discussion, I'd just talk about how much of 
the implementation is in or above the Linux kernel, and how much is below. 
 And then we can say that ISCSI-specific function (initiator or target) 
can be implemented 1) entirely above the Linux kernel; 2) entirely inside 
the Linux kernel; 3) entirely below the Linux kernel; or 4) a combination 
of these.


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: Re[2]: ata over ethernet question
  2005-05-12 19:15               ` James Bottomley
@ 2005-05-12 19:44                 ` Dmitry Yusupov
  2005-05-13  8:16                   ` Christoph Hellwig
  0 siblings, 1 reply; 29+ messages in thread
From: Dmitry Yusupov @ 2005-05-12 19:44 UTC (permalink / raw)
  To: James Bottomley
  Cc: Guennadi Liakhovetski, Sander, David Hollis, Maciej Soltysiak,
	Linux Kernel, SCSI Mailing List

On Thu, 2005-05-12 at 15:15 -0400, James Bottomley wrote:
> On Thu, 2005-05-12 at 12:05 -0700, Dmitry Yusupov wrote:
> > oh, please! don't compare nbd and iSCSI this way...
> > iSCSI is an emerging SAN technology, and the only technology to compare
> > is FC.
> 
> Well, the question was whether iSCSI could replace nbd; It's rather
> difficult to answer that question by comparing iSCSI to FC ...

ok.
i'm just reacting on "bloated" wording. It really depends on
implementation and design. If you were talking about amount of code in
the kernel, than take a look on open-iscsi(just one file iscsi_tcp.c)
and IET where we doing a lot of management stuff in user-space. It is
not that much code in the kernel, really, but it is doing x10 times more
useful things comparing to nbd and yet compliant with RFC.

> But even projecting to iSCSI being totally mature, the amount of code
> required to conform to the iSCSI standard is easily going to put it 10x
> over the amount of code we have in nbd, principally because they're
> aimed at solving different problems and nbd achieves a lot of
> streamlining by being tied to the linux block subsystem instead of
> trying to be a generic transport.

yeah, generic transport, recovery levels, direct data placement for HW
HBAs, etc, etc... it is all *must* features for enterprise's SAN
deployment. So, yes, there is a price as usual.

Dmitry.

> James
> 
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: SCSI/ISCSI, hardware/software
  2005-05-12 19:42                 ` SCSI/ISCSI, hardware/software Bryan Henderson
@ 2005-05-13  4:55                   ` Douglas Gilbert
  2005-05-13 10:34                   ` Vladislav Bolkhovitin
  1 sibling, 0 replies; 29+ messages in thread
From: Douglas Gilbert @ 2005-05-13  4:55 UTC (permalink / raw)
  To: Bryan Henderson
  Cc: Vladislav Bolkhovitin, David Hollis, dmitry_yus, FUJITA Tomonori,
	Guennadi Liakhovetski, iscsitarget-devel, linux-kernel,
	linux-scsi, Sander, Maciej Soltysiak

Bryan Henderson wrote:
>>There is some confusion in the SCSI world between SCSI as a transport 
>>and SCSI as a commands set and software communication protocol, which 
>>works above the transport. So, you can implement SCSI transport at any 
>>software (eg iSCSI) or hardware (parallel SCSI, Fibre Channel, SATA, 
>>etc.) way, but if the SCSI message passing protocol is used overall 
>>system remains SCSI with all protocol obligations like task management. 
> 
> 
> The above doesn't really resolve the confusion, since it uses some 
> ambiguous terms and constructions.  I'm not sure what it's supposed to 
> say, but let me try to state in the terminology of the SCSI standards what 
> SCSI is:
> 
> SCSI is a family of separate specifications.  Some are specifications of 
> transports, and others are specifications of command sets (a layer above 
> the transports).  A SCSI device must implement a SCSI transport spec and a 
> SCSI command set spec -- and also contain a piece that actually does the 
> work (e.g. a disk drive), the details of which aren't specified by SCSI.
> 
> Examples of SCSI transport specification are (I'm paraphrasing the names) 
> parallel SCSI, Fibre Channel, and ISCSI.  Examples of command sets are the 
> disk device command set and the tape device command set.

Bryan,
This url might help to illustrate things:

http://t10.org/scsi-3.htm

Transports are below the yellow line, SCSI command sets
are above it.

Doug Gilbert

>>So, pure software SCSI solution is possible. BTW, there are pure 
>>hardware iSCSI implementations as well.
> 
> 
> I don't think it's even meaningful to talk about whether an implementation 
> is hardware or software.  The "pure hardware" implementations contain 
> megabytes of software, which was written in languages like C, contains 
> operating systems like Linux, and can be transmitted across a network and 
> updated easily.  The "pure software" implementation involve kilograms of 
> hardware in every SCSI command -- CPUs, power supplies, etc.
> 
> Not only that, but the "all hardware" ISCSI initiators people talk about, 
> which are PCI cards with Ethernet jacks, are not complete initiators.  The 
> computer you plug the card into, on which you run Linux and some 
> application programs, is the initiator.  The card is just the 
> ISCSI-specific core of it.
> 
> There's really two distinctions people mean to make when talking about 
> hardware vs software:
> 
> 1) Is it preassembled?  Can you lift it out of box whole, or do you have 
> to acquire some special software and some more generic parts separately 
> and manage their combination?
> 
> 2) Does it involve a general purpose computing system, particularly one 
> that you share with some other computing, or a faster special purpose 
> dedicated one?
> 
> In the context of a Linux SCSI discussion, I'd just talk about how much of 
> the implementation is in or above the Linux kernel, and how much is below. 
>  And then we can say that ISCSI-specific function (initiator or target) 
> can be implemented 1) entirely above the Linux kernel; 2) entirely inside 
> the Linux kernel; 3) entirely below the Linux kernel; or 4) a combination 
> of these.

^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: several messages
  2005-05-12 18:32                 ` Dmitry Yusupov
@ 2005-05-13  8:12                   ` Christoph Hellwig
  2005-05-13 15:04                     ` Dmitry Yusupov
  0 siblings, 1 reply; 29+ messages in thread
From: Christoph Hellwig @ 2005-05-13  8:12 UTC (permalink / raw)
  To: Dmitry Yusupov
  Cc: mingz, Guennadi Liakhovetski, FUJITA Tomonori,
	Vladislav Bolkhovitin, iet-dev, linux-scsi, Sander, David Hollis,
	Maciej Soltysiak, linux-kernel

On Thu, May 12, 2005 at 11:32:12AM -0700, Dmitry Yusupov wrote:
> On Wed, 2005-05-11 at 22:16 -0400, Ming Zhang wrote:
> > iscsi is scsi over ip.
> 
> correction. iSCSI today has RFC at least for two transports - TCP/IP and
> iSER/RDMA(in finalized progress) with RDMA over Infiniband or RNIC. And
> I think people start writing initial draft for SCTP/IP transport...
> 
> >From this perspective, iSCSI certainly more advanced and matured
> comparing to NBD variations. 

It's for certainly much more complicated (in marketing speak that's usually
called advanced) but far less mature.

If you want network storage to just work use nbd.

^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: Re[2]: ata over ethernet question
  2005-05-12 19:05             ` Dmitry Yusupov
  2005-05-12 19:15               ` James Bottomley
@ 2005-05-13  8:14               ` Christoph Hellwig
  1 sibling, 0 replies; 29+ messages in thread
From: Christoph Hellwig @ 2005-05-13  8:14 UTC (permalink / raw)
  To: Dmitry Yusupov
  Cc: James Bottomley, Guennadi Liakhovetski, Sander, David Hollis,
	Maciej Soltysiak, Linux Kernel, SCSI Mailing List

On Thu, May 12, 2005 at 12:05:47PM -0700, Dmitry Yusupov wrote:
> oh, please! don't compare nbd and iSCSI this way...
> iSCSI is an emerging SAN technology, and the only technology to compare
> is FC.

who cares whether A is an emergeing <insert buzzword here> technology
when B is a lot simpler and just works for the customer.

I think you're a little too marketing driven here :)


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: Re[2]: ata over ethernet question
  2005-05-12 19:44                 ` Dmitry Yusupov
@ 2005-05-13  8:16                   ` Christoph Hellwig
  2005-05-13 16:18                     ` Dmitry Yusupov
  0 siblings, 1 reply; 29+ messages in thread
From: Christoph Hellwig @ 2005-05-13  8:16 UTC (permalink / raw)
  To: Dmitry Yusupov
  Cc: James Bottomley, Guennadi Liakhovetski, Sander, David Hollis,
	Maciej Soltysiak, Linux Kernel, SCSI Mailing List

On Thu, May 12, 2005 at 12:44:18PM -0700, Dmitry Yusupov wrote:
> i'm just reacting on "bloated" wording. It really depends on
> implementation and design. If you were talking about amount of code in
> the kernel, than take a look on open-iscsi(just one file iscsi_tcp.c)
> and IET where we doing a lot of management stuff in user-space. It is
> not that much code in the kernel, really, but it is doing x10 times more
> useful things comparing to nbd and yet compliant with RFC.

Keeping code out of the kernel is really nice, but that doesn't meant it
isn't bloat - the bloat is just in userland.

> yeah, generic transport, recovery levels, direct data placement for HW
> HBAs, etc, etc... it is all *must* features for enterprise's SAN
> deployment. So, yes, there is a price as usual.

I'm sure your marketing department can use all these buzzwords to sell
NICs to CTOs and CEOs, but else..


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: SCSI/ISCSI, hardware/software
  2005-05-12 19:42                 ` SCSI/ISCSI, hardware/software Bryan Henderson
  2005-05-13  4:55                   ` Douglas Gilbert
@ 2005-05-13 10:34                   ` Vladislav Bolkhovitin
  2005-05-13 23:58                     ` Bryan Henderson
  1 sibling, 1 reply; 29+ messages in thread
From: Vladislav Bolkhovitin @ 2005-05-13 10:34 UTC (permalink / raw)
  To: Bryan Henderson
  Cc: David Hollis, dmitry_yus, FUJITA Tomonori, Guennadi Liakhovetski,
	iscsitarget-devel, linux-kernel, linux-scsi, Sander,
	Maciej Soltysiak

Bryan Henderson wrote:
>>There is some confusion in the SCSI world between SCSI as a transport 
>>and SCSI as a commands set and software communication protocol, which 
>>works above the transport. So, you can implement SCSI transport at any 
>>software (eg iSCSI) or hardware (parallel SCSI, Fibre Channel, SATA, 
>>etc.) way, but if the SCSI message passing protocol is used overall 
>>system remains SCSI with all protocol obligations like task management. 
> 
> 
> The above doesn't really resolve the confusion, since it uses some 
> ambiguous terms and constructions.  I'm not sure what it's supposed to 
> say, but let me try to state in the terminology of the SCSI standards what 
> SCSI is:
> 
> SCSI is a family of separate specifications.  Some are specifications of 
> transports, and others are specifications of command sets (a layer above 
> the transports).  A SCSI device must implement a SCSI transport spec and a 
> SCSI command set spec -- and also contain a piece that actually does the 
> work (e.g. a disk drive), the details of which aren't specified by SCSI.
> 
> Examples of SCSI transport specification are (I'm paraphrasing the names) 
> parallel SCSI, Fibre Channel, and ISCSI.  Examples of command sets are the 
> disk device command set and the tape device command set.

This is exactly what I wanted to say. Thanks for clarification

>>So, pure software SCSI solution is possible. BTW, there are pure 
>>hardware iSCSI implementations as well.
> 
> 
> I don't think it's even meaningful to talk about whether an implementation 
> is hardware or software.  The "pure hardware" implementations contain 
> megabytes of software, which was written in languages like C, contains 
> operating systems like Linux, and can be transmitted across a network and 
> updated easily.  The "pure software" implementation involve kilograms of 
> hardware in every SCSI command -- CPUs, power supplies, etc.
> 
> Not only that, but the "all hardware" ISCSI initiators people talk about, 
> which are PCI cards with Ethernet jacks, are not complete initiators.  The 
> computer you plug the card into, on which you run Linux and some 
> application programs, is the initiator.  The card is just the 
> ISCSI-specific core of it.

Such iSCSI card from a user point of view as well as for system running 
on a computer with it is just another SCSI card, not matter which 
transport it uses and how much software it runs onboard, so for they it 
doesn't differ from FC or parallel SCSI one, which I think you would not 
call a software unit. As usually, you only need appropriate driver for 
_SCSI_ subsystem.

> There's really two distinctions people mean to make when talking about 
> hardware vs software:
> 
> 1) Is it preassembled?  Can you lift it out of box whole, or do you have 
> to acquire some special software and some more generic parts separately 
> and manage their combination?
> 
> 2) Does it involve a general purpose computing system, particularly one 
> that you share with some other computing, or a faster special purpose 
> dedicated one?
> 
> In the context of a Linux SCSI discussion, I'd just talk about how much of 
> the implementation is in or above the Linux kernel, and how much is below. 
>  And then we can say that ISCSI-specific function (initiator or target) 
> can be implemented 1) entirely above the Linux kernel; 2) entirely inside 
> the Linux kernel; 3) entirely below the Linux kernel; or 4) a combination 
> of these.
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
> 


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: several messages
  2005-05-13  8:12                   ` Christoph Hellwig
@ 2005-05-13 15:04                     ` Dmitry Yusupov
  2005-05-13 15:07                       ` Christoph Hellwig
  0 siblings, 1 reply; 29+ messages in thread
From: Dmitry Yusupov @ 2005-05-13 15:04 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: mingz, Guennadi Liakhovetski, FUJITA Tomonori,
	Vladislav Bolkhovitin, iet-dev, linux-scsi, Sander, David Hollis,
	Maciej Soltysiak, linux-kernel

On Fri, 2005-05-13 at 09:12 +0100, Christoph Hellwig wrote:
> On Thu, May 12, 2005 at 11:32:12AM -0700, Dmitry Yusupov wrote:
> > On Wed, 2005-05-11 at 22:16 -0400, Ming Zhang wrote:
> > > iscsi is scsi over ip.
> > 
> > correction. iSCSI today has RFC at least for two transports - TCP/IP and
> > iSER/RDMA(in finalized progress) with RDMA over Infiniband or RNIC. And
> > I think people start writing initial draft for SCTP/IP transport...
> > 
> > >From this perspective, iSCSI certainly more advanced and matured
> > comparing to NBD variations. 
> 
> It's for certainly much more complicated (in marketing speak that's usually
> called advanced) but far less mature.
> 
> If you want network storage to just work use nbd.

You could tell this to school's computer class teacher... Serious SAN
deployment will always be based either on FC or iSCSI for the reasons I
explained before.

I do not disagree, nbd is nice and simple and for sure has its own
deployment space.

Dmitry


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: several messages
  2005-05-13 15:04                     ` Dmitry Yusupov
@ 2005-05-13 15:07                       ` Christoph Hellwig
  2005-05-13 15:38                         ` Dmitry Yusupov
  0 siblings, 1 reply; 29+ messages in thread
From: Christoph Hellwig @ 2005-05-13 15:07 UTC (permalink / raw)
  To: Dmitry Yusupov
  Cc: Christoph Hellwig, mingz, Guennadi Liakhovetski, FUJITA Tomonori,
	Vladislav Bolkhovitin, iet-dev, linux-scsi, Sander, David Hollis,
	Maciej Soltysiak, linux-kernel

On Fri, May 13, 2005 at 08:04:16AM -0700, Dmitry Yusupov wrote:
> You could tell this to school's computer class teacher... Serious SAN
> deployment will always be based either on FC or iSCSI for the reasons I
> explained before.

Just FYI Steeleye ships a very successful clustering product that builds
on nbd.


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: several messages
  2005-05-13 15:07                       ` Christoph Hellwig
@ 2005-05-13 15:38                         ` Dmitry Yusupov
  0 siblings, 0 replies; 29+ messages in thread
From: Dmitry Yusupov @ 2005-05-13 15:38 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: mingz, Guennadi Liakhovetski, FUJITA Tomonori,
	Vladislav Bolkhovitin, iet-dev, linux-scsi, Sander, David Hollis,
	Maciej Soltysiak, linux-kernel

On Fri, 2005-05-13 at 16:07 +0100, Christoph Hellwig wrote:
> On Fri, May 13, 2005 at 08:04:16AM -0700, Dmitry Yusupov wrote:
> > You could tell this to school's computer class teacher... Serious SAN
> > deployment will always be based either on FC or iSCSI for the reasons I
> > explained before.
> 
> Just FYI Steeleye ships a very successful clustering product that builds
> on nbd.

AFAIK, it is used for Data Replication purposes only. Correct me if I'm
wrong...



^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: Re[2]: ata over ethernet question
  2005-05-13  8:16                   ` Christoph Hellwig
@ 2005-05-13 16:18                     ` Dmitry Yusupov
  0 siblings, 0 replies; 29+ messages in thread
From: Dmitry Yusupov @ 2005-05-13 16:18 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: James Bottomley, Guennadi Liakhovetski, Sander, David Hollis,
	Maciej Soltysiak, Linux Kernel, SCSI Mailing List

On Fri, 2005-05-13 at 09:16 +0100, Christoph Hellwig wrote:
> On Thu, May 12, 2005 at 12:44:18PM -0700, Dmitry Yusupov wrote:
> > i'm just reacting on "bloated" wording. It really depends on
> > implementation and design. If you were talking about amount of code in
> > the kernel, than take a look on open-iscsi(just one file iscsi_tcp.c)
> > and IET where we doing a lot of management stuff in user-space. It is
> > not that much code in the kernel, really, but it is doing x10 times more
> > useful things comparing to nbd and yet compliant with RFC.
> 
> Keeping code out of the kernel is really nice, but that doesn't meant it
> isn't bloat - the bloat is just in userland.

well, "userland" == "bloatland" anyways... Multiple discovery methods,
configuration database, bunch of security protocols, etc... all this of
course will make it "slightly" :) bigger than nbd. But again, for a good
reason and better usefulness.

Dmitry


^ permalink raw reply	[flat|nested] 29+ messages in thread

* iSCSI vs. NBD (was Re: ata over ethernet question)
  2005-05-12 18:52           ` Re[2]: ata over ethernet question James Bottomley
  2005-05-12 19:05             ` Dmitry Yusupov
@ 2005-05-13 18:50             ` Guennadi Liakhovetski
  2005-05-13 20:21               ` James Bottomley
  2005-05-25 23:41             ` NBD (vs. iSCSI vs. EATA vs...) Guennadi Liakhovetski
  2 siblings, 1 reply; 29+ messages in thread
From: Guennadi Liakhovetski @ 2005-05-13 18:50 UTC (permalink / raw)
  To: James Bottomley
  Cc: Sander, David Hollis, Maciej Soltysiak, Linux Kernel,
	SCSI Mailing List

On Thu, 12 May 2005, James Bottomley wrote:

> However, there is room for improvement in nbd, notably the handling of
> packet commands, which looks to be eminently doable in the current
> infrastructure (this would basically make nbd a replicator for the linux
> block system, and would probably necessitate some client side changes to
> achieve).  If you have any thoughts in this direction, you could drop an
> email to the maintainer.

Thanks, James

I'll try to get some (thoughts):-) BTW, who is the maintainer of nbd? No 
one in MAINTAINERS, in nbd.c only
 * Copyright 1997-2000 Pavel Machek <pavel@ucw.cz>
 * Parts copyright 2001 Steven Whitehouse <steve@chygwyn.com>
Is it Pavel then?

Thanks
Guennadi
---
Guennadi Liakhovetski


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: iSCSI vs. NBD (was Re: ata over ethernet question)
  2005-05-13 18:50             ` iSCSI vs. NBD (was Re: ata over ethernet question) Guennadi Liakhovetski
@ 2005-05-13 20:21               ` James Bottomley
  2005-05-13 22:49                 ` Guennadi Liakhovetski
  0 siblings, 1 reply; 29+ messages in thread
From: James Bottomley @ 2005-05-13 20:21 UTC (permalink / raw)
  To: Guennadi Liakhovetski
  Cc: Sander, David Hollis, Maciej Soltysiak, Linux Kernel,
	SCSI Mailing List

On Fri, 2005-05-13 at 20:50 +0200, Guennadi Liakhovetski wrote:
> I'll try to get some (thoughts):-) BTW, who is the maintainer of nbd? No 
> one in MAINTAINERS, in nbd.c only
>  * Copyright 1997-2000 Pavel Machek <pavel@ucw.cz>
>  * Parts copyright 2001 Steven Whitehouse <steve@chygwyn.com>
> Is it Pavel then?

Well, my copy of the MAINTAINERS file has this:

NETWORK BLOCK DEVICE
P:      Paul Clements
M:      Paul.Clements@steeleye.com
S:      Maintained

James


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: iSCSI vs. NBD (was Re: ata over ethernet question)
  2005-05-13 20:21               ` James Bottomley
@ 2005-05-13 22:49                 ` Guennadi Liakhovetski
  0 siblings, 0 replies; 29+ messages in thread
From: Guennadi Liakhovetski @ 2005-05-13 22:49 UTC (permalink / raw)
  To: James Bottomley
  Cc: Sander, David Hollis, Maciej Soltysiak, Linux Kernel,
	SCSI Mailing List

On Fri, 13 May 2005, James Bottomley wrote:

> Well, my copy of the MAINTAINERS file has this:
> 
> NETWORK BLOCK DEVICE
> P:      Paul Clements
> M:      Paul.Clements@steeleye.com
> S:      Maintained

Auch, `grep -i nbd MAINTAINERS`:-)))

Thanks
Guennadi
---
Guennadi Liakhovetski


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: SCSI/ISCSI, hardware/software
  2005-05-13 10:34                   ` Vladislav Bolkhovitin
@ 2005-05-13 23:58                     ` Bryan Henderson
  0 siblings, 0 replies; 29+ messages in thread
From: Bryan Henderson @ 2005-05-13 23:58 UTC (permalink / raw)
  To: Vladislav Bolkhovitin
  Cc: David Hollis, dmitry_yus, FUJITA Tomonori, Guennadi Liakhovetski,
	iscsitarget-devel, linux-kernel, linux-scsi, Sander,
	Maciej Soltysiak

>Such iSCSI card from a user point of view as well as for system running 
>on a computer with it is just another SCSI card, not matter which 
>transport it uses and how much software it runs onboard, so for they it 
>doesn't differ from FC or parallel SCSI one, which I think you would not 
>call a software unit.  As usually, you only need appropriate driver for 
>_SCSI_ subsystem.

The point I'd like to make is that _I_ would not call it a software unit 
or a hardware unit, because I don't think in most contexts (including that 
of this thread), it makes any difference which technology is used in the 
implementation.  What _does_ matter is 1) this card comes preassembled.  I 
don't have to find and load independently produced software onto it, or 
worry about interoperability.  2) It's below the Linux kernel, which means 
I won't need to mess with Linux applications or kernels except to load a 
low level SCSI driver.  It also means it doesn't place any load on my main 
CPU and probably goes faster than something implemented in or above my 
Linux kernel would.

And there's the separate point that it would be a misnomer to say that 
this card is an ISCSI initiator (it's only part of one); so even if the 
card itself can be called hardware, that still doesn't mean you can say 
you have a hardware ISCSI initiator.  Same is true of a parallel SCSI host 
adapter card.

--
Bryan Henderson                          IBM Almaden Research Center
San Jose CA                              Filesystems


-------------------------------------------------------
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_id=7393&alloc_id=16281&op=click

^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: NBD (vs. iSCSI vs. EATA vs...)
  2005-05-12 18:52           ` Re[2]: ata over ethernet question James Bottomley
  2005-05-12 19:05             ` Dmitry Yusupov
  2005-05-13 18:50             ` iSCSI vs. NBD (was Re: ata over ethernet question) Guennadi Liakhovetski
@ 2005-05-25 23:41             ` Guennadi Liakhovetski
  2005-05-26  1:19               ` James Bottomley
  2 siblings, 1 reply; 29+ messages in thread
From: Guennadi Liakhovetski @ 2005-05-25 23:41 UTC (permalink / raw)
  To: James Bottomley; +Cc: SCSI Mailing List, Paul.Clements

(Dropped most recepients of the original "ata over ethernet question" 
discussion, including lkml, from CC)

Hi

On Thu, 12 May 2005, James Bottomley wrote:
> However, there is room for improvement in nbd, notably the handling of
> packet commands, which looks to be eminently doable in the current
> infrastructure (this would basically make nbd a replicator for the linux
> block system, and would probably necessitate some client side changes to
> achieve).  If you have any thoughts in this direction, you could drop an
> email to the maintainer.

Ok, I came to a stage, when I start a server and a client, and then on the 
client side I can do open / close cycles, which would be respectively 
passed to the server, thus not keeping the server file(s) busy all the 
time. This allows, e.g., to export a CD-ROM, mount / umount it, eject it 
(not yet over nbd), insert a new one, mount, etc. Also, open errors are 
passed back, so, you get a nice "no medium" error on the client side 
without a CD.

IIUC, the suggestion from James to implement ATAPI translates in 
user-space terms to implementing respective ioctl's, because this is what 
nbd gets, and this is what nbd-server has to reproduce.

So, the work is not finished, at least some ioctl's are needed. I had to 
modify the kernel driver, and both the server and the client apps. No 
backward compatibility, sorry:-( What I'd like to do now is to ask - is 
there an interest in such changes to be integrated in the kernel / 
nbd-package. If there is one - what are your wishes? If we get that far, 
what should I post here - only the kernel patch, and user-space separately 
to sf (I think?), or both?

(see also my another post today to linux-scsi)

Thanks
Guennadi
---
Guennadi Liakhovetski


^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: NBD (vs. iSCSI vs. EATA vs...)
  2005-05-25 23:41             ` NBD (vs. iSCSI vs. EATA vs...) Guennadi Liakhovetski
@ 2005-05-26  1:19               ` James Bottomley
  2005-05-26 17:48                 ` Guennadi Liakhovetski
  0 siblings, 1 reply; 29+ messages in thread
From: James Bottomley @ 2005-05-26  1:19 UTC (permalink / raw)
  To: Guennadi Liakhovetski; +Cc: SCSI Mailing List, Paul Clements

On Thu, 2005-05-26 at 01:41 +0200, Guennadi Liakhovetski wrote:
> IIUC, the suggestion from James to implement ATAPI translates in 
> user-space terms to implementing respective ioctl's, because this is what 
> nbd gets, and this is what nbd-server has to reproduce.

Actually, no, that's not what I was thinking.

nbd currently only understands the block layer REQ_CMD (which are basic
READ/WRITE commands) if it understood REQ_BLOCK_PC it would probably be
sufficient a transport for sending the packet commands that are
necessary to drive a remote device.

The idea being that you could then do

cdrom - nbd <--\/\-->remote - ide/scsi - CD-ROM device

to drive an actual cdrom.  There are some pieces missing in this vision
(like how to attach cdrom to nbd) but it should be doable in principle.

James



^ permalink raw reply	[flat|nested] 29+ messages in thread

* Re: NBD (vs. iSCSI vs. EATA vs...)
  2005-05-26  1:19               ` James Bottomley
@ 2005-05-26 17:48                 ` Guennadi Liakhovetski
  0 siblings, 0 replies; 29+ messages in thread
From: Guennadi Liakhovetski @ 2005-05-26 17:48 UTC (permalink / raw)
  To: James Bottomley; +Cc: SCSI Mailing List, Paul Clements

(I wonder why my emails still haven't appeared on linux-scsi?)

On Wed, 25 May 2005, James Bottomley wrote:

> On Thu, 2005-05-26 at 01:41 +0200, Guennadi Liakhovetski wrote:
> > IIUC, the suggestion from James to implement ATAPI translates in 
> > user-space terms to implementing respective ioctl's, because this is what 
> > nbd gets, and this is what nbd-server has to reproduce.
> 
> Actually, no, that's not what I was thinking.
> 
> nbd currently only understands the block layer REQ_CMD (which are basic
> READ/WRITE commands) if it understood REQ_BLOCK_PC it would probably be
> sufficient a transport for sending the packet commands that are
> necessary to drive a remote device.

Aha, I see...

> The idea being that you could then do
> 
> cdrom - nbd <--\/\-->remote - ide/scsi - CD-ROM device
> 
> to drive an actual cdrom.  There are some pieces missing in this vision
> (like how to attach cdrom to nbd) but it should be doable in principle.

You need the cdrom driver to convert user requests to cdrom commands, 
which with your scheme would be collected by nbd from the block queue, 
passed to nbd-server to be translated back to user-space requests...

Well, doesn't this mean, that you would have to look, if the server 
exports a SCSI cdrom, nbd would have to add a SCSI bus to the system and a 
cdrom on it, respectively for ide. So, you would just get a new srX / sdX 
/ hdX / loopX? Or you would have to write a new cdrom driver for the "nbd 
bus", or teach one of existing to work over nbd (ide or scsi?). Wouldn't 
either of these 3 possibilities be too complicated? The third one could be 
not too difficult, but you would have to choose a victim - one of ide or 
scsi cdrom drivers. And what do you do with discs?...

OTOH, if you just pass all user-space requests to the server and just pass 
back return code, you wouldn't need high-level drivers on the host side. 
You would miss anything, comming not from userspace - any non REQ_CMD 
requests from filesystems. But those we could just add separately - for 
that you don't need cdrom / sd / hd drivers, right?

So, just pass ioctl()'s directly and convert the rest (filesystem) block 
requests separately - wouldn't it be easier and avoid any modifications to 
other drivers?

Thanks
Guennadi
---
Guennadi Liakhovetski


^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2005-05-26 17:49 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1416215015.20050504193114@dns.toxicfilms.tv>
     [not found] ` <1115236116.7761.19.camel@dhollis-lnx.sunera.com>
     [not found]   ` <1104082357.20050504231722@dns.toxicfilms.tv>
     [not found]     ` <1115305794.3071.5.camel@dhollis-lnx.sunera.com>
     [not found]       ` <20050507150538.GA800@favonius>
2005-05-10 22:00         ` Re[2]: ata over ethernet question Guennadi Liakhovetski
2005-05-10 23:14           ` Dmitry Yusupov
2005-05-11  5:42             ` [Iscsitarget-devel] " FUJITA Tomonori
2005-05-11  8:56           ` Vladislav Bolkhovitin
2005-05-11 21:26             ` several messages Guennadi Liakhovetski
2005-05-12  2:16               ` Ming Zhang
2005-05-12 18:32                 ` Dmitry Yusupov
2005-05-13  8:12                   ` Christoph Hellwig
2005-05-13 15:04                     ` Dmitry Yusupov
2005-05-13 15:07                       ` Christoph Hellwig
2005-05-13 15:38                         ` Dmitry Yusupov
2005-05-12 10:17               ` Vladislav Bolkhovitin
2005-05-12 19:42                 ` SCSI/ISCSI, hardware/software Bryan Henderson
2005-05-13  4:55                   ` Douglas Gilbert
2005-05-13 10:34                   ` Vladislav Bolkhovitin
2005-05-13 23:58                     ` Bryan Henderson
2005-05-12 18:52           ` Re[2]: ata over ethernet question James Bottomley
2005-05-12 19:05             ` Dmitry Yusupov
2005-05-12 19:15               ` James Bottomley
2005-05-12 19:44                 ` Dmitry Yusupov
2005-05-13  8:16                   ` Christoph Hellwig
2005-05-13 16:18                     ` Dmitry Yusupov
2005-05-13  8:14               ` Christoph Hellwig
2005-05-13 18:50             ` iSCSI vs. NBD (was Re: ata over ethernet question) Guennadi Liakhovetski
2005-05-13 20:21               ` James Bottomley
2005-05-13 22:49                 ` Guennadi Liakhovetski
2005-05-25 23:41             ` NBD (vs. iSCSI vs. EATA vs...) Guennadi Liakhovetski
2005-05-26  1:19               ` James Bottomley
2005-05-26 17:48                 ` Guennadi Liakhovetski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox