- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - HP-UX
- >
- performance: tcp window size not effective
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Forums
Discussions
Discussions
Discussions
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-29-2007 12:45 AM
09-29-2007 12:45 AM
performance: tcp window size not effective
I have a ftp transfer (4 GB of gzipped data) between 2 HP-UX boxes (IA 64 11iv2 and PA 11i) distant by 270 ms over a DS3 WAN.
Transfers do not go over 2Mb/s even after raising tcp window (recv and xmit) size to 157286 on both sides . (ndd -set /dev/tcp tcp_xmit_hiwater_def and tcp_recv_hiwater_def
When tcpdumping the connection I see a 39321 window size . Both machines are connected to the LAN with Gb fiber cards.
Ftpd is HP-Ux 11iv2 wu-ftp 2.6.1 (PHNE 34036).
Any idea ?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-29-2007 05:18 AM
09-29-2007 05:18 AM
Re: performance: tcp window size not effective
Still limited transfer rate to max 2Mb/s even if I have found out the "window scale" parameter to go over the 16 bits limit of the windows size TCP option.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-29-2007 01:02 PM
09-29-2007 01:02 PM
Re: performance: tcp window size not effective
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-29-2007 09:15 PM
09-29-2007 09:15 PM
Re: performance: tcp window size not effective
1073725440.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-01-2007 05:16 AM
10-01-2007 05:16 AM
Re: performance: tcp window size not effective
Where Weff is the effective window size, which will be the lesser of:
1) the remote's advertised window (min of tcp_recv_hiwater_def and SO_RCVBUF)
2) the quantity of data sent at any one time by the sending application (the min of app's send() calls before waiting for remote response, the SO_SNDBUF size and tcp_xmit_hiwater_def)
3) the sending TCP's calculated congestion window.
So, one thing to check is whether there is any TCP retransmissions, which will keep the calculated congestion window (aka cwnd) low.
However, since you mention FTP, that brings us to something in the areas 1 and 2 - FTP under HP-UX will (IIRC) make an explicit setsockopt() call to set the SO_SNDBUF and SO_RCVBUF to values - the default IIRC is 56KB, and that can be altered by the -B option to the ftp client and ftpd daemon. To be effective (per one and two above) it has to be set at both ends.
This explicit setsockopt() goes back a very long way to when HP-UX window defaults were less than 32KB and we needed more for good FTP performance. Since then I've also been asking (back in the mists of time, I've not been repeating it) for a change in default from 56KB to either something much larger (256 KB) or to "0" which would mean "accept the system default."
I suspect that neither of those have yet happened in the, sadly and frankly, years since the requests were made. If this is the case I would encourage you to excercise your support contract and file a _defect_ against FTP because the current default is a severe performance degregadation over where performance should be over WANs.
If you want to experiment with values to use to verify your math, I would suggest netperf TCP_STREAM tests - you can control the socket buffers explicitly there per the manual which you can find at:
http://www.netperf.org/svn/netperf2/tags/netperf-2.4.3/doc/netperf.html
for the current release of netperf2.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-03-2007 06:39 AM
10-03-2007 06:39 AM
Re: performance: tcp window size not effective
Thanks for the information.
I've tried with the -B 256 (expressed in 1024 bytes units) on both client and server (thru inetd), but the result remains the same.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-03-2007 07:17 AM
10-03-2007 07:17 AM
Re: performance: tcp window size not effective
How about if you run a netperf TCP_STREAM or TCP_MAERTS test between the two systems? http://www.netperf.org/
netperf -H
or something along those lines.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-03-2007 09:55 AM
10-03-2007 09:55 AM
Re: performance: tcp window size not effective
I couldn't netperf as the thing didn't want to compile on the 11.00 machine.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-03-2007 10:55 AM
10-03-2007 10:55 AM
Re: performance: tcp window size not effective
If both the SYN and the SYN|ACK had a Wscale of 4 - what was the value in the window field again? One takes that value and "left shifts" it wscale times to get the "real" window size - in this case it would be a left-shift of four, or multiply by 16.
One other thing you can do that will only require netperf running on the 11iv2 system and not the 11.0 system is make sure that the 11.0 system has both chargen and discard services enabled (netstat -a | grep -e discard -e chargen) You can then from the 11iv2 system run netperf commands along the lines of:
netperf -H <11.0sys> -t TCP_STREAM -N -- -p,discard
to send data to the discard service on the remote or:
netperf -H <11.0sys> -t TCP_MAERTS -N -- -p,chargen
to have the remote send data to netperf. Only the "local" test-specific options will be effective which means we have to hope that the ndd settings on the 11.0 system actually "take."
For painful completeness, one can also use the echo service for a TCP_RR test:
netperf -H <11.0sys> -t TCP_RR -N -- -p,echo
Here are some examples:
raj@tardy:~/netperf2_trunk$ src/netperf -N -H tardy.cup.hp.com -- -p,discard
TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to tardy.cup.hp.com (15.244.56.217) port 9 AF_INET : no control
Recv Send Send
Socket Socket Message Elapsed
Size Size Size Time Throughput
bytes bytes bytes secs. 10^6bits/sec
0 16384 16384 10.02 49.48
raj@tardy:~/netperf2_trunk$ src/netperf -N -H tardy.cup.hp.com -t TCP_MAERTS -- -p,chargen
TCP MAERTS TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to tardy.cup.hp.com (15.244.56.217) port 19 AF_INET : no control
Recv Send Send
Socket Socket Message Elapsed
Size Size Size Time Throughput
bytes bytes bytes secs. 10^6bits/sec
87380 0 -1 10.01 78.24
raj@tardy:~/netperf2_trunk$ src/netperf -N -H tardy.cup.hp.com -t TCP_RR -- -p,echo
TCP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to tardy.cup.hp.com (15.244.56.217) port 7 AF_INET : no control
Local /Remote
Socket Size Request Resp. Elapsed Trans.
Send Recv Size Size Time Rate
bytes Bytes bytes bytes secs. per sec
16384 87380 1 1 10.01 710.94
0 0
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-03-2007 11:09 AM
10-03-2007 11:09 AM
Re: performance: tcp window size not effective
Only the Syn had a wscale of * 4 (65536 Window), the synack had 0 with a "default??" 32768 window.
I'll try to netperf chargen or discard. I guess it'll generate some load between my 2 machines (haven't read the doc yet).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-03-2007 11:30 AM
10-03-2007 11:30 AM
Re: performance: tcp window size not effective
On the 11.0 system see if there are any ndd parms relating to window scaling and triple-check that the tcp_xmit_hiwater_def and tcp_recv_hiwater_def settings "took" that the wscale was 0 and the window field 32768 suggests it did not take - perhaps a reboot has reset things if the settings weren't put into /etc/rc.config.d/nddconf
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-03-2007 12:02 PM
10-03-2007 12:02 PM
Re: performance: tcp window size not effective
The server (11iv2 machine) (wscale 0) looks well configured according to the ndd -get output. Unfortunately this machine cannot be rebooted, it runs some service guard packages that cannot be switched to another node as is.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-03-2007 12:11 PM
10-03-2007 12:11 PM
Re: performance: tcp window size not effective
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-03-2007 12:17 PM
10-03-2007 12:17 PM
Re: performance: tcp window size not effective
But if somehow ndd was reading from some structure the right values ignored due to some sort of bug by the TCP layer (what looks like being happening in my case)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-03-2007 12:27 PM
10-03-2007 12:27 PM
Re: performance: tcp window size not effective
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-03-2007 10:46 PM
10-03-2007 10:46 PM
Re: performance: tcp window size not effective
After a reboot (changes put in nddconf), things change as I get the right wscale value (4). tried it on a test 11iv2 machine and on a 11i machine.
The -B 256 option doesn't seem to have the desired effect as my transfer rates get worse when set.
Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-04-2007 05:21 AM
10-04-2007 05:21 AM
Re: performance: tcp window size not effective
the tcp connection exists by the time ftpd is started, so the ability of the ftpd's -B option to increase the window is limited if the inetd didn't create the listen endpoint with a "large enough" socket buffer setting, and i'm not sure if inetd has options for that or not, which would leave it at the mercy of the ndd settings, which of course as mentioned before won't be applied until the listen endpoints are re-created.
might be worthwhile seeing if the ftpd can be run as a standalone daemon.
the same issues will hold for chargen, discard and echo services...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-04-2007 12:10 PM
10-04-2007 12:10 PM
Re: performance: tcp window size not effective
By the way inetd accepts ftpd -B XXX and everytime it was set my transfers were slower.
Netperfing chargen and discard didn't work (I got error messages saying it didn't recieve no response).
I think i'm gonna give up untill they at the remote site to change this oldy PARISC 11.00 machine
Thanks for the help
Brem
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-04-2007 12:16 PM
10-04-2007 12:16 PM
Re: performance: tcp window size not effective
I'd still like to see the compilation or configuration errors from trying to build netperf2 on 11.00 if you have the cycles. Sadly I have no 11.0 systems at my disposal these days. Coblers children and all that I suppose... rick.jones2@hp.com
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-06-2007 03:17 AM
10-06-2007 03:17 AM
Re: performance: tcp window size not effective
-N option didn't work with the 2.4.2.
I could reach 8Mb/s by using rcp instead of ftp which is much better (window size 315 k).
Did some captures during ftp transfers, I noticed that on the ftp (tcp/21) communication the Window scale options are set on both side, but they're not on the ftp-data socket (tcp/20) :what makes me think this is the reason that makes FTP slower.
I'll definitely switch to rcp
Thanks for your help.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-08-2007 05:11 AM
10-08-2007 05:11 AM