Subject: Re: iSCSI: remove CDB from iSCSI header

From: [email-masked]
Date: Wed, 24 Jan 2001 15:47:07 +0200

Matt,

Considering that most of the traffic is SCSI commands and responses the
actual space waste is minor.
What you just suggest (based on misreading the accompanying text - I think)
will force several reads for most of the traffic and we found this harmful
to performance.

Considering that most of the traffic has 48 byte headers the outlay we have
now is optimal.
The digest comes anyhow after the total header (including the additional
fields).

Julo

Matt Wakeley <[email-masked]> on 23/01/2001 23:16:17

Please respond to Matt Wakeley <[email-masked]>

To:   [email-masked]
cc:
Subject:  iSCSI: remove CDB from iSCSI header

I don't think I like this.  Header followed by digest followed by more
header.

I think this is a good opportunity to think about removing the CDB from the
header.  This will reduce the amount of dead space used by headers that do
not
contain a CDB.  This will be beneficial when sending multiple smaller PDUs
(in
order to keep the CRC coverage high) by reducing the iSCSI header overhead.

Change the iSCSI command so that there is an iSCSI header (verified by the
header digest) followed by CDB "payload" (verified by the data digest).  No
options for immediate data.  Keep it simple, like it is in Fibre Channel.

-Matt Wakeley
Agilent Technologies

[email-masked] wrote:
>
> yes,
>
> Julo
>
> "Barry Reinhold" <[email-masked]> on 22/01/2001 17:49:29
>
> Please respond to "Barry Reinhold" <[email-masked]>
>
> To:   [email-masked], Julian Satran/Haifa/IBM@IBMIL
> cc:   [email-masked]
> Subject:  RE: Coverage of Data Digest when using Header Digests
>
> Ok,
>      So if the bidi-read length and ADDCDB fields are not in the data
> digest
> then I assume we have to figure them into the header digest even though
> they
> are located past the header digets. Is that the expected behavior?
>
> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]]
> Sent: Monday, January 22, 2001 10:22 AM
> To: [email-masked]
> Cc: [email-masked]; Barry Reinhold
> Subject: Re: Coverage of Data Digest when using Header Digests
>
> Barry-
>
> In particular, the data digest covers only the SCSI Data part of an
> iSCSI message; the header digest covers everything else.  This means
> that in an 8k write, the data digest will cover only the 8k, and the
> header digest will cover everything else.
>
> Hope this helps,
>
> Mark
>
> [email-masked] wrote:
> >
> > Barry,
> >
> > Considering that one of the reasons to have a separate header and data
> > digest was to enable data
> > to carried through proxies, virtualizers etc. the current thinking is
> that
> > the data digest will cover only the data and the header (including
> > extensions) will be covered by the header digest.
> >
> > Julo
> >
> > "Barry Reinhold" <[email-masked]> on 21/01/2001 21:50:04
> >
> > Please respond to "Barry Reinhold" <[email-masked]>
> >
> > To:   Julian Satran/Haifa/IBM@IBMIL
> > cc:
> > Subject:  Coverage of Data Digest when using Header Digests
> >
> > Julian,
> >      Is the Data Digest intended to cover whatever follows the 48 byte
> > iSCSI
> > header? In particular in a command frame which has a CDB > 16 bytes,
uses
> > bidi, has immediate data, and is using both header and data digests -
> what
> > would the data digest cover?
> >                                                              - barry
> > reinhold
>
> --
> Mark A. Bakke
> Cisco Systems
> [email-masked]
> 763.398.1054

---

From: Matt Wakeley <[email-masked]>
Date: Wed, 24 Jan 2001 06:59:41 -0800

> actual space waste is minor.

Assuming short reads/writes... If you are performing the large tape I/Os that
you like to refer to (your reason for having DataRN) then it's a larger
overhead.

> What you just suggest (based on misreading the accompanying text - I think)

I did not mis-read anything - perhaps you did:

Barry said:

B: So if the bidi-read length and ADDCDB fields are not in the data digest
B: then I assume we have to figure them into the header digest even though
B: they are located past the header digets. Is that the expected behavior?

Barry asked/stated if the bidi-read length and ADDCDB fields are past the
header digest to which you replied:

J: yes,
J:
J: Julo

> The digest comes anyhow after the total header (including the additional

As I stated earlier, that was not what your "yes" reply to Barry indicated.