Recent MAC improvements: Test Results
rapier at psc.edu
Wed Jun 13 06:50:47 EST 2007
I did some more tests on this. I used the June 13 (sic) snapshot.
First though I determined what the base rate was. Using nc I was able to
transfer a 2GB file at ~51 MB/s (thats an average of 20 runs). Using
Iperf I was able to establish the network baseline at ~115MB/s. I was
able to get this even using a 32KB receive window. So at this point I'm
thinking that neither Disk I/O nor the TCP stack are going to be
I reran some of the tests by catting a 2GB file over ssh. This time I
used the arcfour256 cipher. The results were much more clear.
MAC 38.9MB/s (0:52.6)
STD 31.0MB/s (1:06.0)
UMAC 38.3MB/s (0:52.7)
HPN 34.1MB/s (1:00.6)
Time reported the following for user time, 40.8, 37.6, 38.2, and 36.9
respectively. Sys time was 7.23, 8.2, 7.7, and 8.6 again respectively.
I was surprised that UMAC didn't actually produce a performance boost
though. I might have screwed something up but I did verify that the
umac-64 hash was being used.
I'm going to rerun all of my previous tests with the latest snapshot and
I'll be running them in parallel as well - to see what impact a heavy
load might have.
I also noticed that the default buffer size has been increased pretty
drastically (to 2MB up from 128KB). This should be welcome news to a
good number of users. The window adjust message timing has been changed
as well (from when 50% of buffer consumed to once every 3 packets). I
was wondering what is the expected impact of making that change?
Damien Miller wrote:
> On Mon, 11 Jun 2007, Chris Rapier wrote:
>> OpenSSH 4.6p1
>> 1Gb/s 1.12ms RTT
>> Linux 2.6.18-web100 to Linux 2.6.16-web100
>> Autotuning enabled. 2.4Ghz Xeon SMP
>> 20 iterations of 2GB scp transfer. Disk to /dev/null
>> scp -caes256-cbc -P 42222 ~/2gb rapier at delta:/dev/null
>> MAC - avg 25.0MB/s (1:22)
>> STD - avg 24.0MB/s (1:25)
> You will see the difference more clearly if you use a faster cipher,
> like aes128-cbc, aes128-ctr or arcfour256.
> openssh-unix-dev mailing list
> openssh-unix-dev at mindrot.org
More information about the openssh-unix-dev