Forcing Gaming traffic only through WAN 1

We run a small local ISP at a remote village in India. Earlier all of our Radius and Traffic management was overseen by our Upstream, and we only maintained and looked after the last mile network. However, last month our upstream had a change of policy and now they will only sell us Bandwidth. So now, we have to maintain our own core router and all traffic would be routed through 2 WAN Uplinks as shown in the diagram.

Everything was going well, when suddenly there was an influx of traffic due to “Work from Home” customers. The issues started with the Gaming customers. They started complaining about poor latency to Game servers during peak hours. Upon inspection, this is what I have noticed:

WAN1 has great latency to gaming servers (Latency sensitive applications in general).
WAN2 is a peered Link to an IX, and is great for Video Streaming (Non-Latency sensitive applications in general)

I have done PCC on both links for failover and load balancing.

My query:

Is there any way, through which I can force the gaming traffic to leave only through WAN1 and set the QOS for gaming traffic at maximum priority? I have collected the port numbers that the games use using Wireshark.

Any help would be greatly appreciated. We are new to Mikrotik and use Wikis and YouTube videos for configs. This is my first forum post. Please be kind to any of my mistakes.
ND.png

Probably the only way.

A. group ports for rules, (maintain a list in MS Works, separated by commas) and just copy and paste into dst-port for rules)
B. Conversely use a NOT rule (apply rules NOT using any port, and put in the ports that folks use that are not gaming ports 80,443 and others for example - but probably too complex)
C. group gaming server IPs into a firewall address list.

Gonna have to mangle traffic outbound …

Horrible advice.

Games use various cloud providers like AWS, GCP etc. Each game have a variety of connection methods depending on the network environment.

First, the game could be using strictly TCP NAT punching over 443, or TCP NAT punching over X ports, or UDP NAT punching over X ports or P2P+Port Forwarding on specific ports or the games uses all mechanism with fallback method.
Second, the game server IPs are not static, they change on the fly, every hour, every day.
Third there’s thousands of different games.

I myself am Indian and dealt with my local ISP with gaming latency issues and first thing we learnt is IPs changes every day.

It’s the job of the ISP to have peering agreements with major CDNs like AWS, GCP etc. My ISP has peered with ExtremeIX and PowerGrid. PowerGrid is yet to peer with AWS Kolkata so games hosted on AWS has high latency for now.

However, latency on other games using GCP or Cloudflare etc have very low latency via PowerGrid and even those that gets routed through ExtremeIX have reasonable latency.

Yes, I have no experience with such requirements. Plus I have been batting zero percent all day and why would I break my losing streak LOL.
So I take it that there is no way to identify and thus control gaming traffic.

Well faced with this impossibility, if I was the OP I would not hesitate to change my Offerings as well, and would provide a ‘gaming’ Connection or a “work connection”
Then no one can complain because they are getting the service they asked for!!
If they want both, they pay for both!!

Seems like my only way out is to make two different subnets. One for general usage and other for gaming customers only.

Your only way out is to peer with the major CDNs. I fail to understand why local ISPs and BSNL in India avoids peering and proper routing like the plague. Your customers will suffer latency issues regardless of which upstream provider unless they themselves peered with major CDNs.

I suggest you deploy PCP as well since you’re likely using CGNAT for the customers.

It is not impossible, but success rate of any QOS strategy depends on where you sit in the delivery chain. And if it’s worth the trouble knowing that some or most of the traffic will not be optimized properly anyway. DumaOS uses ip lists of game server locations to improve routing and reduce latency (their first model was in fact a Mikrotik router). ASUS uses proprietary code from Trend Micro and WTFast (VPN routing to game servers). They both make home routers that support a very limited set of games and no such strategies are suitable for the high user counts and reliability of a service provider. Even L7 would kill a router quickly with dozens of game platforms to filter for. A more sensible approach to QOS combined with throttling should be more effective IMO.

If I was a small provider in over my head, I would hire consultants to improve my service.

(Edited to remove nonsensical coffee induced ramblings)