[4077] in linux-net channel archive
Re: Question on performance
daemon@ATHENA.MIT.EDU (Ingo Molnar)
Sat Aug 17 08:00:20 1996
Date: Sat, 17 Aug 1996 11:40:19 +0200 (MET DST)
From: Ingo Molnar <mingo@pc5829.hil.siemens.at>
To: Doug Ledford <dledford@dialnet.net>
cc: Jon Lewis <jlewis@inorganic5.fdt.net>, ATPlack <ATPlack@scj.com>,
linux-net@vger.rutgers.edu
In-Reply-To: <Pine.LNX.3.91.960816075054.12845A-100000@news.dialnet.net>
On Fri, 16 Aug 1996, Doug Ledford wrote:
> I ran a few tests tonight just for hte fun of it. On an ethernet segment
> that carries a typical 10-30% sustained usage from the news server,
> transferring an ftp file from the news server to the shell server. File
> is 2.5MB in size, both servers are Pent100, plenty RAM, Adaptec 2940, SMC
> EtherPower 10/100 NICs. Highest transfer rate was 1000KBytes per second,
> lowest was an odd man out at 600KBytes/s. Second lowest was
> 850KBytes/s. Typical was from 900 to 980 KBytes/s, with a total of three
> tries reaching the 1000KBytes/s mark. Of course, after the first
> attempt, the file was cached, so it doesn't really measure disk speed,
> but then again, the very first attempt came in at 900KBytes/s with the
> 600KBytes/s attempt falling somewhere around 5 or 6 (can't remember now).
An easy way to measure Ethernet throughput, without caching and other
effects:
[instead of 'otherhost', use a host where you can rsh to]
echo 10000*4096 / `time -o /tmp/tmptmp rsh otherhost dd if=/dev/zero
bs=4096 count=10000 >/dev/null 2>&1 ; cat /tmp/tmptmp | grep elapsed |
cut -d: -f2- | cut -de -f1` | bc
[this is a one-line shell command] The test takes about 35 seconds on a
1MByte/sec network, and outputs the throughput in bytes/second.
There is no file caching effect [dd uses /dev/zero and /dev/null], and no
TCP overhead [rsh uses UDP].
Your TCP throughput shouldnt differ significantly from this value. If yes,
then you have a TCP problem. If this value is lower than 10MBit, then you
have an Ethernet problem (software or hardware problem).
-- mingo