cvs commit: src/sys/dev/bge if_bge.c
gurney_j at resnet.uoregon.edu
Wed Sep 20 11:46:47 PDT 2006
David Malone wrote this message on Wed, Sep 20, 2006 at 09:52 +0100:
> (It's interesting to note that as ethernet cards introduce more
> features it is getting harder for us to tell what we put on the
> wire. With checksum offloading we can no longer trust the checksum.
> With VLAN tagging we can't trust the VLAN tag. With TSO we can't
> trust the IP ID, TCP sequence number, TCP timestamps, ... We've
> seen some interesting things on Linux recently because with TSO the
> RTT esitmation for TCP doesn't work at all the way you expect.)
That lends itself, to providing additional data w/ the bpf call,
and leaving the data passed to the network card as is... that means
w/ TSO, bpf will get a 64k or so sized piece of data... Trying to
have the bpf injection code do the spliting, etc, is just complicated...
The problem w/ doing it this way means that there will be lots of
metadata that needs to be added, (such as the mtu that we told the
card to break the packets down to) breaking many tools..
John-Mark Gurney Voice: +1 415 225 5579
"All that I will do, has been done, All that I have, has not."
More information about the cvs-src