RB850Gx2 througput dropped after upgrade 6.49.11->7.13. FastTrack may be not working

Hi
After SW upgrade 6.49.11->7.13 on RB850Gx2 I experience throughput ceiling at 220 Mbps while 500+ Mbps throughput was observed before upgrade.
It seems that enabling/disabling FastTrack has no impact on throughput. FastTrack counters in the filter rule are not increasing as well.
CPU utilization during speedtest is
/tool/profile
Columns: NAME, USAGE
NAME USAGE
ethernet 13.2%
console 0.2%
dns 0%
firewall 33.2%
networking 35%
winbox 0%
upnp 0%
management 3.5%
routing 6.7%
profiling 0.7%
telnet 0%
bridging 9.5%
unclassified 1%
total 99.7%

Please could you share ideas what could be wrong with FastTrack/throughput? Any possible compatibility issues in the combination RB850Gx2+7.13+FastTrack?

Best regards
Modestas
MT config.txt (14.9 KB)

The fast-track rule has set property connection-type=“” … this is not the same as the property not being set. I think you should unset this property.

Thank you for the suggestion. Just removed blank connection-type value, but it did not help.

You are using more conditions as connection limits, my suggestion would be something like below.

Before
add action=fasttrack-connection chain=forward comment=FastTrack connection-limit=500,32 connection-state=
established,related connection-type=“” dst-limit=200,200,dst-address/1m40s hw-offload=yes limit=
0,100:packet

After
add action=fasttrack-connection chain=forward comment=“Fasttrack Connection”
connection-state=established,related hw-offload=yes

Also recognize that there was a hit on throughput for most older routers when moving from vers6 to vers7… it may also have affected your model.

Thank you, this had certain positive impact on fasttrack rule. Rule counters show some values now, identical to the next “accept” rule counters.
Ookla speedtest ramp-up is better.
But the max througput increase is within 5%. I can hardly see difference in performance when fasttrack feature is disabled or enabled as well.
Fasttrack rule counters also increment when fasttrack feature is disabled.

The perception of CPU savings occurs on firewall, a /tool prifile is the best way to compare.
In IP Setting you will see that fasttrack is actually active.

When it comes to changing fasttrack rule: it narks connection to be fast-tracked. After that, packets belonging to it (in principle) don’t hit firewall rules aby more as long as connection is alive. In other words: ongoing fasttracked connection can not be undone. Likewise a new drop rule (unless placed very strategically) won’t break ongoing connection (even if that connection is not fasttracked).
The most certain way of getting firewall act according to set rules is to reboot router after making changes.

BTW, fasttrack doesn’t work for IPv6 …


BTW, firewall rules show signs of legacy :wink: I suggest you to start over from default firewall rule set and (while keeping to concept) only add rules you absolutely require for your needs. If I think again, I’d start from scratch (netinstall the router) and use text export of config as reminder of how it used to be. Sometimes config changes and configuration conversions due to upgrades can mess things upn(they are not visible in export but are present in binary backups) and starting from netinstalled device ensures there’s nothing lurking in the darkness …

My experience with hAP ac2 is that even without any visible configuration problem it couldn’t route at more than 250Mbps in v6. After netinstalling v7 it could do 1Gbps (which is my subscription rate) even though v7 sometimes causes slight performance drop.

Unfortunately, reboots did not help. I was curious enough to check if reboot will have any effect when fasttrack feature is disabled or enabled in IP>Settings.

I guess this will be required for SW downgrade as there is no to go from 7.13 or 7.12 back to 6.49.11.

RB850Gx2 was doing 500 Mbps on v6 with the same configuration. I honestly doubt v7 introduced many fancy CPU-hungry features for such trivial application as internet access with NAT. No new crypto algos are used as well.
I have a feeling SIA Mikrotikls wants some cash from us from time to time and is just pushing previous models towards obsolescence with v7.

I tried both scenarios. Fasttrack was disabled or enabled in IP>Settings, followed with reboot.
No difference in performance was observed.
CPU hogs are firewall process with ~32.2% and networking with ~35.7% in both scenarios
/tool/profile
Columns: NAME, USAGE
NAME USAGE
firewall-mgmt 0%
ethernet 11.7%
console 0.5%
dns 0%
firewall 32.2%
networking 35.7%
winbox 0.2%
upnp 0%
logging 0%
management 2.2%
routing 7.2%
profiling 0.5%
bridging 8.5%
unclassified 1%
total 99.7%

There is a feature (route cache) which was available in ancient linux kernels … and was used in ROS v6. ROS v7 uses newer linux kernel which doesn’t support the mentioned feature. In certain conditions the feature helped to increase throughput considerably, most notable in SOHO environment (with few concurrent connections).

But anyway, I’m still supporting my suggestion about netinstall … as much as it’s unattractive, it’ll give you the highest possible routing performance. If performance stays too low, then going back to 6.49.11 is still a viable option. Specially so if you don’t intend to use any of new features, introduced in v7. And I still think reworking the firewall setup would be a good thing.

Concur, but do have a question.
Can you netinstall right to verssion 7.13 or do you have to netinstall to 7.12 and then upgrade to 7.13??

MKX is giving excellent advice.
For basic firewall modify the deafult slightly to this…

/ip firewall filter
{Input Chain}
add action=accept chain=input comment=“defconf: accept established,related,untracked” connection-state=established,related,untracked
add action=drop chain=input comment=“defconf: drop invalid” connection-state=invalid
add action=accept chain=input comment=“defconf: accept ICMP” protocol=icmp
add action=accept chain=input comment=“defconf: accept to local loopback (for CAPsMAN)” dst-address=127.0.0.1
add action=accept chain=input in-interface-list=LAN
add action=drop chain=input comment=“drop all else” { ensure this is the last rule you create and put here in the order }
{forward chain}
add action=fasttrack-connection chain=forward comment=“defconf: fasttrack” connection-state=established,related
add action=accept chain=forward comment=“defconf: accept established,related, untracked” connection-state=established,related,untracked
add action=drop chain=forward comment=“defconf: drop invalid” connection-state=invalid
add action=accept chain=forward comment=“allow internet traffic” in-interface-list=LAN out-interface-list=WAN
add action=accept chain=forward comment=“allow port forwarding” connection-nat-state=dstnat disabled=yes { enable if required }
add action=drop chain=forward comment=“drop all else”
/ip firewall nat
add action=masquerade chain=srcnat comment=“defconf: masquerade” out-interface-list=WAN

I didn’t try but I guess it’s possible to netinstall directly to 7.13.

Upgrade via 7.12 (or 7.12.1) is necessary to have upgrade process install appropriate wireless driver package: for devices running legacy wireless it means installing additional package and for devices running wifiwave2 package this means installing package with different name (which even depends on wireless chip built in the device). Normal upgrade does neither of these two required actions.
In case of RB450Gx2 the above doesn’t matter as none of wireless packages are nedessary (unless @OP is running capsman on this device).

Just ordered RB5009 anyway and will keep RB850Gx2 as backup.
But thanks for the suggestion, I will try netinstall to see if that helps.

Just tried to netinstall v7.13. One attempt to retain current configuration, another attempt configuring device from scratch.
This did not help regarding throughput, 220-230 Mbps is the ceiling. Switching fasttrack on/off does not make any difference as well.

Next try was netinstall to v6.49.11 and configuration from scratch. 530 Mbps throughput was achieved. Switching fasttrack on/off does not affect throughput as well.

It seems to me that recent software versions just have fasttrack enabled permanently and all fasttrack configuration options are kind of crosswalk placebo buttons.