I have slow network transfer speed (26 MB/s). The beginning of the transfer started at 120 MB/s and dropped down every second.
I am transferring a 350 GB file from an E-Sata (7200rpm) drive mounted on Windows 7 to a Ubuntu Samba share (on esxi). The samba share is mapped to a drive letter on Win 7 by IP address.
ethtool eth0 shows:
Settings for eth0:
Supported ports: TP
Supported link modes: 10/100 half/full, 1000/full
Supports auto-negotiation: Yes
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000MB/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: d
Wake-on: d
Current Message level: 7
link detected: yes
The hard drive almost certainly only supports ~26MBps. Even the latest round of SATA drives can barely pull double that number (under ideal conditions).
That beginning speed of 120MBps isn't even really possible; 1000Mb / 8 * 80% = ~100MBps (realistic max). Windows caching is playing with the numbers, hence the high initial speed and after a while the number settles to the sustainable throughput.
Just try to test disk for wtite speed with dd in linux. and then check your network with iperf. and you ll know where is a bottle neck.
For everyone to know: on Ubuntu 20.04.1 and ARM64 (where this does comply with standard x64 system) with Samba I had transfer both directions at about 115 MB/s, which means that with Gigabit Ethernet you can achieve much higher speeds than mentioned in the question - using SSD drives, memory or data produced from
/dev/zero
.Problem can be: