Subject: Re: new iSCSI PDU outline

From: Matt Wakeley <[email-masked]>
Date: Tue, 30 Jan 2001 12:20:31 -0800

[email-masked] wrote:
> 
> Matt,
> 
> answers in text.
> 
> Julo
> 
> Matt Wakeley <[email-masked]> on 30/01/2001 12:07:33
> 
> Please respond to Matt Wakeley <[email-masked]>
> 
> To:   [email-masked]
> cc:
> Subject:  Re: new iSCSI PDU outline
> 
> Julian,
> 
> Section 2.2.1, bits 6-4:
> 
> I think you forgot the BHS structure in the encodings
> 
> <js> BHS is allways there and WN is what's next :)- </js>

So the concept is, "I'm telling you what is coming after the segment following
this WN descriptor (which you should already know what it is)".  Using the
following example (I'm numbering the sections for discussion purposes):

1 - WN
2 - BHS
3 - WN
4 - AHS
5 - Data

When a new iscsi PDU arrives, I "know" that #2 is BHS, so #1 tells me what #4
is.  #3 tells me what #5 is.  I think you need to add more descriptive text
describing this.

[I think it would be easier to understand if #1 describes #2, and #3 describes
#4. #3 could also indicate that following #4 is data]

> Also, why do we (you) want the long data header??? we already have 32 bits
> of length, what in the world would we want 64 bits of length for???
> 
> <js> academic I suppose - the length of a single PDU data part  is limited
> to 24 bits now </js>

Well we are already talking about limiting a PDU to a (small number of) TCP
segment size in order to preserve data integrity, so I don't think we need
additional length...

> Section 2.3 - I don't see how you made it 44 bytes from 48 without
> eliminating
> any fields...?  looks like you cut the CDB from 16 to 12 bytes...
> <js> I took out the length - it is always anyhow the length of what comes
> after </js>

No you didn't.  In the email you sent out, the length field is still there,
starting at byte 4.  All you did was change the "48" after the CDB to "44".

> I don't understand 2.2.1, bit 7:  0=another header, and 1=no header, only
> data?
> 
> You should specify that bits 1-0 only are valid if bit 7 indicates no
> header
> 
> In other words, within each WN, you are specifying if the there is another
> WN,
> if not, then (implies data) you specify the digest of the data.
> <js> correct we specify both the digest of the data and the header - we can
> restrict it to the last header segment</js>
> -Matt