:> net.inet.tcp.recvspace: 16384
:...
:> send/recv space might be what I'm looking for...
:
:They're the default send/receive window sizes, yes. You can tweak them
:with socket ioctls on a per-socket basis.
:
:> delayed ack sounds interesting....
:
:Turning that off disables TCP slow-start. It's a huge performance
:booster for things like SMB service, where you have lots of short-lived
:TCP connections on a local net.
Note that you can also tweak TCP send/receive window sizes on a
per-route basis. The recvpipe and sendpipe parameters in route
table entries can be changed. This will override the sysctl defaults.
However, it may be a little complex for some people to grasp. The
route table is a radix tree. In order to set the send/receive pipes
for particular ip addresses you may have to create a route to that
IP address in order to effect it rather then a more global route.
For example, if I am getting the route to some host that runs through
my default gateway, I get my default route entry. If I were to
change this route entry I would be changing it for default, not just
for idiom.com:
route -n get idiom.com
# route -n get idiom.com
route to: 209.157.64.1
destination: default
mask: default <----- this is not a host route!
gateway: 209.157.86.1 <----- this is not a host route!
interface: de0
flags: <UP,GATEWAY,DONE,STATIC,PRCLONING>
recvpipe sendpipe ssthresh rtt,msec rttvar hopcount mtu expire
0 0 0 0 0 0 1500 0
On the other hand, a route to another host on the same ethernet is usually
specific:
# route -n get lander
route to: 209.157.86.6
destination: 209.157.86.6
interface: de0
flags: <UP,HOST,DONE,LLINFO,WASCLONED>
recvpipe sendpipe ssthresh rtt,msec rttvar hopcount mtu expire
0 0 10411044 172 219 0 1500 1131
To change the pipes associated with a route, I would do the following.
But in this example if I were to try to change the pipe size to idiom.com,
I would actually wind up changing the pipe size for my default route.
route -n change idiom.com -sendpipe BYTES -recvpipe BYTES
route -n change 209.157.86.6 -sendpipe BYTES -recvpipe BYTES
If I really want to change the pipe size just to idiom.com, I would have
to first create a specific route to idiom.com, then change that.
route add idiom.com default
route -n change idiom.com -sendpipe BYTES -recvpipe BYTES
-Matt
Matthew Dillon
<[EMAIL PROTECTED]>
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message