SV: Automatic TCP send socker buffer sizing
Andre Oppermann
andre at freebsd.org
Thu Nov 16 22:49:04 UTC 2006
Morgan wrote:
>> This is a patch adding automatic TCP send socket buffer
>> sizing.
>
> <snip>
>
>> The patch is available here:
>>
>> http://people.freebsd.org/~andre/tcp_auto_sndbuf-20061116.diff
>>
>> Any testers, especially with busy FTP servers, are very welcome.
>>
>
>
> Very nice indeed! I've actually been looking for something like this :-) I
> would very much like to try it out but I need to know if I can benefit from
> it with my setup. My network knowledge on this deep level is very limited so
> I need to ask a few questions that probably sounds stupid... but here we go:
>
> Would this patch only benefit traffic generated from or destined to the
> FreeBSD box itself or would it also benefit traffic generated behind it on a
> LAN if the FreeBSD box was configured as:
>
> a) a router with NAT
>
> b) a router without NAT
>
> c) a bridge only
>
> Add to this the extra complexity of pf with synproxy and modulate state. I
> simply don't know how (if at all) FreeBSD interacts with or manipulates
> packets going through it under any of these circumstances, so I have to ask
> to learn :-)
It helps only if the FreeBSD box is the sender of data on a TCP connection.
In all the cases you've listed there it doesn't (and can't) help. It would
help though if you were running a full http proxy on it.
> The patch didn't apply cleanly to my 6.1-RELEASE. Since this patch was
> cross-posted to -current I guess it wasn't meant for me. Any chance you can
> provide a patch for 6.1-RELEASE? This is the output:
I'll do a backport to RELENG_6 tomorrow when I'm back in the office.
> # patch <tcp_auto_sndbuf-20061116.diff
> Hmm... Looks like a unified diff to me...
> The text leading up to this was:
> --------------------------
> |Index: tcp_output.c
> |===================================================================
> |RCS file: /home/ncvs/src/sys/netinet/tcp_output.c,v
> |retrieving revision 1.121
> |diff -u -p -r1.121 tcp_output.c
> |--- tcp_output.c 22 Oct 2006 11:52:16 -0000 1.121
> |+++ tcp_output.c 16 Nov 2006 18:35:43 -0000
> --------------------------
> File to patch: /usr/src/sys/netinet/tcp_output.c
> Patching file /usr/src/sys/netinet/tcp_output.c using Plan A...
> Hunk #1 succeeded at 49 (offset 1 line).
> Hunk #2 failed at 105.
> Hunk #3 failed at 395.
> 2 out of 3 hunks failed--saving rejects to
> /usr/src/sys/netinet/tcp_output.c.rej
> Done
>
>
>
> Lastly, is it enough to rebuild only the kernel after applying this patch?
Yes.
> Once again, sorry for these stupid questions but this is the only way for me
> to learn and I really would like to have this patch running on my system.
No problem. Your effort is appreciated.
--
Andre
More information about the freebsd-net
mailing list