improved TSO interface needed

Andre Oppermann andre at freebsd.org
Sun Feb 25 14:47:57 UTC 2007


Kip Macy wrote:
> Evidently FreeBSD violates the LSO spec by sending down up to socket
> buffer sized TSO segments to the network card. Is there a way to set
> this other than reducing net.inet.tcp.sendbuf_max to a compliant value
> (64k)? And is there a way to for a device to communicate to the stack
> the maximum length of an mbuf chain?

 From netinet/ip_output.c:

          * When doing TSO limit a burst to TCP_MAXWIN minus the
          * IP, TCP and Options length to keep ip->ip_len from
          * overflowing.  Prevent the last segment from being
          * fractional thus making them all equal sized and set
          * the flag to continue sending.

TCP_MAXWIN is 64K.

-- 
Andre



More information about the freebsd-net mailing list