• Network Half Speed in one direction only


    adolfotregosa
    • Closed

    See screen shots please. I have reported this a while back. With 6.9.0, from unraid to client I have half speed. 

    What can I do to fix this ? 

     

    Edit: Forgot, network cards, both are realtek 8125

    ok_realtek.png

    problem_realtek.png




    User Feedback

    Recommended Comments

    I'm experiencing the same issue. 

    +-2.5Gbps in one direction and

    +-1Gbps in the other...

     

    An issue in the driver speed ability definition ? 

    Link to comment
    On 3/5/2021 at 11:41 PM, unraidnas said:

    I'm experiencing the same issue. 

    +-2.5Gbps in one direction and

    +-1Gbps in the other...

     

    An issue in the driver speed ability definition ? 

    Did you happen to re-test with verison 6.9.1 ? Is it fixed ?

    Link to comment

    Maybe it's an issue with the driver for your NIC. I have only a gigabit connection but it's pretty symmetrical. The read speed is actually a little faster than write when connected to an SSD cache-only user share (ie. going via the /mnt/user path and the FUSE driver).

    DiskSpeedTest.thumb.png.e54a1928a1445166e6670f8c135dcd60.png

    Link to comment
    Just now, John_M said:

    Maybe it's an issue with the driver for your NIC. I have only a gigabit connection but it's pretty symmetrical. The read speed is actually a little faster than write when connected to an SSD cache-only user share (ie. going via the /mnt/user path and the FUSE driver).

    DiskSpeedTest.thumb.png.e54a1928a1445166e6670f8c135dcd60.png

    it has to be something like that.. It really feels like it is stuck with Gigabit but only in one direction. It has to be something on the newer kernel used in 6.9.x. On my desktop I never had anything like this happen when using kernel 5.8, 5.9 5.10 and 5.11 so I dunno what gives with unraid..

    We can't upgrade from 6.8.3 until there is a fix for this. Getting half speed when reading from unraid defeats the purpose of having upgrade everything to 2.5Gbit lan lol

    Link to comment

    Most likely some issue with the Realtek driver, it's not the first time, you'll need to wait for an update, LT usually uses the latest driver available.

    Link to comment
    1 minute ago, JorgeB said:

    Most likely some issue with the Realtek driver, it's not the first time, you'll need to wait for an update, LT usually uses the latest driver available.

    before kernel 5.9, on my desktop, I needed to use realtek driver from their website to have wake in lan work correctly, something to do with 8125 hardware revisions but other than that speed was never an issue so this puzzles me. Hopefully LT give 5 min of their attention with this issue. It can only be the driver they are using

    Link to comment
    Quote

    lspci -v

     

     

    01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller
        Subsystem: Realtek Semiconductor Co., Ltd. Device 0123
        Flags: bus master, fast devsel, latency 0, IRQ 22, IOMMU group 10
        I/O ports at e000 [size=256]
        Memory at a1310000 (64-bit, non-prefetchable) [size=64K]
        Memory at a1320000 (64-bit, non-prefetchable) [size=16K]
        Expansion ROM at a1300000 [disabled] [size=64K]
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
        Capabilities: [70] Express Endpoint, MSI 01
        Capabilities: [b0] MSI-X: Enable+ Count=4 Masked-
        Capabilities: [d0] Vital Product Data
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [148] Virtual Channel
        Capabilities: [168] Device Serial Number 01-00-00-00-68-4c-e0-00
        Capabilities: [178] Alternative Routing-ID Interpretation (ARI)
        Capabilities: [188] Single Root I/O Virtualization (SR-IOV)
        Capabilities: [1c8] Transaction Processing Hints
        Capabilities: [254] Latency Tolerance Reporting
        Capabilities: [25c] L1 PM Substates
        Capabilities: [26c] Vendor Specific Information: ID=0002 Rev=4 Len=100 <?>
        Kernel driver in use: r8169
        Kernel modules: r8169, r8125

    lspci report the use of r8169 for me. Maybe a switch to r8125 would solve the issue.... to be continued.... 

    Link to comment
    Quote

    >> modinfo r8169 | grep 8125
    firmware:       rtl_nic/rtl8125b-2.fw
    firmware:       rtl_nic/rtl8125a-3.fw
    alias:          pci:v000010ECd00008125sv*sd*bc*sc*i*

    r8169 covers both 8125a and b 
    so that's not the issue... maybe we need an updated r8169

    Link to comment

    Performance decrease seems to be in the rx direction. r8169 per default has interrupt coalescing disabled what may contribute to this. You can enable it via ethtool or even better check the following:

     

    echo 20000 > /sys/class/net/<if>/gro_flush_timeout
    echo 1 > /sys/class/net/<if>/napi_defer_hard_irqs

     

    • Thanks 1
    • Upvote 1
    Link to comment

    For upcoming 6.9.2 we updated the realtek r8125 to version 9.005.01 (from 9.003.05).  Might fix this, but since Realtek, might not ;)

    • Thanks 1
    Link to comment
    19 minutes ago, limetech said:

    For upcoming 6.9.2 we updated the realtek r8125 to version 9.005.01 (from 9.003.05).  Might fix this, but since Realtek, might not ;)

    Hopefully.. 6.8.3 is fine so something changed in 6.9.x

     

    Link to comment

    Seems to be working fine at 2.5 GbE with r8125-9.003.04 and Ubuntu Mate 20.04 LTS. See:

    https://forum.odroid.com/viewtopic.php?t=39323

     

     

    For info here is my config on 6.9.1:

     

    >>lspci -k | grep -iA3 net
    01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller
        Subsystem: Realtek Semiconductor Co., Ltd. Device 0123
        Kernel driver in use: r8169
        Kernel modules: r8169, r8125

     

     

    >> modinfo r8169
    filename:       /lib/modules/5.10.21-Unraid/kernel/drivers/net/ethernet/realtek/r8169.ko.xz
    firmware:       rtl_nic/rtl8125b-2.fw
    firmware:       rtl_nic/rtl8125a-3.fw
    firmware:       rtl_nic/rtl8107e-2.fw
    firmware:       rtl_nic/rtl8107e-1.fw
    firmware:       rtl_nic/rtl8168fp-3.fw
    firmware:       rtl_nic/rtl8168h-2.fw
    firmware:       rtl_nic/rtl8168h-1.fw
    firmware:       rtl_nic/rtl8168g-3.fw
    firmware:       rtl_nic/rtl8168g-2.fw
    firmware:       rtl_nic/rtl8106e-2.fw
    firmware:       rtl_nic/rtl8106e-1.fw
    firmware:       rtl_nic/rtl8411-2.fw
    firmware:       rtl_nic/rtl8411-1.fw
    firmware:       rtl_nic/rtl8402-1.fw
    firmware:       rtl_nic/rtl8168f-2.fw
    firmware:       rtl_nic/rtl8168f-1.fw
    firmware:       rtl_nic/rtl8105e-1.fw
    firmware:       rtl_nic/rtl8168e-3.fw
    firmware:       rtl_nic/rtl8168e-2.fw
    firmware:       rtl_nic/rtl8168e-1.fw
    firmware:       rtl_nic/rtl8168d-2.fw
    firmware:       rtl_nic/rtl8168d-1.fw
    license:        GPL
    softdep:        pre: realtek
    description:    RealTek RTL-8169 Gigabit Ethernet driver
    author:         Realtek and the Linux r8169 crew <netdev@vger.kernel.org>
    alias:          pci:v000010ECd00003000sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00008125sv*sd*bc*sc*i*
    alias:          pci:v00000001d00008168sv*sd00002410bc*sc*i*
    alias:          pci:v00001737d00001032sv*sd00000024bc*sc*i*
    alias:          pci:v000016ECd00000116sv*sd*bc*sc*i*
    alias:          pci:v00001259d0000C107sv*sd*bc*sc*i*
    alias:          pci:v00001186d00004302sv*sd*bc*sc*i*
    alias:          pci:v00001186d00004300sv*sd*bc*sc*i*
    alias:          pci:v00001186d00004300sv00001186sd00004B10bc*sc*i*
    alias:          pci:v000010ECd00008169sv*sd*bc*sc*i*
    alias:          pci:v000010FFd00008168sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00008168sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00008167sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00008161sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00008136sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00008129sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00002600sv*sd*bc*sc*i*
    alias:          pci:v000010ECd00002502sv*sd*bc*sc*i*
    depends:
    retpoline:      Y
    intree:         Y
    name:           r8169
    vermagic:       5.10.21-Unraid SMP mod_unload

     

     

     

    >> ethtool  eth0
    Settings for eth0:
        Supported ports: [ TP     MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
                                2500baseT/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
                                2500baseT/Full
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Link partner advertised link modes:  100baseT/Half 100baseT/Full
                                             1000baseT/Full
                                             2500baseT/Full
        Link partner advertised pause frame use: Symmetric
        Link partner advertised auto-negotiation: Yes
        Link partner advertised FEC modes: Not reported
        Speed: 2500Mb/s
        Duplex: Full
        Auto-negotiation: on
        master-slave cfg: preferred slave
        master-slave status: slave
        Port: MII
        PHYAD: 0
        Transceiver: external
        Supports Wake-on: pumbg
        Wake-on: d
        Link detected: yes

     

     

    >> ethtool -i eth0
    driver: r8169
    version: 5.10.21-Unraid
    firmware-version: rtl8125a-3_0.0.1 08/24/19

     

    >>lspci -v | grep RTL
    01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller

     

    >> /sys/class/net/eth0/device/driver# ls -l

    ...

    module -> ../../../../module/r8169/

     

    >>lshw -C network
      *-network
           description: Ethernet interface
           product: RTL8125 2.5GbE Controller
           vendor: Realtek Semiconductor Co., Ltd.
           physical id: 0
           bus info: pci@0000:01:00.0
           logical name: eth0
           version: 00
           capacity: 1Gbit/s
           width: 64 bits
           clock: 33MHz
           capabilities: pm msi pciexpress msix vpd bus_master cap_list rom ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
           configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=5.10.21-Unraid duplex=full firmware=rtl8125a-3_0.0.1 08/24/19 latency=0 link=yes multicast=yes port=MII promiscuous=yes
          

     

     

    Link to comment

    Did anyone try 6.9.2 yet? Is if fixed?

     

    Thank you

     

    EDIT:

     

    oh c'mon.. not working. Back go 6.8.3, it works fine there. Are we stuck with 6.8.3 now?

     

    EDIT: can you downgrade driver to 9.002.02-NAPI of 6.8.3 ?

    Edited by adolfotregosa
    Link to comment

    Unraid 6.10-RC1 

     

    Not Fixed.... 

     

    EDIT: I did a clean 6.10-RC1 "install" and seams to be solved while transferring files. I might have been tricked because we dont yet have iperf3 ... i will slowly recreate my server and will keep an eye if the issue reappears. Fingers crossed

    Edited by adolfotregosa
    Link to comment
    On 4/1/2021 at 10:25 PM, hkall said:

    Performance decrease seems to be in the rx direction. r8169 per default has interrupt coalescing disabled what may contribute to this. You can enable it via ethtool or even better check the following:

     

    echo 20000 > /sys/class/net/<if>/gro_flush_timeout
    echo 1 > /sys/class/net/<if>/napi_defer_hard_irqs

     

    Thanks, that helped me to increase speed from 860MBits/sec to 930MBits/sec

    Link to comment


    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.
    Note: Your post will require moderator approval before it will be visible.

    Guest
    Add a comment...

    ×   Pasted as rich text.   Restore formatting

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.


  • Status Definitions

     

    Open = Under consideration.

     

    Solved = The issue has been resolved.

     

    Solved version = The issue has been resolved in the indicated release version.

     

    Closed = Feedback or opinion better posted on our forum for discussion. Also for reports we cannot reproduce or need more information. In this case just add a comment and we will review it again.

     

    Retest = Please retest in latest release.


    Priority Definitions

     

    Minor = Something not working correctly.

     

    Urgent = Server crash, data loss, or other showstopper.

     

    Annoyance = Doesn't affect functionality but should be fixed.

     

    Other = Announcement or other non-issue.