SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


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

    Re: iSCSI ERT: data SACK/replay buffer/"semi-transport"



    Julian & All,
    
    Do we agree on the following requirements for SNACK :
    
    a) iSCSI MUST NOT mandate either data or status S[N]ACK for intra-task
    error recovery. Initiators MUST be allowed to perform command
    granularity error recovery.
    
    b) iSCSI MUST provide a mechanism by which targets can continue with I/O
    resource release upon completion of an I/O. Such a mechanism may be
    based on an explicit StatSN acknowledgement, (if the target supports
    StatSN SNACK), or allow immiediate resource clean-up upon I/O
    completion. 
    
    c) Such a mechanism MUST NOT block forward progress when holes occur in
    StatSN sequence, due to format or digest errors encountered at the
    initiator.
    
    In order to meet the above requirements, "StatSN S[N]ACK" support can be
    negotiated at login time and if StatSN SNACK is not supported by the
    target, it MUST NOT use StatSN sequence numbering. (i.e. StatSN = 0). 
    
    By not using StatSN numbering, the "holes in StatSN" problem does not
    occur, thereby, meeting requirements (a) ,(b) & (c) for targets that do
    not retain I/O state information.
    
    For targets that do retain I/O state information, StatSn SNACK is turned
    on along with StatSN numbering. 
    
    - Santosh
    
    
    julian_satran@il.ibm.com wrote:
    > 
    > Santosh,
    > 
    > I have to think about it a bit more.  The main ack mechanism is ExpStatSN
    > (as I indicated in a previous note).  SNACk is meant to simplify recovering
    > holes without having to reissue commands or wait for timeout. Rejecing
    > SNACK with an "unsupported" indication but resending the status on command
    > retry can hardly be considered a good alternative while rejecting SNACK
    > with "no status to recover" has to be bubbled up to SCSI and that can be
    > bad for tapes.
    > I think that if you keep status until ack-ed SNACK makes only life easier
    > as it makes the recovery request explicit an specific - unlike the command
    > retry that is vague and unspecific.
    > 
    > Julo
    > 
    > Santosh Rao <santoshr@cup.hp.com> on 06/04/2001 20:26:47
    > 
    > Please respond to Santosh Rao <santoshr@cup.hp.com>
    > 
    > To:   Julian Satran/Haifa/IBM@IBMIL
    > cc:   santoshr@cup.hp.com, David Black <Black_David@emc.com>
    > Subject:  Re: iSCSI ERT: data SACK/replay buffer/"semi-transport"
    > 
    > Julian,
    > 
    > I did not hear back on this and am re-sending in case you did not
    > receive the same. Your comments would be appreciated.
    > 
    > (Can you clarify if you intend to make the current SNACK mechanism
    > optional and if so, how it is expected to solve the "holes in StatSN"
    > problem for targets that don't implement StatSN SNACK ?)
    > 
    > Regards,
    > Santosh
    > 
    > -------------------------------------------------------------------------------------
    > 
    > Subject:  Re: iSCSI ERT: data SACK/replay buffer/"semi-transport"
    > Date:     Thu, 05 Apr 2001 19:22:09 -0700
    > From:     Santosh Rao <santoshr@cup.hp.com>
    > Organization: Hewlett Packard, Cupertino.
    > To:       julian_satran@il.ibm.com
    > CC:       ips@ece.cmu.edu
    > 
    > julian_satran@il.ibm.com wrote:
    > >
    > > Santosh,
    > >
    > > SNACK and SACK are the same thing (I just renamed them to avoid confusion
    > > with TCP SACK).
    > > The status is acked by ExpStatSN (and only indirectly by SNACK). SNACK
    > > enables fast recovery of
    > > a hole (whithout having to resort to a timeout).
    > 
    > Julian,
    > 
    > The bottom line is that the current SNACK mechanism as defined in the
    > spec will NOT work if it is made optional, and at the same time, it is
    > too expensive to mandate the SNACK mechanism.
    > 
    > The current SNACK mechanism is really a negative ACK requesting the
    > target to re-send the status PDU. This mechanism has 2 dis-advantages :
    > 
    > a) requires targets to retain I/O state information until StatSN is
    > acknowledged.
    > b) Does not allow forward progress with the release of I/O resources in
    > the event that a target could not retain that state information or for
    > some other reason could not service the SNACK.
    > 
    > I am suggesting that the alternate model of SACK be used, wherein, a
    > SACK is an individual ACK of a received status PDU. This SACK only kicks
    > in on detection of a hole. The hole is implicitly plugged by the
    > initiator on eventual completion of the command
    > [on timeout followed by abort or retry].
    > 
    > The advantage of this alternate model is :
    > a) Does not require state information to be stored at targets beyond I/O
    > completion.
    > b) Allows a more reliable mechanism of resource release.
    > 
    > The dis-advantage of this mechanism is :
    > a) It results in I/O timeout when Status PDU was dropped due to a digest
    > error.
    > 
    > Once again, the question boils down to the rate of TCP checksum escapes
    > and the probability of such escapes affecting status PDUs. If this is
    > low enough, such a timeout on a digest error of a status PDU should be
    > acceptable.
    > 
    > >  We decided long ago
    > > against individual acks as bulk acking through a window is cheaper and
    > > safer (repetition).
    > 
    > I am not suggesting removal of bulk ack scheme. My suggestion is that
    > SACK kick in on a hole and the initiator revert to bulk ACK scheme once
    > it considers the hole to be plugged (thru the eventual completion of the
    > I/O on the timeout path followed by abort or retry).
    > 
    > - Santosh
    >  - santoshr.vcf
    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:08 2001
6315 messages in chronological order