SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


    [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

    Re: iSCSI: AHS use




    Michael,

    I am not sure to change the wording to fit the 259 limit of the CDB as set by current SPC - as SPC changes too.
    We dot envision many new AHSs - but the format design allows for them.
    You are correct that the design allows for several AHSs up to the total predefined length (and having one predefined max length was not my first choice but is the result of some debate).

    Julo


    Michael Smith <msmith@corp.iready.com>
    Sent by: owner-ips@ece.cmu.edu

    06/10/2002 08:06 PM
    Please respond to Michael Smith

           
            To:        Michael Smith <msmith@corp.iready.com>, ips@ece.cmu.edu
            cc:        
            Subject:        iSCSI: AHS use

           


    I have some questions on the current AHS descriptions in 12-97. I just tripped over this, so I think maybe others might too.

     
    1. In 12-97, p.130 we have the definition of AHS as Multiple Additional Header Segments (plural); switching between "AHS (singular), AHS (plural), AHS header segments made me look closer:

     
    [quote]

    The BHS is a fixed-length 48-byte header segment. It MAY be followed by Additional Header Segments (AHS), a Header-Digest, a Data Segment, and/or a Data-Digest.

    [end quote]

    2. However, in the PDU format diagram on p. 131 of 12-97 it is not clear that we have the option of zero, one or more Additional Header Segments. After I re-read things a few times, and apologies if I have this wrong, I think that the use of multiple Additional Header Segments is along these lines:

    (a) Use one and only one Additional Header Segment for an extended CDB (SPC calls this a variable-length CDB). This extended CDB (or variable-length CDB) Additional Header Segment must immediately follow the BHS. (A suggested exact use definition of this type of Additional Header Segment coming up.)

    (b) Use one and only one Additional Header Segment for an Bidirectional Expected Read-Data Length. This Bidirectional Expected Read-Data Length Additional Header Segment must immediately follow the BHS.

    (c) Use of more than one Additional Header Segment is left up to the user.

    How many Additional Header Segments were we expecting to be able to be used? Would this maximum length of Additional Header Segments be limited only by the TotalAHSLength (8-bit field measuring length in four-byte words or ((2**8) - 1) * 4 bytes or roughly 1 kbyte)? Can we follow an extended CDB Additional Header Segment or a Bidirectional Expected Read-Data Length Additional Header Segment by one or more user-defined Additional Header Segment?

    Did I get this anywhere close to correct?

    3. In one of Bob Russell's emails we have the following, which does seem to make the use of multiple Additional Header Segments a little clearer to me:

     
    [quote
    http://www.pdl.cmu.edu/mailinglists/ips/mail/msg03784.html]
     
    [view in fixed-width font on wide window]

        +------------------------+

        |     required BHS       | > fixed length of 48 bytes

        +------------------------+

        |     optional AHS 1     |\

        | - - - - - - - - - - -  | \

        |     optional AHS 2     |  \

        | - - - - - - - - - - -  |   > total length in AHS_length field in BHS

        |        . . . .         |  /

         | - - - - - - - - - - -  | /
        |     optional AHS n     |/

        +------------------------+

        | optional header digest | -- covers preceding (48 + AHS_length) bytes

        +------------------------+

        |                        |\

        |     optional data      | > total length in DATA_length field in BHS

        |                        |/

        +------------------------+

        |  optional data digest  | -- covers preceding (DATA_length) bytes

        +------------------------+

    [end view in fixed-width font on wide window]
     
    [end quote
    http://www.pdl.cmu.edu/mailinglists/ips/mail/msg03784.html]

    Is it possible to add something like this picture to the format diagram on p.131. I wouldn't ask if I hadn't tripped myself up on this already.

     
    4. On p. 139 of 12-97 we have the following:

     
    [quote]

     
    9.3.5 CDB - SCSI Command Descriptor Block

    There are 16 bytes in the CDB field to accommodate the commonly used CDBs. Whenever the CDB is larger than 16 bytes, an Extended CDB AHS MUST be used to contain the CDB spillover.

     
    [end quote]

    I tripped again on the term "spillover". Could we perhaps change 9.3.5 to the following (thanks to Rob Elliott, see http://www.pdl.cmu.edu/mailinglists/ips/mail/msg10620.html):

    There are 16 bytes in the CDB field to accommodate bytes 0-15 of the commonly used CDBs. An Extended CDB AHS MUST be used to contain bytes 16-259 of a variable-length CDB [SPC].

    5. There is no description of ExtendedCDB...+ in 9.2.2.3 Extended CDB AHS

    I guess we would be repeating 9.3.5 if we defined ExtendedCDB as "bytes 16-259 of a variable-length CDB", but perhaps that is not a bad thing?

    Aloha
     
    Mike Smith

    CTO, iReady



Home

Last updated: Mon Jun 10 23:18:43 2002
10653 messages in chronological order