Date: Mon, 21 Jul 2014 11:27:36 +0800 From: Niu Zhixiong <kaiaixi@gmail.com> To: bycn82 <bycn82@gmail.com> Cc: freebsd-net@freebsd.org Subject: Re: A TCP problem on High Delay Message-ID: <CAOENNMAB=1tZXKKRXvQ_NjHe8yv-NXh_yOrjwNp8r6gpPMg8Kg@mail.gmail.com> In-Reply-To: <00d201cfa436$d2936ce0$77ba46a0$@gmail.com> References: <CAOENNMCvrD91SiMfyySB1Qj7Ysvhcv1r2t-WGQV=Qb7CKe8DUA@mail.gmail.com> <00d201cfa436$d2936ce0$77ba46a0$@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, Thank you so much. I am wondering that why FreeBSD default is less than Linux default in high delay * BW. Why, Why and Why. @FreeBSD_KVM:~ % sysctl net.inet.tcp net.inet.tcp.rfc1323: 1 net.inet.tcp.mssdflt: 536 net.inet.tcp.keepidle: 7200000 net.inet.tcp.keepintvl: 75000 net.inet.tcp.sendspace: 32768 net.inet.tcp.recvspace: 65536 net.inet.tcp.keepinit: 75000 net.inet.tcp.delacktime: 100 net.inet.tcp.v6mssdflt: 1220 net.inet.tcp.cc.algorithm: newreno net.inet.tcp.cc.available: newreno net.inet.tcp.hostcache.cachelimit: 15360 net.inet.tcp.hostcache.hashsize: 512 net.inet.tcp.hostcache.bucketlimit: 30 net.inet.tcp.hostcache.count: 0 net.inet.tcp.hostcache.expire: 1 net.inet.tcp.hostcache.prune: 300 net.inet.tcp.hostcache.purge: 0 net.inet.tcp.log_in_vain: 0 net.inet.tcp.blackhole: 0 net.inet.tcp.delayed_ack: 1 net.inet.tcp.drop_synfin: 0 net.inet.tcp.rfc3042: 1 net.inet.tcp.rfc3390: 1 net.inet.tcp.experimental.initcwnd10: 1 net.inet.tcp.rfc3465: 1 net.inet.tcp.abc_l_var: 2 net.inet.tcp.ecn.enable: 0 net.inet.tcp.ecn.maxretries: 1 net.inet.tcp.insecure_rst: 0 net.inet.tcp.recvbuf_auto: 1 net.inet.tcp.recvbuf_inc: 524288 net.inet.tcp.recvbuf_max: 16777216 net.inet.tcp.path_mtu_discovery: 1 net.inet.tcp.tso: 1 net.inet.tcp.sendbuf_auto: 1 net.inet.tcp.sendbuf_inc: 16384 net.inet.tcp.sendbuf_max: 16777216 net.inet.tcp.reass.maxsegments: 7900 net.inet.tcp.reass.cursegments: 0 net.inet.tcp.reass.overflows: 0 net.inet.tcp.sack.enable: 1 net.inet.tcp.sack.maxholes: 128 net.inet.tcp.sack.globalmaxholes: 65536 net.inet.tcp.sack.globalholes: 0 net.inet.tcp.minmss: 216 net.inet.tcp.log_debug: 0 net.inet.tcp.tcbhashsize: 16384 net.inet.tcp.do_tcpdrain: 1 net.inet.tcp.pcbcount: 4 net.inet.tcp.icmp_may_rst: 1 net.inet.tcp.isn_reseed_interval: 0 net.inet.tcp.soreceive_stream: 0 net.inet.tcp.syncookies: 1 net.inet.tcp.syncookies_only: 0 net.inet.tcp.syncache.bucketlimit: 30 net.inet.tcp.syncache.cachelimit: 15375 net.inet.tcp.syncache.count: 0 net.inet.tcp.syncache.hashsize: 512 net.inet.tcp.syncache.rexmtlimit: 3 net.inet.tcp.syncache.rst_on_sock_fail: 1 net.inet.tcp.msl: 30000 net.inet.tcp.rexmit_min: 30 net.inet.tcp.rexmit_slop: 200 net.inet.tcp.always_keepalive: 1 net.inet.tcp.fast_finwait2_recycle: 0 net.inet.tcp.finwait2_timeout: 60000 net.inet.tcp.keepcnt: 8 net.inet.tcp.rexmit_drop_options: 0 net.inet.tcp.per_cpu_timers: 0 net.inet.tcp.timer_race: 0 net.inet.tcp.maxtcptw: 12963 net.inet.tcp.nolocaltimewait: 0 Regards, Niu Zhixiong =EF=BC=8D=EF=BC=8D=EF=BC=8D=EF=BC=8D=EF=BC=8D=EF=BC=8D=EF=BC=8D=EF=BC=8D=EF= =BC=8D=EF=BC=8D=EF=BC=8D=EF=BC=8D=EF=BC=8D=EF=BC=8D=EF=BC=8D kaiaixi@gmail.com On Mon, Jul 21, 2014 at 12:22 AM, bycn82 <bycn82@gmail.com> wrote: > Hi, > Yes, according to your pcap files,it is because of the window size. > more information here http://www.ietf.org/rfc/rfc1323.txt > and share the result of "sysctl net.inet.tcp" > > Regards, > bycn82 > > > > > -----Original Message----- > > From: owner-freebsd-net@freebsd.org [mailto:owner-freebsd- > > net@freebsd.org] On Behalf Of Niu Zhixiong > > Sent: 20 July, 2014 23:43 > > To: freebsd-net@freebsd.org > > Subject: A TCP problem on High Delay > > > > Dear All, > > I set up an FTP server in a high delay but fairly BW environment. > > When I try to download files from this FreeBSD FTP server, A FreeBS= D > > client is always slower than Linux Client. (Linux Client is about 1MB/s= , > > But FreeBSD client 300KB/s). I am sure that the two clients are in same > > networks and no firewalls are between server and clients. Then I try to > > use SCTP protocol rather than TCP protocol. The FreeBSD client is faste= r > > than itself in TCP. > > > > I try to increase the rbuff of the client. But, It always less than the > > linux one. I think the problem may be the smaller window of Freebsd tha= n > > Linux. But, I changed some parameters. But, nothing changed. > > > > uname -a > > 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC > > 2014 > > root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64 > > > > According to > > http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/configtuning- > > kernel-limits.html > > > > I try to enable sysctl net.inet.tcp.inflight.enable or sysctl > > net.inet.tcp.inflight_enable , but there is no such option in FreeBSD 1= 0. > > > > Then I follow this https://fasterdata.es.net/host-tuning/freebsd/ > > And make a large rbuffer. > > > > > > sysctl kern.ipc.maxsockbuf=3D16777216 > > sysctl net.inet.tcp.sendbuf_max=3D16777216 > > sysctl net.inet.tcp.recvbuf_max=3D16777216 > > sysctl net.inet.tcp.sendbuf_auto=3D1 > > sysctl net.inet.tcp.recvbuf_auto=3D1 > > sysctl net.inet.tcp.sendbuf_inc=3D16384 > > sysctl net.inet.tcp.recvbuf_inc=3D524288 > > sysctl net.inet.tcp.hostcache.expire=3D1 > > > > But, Nothing is happened. > > > > In the attachments, l_f is the linux packet capture and f_f is the > > freebsd packet capture. > > > > > > > > > > =E2=80=8B > > packet_capture.7z > > <https://docs.google.com/file/d/0By8sTL79ob4tTTBYQmhQT2Uxajg/edit?usp= =3Ddr > > ive_web> > > =E2=80=8B > > _______________________________________________ > > freebsd-net@freebsd.org mailing list > > http://lists.freebsd.org/mailman/listinfo/freebsd-net > > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAOENNMAB=1tZXKKRXvQ_NjHe8yv-NXh_yOrjwNp8r6gpPMg8Kg>