[comp.protocols.tcp-ip] TCP Throughput over E-net

eddjp@edi386.UUCP ( Dewey Paciaffi ) (06/27/91)

I have a question regarding TCP throughput on Ethernet, and what affects
it on a local network. I have 3 systems, two Sparc2s and an RS6000. I'll
call them A, B, and C :

	A - Newly installed Sparc, SunOs 4.1.1
	B - 6 month old Production Sparc 4.1.1
	C - Newly installed RS/6000 AIX 3.1.5

When I transfer a 1.7 MB binary file between systems, the results are
inconsistent between systems when I change the direction of the data flow.
There is also an inconsistency from machine to machine. The throughputs are:

	A -> B     850 KB
	A -> C     550 KB
	B -> A     270 KB
	B -> C     500 KB
	C -> A     200 KB
	C -> B     270 KB

All machines are idle and I was the only user during the tests. I used
rlogin to get from machine to machine, and used ftp binary transfers.

Could the flow direction impact the throughput this greatly? I would 
normally attribute this to hardware and/or TCP implementation differences,
but two of the machines are identical, and they all transfer 500 KB or
greater to at least one other machine in at least one direction.

Of course, I'd like them all to transfer at 850 KB to all machines in all
directions :-). Is there something I've missed or something I should look
at in my set-up here ?

Thanks for any insight...
-- 
Dewey Paciaffi           ...!uunet!edi386!eddjp

thad@public.BTR.COM (Thaddeus P. Floryan) (06/29/91)

In article <167@edi386.UUCP> eddjp@edi386.UUCP ( Dewey Paciaffi ) writes:
>I have a question regarding TCP throughput on Ethernet, and what affects
>it on a local network. I have 3 systems, two Sparc2s and an RS6000. I'll
>call them A, B, and C :
>[...]
>Could the flow direction impact the throughput this greatly? I would 
>normally attribute this to hardware and/or TCP implementation differences,
>but two of the machines are identical, and they all transfer 500 KB or
>greater to at least one other machine in at least one direction.
>
>Of course, I'd like them all to transfer at 850 KB to all machines in all
>directions :-). Is there something I've missed or something I should look
>at in my set-up here ?
>[...]

Omigosh!  :-)  I'd be happy to consistently get 100KBytes/S between systems
on my networks.

One observation I'd like to share is that file fragmentation and location of
contiguous free blocks dramatically affects the point-to-point transfer stats.

Remember: the sending system has to READ the file(s) from disk and the receiver
has to slurp the net and WRITE to its disk(s).  The last time I checked, I
recall the transfer timing starts just-prior to opening the source file(s) and
terminates just-after closing the destination file(s).

I've noticed as much as a 4:1 variation between "identical" systems due solely
to disk fragmentation (per my tests).

Also, the use of "trailers" seems to have an impact; do an "ifconfig X" where
<X> might be "en0" (or whatever's appropriate for your system(s)) and see if
"NO TRAILERS" is displayed.  All docs I've seen indicate the use of "TRAILERS"
(which typically is not displayed by ifconfig) reduces the amount of memory-
shuffling.

Thad Floryan [ thad@btr.com (OR) {decwrl, mips, fernwood}!btr!thad ]