SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


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

    RE: iSCSI : Digest Error recovery causes data corruption



    One thing I would like to point out is that in the presence of any
    kind of middle boxes (isn't the CRC supposed to protect against
    that primarily?), the iSCSI data CRC has been proposed to provide
    an end-to-end integrity, whereas a TCP connection actually might
    exist from a middle box to the receiving end-system.
    
    In this case, retransmission at the TCP layer may continue to
    send corrupted data if the corruption happened somewhere prior
    to the sending point on the middle-box.
    
    
    > -----Original Message-----
    > From: owner-ips@ece.cmu.edu [mailto:owner-ips@ece.cmu.edu]On Behalf Of
    > Matt Wakeley
    > Sent: Wednesday, January 31, 2001 11:00 AM
    > To: ips@ece.cmu.edu
    > Subject: Re: iSCSI : Digest Error recovery causes data corruption
    > 
    > 
    > At first glance, the idea is nice.
    > 
    > However, options 1 and 2 require changes to the implementation 
    > and API of TCP
    > to provide the framing.  As you (should) know, we are not allowed 
    > to change
    > TCP.  Another problem is that your proposal to drop segments that 
    > have digest
    > errors violates the network layering.  TCP will deliver the PDUs 
    > to iSCSI. 
    > iSCSI is the layer that checks the CRC.  When TCP delivers the 
    > data to iSCSI,
    > it has already acknowledged the segment, so it can't be discarded and
    > retransmitted.  There is no way for iSCSI to tell TCP to accept or drop a
    > segment.
    > 
    > [all of the above assumes existing TCP definition/implementation. 
    >  Anything is
    > possible if one is allowed to change things]
    > 
    > -Matt
    > 
    > Pierre Labat wrote:
    > > 
    > > Hello,
    > > 
    > > I would invite you to revisit the Mike Krause mail about
    > > "iSCSI Data Integrity - Digests".
    > > 
    > > If Alternative 1 or 2 is adopted, when a digest error (CRC)
    > > occurs, the segment could be discarded, and TCP will
    > > retransmit. For software implementation with an hardware
    > > assist to calculate the CRC, (same kind of the one that exists
    > > now to calculate the checksum now), if a CRC error is detected
    > > it could be assimilated as a checksum error.
    > > Hence there is no need to overload the iSCSI protocol
    > > to deal with digest errors, because the iSCSI layer could not
    > > see them.
    > > 
    > > Why to do complicate when simple an efficient can be achieved?
    > > 
    > > Regards,
    > > 
    > > Pierre
    
    _________________________________________________________
    Do You Yahoo!?
    Get your free @yahoo.com address at http://mail.yahoo.com
    
    


Home

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