Date: Sun, 27 May 2001 00:08:54 +0200 From: Jesper Skriver <jesper@skriver.dk> To: freebsd-net@FreeBSD.org Subject: Re: control TCP send/recieve window size based on port numbers ? and a bug(?) in sendpipe/recvpipe handling ... Message-ID: <20010527000854.B98021@skriver.dk> In-Reply-To: <20010526213442.A95985@skriver.dk>; from jesper@FreeBSD.org on Sat, May 26, 2001 at 09:34:42PM %2B0200 References: <20010526213442.A95985@skriver.dk>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, May 26, 2001 at 09:34:42PM +0200, Jesper Skriver wrote: > Hi, > > I'm currently looking at ways to tune a ftp server, and when > tuning net.inet.tcp.sendspace/net.inet.tcp.recvspace and > NMBCLUSTERS, I came to think that in a ftp server role, half the > TCP sessions will be control sessions, which doesn't transfer much > data, so there is no reason to reserve the same number of buffers > for sendspace/recvspace for these, compared to the data sessions. > > I was thinking of adding 3 new sysctl's > > net.inet.tcp.override_sendspace > net.inet.tcp.override_recvspace > net.inet.tcp.override_ports > > The latter controls which (if any) src/dst ports, trigger the > session to get the overridden send and recv-space applied. > > Does this make any sense ? As Mike Silbersack has educated me, the sendspace and recvspace is only the upper limit pr. session, and it's not static allocated, so this i not a problem, and thus this patch doesn't give us anything. So the only thing remaining is the bug where the sendpipe/recvpipe doesn't have any effect. /Jesper > For my own testing I'm using > <http://people.FreeBSD.org/~jesper/tcp_override.diff> > which do this with one exception, it only allow's one port to be > listed as override, I was to lazy to go into a comma separeted list > for my initial testing. > And I need to add these 3 sysctl's to tcp(4). > > My testing show that it doesn't seem to have any effect, but that > actually show a different problem, as the sendpipe/recvpipe > doesn't seem to have any effect either. > > On a box running stock -current as of may 16th > > root@tam% route change default -sendpipe 1024 > change net default > root@tam% route change default -recvpipe 1024 > change net default > root@tam% route get default > route to: default > destination: default > mask: default > gateway: dhcp129.skriver.dk > interface: xl0 > flags: <UP,GATEWAY,DONE,STATIC,PRCLONING> > recvpipe sendpipe ssthresh rtt,msec rttvar hopcount mtu expire > 1024 1024 0 0 0 0 1500 0 > > And then I get a file from the http server on this host, but > netstat -a give me > > root@tam% netstat -a|head -3 > Active Internet connections (including servers) > Proto Recv-Q Send-Q Local Address Foreign Address (state) > tcp4 0 17520 dhcp138.skriver..http freesbee.wheel.d.1162 ESTABLISHED > > So the send queue is the default 16k, regardless of the fact that > I've overridden the default via the route > > Ok, perhaps I have to change it at the cloned route. > > root@tam% route get 193.162.159.97 > route to: freesbee.wheel.dk > destination: freesbee.wheel.dk > gateway: dhcp129.skriver.dk > interface: xl0 > flags: <UP,GATEWAY,HOST,DONE,WASCLONED,PROTO3> > recvpipe sendpipe ssthresh rtt,msec rttvar hopcount mtu expire > 0 0 139462230 79 7 0 1500 3421 > root@tam% route change 193.162.159.97 -sendpipe 1024 -recvpipe 1024 > change host 193.162.159.97 > root@tam% route get 193.162.159.97 > route to: freesbee.wheel.dk > destination: freesbee.wheel.dk > gateway: dhcp129.skriver.dk > interface: xl0 > flags: <UP,GATEWAY,HOST,DONE,WASCLONED,PROTO3> > recvpipe sendpipe ssthresh rtt,msec rttvar hopcount mtu expire > 1024 1024 139462230 79 7 0 1500 3390 > > But still I get > > jesper@tam% netstat -a | head -3 > Active Internet connections (including servers) > Proto Recv-Q Send-Q Local Address Foreign Address (state) > tcp4 0 16384 dhcp138.skriver..http freesbee.wheel.d.1177 ESTABLISHED > > Any ideas ? > > /Jesper > > -- > Jesper Skriver, jesper(at)skriver(dot)dk - CCIE #5456 > Work: Network manager @ AS3292 (Tele Danmark DataNetworks) > Private: FreeBSD committer @ AS2109 (A much smaller network ;-) > > One Unix to rule them all, One Resolver to find them, > One IP to bring them all and in the zone to bind them. > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-net" in the body of the message > /Jesper -- Jesper Skriver, jesper(at)skriver(dot)dk - CCIE #5456 Work: Network manager @ AS3292 (Tele Danmark DataNetworks) Private: FreeBSD committer @ AS2109 (A much smaller network ;-) One Unix to rule them all, One Resolver to find them, One IP to bring them all and in the zone to bind them. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010527000854.B98021>