Skip site navigation (1)Skip section navigation (2)
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>