Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Jun 2001 11:40:52 -0500 (CDT)
From:      Jonathan Lemon <jlemon@flugsvamp.com>
To:        Bsdguru@aol.com, hackers@freebsd.org
Subject:   Re: How to disable software TCP checksumming?
Message-ID:  <200106081640.f58Geqr63121@prism.flugsvamp.com>
In-Reply-To: <local.mail.freebsd-hackers/84.1717a060.28525287@aol.com>

next in thread | previous in thread | raw e-mail | index | archive | help
In article <local.mail.freebsd-hackers/84.1717a060.28525287@aol.com> you write:
>This thread is baffling. The bottom line is that you cant trust data coming 
>into your machine, and you have to checksum it.  The link level check only 
>verifies that what was sent by the last forwarding point is the same as what 
>you got, but in NO WAY implies that all of the data is valid.  A link level 
>checksum pass is a necessary, but not a sufficient condition for the data 
>being acceptable. There are scads of reasons that it could be bad. Disabling 
>checksumming is a kludge that you may chose to do, but its never the right 
>thing to do.

I think there's some confusion here.  There are two types of checksums:

     1. CRC link-level checksum on the ethernet packet.
     2. Upper layer checksums (TCP/IP)

All hardware that I'm aware of automatically performs #1, I'm not sure
if there is anything that will permit disabling this.

Step 2 is usually known as the "end-to-end" checksum, and is traditionally 
performed by the host CPU.  Depending on your view of what constitutes
an "endpoint", these checksums may be performed by the network adapter
itself.  I believe that this is what the original meant by disabling 
software checksums, in the sense that his hardware would do this work.

Dispensing with TCP/IP checksum altogether is a fairly bad idea, but 
I don't think that is what was being proposed here.
-- 
Jonathan

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?200106081640.f58Geqr63121>