XGS1250-12 slow internet uplink performance (solved but not explained)

Options

Hello everyone, I have recently signed for a new internet line providing upload bandwidth up to 1G (download expected speed is 2,5G).

My zyxel XGS1250-12 switch is connected to the provider ont via one of the multigigabit ports and the link is up and running at 2,5Gbps.

But upload speed tests do not exceed 100Mbps. The test was performed via a pc connected at 2,5Gbps. I know that the bundle pc/adapter is not involved in the issue because I can saturate the 2,5 link when doing a speed test to another lan device (i.e, my nas also connected at 2,5Gbps).

The issue occurs only when testing the internet upload speed.

Obviously I asked the provider to check the line but nothing came up.

Oddly enough, when the test was performed via wifi (an access point is connected to the switch at 1Gbps) I was able to reach 200/300Mbps upload speed.

And of course I checked and changed all the cables just in case.

After few days I solved the problem by enabling flow control on the switch (on internet port and router port).

Please note that my router is connected at 10Gbps via port 12 (fiber optic cable)

I am just asking if someone is able to explain the rationale behind this behavior.

Thanks!

«1

All Replies

  • PeterUK
    PeterUK Posts: 2,714  Guru Member
    First Anniversary 10 Comments Friend Collector First Answer
    edited August 2023
    Options

    For testing see if flow control on just the internet port solve it or other way round

  • FabrizioG
    Options

    Hi, with flow control enabled on internet port only (or router port only) I get mixed results. With flow control enabled on both ports I get full 1Gbps upload speed.

  • Zyxel_Melen
    Zyxel_Melen Posts: 1,639  Zyxel Employee
    First Anniversary 10 Comments Friend Collector First Answer
    Options

    Hi @FabrizioG,

    Based on the information you provided, the upload is low throughput from 2.5 Gbps to 1 Gbps.

    In a 2.5G to 1G scenario, it will trigger the client and the server to enlarge their TCP window size, which means they tend to send more packets at a time.

    This will start challenging the router packet buffer.

    In this case, the client will send more packets at a time in 2.5 Gbps speed to the WAN port which’s upload speed is 1 Gbps, so packet buffer ultimately will have its limit. This is the reason you start seeing poorer result.

    Enabling flow control will send the pause packet when the receiving port's buffer is full, which regulates traffic for better transmission performance.

    Zyxel Melen

  • PeterUK
    PeterUK Posts: 2,714  Guru Member
    First Anniversary 10 Comments Friend Collector First Answer
    edited August 2023
    Options

    So...the router is sending the pause packet to XGS1250-12 but for the XGS1250-12 accept the pause needs flow control enabled on the port to the router...ok but why would flow control be needed to be enabled PC to XGS1250-12 port? Or is it so the PC can receive the pause from router being passed on by XGS1250-12...

  • FabrizioG
    Options

    Honestly, your explanation is not very convincing…My scenario has been a very common one for many years now: that is: an asymmetric internet line associated with superior lan capabilities. Never occurred to me not being able to saturate upload link. Please also note that the router is more than capable to handle 10G traffic (for lan traffic). In my opinion, when you talk about port buffers, you need to refer to the zyxel switch ports and not to the router or lan devices buffer.

  • Zyxel_Melen
    Zyxel_Melen Posts: 1,639  Zyxel Employee
    First Anniversary 10 Comments Friend Collector First Answer
    Options

    Hi @FabrizioG,

    Thanks for your feedback. This looks like there's a mismatch between our cognitions. I rechecked the reply and found that the specific ports on which flow control was enabled aren't clear.
    Could you share the information about which device and ports did you enable flow control? Was it the uplink and downlink port of your switch? Or the router?

    Zyxel Melen

  • FabrizioG
    Options

    hi, I confirm that flow control has been enabled on internet port and the router port (on the zyxel switch side of these connections). The part that I didn't described in detail is that 1) both ports are connected to the zyxel switch 2) the 10g router port is configured as a trunk where both internet and lan vlans are allowed to get to the router.

  • FabrizioG
    FabrizioG Posts: 6
    Friend Collector First Comment
    edited August 2023
    Options

    Just to clarify, this is the actual design of my network:

  • Zyxel_Melen
    Zyxel_Melen Posts: 1,639  Zyxel Employee
    First Anniversary 10 Comments Friend Collector First Answer
    edited August 2023
    Options

    Hi @FabrizioG,

    Thanks for sharing the detailed topology. I misunderstood your topology in the beginning.

    In this topology, the challenge is on the switch's packet buffer rather than the router's. In your scenario with low throughput from 10 Gbps to 2.5 Gbps, the communication between the client and the speed test server tends to send more packets at a time, which enlarges their TCP window size. And the packet buffer will ultimately have its limit when the client sends more packets at a time in 10 Gbps speed to 2.5 Gbps speed port. The flow control you enabled can regulate traffic by sending pause packets when the receiving port's buffer is full, resulting in better transmission performance.

    Zyxel Melen

  • Zyxel_Melen
    Zyxel_Melen Posts: 1,639  Zyxel Employee
    First Anniversary 10 Comments Friend Collector First Answer
    Options

    In addition, the unexpected upload speed you mentioned is also the same scenario.
    Although the PC all way through to the ONT are 2.5 Gbps, the ONT to the Internet is 1 Gbps. This is still a low throughput scenario and will cause the client tends to send more packets. And just like I mentioned above, enabling flow control will regulate traffic and result in better transmission performance.

    Zyxel Melen