Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Dec 1999 18:13:16 -0800
From:      "Justin C. Walker" <justin@apple.com>
To:        Fernando Ariel Gont <fgont@softhome.net>
Cc:        freebsd-net@FreeBSD.ORG
Subject:   Re: Two many CRCs?
Message-ID:  <199912290213.SAA01337@walker3.apple.com>

next in thread | raw e-mail | index | archive | help
> From: Fernando Ariel Gont <fgont@softhome.net>
> Date: 1999-12-28 17:52:00 -0800
> To: freebsd-net@FreeBSD.ORG
> Subject: Two many CRCs?
> Delivered-to: freebsd-net@freebsd.org
> X-Sender: fgont@pop.softhome.net
> X-Mailer: QUALCOMM Windows Eudora Pro    Version 4.2.0.58
> X-Loop: FreeBSD.org
>
> Hi!
>
> I'm reading Stevens' "TCP/IP Illustrated", and have the following  
doubt:
> I don't quite understand why you have a CRC field at PPP (or at  
Ethernet), then one
> CRC field at IP and then one CRC field at the TCP layer.
> Why is there one CRC field in each layer, and not only one at,  
say, TCP?

The question is somewhat complex, and depends partially on history.

First, the FCS/CRC fields for media (e.g., ethernet, PPP) are used  
to permit the media handlers to reject bad packets quickly.

Second, when IP was initially developed, there was a higher  
likelihood that a packet could get munged as went from the receiver  
to the host.

Third, there's still a chance (cosmic rays, you know) that a packet  
really might get munged after it is in host memory, but before the  
stack layers have their look at it.  This is possible, and has been  
observed.  It gets less likely over time.

Forth, the protocol CRCs cover different portions of the packet.   
For IP, it's *just* the IP header; for TCP, it's just the TCP  
"packet" (plus the "pseudo header").

So what's really duplicated is the CRC at the media layer and those  
at the protocol layers.

Finally, there is no header checksum for IPv6; reliance is placed on  
media and whatever the higher layers of protocol want to do.

Regards,

Justin

--
Justin C. Walker, Curmudgeon-At-Large *
Institute for General Semantics       |
Manager, CoreOS Networking            | When crypto is outlawed,
Apple Computer, Inc.                  | Only outlaws will have crypto.
2 Infinite Loop                       |
Cupertino, CA 95014                   |
*-------------------------------------*-------------------------------*


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199912290213.SAA01337>