Date: Fri, 19 Feb 1999 15:09:11 -0500 From: Chris Williams <psion@geekspace.com> To: freebsd-net@freebsd.org Subject: TCP packet sizes and window w/X through SSH Message-ID: <36CDC4E7.CC332C19@geekspace.com>
next in thread | raw e-mail | index | archive | help
Because I am forced to work from behind a proxy, I am using a slightly contorted setup to get X windows from my unix boxen, this is what I'm doing: I have an X server running on my NT PC, behind the proxy. I use an NT version of SSH to connect, through Microsoft's Winsock Proxy service, to a FreeBSD machine on the outside world. I then redirect a port (6010) on the box back to my local NT box and it's X server. Then I telnet from the FreeBSD box to a Solaris box, start up X applications there pointing back at display 10 on the FreeBSD box, and they magically pop up on my local workstation, without having to make any incoming connections through the proxy (which is not allowed). Needless to say, this is a little sluggish (that is, aside from being stupid ;)). I have been trying to identify exactly _why_ it's quite as slow as it is, and it doesn't seem to be the CPU of any of the machine involved, so I'm working on the assumption it's a network issue. Using the tcptrace tool from the ports collection, I took a look at the TCP connections going on, and found two interesting things: 1) During peak data transmission between the two unix boxes, both sides frequently hit the maximum window size before getting an ACK, and then have to wait for the ACK to send more. Since there are no retransmissions occuring (woo!), it would seem that an increase in window size should boost performance. Is there any reasonable way to do this in FreeBSD? I looked through sysctl -a and didn't see anything, 'man tcp' isn't helpful...Is it an option I have to set before compling the kernel? Or what? 2) The SSH packets going from the BSD box to the proxy server are almost always less than ~800 bytes. This seems strange since the Ethernet MTU is 1500, and most of the packets coming from the Sun box to the BSD box to be relayed through SSH are in fact ~1500 bytes. Why is SSH chopping the packets up like this? Is there a good reason for it, and if not, how can it be fixed/changed? Although this doesn't appear to be slowing things down as much as (1), it does put extra load on our proxy (from watching perfmon against the proxy while I do varios things, it is very clear that cpu/io load is much more closely coupled with packets/sec than bytes/sec -- which isn't at all surprising). Any suggestions on either point would be much appreciated.. 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?36CDC4E7.CC332C19>