Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 16 Jan 2004 00:04:01 +0900 (KST)
From:      CHOI Junho <cjh@kr.FreeBSD.org>
To:        andre@freebsd.org
Cc:        freebsd-net@freebsd.org
Subject:   Re: FreeBSD -> Windows HTTP TCP performance
Message-ID:  <20040116.000401.104115832.cjh@kr.FreeBSD.org>
In-Reply-To: <4006A3FF.6061AFB9@freebsd.org>
References:  <20040113.225411.74714267.cjh@kr.FreeBSD.org> <20040115.224407.41715339.cjh@kr.FreeBSD.org> <4006A3FF.6061AFB9@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
From: Andre Oppermann <andre@freebsd.org>
Subject: Re: FreeBSD -> Windows HTTP TCP performance
Date: Thu, 15 Jan 2004 15:30:23 +0100

> CHOI Junho wrote:
> > 
> > For those who interested, I made packet dump file:
> > 
> >   http://www.kr.freebsd.org/~cjh/misc/freebsd-net/
> > 
> > Best thing is do tcpdump at client machine but I have no admin
> > permission, so failed.
> 
> I can't read the dump files with ethereal, it says they are corrupt.

> file *.tcpdump
test-fbsd.tcpdump: tcpdump capture file (little-endian) - version 2.4 (Ethernet, capture length 120)
test-w2k.tcpdump:  tcpdump capture file (little-endian) - version 2.4 (Ethernet, capture length 120)

I can read these files with 'tcpdump -r <file>'. They are captured
with 'tcpdump -w <file> -p -v -s 120 -n -l host <ip>'.
 
> But lets go through your sysctl settings:
> 
> > kern.clockrate: { hz = 2000, tick = 500, ...
> 
> HZ should not be higher than 1000 or you get problems with some
> tcp timers.

OK.

> > kern.ipc.maxsockbuf: 67108864
> 
> This is way too high.  Normally it is 262144 (=256k).  Don't do
> more than 1MByte.

OK.

> > <118>Jan 12 13:06:21 kt-down3 thttpd[37449]: accept - Software caused connection abort
> > <118>Jan 12 13:21:00 kt-down3 thttpd[37449]: mmc panic - freeing 49 unreferenced maps
> > <118>Jan 12 13:22:49 kt-down3 thttpd[37449]: mmc panic - freeing 49 unreferenced maps
> > <118>Jan 12 13:31:18 kt-down3 thttpd[37449]: mmc panic - freeing 45 unreferenced maps
> > <118>Jan 12 13:33:12 kt-down3 thttpd[37449]: mmc panic - freeing 110 unreferenced maps
> 
> This doesn't look good.  You should find out why thttpd is complaining.

This thttpd is my custom version... it is some kind of
debugging(periodical garbage collection).

> > net.inet.tcp.sendspace: 32768
> > net.inet.tcp.recvspace: 16384
> 
> It's better to have them both at 65536 (64k).

OK.

> > net.inet.tcp.delayed_ack: 0
> 
> It's better to have this turned on.

Some people or webpage recommends turning off delayed_ack for Windows
clients. Which is true?

> > net.inet.tcp.slowstart_flightsize: 1
> 
> You can raise this to 4.

OK.

> > net.inet.tcp.msl: 1000
> 
> It's better to have this at 30000.

OK.

> You should change these values and try again.  A new tcpdump would be
> helpful too.

Thank you! I'll try with new tuned parameters.

--
CHOI Junho <http://www.kr.FreeBSD.org/~cjh>;     KFUG <cjh at kr.FreeBSD.org>
FreeBSD Project <cjh at FreeBSD.org>        Web Data Bank <cjh at wdb.co.kr>
Key fingerprint = 1369 7374 A45F F41A F3C0  07E3 4A01 C020 E602 60F5



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040116.000401.104115832.cjh>