ROS at this time only supports 1 connection mark that lasts the life of the session. This prevents the writing of efficient mangle code to handle a combination of QoS marking and multiple simultaneous WAN ingress/egress pathways. Support of this currently requires creation of an N x M size connection mark matrix with corresponding duplication of rules. Implementation of a connection-routing-mark in parallel with the current connection-mark, both lasting the duration of the session, would provide this functionality with minimal configuration overhead.
The article I wrote showing QoS setup for RingCentral services has many connection-marks and mangle chains. Properly supporting multiple active WAN links with correct routing would become a nightmare of code/configuration duplication…
What’s the “right point” when it comes to routing the response through the interface through which the request has arrived? How can you do that without connection tracking and translation of connection-mark to routing-mark? Or where else than in mangle can you do that translation?
Each server can be reached via D-NAT from each carrier to a single interior address. Most of these servers do not support multiple interior address on an interface. I know of no way to assign the return traffic to the proper carrier without a session mark. If there were multiple different interior addresses, then yes I could do it that way, but that isn’t the case.
If you know of something I have missed I am always looking to learn.
Actually I do not see anything, neither the “The article I wrote showing QoS setup for RingCentral services” on OP.
Seriously, I do not see any link or something…
About the use of routing rules, anything can be without see any rule…
Not all can be “translated” but again, whitout see anything, something can be placed on routing rules.