network receiving performance bad since 2.6.7-bk15

From: Klaus Dittrich
Date: Fri Jul 16 2004 - 03:32:55 EST


This day I noticed a performance degradation when copying
files from hpux to linux-2.6.8-rc1.

There is no performance degradation when between linux kernels
if linux is the sending the files, only when receiving.

I switched back to an older kernel (2.6.7-bk13) and with
this kernel copying (in both directions) is as fast as usual.

I followed kernel-versions upwards and found that receiving network
performance goes bad starting with linux-2.6.7-bk15.

I argue ChangeSet@xxxxxx "TCP acts like it is always out of memory"
is causing this but I'm not sure.

Hardware:
HP-B1000 (1 x 300MHz-P8200)/hpux-10.20
Tyan-2665-Box (2 x 2.4GHz-Xeon, E1000-NIC)/linux-2.6.8-rc1

Below are times measured using nc (netcat) and sftp.

The results are similar, copying files from hpux to linux-2.6.rc1
is very very slow, copying files from hpux to linux-2.6-bk13 is as
fast as one can expect.

Copying files from linux to hpux is fast and independent of the
kernel version used.

The commands used to measure times with nc are
send: (time cat 100k ) | nc -n 192.168.168.32 9000
recv: nc -l -p 9000 -v -w 20 > file

The files are generated with dd reading from /dev/urandom.

Copy from hpux to linux-2.6.8-rc1
=================================
100k real 0m0.01s
200k real 0m0.02s
300k real 0m0.03s
400k real 0m0.04s
500k real 0m0.05s
600k real 0m0.06s
700k real 0m20.68s
800k real 1m11.22s

Copy from hpux to linux-2.6.7-bk13
==================================
100k real 0m0.01s
200k real 0m0.02s
300k real 0m0.03s
400k real 0m0.04s
500k real 0m0.05s
600k real 0m0.06s
600k real 0m0.07s
800k real 0m0.08s
900k real 0m0.09s

No difference if linux is sending the files.
============================================

Copy from linux-2.6.7-bk13 to hpux
900k 0.14s real (= 6428 kB/s, the hpux-box isn't faster)

Copy from linux-2.6.8-rc1 to hpux
900k 0.14s real (= 6428 kB/s, the hpux-box isn't faster)


Same, not so exact but more easy measured by using scp ..

Command used on linux: scp hpux:/tmp/files/* /tmp/files
Command used on hpux: scp /tmp/files/* linux:/tmp/files

Copy the files from hpux to linux-2.6.7-bk13
============================================

Command issued from linux.
100k 100% 100KB 100.0KB/s 00:00
200k 100% 200KB 200.0KB/s 00:00
300k 100% 300KB 300.0KB/s 00:00
400k 100% 400KB 400.0KB/s 00:00
500k 100% 500KB 500.0KB/s 00:00
600k 100% 600KB 600.0KB/s 00:01
700k 100% 700KB 700.0KB/s 00:00
800k 100% 800KB 800.0KB/s 00:00
900k 100% 900KB 900.0KB/s 00:00

Command issued from hpux.
100k 100% 100KB 100.0KB/s 00:00
200k 100% 200KB 200.0KB/s 00:00
300k 100% 300KB 300.0KB/s 00:00
400k 100% 400KB 400.0KB/s 00:00
500k 100% 500KB 500.0KB/s 00:00
600k 100% 600KB 600.0KB/s 00:00
700k 100% 700KB 700.0KB/s 00:00
800k 100% 800KB 800.0KB/s 00:00
900k 100% 900KB 900.0KB/s 00:01


Copy the files from hpux to linux-2.6.7-rc1
===========================================

Command issued from linux.
100k 100% 100KB 33.3KB/s 00:03
200k 100% 200KB 33.3KB/s 00:06
300k 100% 300KB 37.5KB/s 00:08
400k 100% 400KB 36.4KB/s 00:11
500k 100% 500KB 35.7KB/s 00:14
600k 100% 600KB 37.5KB/s 00:16
700k 100% 700KB 35.0KB/s 00:20
800k 100% 800KB 36.4KB/s 00:22
900k 100% 900KB 36.0KB/s 00:25

Command issued from hpux.
100k 100% 100KB 100.0KB/s 00:00
200k 100% 200KB 66.7KB/s 00:03
300k 100% 300KB 60.0KB/s 00:05
400k 100% 400KB 44.4KB/s 00:09
500k 100% 500KB 41.7KB/s 00:12
600k 100% 600KB 46.2KB/s 00:13
700k 100% 700KB 43.8KB/s 00:16
800k 100% 800KB 42.1KB/s 00:19
900k 100% 900KB 39.1KB/s 00:23

Can someone else using hpux see this too?
Can someone else see this with linux to linux or anyOS to linux copies too?

--
Klaus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/