Re: best userspace iscsi target lib?

FUJITA Tomonori
2008-11-11T15:30:04Z

On Tue, 11 Nov 2008 09:06:52 -0500
Jeff Garzik <jeff@garzik.org> wrote:

> FUJITA Tomonori wrote:
> > On Mon, 10 Nov 2008 17:29:06 -0500
> > Jeff Garzik <jeff@garzik.org> wrote:
> >
> >> Can someone recommend an open source userspace library that enables one
> >> to implement a userspace iSCSI target?
> >
> > I'm not sure there is an open source userspace library enables you to
> > easily implement your own userspace iSCSI target but there are some
> > userspace iSCSI target implementations, which might useful.
> >
> > Some Linux distributions use:
> >
> > http://stgt.berlios.de/
> >
> > OpenSolaris also has one:
> >
> > http://opensolaris.org/os/project/iscsitgt/
> >
> > *BSD also have userspace iSCSI target implementations.
>
> Thanks much, I will take a look. I have already found and read the code
> for NetBSD's iSCSI target.
>
> I am mainly interested in 100% userspace solution, because in my case,
> the storage software (distributed goop) is also in userspace. Something
> that exports through the kernel actually adds overhead, when a
> straight-to-sockets userspace implementation would be more efficient.

All the implementations that I referred to above are 100% userspace
solution (if I correctly remember *BSD's implementations).

You might think that stgt is a kernel space solution but it's 100%
userspace solution if you use only its iSCSI (or FCoE) support. As you
expect, it's just a userspace daemon. It doesn't require any fancy
kernel features.

About OSD support, I think that Pete and other osc.edu people
implemented iSCSI OSD target with stgt (though I've not merged their
OSD code to stgt or tried it yet):