OpenWRT slow upload when using "2500 duplex full autoneg on"

Hello All,

I'm strugling a bit using my 2.5gb's ports on the zyxel t-56 (EX5601).

I got a 4gb fiber connection at home however for some reason my upload speed is getting halved when autoneg selects 2500.

image

If i do:

ethtool -s lan1 speed 1000 duplex full autoneg on
ethtool -s eth1 speed 1000 duplex full autoneg on

I get 1gbs/up and 1gbs/down without any issue.

I can also plug in the cable in the 1gb's ports and also then i get 1/1gbs up and download.

Update: Has nothing to with openwrt, if i connect other devices to the Arcadyan ERV67AX348B using 2.5gbs they have the same issue. Setting them to 1000 solves it again.

Best Regards,

{
        "kernel": "6.6.49",
        "hostname": "OpenWrt",
        "system": "ARMv8 Processor rev 4",
        "model": "Zyxel EX5601-T0 ubootmod",
        "board_name": "zyxel,ex5601-t0-ubootmod",
        "rootfs_type": "squashfs",
        "release": {
                "distribution": "OpenWrt",
                "version": "SNAPSHOT",
                "revision": "r27317-8e6543fae5",
                "target": "mediatek/filogic",
                "description": "OpenWrt SNAPSHOT r27317-8e6543fae5"
        }
}
WAN:

Autonegotiate:  on
RX:             off
TX:             off
RX negotiated:  on
TX negotiated:  on
LAN1:

Autonegotiate:  on
RX:             off
TX:             off
RX negotiated:  on
TX negotiated:  on
ethtool --show-eee eth1

Cannot get EEE settings: Not supported

EEE Settings for lan1:
        EEE status: enabled - inactive
        Tx LPI: 30 (us)
        Supported EEE link modes:  100baseT/Full
                                   1000baseT/Full
        Advertised EEE link modes:  100baseT/Full
                                    1000baseT/Full
        Link partner advertised EEE link modes:  Not reported

Please add

ubus call system board
ethtool wan
ethtool -a wan
ethtool --show-eee wan
1 Like

Which openwrt devices are those, the Zyxel T-56 isn't supported here ...

1 Like

It is, it's named EX5601.

I added the info!

Sure, when you use the correct name, it is.

Next time, use Banana instead or T56, both are equally unsupported.

Sorry

ethtool wan

to get link partnet information. No interest in working gigabit dsa ports.

Hallo,

        Supported ports: [ ]
        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 Receive-only
        Link partner advertised auto-negotiation: Yes
        Link partner advertised FEC modes: Not reported
        Speed: 2500Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 6
        Transceiver: external
        Auto-negotiation: on
        MDI-X: on (auto)
        Current message level: 0x000000ff (255)
                               drv probe link timer ifdown ifup rx_err tx_err
        Link detected: yes

However it seems it has nothing to do with openwrt at all, I did another test and it seems the two uper ports on my Arcadyan ERV67AX348B are the cause. Forcing them to 1000 even with a non openwrt device solves the issue. and brings back the upload. And setting the ports in openwrt to 1000 also solved it. Any clue?

You have to disable pause frames

ethtool -A wan tx off rx off autoneg on
ethtool -r wan
ethtool -a wan

Rest looks well negotiated.

Hello @brada4

Autonegotiate:  on
RX:             off
TX:             off
RX negotiated:  on
TX negotiated:  on

        Supported ports: [ MII ]
        Supported link modes:   2500baseT/Full
        Supported pause frame use: Symmetric Receive-only
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  2500baseT/Full
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Link partner advertised link modes:  2500baseT/Full
        Link partner advertised pause frame use: Symmetric
        Link partner advertised auto-negotiation: No
        Link partner advertised FEC modes: Not reported
        Speed: 2500Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Current message level: 0x000000ff (255)
                               drv probe link timer ifdown ifup rx_err tx_err
        Link detected: yes

Is it possible this is getting enforced by the other device?

Best Regards,

Maybe, but not very typical.
disable -a autoneg too and reset.

@brada4

ethtool -A eth1 autoneg off

Settings for eth1:
        Supported ports: [ ]
        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 Receive-only
        Link partner advertised auto-negotiation: Yes
        Link partner advertised FEC modes: Not reported
        Speed: 2500Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 6
        Transceiver: external
        Auto-negotiation: on
        MDI-X: off (auto)
        Current message level: 0x000000ff (255)
                               drv probe link timer ifdown ifup rx_err tx_err
        Link detected: yes

You have to -r renegotiate after changing parameter.

root@OpenWrt:~# ethtool -A eth1 autoneg off
root@OpenWrt:~# ethtool -r eth1
root@OpenWrt:~# ethtool eth1

eth1:
        Supported ports: [ ]
        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 Receive-only
        Link partner advertised auto-negotiation: Yes
        Link partner advertised FEC modes: Not reported
        Speed: 2500Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 6
        Transceiver: external
        Auto-negotiation: on
        MDI-X: on (auto)
        Current message level: 0x000000ff (255)
                               drv probe link timer ifdown ifup rx_err tx_err
        Link detected: yes

It was wan, now it is eth1?

eth1 = the wan interface :slight_smile:

@brada4

Makes no sense to me :slight_smile:

Neither to me. Check ethtool -S after few tests in one or other mode.
If there was some resource cap it should be still above 1gbit cable

Hello,

After replacing the genixes ONT for a Nokia ONT the issues where resolved.

Complete mystery.

Thanks for the assistance!

It happens at times that some devices do not connect plainly. Exactly one unlucky phy pair, while working nice in al other combos.