How to load balance 2 cellular connections for a small office

After working at my new job for a few months I got a bit frustrated by the bad internet and offered to look into it. Since its my first time organising a network I would like to get some feedback before I present my case.

The problem: We have a small office, 6-12 people depending on the day. Sadly there is a monopoly on cable in the building, making slow cable a expensive option. Because the work requires mostly regular internet usage and some document storage in the cloud (sharepoint, so most files are also on disk) and the team used to be smaller, the decision was made to use 4G cellular internet.

So the status quo is 2 different 4G cellular connections, both with a different wifi. Every now and then the connection will slow to practically zero, causing everyone to switch until the problem happens on the other connection.

Now the proposed solution was to buy another 4G connection + wifi hotpot, which in my opinion only complicates and hides the existing problem.

One of the solutions is to bond the connections, using Peplink or mushroom, but these are both quite expensive and probably a bit overpowered.

My proposed solution is to rethink the network structure:

  • powerful accesspoint, since the ones we have now are having trouble with all the connections (12x phones, laptops, and sometimes tablets). ( the Ubiquiti Unifi AP-AC-Pro was recommended by a friend)

  • Use a load balancer to balance the load over the 2 connections (maybe a third in the future). Here I was thinking of a TP-Link TL-R470T+, which can handle 4 WAN connections and cost abut 50 euros.
    The benefit here would be 1 strong network, allowing everyone to use things like the printer. And more importantly, with the load balancer a more stable connection, without those nasty speed drops.

However, since I don’t have any experience with this, will the load balancer work as I think it will? Are there any snags I didn’t think of?

Also, any hardware recommendations are welcome!

Google Play Store claims background data is disabled when I’m not on cellular

When I try to run the Google Play store app on my Android 6.0 device, I get an error message telling me:

Background data disabled

Google Play Store needs background data to be enabled.

When I click on “learn more” I am taken to this page: https://support.google.com/googleplay/answer/1663315?hl=en

That page claims that, under Android 5.0 or higher I need to open the Settings app and select “Wireless & networks” or “Connections” and touch “Data Usage”, or on some devices “Battery & Data Manager” and then “Delivery”. I have none of these, the closest I have are “WiFi” and “Battery”, neither of which have “Data Usage” or “Delivery” under them.

I do however have “Data Usage” as a top-level menu item in Settings but it deals exclusively with Cellular Data limiting. And in that I do have Google Play Store restricted to “Disable background data on cellular networks”. I am not going to change this as this was one app I identified which was using excessive mobile data usage.

However, I am not on a cellular network when I am trying to open the Google Play store, I am on WiFi, so I’m not sure why it is complaining. Is there some other location that background data has to be enabled for WiFi? I find that when connected to WiFi my phone is automatically updating apps in the background every day or two which would seem to suggest it does have background data when on WiFi, so why can’t I open the Play Store under the same conditions?

WiFi extender, extending a cellular hotspot

I have a 4G phone which in the corner of my house receives 4G signal, and using speediest.net I get about 20Mbps, if I’m connected directly to my phone from my laptop and sitting next to it.

My bedroom is on the opposite side of the house and in it my phone doesn’t receive 4G. So I bought a WiFi extender, with the hopes of leaving my phone in the corner that gets 4G and using my laptop in my bedroom.

If I sit next to my phone and connect to the extender (which is extending my phone’s hotspot), then i get about 7Mbps. However if I sit in my room and connect to the WiFi extender I get 0.9Mbps. If I run the speediest on my phone I get 20Mbps still.

Why does the distance between my laptop and WiFi extender affect the speed of the internet? Meanwhile if I transfer stuff to my phone or VNC to it (i.e. local connections) whether I am in my bedroom or next to my phone and connected via the extender.

Do Uplink (Lower 700A band) Cellular Tower transceivers emit power?

I was wondering do cellular tower transceivers emit power in the uplink band (Lower 700A)?

I work on experiments at 700 Mhz and I suspect the mobile signals might cause minor interference. From my understanding the lower 700 block A is an uplink channel, so the power comes from the mobiles devices so the transceivers should be passive (emit no power). Yet from a web search of nearby towers (Canadian Cellular Towers Map).

I find transceiver power even for uplink, which greatly confuses me.

Does anyone have any suggestions for me to test my theory?

enter image description here

Do Uplink (Lower 700A band) Cellular Tower transcievers emit power?

