Re: best userspace iscsi target lib?

Boaz Harrosh
2008-11-11T16:12:13Z

FUJITA Tomonori wrote:
> 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):
>

Do not use these URL's they are out of date. The OSC OSD project
is now hosted on open-osd.org git tree's.

Look here for latest git tree and instructions:
http://www.open-osd.org/bin/view/Main/OscOsdProject

We also have stgt + osd-patches hosted as a sub-module under
the OSC OSD target.

Boaz