[e2e] Ethernet Encapsulation

David P. Reed dpreed at reed.com
Fri Nov 9 06:45:59 PST 2001


At 03:49 PM 11/8/2001 -0500, Dennis Rockwell wrote:
>A clean CRC doesn't mean anything about the validity of the
>upper-level data, just that the controller thinks that all
>is OK.  Verification must happen at each layer.

Actually, verification must happen end-to-end (i.e. data must be verified 
at the layer that depends on the meaning of the data).  It may happen 
elsewhere.
Which is why IPv4 headers have checksums that cover the header but not the 
data, and IPv6 routers must be designed to be self-protective - not do 
anything too widely-destructive if somehow the header is corrupted.

It's just plain wrong thinking (a bad model) to assume that one can trust 
data 100% because the low-level mechanisms use a good checksum or 
whatever.  Rounding that 99.9999% up to 100% and then forgetting about it 
is not the way to think about this - a better way to think about it is to 
think about the low-level checksum as an optimization that reduces the 
frequency of higher-level recovery mechanisms' use, thus allowing them to 
be more thorough and effective at a lower cost.






- David
--------------------------------------------
WWW Page: http://www.reed.com/dpr.html





More information about the end2end-interest mailing list