From owner-freebsd-hackers Wed Mar 25 07:22:55 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id HAA23175 for freebsd-hackers-outgoing; Wed, 25 Mar 1998 07:22:55 -0800 (PST) (envelope-from owner-freebsd-hackers@FreeBSD.ORG) Received: from heron.doc.ic.ac.uk (7gmB9nd2kXzQD/sRzs8ubbxHFeiGbmQp@heron.doc.ic.ac.uk [146.169.2.31]) by hub.freebsd.org (8.8.8/8.8.8) with SMTP id HAA22901 for ; Wed, 25 Mar 1998 07:21:58 -0800 (PST) (envelope-from njs3@doc.ic.ac.uk) Received: from ash2.doc.ic.ac.uk [146.169.16.30] ([MFzjcAWNz3tRUiW8BXe6KkJlbnteoZU0]) by heron.doc.ic.ac.uk with smtp (Exim 1.62 #3) id 0yHrzL-0006Yj-00; Wed, 25 Mar 1998 15:21:11 +0000 Received: from njs3 by ash2.doc.ic.ac.uk with local (Exim 1.62 #1) id 0yHry1-0004SP-00; Wed, 25 Mar 1998 15:19:49 +0000 From: njs3@doc.ic.ac.uk (Niall Smart) Date: Wed, 25 Mar 1998 15:19:49 +0000 In-Reply-To: "pratap singh" "Re: ARP REQUEST question" (Mar 25, 6:55am) X-Mailer: Mail User's Shell (7.2.5 10/14/92) To: "pratap singh" , dg@root.com Subject: Re: ARP REQUEST question Cc: freebsd-hackers@FreeBSD.ORG Message-Id: Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG 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