Failover when connection exists but is poor



I’ve recently purchased a PepWave Max BR1 Pro router and we’ve been using it for a couple of months now and I have some questions about optimal setup.

We do live video streaming, so it is critical that we have a backup in the event that our normal internet connection fails. The Max BR1 Pro router does a great job at handling failover when our primary connection fails completely. Sometimes our internet connection merely gets very slow, slow enough that our video stream drops. This does not currently cause a failover to the 4G connection. Is there a way to configure the router to failover based on a minimum bandwith threshold? I’ve been reading the documentation on the health check methods but they all seem to be a “connection exists” or “connection does not exist” sort of thing, rather than an indicator of how good the connection actually is. I’m wondering if there is a better way to set this up.




Do you think Cellular Signal Threshold can help for your case ?

Detail info please check on the forum post below:


Hello Sitloongs,

Thanks for the reply. I didn’t know about that feature - thanks for pointing it out. I’ll have to give some thought about how it might be used for my case. My primary internet connection is a cable modem. What I really need is something that detects poor cable modem performance and automatically switches to a 4G backup when the cable modem connection is not good enough.

I’m wondering if there is a clever way of using load balancing to achieve what I need. The trouble is, I don’t want the 4G to be part of my normal internet connectivity. I only want it to kick in when the primary connection has poor bandwidth.

I wonder if there is something that can be done by using the “HTTP Request” health check method. I can envision making a web service that calculates the bandwidth and returns a string that is either “true” or “false” depending on whether there is sufficient bandwidth. Seems like a lot of trouble to go through to make this work though. … but I’m thinking about it…


I expect you could fudge this with the lowest latency load balancing algorithm.

With no traffic flowing, the DSL should be lower latency than the 4G connection. However when you saturate the DSL link it’s latency will rise as you’re trying to stuff more and more traffic through it. When it rises past the latency of the cellular connection that would be used instead for new sessions until the DSL latency drops.

No sure if that fits your needs, but might be worth a play to see.


Interesting idea about using latency and load balancing algorithms. I’m a bit concerned that I might have condition where the latency on the primary connection is good compared to the 4G connection, but the bandwidth is still poor. This is a very real scenario, one that occurred just a couple of days ago, and would prevent a failover, keeping a low bandwidth connection active.

The more that I think about it, I’m thinking the way to go is to create a small app that periodically assesses the bandwidth and logs the latest reading to a file. Then a web service stands by ready to report “thumbs up” or “thumbs down” based on this number whenever a request comes in from the router. If the web service is on a remote server, then all the better. If the internet connection suddenly goes away completely, the web service will not be reachable, making the router fail over quickly. If the internet connection is still reachable, but declining in bandwidth, eventually the reporting app will post a poor number that the web service relays to the router.

Seems like a couple of quality days of programming, but in the end, this should give me what I’m looking for.




Not suggesting you use failover, instead I’m suggesting lowest latency load balancing. So DSL is used as priority as its lowest latency, then when you smash through all the available bandwidth on it (and latency rises due to buffers filling as its bandwidth gets saturated) any new sessions would be load balanced over LTE (since it would be lowest latency at that moment).

You local app that could change the text on a webpage from ‘good’ to ‘bad’ dependent on locally measured bandwidth, in combination with the http healthcheck on the cable modem WAN set to look for the word ‘good’ is a great idea. You’ll just need a way to make sure the app is measuring speeds on the dsl wan rather than the LTE after a failover event. Guess the webservice could check the source IP of a post request from your app and only update the page if that source IP is the DSL public IP.

Good luck!


Hello Martin,

I see what you mean; that might work pretty well.

Is there a “Lowest Latency” algorithm for load balancing? I don’t see it. All I see is “Weighted Balance”, “Persistence”, “Enforced”, “Priority”, and “Overflow”. Interestingly, the online documentation speaks of 8 different load balancing algorithms, including “Lowest Latency”. Not sure if my product supports all of them or if I have old firmware.

In any event, I was reading up on the “Overflow” method. It switches the internet connection when the first connection runs out of bandwidth. This sounds exactly like what I’m looking for. I’m giving this a test at the moment to see how it works.




Hello @rbenditt,
Here are the details on “Lowest Latency”, you need a Balance 20 or above with version 7.1 (or above) of the firmware, the Pepwave MAX range does not support the feature based on what @Jason has written.

You can read more on the various balancing equations at this posting.

Happy to Help,
Marcus :slight_smile:


Thanks for clearing that up, Marcus. I’m still evaluating the “Overflow” algorithm at the moment. So far I haven’t run into any low bandwidth incidents yet but I’ll keep monitoring things.