Hey there,
first of all I’m very new to Linux so my knowledge is very little and my english isn’t the best, so I hope you can excuse some mistakes I eventually make.
I just bought the new Asrock DeskMini A300 which has a RTL8111H installed and I’m using it with Tumbleweed.
After setting up Samba I wanted to copy some files from my Windows 7 PC to the DeskMini but the network speed was very slow. I made a direct connection with a crossover cable, both sides sync to 1000Mbit/s and I even get ~100MB/s at the beginning but then the speed drops down to ~30-50MB/s. And this was tested with one large file.
After some research I now know that the RTL8111H doesn’t work very well on Linux and sudo ethtool -i enp51s0 told me the loaded driver was r8169 which comes with the main kernel.
Then I searched for a better driver and I found this page: https://software.opensuse.org/package/r8168-kmp-default
It tells me, that the r8168 also applys to the RTL8111H. So I did the 1-Click-Installation of the Sauerland package and when I now do sudo ethtool -i enp51s0 it returns:
driver: r8168
version: 8.046.00-NAPI
firmware-version:
expansion-rom-version:
bus-info: 0000:33:00.0
supports-statistics: yes
supports-test: no
supports-eeprom-access: no
supports-register-dump: yes
supports-priv-flags: no
So it has loaded the new driver but the speeds are the same.
[FONT=tahoma]sudo ethtool enp51s0 returns the following:
Settings for enp51s0:
Supported ports: TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Link partner advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Link partner advertised pause frame use: Symmetric Receive-only
Link partner advertised auto-negotiation: Yes
Link partner advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000033 (51)
drv probe ifdown ifup
Link detected: yes
Am I doing something wrong? Am I missing something? Would be really nice if someone could help me to get the gigabit network working.
An old-school fix that sometimes works is to turn off auto-negotiation and set full duplex for whatever speed you want manually.
Of course,
You have to have a direct connection or through devices that support the speed you want, any slow devices between source and target like routers and switches will restrict speeds.
so today i tried at first turning off auto-negotiation and set the speed manually to 1000Mbit/s.
So if you look at this screenshot i made: https://abload.de/img/network1w9kyn.jpg you can see my network speed with auto-negotiation “on” on the left side (don’t mind the time passed, I canceled the job) and with auto-negotiation “off” on the right side. Looks pretty good at the first few second but then the speed drops again.
Then I changed auto-neg back to “on”, deinstalled the old driver changed the repo, installed the new ones. Median speed was a bit better (~70MB/s). As you can see in the next screenshot the traffic looks like a hacksaw: https://abload.de/img/network2sekti.jpg
Then I turned auto-neg back to off and set my speed manually to 1000Mbit/s again. And as you can see in this last screenshot I made (https://abload.de/img/network3vnj2o.jpg) it looks a bit better but somethings still not quite right because of this speed drops.
Yesterday I had my DeskMini connected to my router with a different cable and it didn’t change anything. So today I connected it directly to my PC again.
My current settings are this:
athlon@athlon:/> sudo ethtool -i enp51s0
[sudo] Passwort für root:
driver: r8168
version: 8.046.00-NAPI
firmware-version:
expansion-rom-version:
bus-info: 0000:33:00.0
supports-statistics: yes
supports-test: no
supports-eeprom-access: no
supports-register-dump: yes
supports-priv-flags: no
athlon@athlon:/> sudo ethtool enp51s0
Settings for enp51s0:
Supported ports: TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: Symmetric Receive-only
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: Not reported
Advertised pause frame use: Symmetric Receive-only
Advertised auto-negotiation: No
Advertised FEC modes: Not reported
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: off
MDI-X: Unknown
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000033 (51)
drv probe ifdown ifup
Link detected: yes
athlon@athlon:/> zypper se -si r8168
Repository-Daten werden geladen...
Installierte Pakete werden gelesen...
S | Name | Typ | Version | Arch | Repository
---+-----------------------+-------+------------------------+--------+------------------------
i | r8168-blacklist-r8169 | Paket | 8.046.00-62.1 | x86_64 | home:Sauerland:hardware
i+ | r8168-kmp-default | Paket | 8.046.00_k5.0.1_1-62.1 | x86_64 | home:Sauerland:hardware
athlon@athlon:/> zypper lr -d
# | Alias | Name | Aktiviert | GPG-Überprüfung | Aktualisierung | Priorität | Typ | URI | Dienst
--+-------------------------------------+---------------------------------+-----------+-----------------+----------------+-----------+--------+------------------------------------------------------------------------------------------+-------
1 | download.opensuse.org-non-oss | Haupt-Repository (NON-OSS) | Ja | (r ) Ja | Ja | 99 | rpm-md | http://download.opensuse.org/tumbleweed/repo/non-oss/ |
2 | download.opensuse.org-oss | Haupt-Repository (OSS) | Ja | (r ) Ja | Ja | 99 | rpm-md | http://download.opensuse.org/tumbleweed/repo/oss/ |
3 | download.opensuse.org-tumbleweed | Hauptaktualisierungs-Repository | Ja | (r ) Ja | Ja | 99 | rpm-md | http://download.opensuse.org/update/tumbleweed/ |
4 | http-download.opensuse.org-8a381727 | home:Sauerland:hardware | Ja | (r ) Ja | Ja | 99 | rpm-md | http://download.opensuse.org/repositories/home:/Sauerland:/hardware/openSUSE_Tumbleweed/ |
5 | http-download.opensuse.org-d51e1b46 | Kernel:stable | Ja | (r ) Ja | Ja | 99 | rpm-md | http://download.opensuse.org/repositories/Kernel:/stable/standard/ |
6 | repo-debug | openSUSE-Tumbleweed-Debug | Nein | ---- | ---- | 99 | NONE | http://download.opensuse.org/debug/tumbleweed/repo/oss/ |
7 | repo-source | openSUSE-Tumbleweed-Source | Nein | ---- | ---- | 99 | NONE | http://download.opensuse.org/source/tumbleweed/repo/oss/ |
8 | teamviewer | TeamViewer - x86_64 | Ja | (r ) Ja | Nein | 99 | rpm-md | http://linux.teamviewer.com/yum/stable/main/binary-x86_64/
today i did some more testing. I downloaded a larger file of 4,4GB to test with. Then I remembered that I got a NVME SSD and that I could test the bandwitdh on this one instead of the HDDs. It looked very stable. Then I copied that file on a HDD and got 2 drops. Then I did this again and both copy jobs looked very well.
I also did a screenshot of my network monitor: https://abload.de/img/network4cjjut.jpg
I then copied some more but smaller files and it looked much better copying to the SSD than to the HDD. So I guess from now on it’s either the S-ATA interface or even the HDDs that are bottlenecking.
So I’m going to stick with the home:Sauerland:hardware repository and auto-negotiation turned off.