Re: reflections on the 3c905 v0.40 driver

Harald Koenig (koenig@tat.physik.uni-tuebingen.de)
Sun, 27 Apr 1997 16:03:59 +0200


--d4RhPHOinZpK8nIJ
Content-Type: text/plain; charset=us-ascii

On Apr 27, Chen Shiyuan wrote:

> Though I have no answer or comments on your reflections, I wondering if
> you can tell me what program did you use to check out the network transfer
> speed and where I can find it.

I've been asked several times now about 'ntest' or how I got those numbers,
so I'm sending it to the list now...

'ntest' actually is only a small shell script sending data from
/dev/zero to /dev/null using 'rsh'. the most simple form would be

rsh remotehost "cat > /dev/null" < /dev/zero
and
rsh remotehost "cat /dev/zero" > /dev/null

and then using e.g. 'netstat -c -i eth0'

ntest1 and ntest2 (attached below) use a slightly modified version
of 'buffer' which I've called 'mybuffer' to display transfer rates
continously. call these scripts with 2 or 3 arguments:

ntest2 from-host to-host
ntest2 from-host to-host 10M

where the 3rd argument gives the amount of data transfered between
two timing reports (default: 1M).

output looks like this:

39942K 38.1724 0.9530 1071470 1100278
41013K 39.1454 0.9729 1072855 1077729
42021K 40.0379 0.8925 1074719 1174828

where the numbers reported are:

1) sum if data transfered (in Kbytes, K=1024)
2) total time in seconds
3) time for the last "block" transfered (here 1MB)
4) mean tranfer rate for the whole run in bytes/sec ($1 / $2)
5) tranfer rate for the last block (blocksize / $3)

using this 'mybuffer' you can do lots of interesting timing and performance
tests getting dynamic data e.g.

mybyffer -S 10M -s 64k < /dev/zero > /dev/null

(and then varying process load or running programms which trash L1/L2 cache
and or main RAM) or test I/O rates or media transfer rates for a whole disk
(because for most modern disks using zone bit recording, metia transfer rate
isn't constant)

mybuffer -S 10M -s 64k < /dev/sda > /dev/null

for "good" networks with no problems at all, 'ntest2' seems to give
higher transfer rates while for network problems 'ntest1' usually
showes better rates. I didn't understand yet what's the important difference here.
maybe someone else can explain when playing with it...

fuer "gute" netze ohne probleme zeigt 'ntest2' die besseren werte an,
fuer "schlechte" netze ist oft 'ntest1' besser. darum, habe ich bislang
leider nicht verstanden :-(

Harald

--
All SCSI disks will from now on                     ___       _____
be required to send an email notice                0--,|    /OOOOOOO\
24 hours prior to complete hardware failure!      <_/  /  /OOOOOOOOOOO\
                                                    \  \/OOOOOOOOOOOOOOO\
                                                      \ OOOOOOOOOOOOOOOOO|//
Harald Koenig,                                         \/\/\/\/\/\/\/\/\/
Inst.f.Theoret.Astrophysik                              //  /     \\  \
koenig@tat.physik.uni-tuebingen.de                     ^^^^^       ^^^^^

--d4RhPHOinZpK8nIJ Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=ntest2

#!/bin/bash

if [ -z "$1" -o -z "$2" ] ; then echo "" echo "usage: $0 from_host to_host [bsize]" echo "" exit fi

bsize=${3:-1M}

rsh -n $2 " rsh -n $1 'dd bs=63k if=/dev/zero' | \ sh -c ' \ if [ -x /usr/local/bin/mybuffer ] ; then \ /usr/local/bin/mybuffer -S $bsize -s 63k ; \ elif [ -x /usr/local/bin/buffer ] ; then \ /usr/local/bin/buffer -S $bsize -s 63k ; \ else \ buffer -S $bsize -s 63k ; \ fi > /dev/null ' "

--d4RhPHOinZpK8nIJ Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=ntest1

#!/bin/bash

if [ -z "$1" -o -z "$2" ] ; then echo "" echo "usage: $0 from_host to_host [bsize]" echo "" exit fi

bsize=${3:-1M}

rsh -n $1 " sh -c ' \ if [ -x /usr/local/bin/mybuffer ] ; then \ /usr/local/bin/mybuffer -S $bsize -s 63k ; \ elif [ -x /usr/local/bin/buffer ] ; then \ /usr/local/bin/buffer -S $bsize -s 63k ; \ else \ buffer -S $bsize -s 63k ; \ fi < /dev/zero ' | \ rsh $2 'dd bs=63k of=/dev/null' "

--d4RhPHOinZpK8nIJ Content-Type: application/x-gunzip Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="mybuffer.gz"

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

--d4RhPHOinZpK8nIJ--