Peter Jeremy wrote: > On Fri, Mar 07, 2003 at 10:43:37AM -0800, Terry Lambert wrote: > >And TCP/IP headers are not an even multiple of the alignment boundary > >(4 bytes, actually). So every packet the card DMA's in has to be > >copied so that access to the TCP packet contents are aligned. > > Last time I looked at TCP/IP, the header lengths were all defined > in 4-byte units so they must be a multiple of 4 bytes by definition. > Maybe you are referring to the Ethernet header - which is 14 bytes > long (18 bytes in a VLAN trunk).
Yes. Unless the transfer is padded by the card in the DMA, or it can DMA to a two-byte shifted boundary from it's own start address, you end up having to copy to gt the TCP/IP headers onto a 4 byte alignment boundary. There are a couple other cards that suck this way; if Bill Paul wrote the driver for the card, then the information is in the comments in the driver. Generally, reading the comments in all the drivers, and picking the one with the least disparaging remarks is a good way to pick hardware. 8-). -- Terry To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-hackers" in the body of the message