Skip to content

Troubleshooting

bb-qq edited this page Dec 4, 2022 · 30 revisions

This page summarizes what you should try when facing performance or stability issues.

If your situation does not improve by trying the solutions here, or if you cannot find the cause of your issue, it may be an issue on Synology's side (USB xHCI host controller hardware or its driver). In that case, there is no solution at this time.

Reports from other users may be helpful in guessing whether the problem is on the Synology side.

Stability Issues

Change the USB port to be connected

Front ports tend to be more stable, but some users have reported they got better stability with rear ports

Use a self-powered USB hub or Y cable

In some environments, the power supply of USB ports may be insufficient. It causes forcing the device into the slow/low-power mode or stopping.

For example, the following products would be good.

Do not use USB adapters with L-shaped connectors or USB extension cables.

Synology's USB ports are sensitive to noise, so you should not use these accessories even if they are of acceptable quality for PC use.

Reverse the orientation of the Type-C connector.

Some dongles have a USB Type-C port and are shipped with a Type-C to Type-A converter cable, but some of these cables may result in a USB 2.0 connection if the wrong side is used.

Try a direct connection to a PC

Some switches sometimes fail to auto-negotiate the Multi-Giga link or may cause compatibility issues with the SFP transceiver module. Connecting without a Switch eliminates this possibility.

Use the latest drivers and firmware

Your NIC, switch, or router may have a newer version of firmware or drivers than the version that came with it when it shipped. Also, the version available on the vendor's page is often newer than the version distributed via Windows Update.

Configure parameters of the driver

Disable Thermal Throttling (aqc111 specific)

The aqc111u has a feature that automatically drops the link speed when the chip gets high temperatures. This feature is enabled by default and should be left enabled as much as possible, but you may want to disable it to isolate the cause of the problem. In that case, execute the following command on the terminal and then Stop&Run the driver from the Package Center.

sudo 'echo off > /var/packages/aqc111/etc/flag-thermal_throttling'

Performance issues

Try a different ethernet cable

Changing configurations can cause cable quality issues even if there are no problems with other hardware. Category 5e/6/6A cables are required in a Multi-Giga environment. Category 6A is recommended for longer(> 3m) cables. Category 7 cables are almost a scam and should not be used.

In the balance of quality and cost, I personally recommend the following products:

Increase MTU

USB transactions consume a lot of CPU power and have a high overhead. Transmitting more data in a single packet at a time may reduce this overhead and improve performance.

Measuring performance with iperf

In addition to the driver and physical layer, performance degradation can also be caused by the protocol layer (e.g., SMB) and server software. It is important to measure performance at the pure TCP/IP level to isolate these.

The iperf for Synology can be easily installed from SynoCommunity.

Disable auto-negotiation

All Ethernet devices have an auto-negotiation mechanism that automatically determines the link speed, but this mechanism can sometimes cause unstable operation due to interoperability issues between devices. This happens more often in a Multi-Giga environment.

To check whether auto-negotiation works correctly, use the ethtool command.

Settings for eth2:
        Supported ports: [ TP MII ]
        Supported link modes:   100baseT/Full
                                1000baseT/Full
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  100baseT/Full
                                1000baseT/Full
        Advertised pause frame use: No
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Speed: 5000Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
Cannot get wake-on-lan settings: Operation not permitted
        Current message level: 0x00000007 (7)
                               drv probe link
        Link detected: yes

If ethtool does not report the expected link speed, disable auto-negotiation by explicitly specifying the link speed.

For example, to disable auto-negotiation and fix the link speed to 1gbps, do the following.

sudo ethtool -s eth2 speed 1000 duplex full autoneg off

When you connect the device to the PC directly or your switch has the feature to fix link speed, it would be better to specify link speeds on those opposing devices.

Fix to 2.5gbps (r8152 specific)

The above command cannot be used to operate the 2.5gbps link for the r8152 driver. Use the following commands.

sudo ethtool -s eth2 autoneg on advertise 0x802f

Configure parameters of the driver

Disable Low-Power mode (aqc111 specific)

Starting with version 1.3.3.0-6, low power mode is enabled by default in favor of stability.

To disable it, execute the following command on the terminal and then Stop&Run the driver from the Package Center.

sudo 'echo on > /var/packages/aqc111/etc/flag-low_power_5g'

Change the size of the ring buffer

For more information on the RX ring buffer, see the explanation page by RedHat.

Show Ring parameter

sudo ethtool -g eth2

Changes the number of ring entries for the Rx ring.

sudo ethtool -G eth2 rx 100
Clone this wiki locally