SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


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

    Re: iSCSI: RE: effect of initializing CRC reg to 1's depends on implementati on? iSCSI



    --- Paul Koning <ni1d@arrl.net> wrote:
    > 
    > I agree that the current description is not consistent
    > and is
    > confusing.  That's why I proposed replacement text.  I'd
    > be interested
    > in comments on that text.
    
    I gave you a comment in my last letter:
    
      Please also note that the Ethernet spec CRC algorithm,
      is an optimized version of a basic
      prefix-postfix-initialize-the-
      CRC-register-to-some-constant algoritm. BUT as SMD it
      operates on NON-AUGMENTED messages. FOR THAT REASON
      you cannot say that we have to multiply M(x) by x^32!!!
    
    You see, you cannot say that the message has to be
    multiplied by x^32, if you are describing the Ethernet
    CRC algo.
    
    >  Luben> Please also note that the Ethernet spec CRC
    > algorithm, is an
    >  Luben> optimized version of a basic
    > prefix-postfix-initialize-the-
    >  Luben> CRC-register-to-some-constant algoritm.
    > 
    > I'm not sure what spec you're talking about.
    
    The one you always mention, the one you quote in you
    messages. The one iSCSI is trying to present.
    
    > The algorithm in the Ethernet spec (section 6.2.4) which
    > was copied
    > into the 802.3 spec (section 3.2.8) pretty much verbatim
    > except for a
    > typo, is not a prefix-postfix-whatever algorithm at all. 
    
    Yes, it is. I'll send you the math when I finish it (later
    this week).
    
    I'll also send you 2 algorithms, one simplest division, and
    another as per Ethernet, which produce identical results.
    (I can send it now, but no time.)
    
    > Instead, it
    > is a mathematical definition of the CRC value.  The
    > phrase "initialize
    > the CRC register" does not occur at all in any form.
    
    So it doesn't in the definition I gave you.
    If it is a formal, mathematical definition, then you should
    see the same initial constant as I found: 0x2a26f826.
    
    If it mentiones 0xFFFFFFFF, then it means that SMD
    (Simultaneous Divide and Multiply) algo is described, which
    is hardly a formal mathematical definition.
     
    > If I understand right, this is a mathematically
    > equivalent way of
    > describing an Ethernet-style CRC.
    
    Yep. Mathematically, and when implemented, by hand, by a
    program, by a handheld calculator, by a mathematics
    analysis program, it will yield identical results as in
    ``Ethernet-style CRC''.
     
    > Fine, no problem.  But what's the point?  All we need is
    > a single
    > formal definition.
    
    The point? You and Pat wanted a mathematical definition, so
    here it is!
    
    This is a ``single formal definition''.
    
    >  And it would make the most sense for
    > that
    > definition to look like the ones found in other
    > standards, so it will
    > be clear to the reader that the CRC in iSCSI is the same
    > as the one
    > used in many other places except for the G(x).
    
    Then lets forget about trying to REPHRASE Ethernet and just
    mention that: that it is equivalent to Ethernet, but just
    that it uses a different polynomial.
    
    > The
    > description you gave may be mathematically equivalent,
    > but that is not
    > at all obvious unless you're fluent in abstract math.
    
    True.
     
    > In any case, no mathematical description by itself
    > translates easily
    > to an implementation (again, unless you're fluent in
    > abstract math).
    
    True.
    
    > Most specs disregard that concern and leave it up to the
    > implementer
    > to search the literature.  My current proposal is to do
    > likewise for
    > iSCSI.  The only exception I've seen is the Ethernet
    > spec, which gives
    > a single example implementation in its appendix.  
    
    Example implementation is good, as are examples.
    I'd vote for both to be included in iSCSI.
    
    -l
    
    
    
    
    =====
    --
    
    __________________________________________________
    Do You Yahoo!?
    Check out Yahoo! Shopping and Yahoo! Auctions for all of
    your unique holiday gifts! Buy at http://shopping.yahoo.com
    or bid at http://auctions.yahoo.com
    


Home

Last updated: Mon Dec 17 15:17:41 2001
8105 messages in chronological order