SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


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

    iSCSI : Digest Error Problems & CmdSN/ExpCmdSN window issues


    • To: IPS Reflector <ips@ece.cmu.edu>
    • Subject: iSCSI : Digest Error Problems & CmdSN/ExpCmdSN window issues
    • From: Santosh Rao <santoshr@cup.hp.com>
    • Date: Wed, 24 Jan 2001 18:06:59 -0800
    • Content-Type: multipart/mixed;boundary="------------845BFF605983A6EBD9670081"
    • Organization: Hewlett Packard, Cupertino.
    • Sender: owner-ips@ece.cmu.edu

    Julian & All,
    
    There's a number of problems with the current iSCSI handling of digest
    errors (Section 5.5) :
    
    "When an initiator receives an iSCSI data PDU with a digest error or any
    
    other PDU with a header or data digest error, it must discard and
    re-start the task -provided it can recognize the Initiator Task Tag".
    
    1) The initiator task tag cannot be trusted when a header digest error
    is seen. What does the phrase "provided it can recognize the initiator
    task tag" mean ?
    How can an initiator reliably claim that the initiator task tag is
    trustworthy ?
    
    2) The use of a "discard and re-start" policy can cause some  problems.
    The target is un-aware that the initiator has discarded the task and
    will then receive a 2nd command with the same Initiator Task Tag and
    CmdSN for a task already in progress, which can cause transmission of
    duplicate sets of data on the same I.T.T.
    
    Any policy of "discard and re-start" must be modified to "discard, abort
    
    and then, re-start, and the draft MUST specify connection allegiance of
    the command and its Abort Task".
    
    3) The policy of "discard and restart" is also subject some race
    conditions in the CmdSN sliding window. At the time the digest error was
    
    detected at the initiator, the ExpCmdSN may not yet have acknowledged
    that
    command. This causes the initiator to restart the command with the same
    Initiator Task Tag, CmdSN and "retry" bit set.
    
    However, by the time the command gets to the target, the target may have
    
    updated its ExpCmdSN window having sent a later PDU which updated the
    ExpCmdSN. This results in the target discarding the received CmdSN since
    
    it is outside the expected window of (ExpCmdSN, MaxCmdSN).
    
    The "discard & restart" policy cannot be reliably used unless it is on a
    
    connection failure, in which case, the failed connection is first logged
    
    out and an updated ExpCmdSN is received on the logout response.
    Following the logout response, the "retry" commands CmdSN can be
    based on the ExpCmdSN.
    
    In the case of digest errors, the CmdSN window can be moving forward
    and an attempt to "discard and restart" will result in a re-send of a
    CmdSN that is outside the CmdSN window, causing the target to
    discard the retried command.
    
    Regards,
    Santosh
    
    begin:vcard 
    n:Rao;Santosh 
    tel;work:408-447-3751
    x-mozilla-html:FALSE
    org:Hewlett Packard, Cupertino.;SISL
    adr:;;19420, Homestead Road, M\S 43LN,	;Cupertino.;CA.;95014.;USA.
    version:2.1
    email;internet:santoshr@cup.hp.com
    title:Software Design Engineer
    x-mozilla-cpt:;21088
    fn:Santosh Rao
    end:vcard
    


Home

Last updated: Tue Sep 04 01:05:45 2001
6315 messages in chronological order