[storage-discuss] Re: Re: Re: Re: Microsoft iSCSI Initiator Support

Nigel Smith nwsmith at wilusa.freeserve.co.uk
Sat Jan 13 20:06:31 PST 2007


Rick, the following may (or may not) be a clue to what's going wrong.
(It may also be something you have already fixed, as I am using snv_54, and I know you have moved the code on since then.)

I'm now running the version of Microsoft's iscsi initiator that supports debug logging.
In the output windows of 'DebugView', the message I keep seeing is:
"0: Not enough data. Expected 255, Given 144"

I note that the last packet sent by your Target back to the initiator (just before the [RST,ACK] from the initiator) has a TCP data length of 144.

That last packet is a continuation packet, and is the second half of the "Data In" packet, which is itself a response to the second "Inquiry LUN" packet (with EVPD=1) from the initiator.

The "Data In" packet specifies a DataSegmentLength of 0x90, which is 144 in decimal. 

So why does Microsoft say it expects 255 ?  
Well that second "inquiry LUN" packet from the initiator has a field - ExpectedDataTransferLength = 0xFF.  Of course, I'm just guessing.

The actual size of the active data in that last continuation packets looks quite small, like about 6 bytes, with the rest just 0x00 padding.

And I note that RFC3720 say's:
"10.2.1.6.  DataSegmentLength
   This is the data segment payload length in bytes (excluding padding)."

I don't fully understand this iScsi protocol, so like I said at the beginning, this is just maybe a clue.

Ok, this is just my latest idea, and you will probably blow it out the water, like the others, but I think it's worth a try.
Thanks
Nigel
 
 
This message posted from opensolaris.org



More information about the storage-discuss mailing list