iSCSI
Software Interface Driver Daemon (iswd) |
 |
The iSCSI SWD
daemon, iswd, is a user level process
that communicates with the iSCSI SWD component and the network sockets
interface. The iSCSI SWD daemon will receive requests
to open or close a connection, then it will use the existing application
network socket interface to perform the connection open/close operation.
Once a connection has been established, the iSCSI SWD daemon will
use a system
call to inform the iSCSI SWD that the connection is available (on
open), the connection attempt failed (on open), or the connection
was successfully closed. Threads forked from the daemon will perform
individual connection establishment.
When the iSCSI SWD daemon initializes, it will bind a module
into the connection path in the kernel. Requests to and from the
TCP stack will pass through the kernel component. The kernel component
will be provided with an entry point into the iSCSI SWD, and, on
successful open, the iSCSI SWD will be provided with an entry point
into the kernel module. Once the open is complete, data transfers
can be made between the iSCSI SWD and kernel module without iSCSI
SWD daemon involvement, thus eliminating copies between user and
kernel space.