Saturday, December 09, 2006

FreeBSD iSCSI Initiator Notes

Having been studying the FreeBSD iSCSI initiator code and following are my notes about it.

1) The iSCSI initiator (version iscsi-17.5) for FreeBSD consists of a user level tool called iscontrol and a character based device driver called iscsi_initiator

2) The character device driver creates a char device /dev/iscsi. Once the driver is loaded various ioctl calls are done to this device entry for the various iSCSI operations.

3) The iscontrol user level tool creates the TCP/IP connection to the target in the function tcpConnect.

4) Connecting me to the target device creates two entries in the /dev directory namely /dev/da0 which is the remote SCSI drive and /dev/iscsi0 which is create while establishing a session.I think the TCP/IP socket is associated with the /dev/iscsi0 file for that particular session.

5) The iSCSI protocol maintains the connection state as per a FSM

2 Comments:

Blogger zogness said...

You could maybe tell the people where the code or binaries can be got.

3:14 PM

 
Blogger ee99ee said...

I just configured a FreeBSD server of ours to be a client of iSCSI. Here are my notes: http://www.southernledger.com/blogs/ee99ee/?p=33

7:11 PM

 

Post a Comment

<< Home