Re: Barrier Breaker can't break 160+ Mbps down

have you quy tryed a speed test without a bridge br-lan i mean

Re: Barrier Breaker can't break 160+ Mbps down

Played around today a bit more:
I can break 200 Mbit when disabling MSS clamping and disabling bridging on LAN. Each of these features seem to cost around 5 Mbit (so almost nothing) to 15 Mbit, depending on the tests I perform. Another guess was IPv6, but removing WAN6 and setting everything to IPv4 does not seem to have a major effect.

Re: Barrier Breaker can't break 160+ Mbps down

It's later than I hoped, but now the results are in. My WRT610N wasn't included as I had planned, as r42165 was the only build that actually worked on it. r38705 has the reboot-loop bug, and r36088 had no ethernet working.
http://i.imgbox.com/VWy5TF0G.png
Semi-pretty ASCII table for those who prefer that.

For completeness, some possibly irrelevant information about my approach:

  • Server and client OS: Ubuntu 14.04.1 64-bit, kernel 3.13.0-32

  • iperf version: 2.0.5

  • iperf commands used:

    • TCP server: iperf -s

    • UDP server: iperf -s -u

    • TCP client: iperf -t 30 -c <server address>

    • UDP client: iperf -c <server address> -t 30 -u -b 1G

  • Server CPU/NIC: AMD Athlon II X4 620 / Realtek RTL8168 (gigabit)

  • Client CPU/NIC: AMD Phenom II X4 955 / Realtek RTL8168 (gigabit)

  • Disabling IPv6 commands:

    • /etc/init.d/odhcpd disable

    • network.lan.delegate=0

    • network.wan.delegate=0

    • Deleted network.globals.ula_prefix

    • reboot

  • I got the AA (r36088) image from downloads.openwrt.org, the others I built with default configuration.

  • For each test scenario, the routers were configured appropriately, powered off and set to cool for at least ten minutes on a cold floor. It was then booted, and all four tests were performed in immediate succession, then configured for the next scenario and cooled down again.

So r38705 isn't perfect either, apparently. I can go further back in history to try and pinpoint the change(s), but before doing so I would appreciate some feedback on my approach - whether it's fine, lacking information, wrong assumptions, useless and whatnot. I don't know all the internals of OpenWrt, so there may be very simple mistakes. From what I gather iperf produces consistent results in my setup, but input is welcome.

trismo wrote:

have you quy tryed a speed test without a bridge br-lan i mean

I'm not sure if I set it up as you thought, but I tried this (not mentioned in my results above):

/etc/config/network:

config interface 'testif'
  option ifname 'eth0.3'
  option proto 'static'
  option ipaddr '192.168.4.1'
  option netmask '255.255.255.0'

/etc/config/firewall:

config zone
        option name 'testif'
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'ACCEPT'
        option network 'testif'

config forwarding
        option src 'testif'
        option dest 'wan'

Connected the client to this interface and performed the tests, results were identical with the br-lan interface.

Re: Barrier Breaker can't break 160+ Mbps down

You might want to post it to the mailing list as well to reach the devs. Hopefully they will prioritize this, quite dramatic decrease in performance from AA.

Re: Barrier Breaker can't break 160+ Mbps down

Thank you very much makro!
I really appreciate that you've tested 38705 aswell. I didn't test the actual NAT throughput, but CPU usage while maxing out my cable (~111mbits) with 38705 was comparable to AA, so I thought it didn't suffer from the performance regression - guess I was wrong.

Re: Barrier Breaker can't break 160+ Mbps down

Did anyone tried Barrier Breaker without mips16 instructions? Seems to have some performance issues.

Re: Barrier Breaker can't break 160+ Mbps down

Thanks makro! Wow I didn't know WDR4900 is this powerful even without hardware NAT!
If only they add Wireless AC I would buy it in a heartbeat.
A powerful platform that was abandoned...what a pity.

Re: Barrier Breaker can't break 160+ Mbps down

I can confirm this with my WDR-3600. I've recently upgraded my data plan to 250 Mbps (from 150 Mbps) and with BB-RC3 I'm stuck with ~ 160  Mbps.  If any news surface can somebody please post them to this thread ?! Thanks.

Re: Barrier Breaker can't break 160+ Mbps down

I'm guessing this was never resolved before the release of Barrier Breaker? I'm even getting DECREASED performance going from rc3 to release (200Mbps -> 160Mbps).

When will this issue be addressed?

Re: Barrier Breaker can't break 160+ Mbps down

It seems that this is kernel issue (many features are added in new versions but not optimized for MIPS) and might be not addressed as kernel developers are oriented to multicore and multicache CPUs. In new kernel versions it might be even worst.

Re: Barrier Breaker can't break 160+ Mbps down

devinus wrote:

I'm guessing this was never resolved before the release of Barrier Breaker? I'm even getting DECREASED performance going from rc3 to release (200Mbps -> 160Mbps).

When will this issue be addressed?

Is this really the final version ?

Re: Barrier Breaker can't break 160+ Mbps down

There hasn't been any progress about this in trunk either. It might come down to the removal of routing cache in the Linux kernel which happened not that long ago. Too bad OpenWrt no longer supports any < 3.10 kernels.

