Hello everyone!
May someone tell me how ROS behaves when a destination IP is unreachable through a route engaged in PCC, while the same IP is reachable through the rest routes in PCC?
There is a router with ROS v7.9 and two of its ports are connected to different Internet providers and configured in LB with PCC. The ports are not part of bridges:
eth1-ISP1 (IP1), per-connection-classifier=both-addresses:2/0
eth2-ISP2 (IP2), per-connection-classifier=both-addresses:2/1
If a destination Public IP becomes unreachable through one of the routes, while the nexthop for that route is reachable and the route is active, that route remains selectable by the ROS in PCC scheme. When starting a connection in this case, there is a chance the broken path to be selected for outgoing packet and the connection to fail because of the unreachability of the destination IP - right or wrong?
Or, if the first attempt fails, there will be a second try to establish the connection - via the other route; or а lot will be drawn again?
are you trying to connect 2 isps via your router as transit point? ie. user1 connects from isp1 at your eth1 - and then you want to mark the connection - and then you want to re-route that user1 to isp2 and vice versa?
or
you just asking about lan to 2 wan pcc load balance?
that diagram you provided is per packet routing decision - what is the relation with your pcc question?
Hi, very sorry for the complicated explanation! I’ve rearranged and simplified the original query, please look at it again and if something is unclear, I will clarify it further. It is about a lan to 2 wan pcc load balance.
May someone tell me how ROS behaves when a destination IP is unreachable through a route engaged in PCC, while the same IP is reachable through the rest routes in PCC?
pcc has nothing to do with routeros as a system - but rather it (pcc) just a more complex routing algorithm. combined with pbr.
so for the question: i think it’ll depend on what kind of protocol used for outside connection ie. http, icmp etc. - but you can make some classifiers (pbr) for pcc-ing that specific protocols.
example:
Webserver. whose ip unreachable by isp1 -
the results may be a dead route for your lan - but can be easily reconnect with f5 page refresh. as long those 2 wans have equal ecmp route to the internet. and of course, that would too affect the other connection to that webserver via isp1. and so forth.
---- edit
if your lan connect to a session based Webserver ie. form filling etc - f5 page refresh/link change will break your session.
If I read this right, the issue is while PCC is works, but downstream internet failures are not detected so the PCC will send traffic down a “bad path”. Hopefully you have a check-gateway=ping on the routes in /ip/route – which is what covers the ISP gateway … but tha’st all. But even with this setting, what’s happen is if the internet failure is beyond the nexthop (e.g. the ISP’s gateway), PCC will still use the route and send packets. Essentially you need both Load Balance & Failover if you want the route to not be used if there is a failure downstream of the ISP gateway.
You can use recursive routes if you want RouterOS to fail a route beyond the next hop. Otherwise, if the gateway is active, PCC will route to it – it does not care if the packets get beyond that – why you need recessive routes to detect a failure based on pinging something on the internet to know if the route should be failed. See https://help.mikrotik.com/docs/pages/viewpage.action?pageId=26476608
Thank you both!
As a result, I’m going to conclude that PCC doesn’t “make” internet more reachable - effectivly. It may balance your load, but at the same time you may loose part of it; however it may bring to your basket something, which you considered unreachable until then.
Wiseroute, as far as I know, when a browser loads a web page (starts a session), it makes separate requests to each/multiple page resources: pictures, videos, css, js and other external to the page items - what can be seen in browser’s developer tools. May be each of those requests can be considered as a connection, so pressing F5 may lead to a partially loaded page.
Amm0, you are right but for the case when I am interested in a specific destination reachability - a known resource or web site. I rather meaned the general internet access - when something works for a while and then unexpectedly goes down, later appears again.
As a result, I’m going to conclude that PCC doesn’t “make” internet more reachable - effectivly. It may balance your load, but at the same time you may loose part of it; however it may bring to your basket something, which you considered unreachable until then.
yup especially in natted environment, load balancer could brings you nested, double work load. so there are drawbacks as well.
when a browser loads a web page (starts a session), it makes separate requests to each/multiple page resources: pictures, videos, css, js and other external to the page items - what can be seen in browser’s developer tools. May be each of those requests can be considered as a connection, so pressing F5 may lead to a partially loaded page.
yes. they (webpage resources availability) depends on how you design your page and the webserver backend - is it local or remote - but as for your question: what is the point for all of those embedded url if the web clients can’t reach the index.htm?? can you??