Date: Wed, 25 Mar 1998 15:19:49 +0000 From: njs3@doc.ic.ac.uk (Niall Smart) To: "pratap singh" <v_pr@hotmail.com>, dg@root.com Cc: freebsd-hackers@FreeBSD.ORG Subject: Re: ARP REQUEST question Message-ID: <E0yHry1-0004SP-00@ash2.doc.ic.ac.uk> In-Reply-To: "pratap singh" <v_pr@hotmail.com> "Re: ARP REQUEST question" (Mar 25, 6:55am)
next in thread | previous in thread | raw e-mail | index | archive | help
On Mar 25, 6:55am, "pratap singh" wrote: } Subject: Re: ARP REQUEST question > Hi all, > I perfectly know about the CRC carried in the ethernet frames. But if > that is the case the higher layer protocols still do the checksum like > IP. > the reasons that I feel for not having the checksum in the ARP frame > are: > 1> IP packets get routed and can be seen to ascend and descend protocol > stacks till they reach their destination. So even if the layer 2 > (ethernet) checksum is right, they may get corrupted during the ascend > and descend. And if the checksum is not provided by the > IP itself, this error could go unnoticed. The "ascent" and "descent" through the protocol stacks, e.g., the demultiplexing of an ethernet packet to IP to TCP, is done entirely in software (or "reliable" hardware). Any corruption here is due to bugs in the networking code which should be eliminated. The reason IP has checksum field is that it cannot rely on the underlying network, be it ethernet, token ring or a VPN, to reliably deliver the data. That is the raison d'etre of TCP/IP. > 2> However same is not the case with ARP which in the protocol stack sat > with the hardware independent part of the Ethernet driver or any other > layer 2 driver (historically) and so the traversal of the protocol stack > was not necessary. And the local significance made the CRC just enough > for detecting errors. The ARP protocol is network specific and as DG already pointed out Ethernet frames contain a 32bit CRC, therefore the ARP packet does not need a checksum field. If an ARP protocol was needed for a network technology which did not checksum the data at the link level then the ARP protocol would require a checksum. Niall To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E0yHry1-0004SP-00>