I was wondering do cellular tower transceivers emit power in the uplink band (Lower 700A)? I work on experiments at 700Mhz and I suspect the mobile signals might cause minor interference. From my understanding the lower 700 block A is an uplink channel, so the power comes from the mobiles devices so the transceivers should be passive (emit no power). Yet from a web search of nearby towers (https://www.ertyu.org/steven_nikkel/cancellsites.html) I find transceiver power even for uplink, which greatly confuses me.enter image description here Does anyone have any suggestions for me to test my theory?

How to enable on-demand cellular PPP connection as backup to eth0

I have a Raspberry Pi 3 device to which I have added a MultiTech MTQ-LAT3-B02 modem. I am able to successfully use pppd to connect to the cellular network. I then can add a ppp0 route and successfully use the cellular as a backup route to the internet when I lose the main eth0 connectivity. This works.

The problem: This approach leaves an open connection to the cellular network.

The question: How can I configure the cellular pppd to only connect (and subsequently disconnect after some idle timeout) when needed. That being when eth0 is down and there is something that needs to send data to the Internet. I have toyed with the ppp option “demand”, but that does not seem to work as I think that is really intended for dial-up implementations.

Here is the Raspbian Version:

Linux raspberrypi 4.9.35-v7+ #1014 SMP Fri Jun 30 14:47:43 BST 2017 armv7l GNU/Linux

Here are my ppp option settings:

debug
lcp-echo-failure 3
lcp-echo-interval 3
nomagic
/dev/ttyACM3
460800
crtscts
noauth
noipdefault
ipcp-accept-local
ipcp-accept-remote
usepeerdns
novj
nobsdcomp
novjccomp
nopcomp
noaccomp
lock
connect "/usr/sbin/chat -v -f /etc/ppp/peers/multitech-chat"
defaultroute
nodeflate
updetach

Any advice is appreciated.

From cellular homology of a handle decomposition to homology of CW complex $H_k^{CW}(X)$

Consider the handle decomposition of the manifold $Y:=Y_N$ where we let $Y_k=Y_{k-1}cup_{chi} H^{gamma_k}$ be a $dim X_{k-1}$-manifold with a $gamma_k$-handle attached $H^{gamma_k}=D^{gamma_k}times D^{dim Y_{k-1}-gamma_k}$ along the embedding map $chi:S^{gamma_k-1}times D^{dim X_{k-1}-gamma_k}topartial Y_{k-1}$ with $Y_0:=D^m$ for $1le kle N$.

Then we collapse each handle $D^ktimes D^{n−k}$ to $D^k$ to get a homotopy equivalent CW complex $X$ with the same number of $k$-cells as the manifold has $k$-handles. Thus, the CW can be given via its $(N-1)$-skeleton by attaching $N$-cells. Cellular homology of this complex, $H_*^{CW}(X)$, is the homology of the cellular chain complex $(C_*(X),d_*)$ indexed by the cells of $X$ with differentials $d_n:C_n(X)to C_{n-1}(X)$. Let $X$ have $n_{gamma_i}$-many $gamma_i$-cells (for $0le ile N$) with $N$ the highest-dimensional cells.

Then can we conclude from the long exact sequence of relative homology that $$H_k(X)=H_k^{CW}(X)=begin{cases}
0, & text{if }knegamma_1,dots,gamma_N \
mathbb{Z}^{n_{gamma_1}}, & text{if }k=gamma_1 \
&vdots\
mathbb{Z}^{n_{gamma_N}}, & text{if }k=gamma_N \
mathbb{Z}_2, & text{if }k=0
end{cases}$$

where the inclusion $i:X_Nhookrightarrow X$ induces an isomorphism $H_k(X_N)cong H_k(X)$ if $k?

Motivation: The canonical computation by Hatcher AT, P 141 for $M_g$ a closed oriented surface of genus $g$ with the CW structure of one $0$-cell, $2g$ $1$-cells, and one $2$-cells admits such a result. The cells are attached by the product of commutators $[a_1,b_1]dots[a_g,b_g]$. The cellular chain complex of $M_g$ is $0overset{d_3}longrightarrowmathbb{Z}overset{d_2}longrightarrowmathbb{Z}^{2g}overset{d_1}longrightarrowmathbb{Z}overset{d_0}longrightarrow 0$ with zero maps $d_1$ and $d_2$. Then the homology groups are $$H_k(M_g)=begin{cases}
mathbb{Z}, & k=0,2 \
mathbb{Z}^{2g}, & k=1\
0, & text{otherwise}.
end{cases}$$

I thought that a similar argument with cellular homology applies.

Any help would be much appreciated. Thanks in advance!