Re: Barrier Breaker can't break 160+ Mbps down

@makro

I made some builds of current trunk with 3.8 kernel (same kernel used in r36088), maybe you would like to benchmark them?

http://enduser.subsignal.org/~trondah/3.8-test/

64 (edited by alphasparc 2014-10-05 17:41:36)

Re: Barrier Breaker can't break 160+ Mbps down

We can have a few theories:
1)Arch Issue affecting only MIPS based Routers
2)Kernel Network issue affect all Routers
3)GCC issue
I am suspecting it is 1) since WDR4900 does not seemed to be affected.

Re: Barrier Breaker can't break 160+ Mbps down

arokh wrote:

@makro

I made some builds of current trunk with 3.8 kernel (same kernel used in r36088), maybe you would like to benchmark them?

http://enduser.subsignal.org/~trondah/3.8-test/

Thanks, I'll see if I can get that done this week. Just went from no job to full job, so this went far down on the priority list when rescheduling my spare time (running tests occupied my main computer).

AA (r36088) used kernel 3.3.8 though, not 3.8.13. 3.8 vs 3.10 will still be interesting to see. Brcm47xx has moved to 3.14, so when I get to it I'll compare 3.10 and 3.14 on my WRT610N, and see if there is something to look forward to. I know 3.14 configs are available on ar71xx, I just haven't bothered with custom kernels yet.

Re: Barrier Breaker can't break 160+ Mbps down

Ah you're right, I must have looked at the wrong revision. 3.3.x is quite a step back though, wonder if the kernel packages will work if I drop it in there. That makes sense though regarding the throughput problem, routing cache was removed in > = 3.6 kernel.

67 (edited by alphasparc 2014-10-06 15:59:45)

Re: Barrier Breaker can't break 160+ Mbps down

Linaro GCC 4.9 and Kernel 3.14.20

BusyBox v1.22.1 (2014-10-06 22:37:56 SGT) built-in shell (ash)
Enter 'help' for a list of built-in commands.

  _______                     ________        __
|       |.-----.-----.-----.|  |  |  |.----.|  |_
|   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
|_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
-----------------------------------------------------
CHAOS CALMER (Bleeding Edge, r42803)
-----------------------------------------------------
  * 1 1/2 oz Gin            Shake with a glassful
  * 1/4 oz Triple Sec       of broken ice and pour
  * 3/4 oz Lime Juice       unstrained into a goblet.
  * 1 1/2 oz Orange Juice
  * 1 tsp. Grenadine Syrup
-----------------------------------------------------

http://i.imgur.com/vlwRvY4.png

Re: Barrier Breaker can't break 160+ Mbps down

Looks like you broke 160+ then smile I think 4.9 produces faster code, I've seen better results with 4.9 on my wdr4900 too.

Re: Barrier Breaker can't break 160+ Mbps down

alphasparc wrote:

Linaro GCC 4.9 and Kernel 3.14.20
BusyBox v1.22.1 (2014-10-06 22:37:56 SGT) built-in shell (ash)
...

Care to mention the hardware?

70 (edited by alphasparc 2014-10-06 18:21:35)

Re: Barrier Breaker can't break 160+ Mbps down

rambler wrote:
alphasparc wrote:

Linaro GCC 4.9 and Kernel 3.14.20
BusyBox v1.22.1 (2014-10-06 22:37:56 SGT) built-in shell (ash)
...

Care to mention the hardware?

WR1043ND V1 SoC Overclocked to 430MHZ.
mtune=24Kc

Re: Barrier Breaker can't break 160+ Mbps down

I wonder if possible to compile BB with AA kernel version and patches.
But does not have any gigabit devices in my disposal.

Re: Barrier Breaker can't break 160+ Mbps down

qasdfdsaq wrote:
tmcg wrote:

I know some of the primary devs have dismissed hardware nat acceleration as "messy", but that seems to be the trend in new hardware handling these higher speeds instead of faster CPUs.  I would think that hardware accelerated nat for the bulk of traffic over established TCP connections would be a huge perf gain while software nat could still be used for negotiating TCP connections and everything else (UDP, IGMP, DHCP, etc).  Or maybe I completely misunderstand the performance bottleneck.

It's the trend because it's faster and more efficient to produce dedicated hardware to do a job than doing it on a general purpose CPU.

Personally I took the brute force approach and shoved a dual-core 2.26Ghz x86 CPU in my router.


I think that latest trunk is OK smile

Re: Barrier Breaker can't break 160+ Mbps down

There's been no changes to resolve this AFAIK. Did you test? The results posted above were made with a gcc 4.9 build, and that compiler is not default yet. Also still far from what was achieved with 3.3 kernel.

Re: Barrier Breaker can't break 160+ Mbps down

arokh wrote:

There's been no changes to resolve this AFAIK. Did you test? The results posted above were made with a gcc 4.9 build, and that compiler is not default yet. Also still far from what was achieved with 3.3 kernel.

Yes, I tested it.
There is no problem to gain 250mbit from wan on my WDR3600.

Re: Barrier Breaker can't break 160+ Mbps down

That is interesting, considering that alphasparc only managed 220Mbps with r42803 and gcc 4.9. WDR3600 is ar71xx as well, and should be affected by this.