SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


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

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



    --- "THALER,PAT (A-Roseville,ex1)" <pat_thaler@agilent.com>
    wrote:
    > Paul,
    > 
    > I agree that we should use the mathematical description
    > of the CRC as the
    > spec.
    
    I've been trying to convince ppl this since I started
    to work on iSCSI.
    
    Pure math is much clearer, and simple than an
    implementation. And it woudn't be more than a few
    lines to describe the algorithm. (A treatment
    of why it works, would of course be longer than that.)
    
    Please note that the draft makes no mention of
    the Ethernet CRC algo, and I assume there is a reason for
    it. Else why not say: ``Ethernet CRC algo, with the
    generator poly be ...''.
    
    > Equivalent ways of obtaining the effect of
    > inverting the first bits or
    > checking the result (magic number) are implementation
    > details.
    
    I guess that would be true, but one thing needs mentioning:
    
    ======================================================
    The start point of all those algoritms and circuits is a
    message premultiplied by x^n (n=degG(x)), e.g. AUGMENTED,
    and PREFIXED. And then division is done on that, I.e.
    x^nM(x) + Prefix.
    ======================================================
    
    Setting an initial value of the CRC register will result in
    a constant apperaing here and there.
    
    Now you want to object to this, and rightly so.
    Why? Well after analysis, the above said can be so much
    transformed that it doesn't look like that statement
    anymore. E.g. Prefixing can be done away with, by adding a
    constant value to the n MSb of the message; as well as
    augmentation, by changing the div algo to include mult on
    the fly.
    
    As an exampe of this ``compilation'' is the circuits that
    Vince has provided.
    
    But we need a mathematical description, and by analogy,
    reading source code makes understanding a lot easier than
    reading compiled binary code.
    
    > I'm not
    > convinced that we need to show an implementation example
    > in the annex.
    
    Yes we should stick with the way it currently is in the
    draft: mathematical steps, but make them clearer.
    
    > Given
    > the misleading information that Vince has found in some
    > of the literature if
    > we show an implementation example, we need to point out
    > that the technique
    > of initializing the register to 1's applies specifically
    > to that
    > implementation and may not work for other
    > implementations.
    
    It was I who first brought this up using pure analysis.
    Maybe you should take a look at the iSCSI archives.
    
    When I started work on iSCSI -- the CRC thead was quiet and
    by word of mouth ppl were implementing Ethernet using the
    CRC32/4 generator poly. But the description of the draft
    had some inconsistencies and here we are.
     
    > Regards,
    > Pat
    
    Regards,
    Luben
    
    
    
    =====
    --
    
    __________________________________________________
    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: Fri Dec 14 16:17:45 2001
8074 messages in chronological order