You are not logged in.

## #1 2020-03-03 23:13:36

tonnz
Member
Registered: 2015-08-02
Posts: 38

I'm not referring to bonding for better availability, but for better range. Radio range is directly proportional to transmission power.

A while ago i set up a bonded interface with three wifi interfaces using the 'broadcast' bonding driver, which sends the same packet over each bonded interface. Each of the devices had a very bad connection, with most packets getting lost (around 250kbit/s throughput, and very unreliably). The idea was simple: Since packet loss in wifi is fundamentally probabilistic, then by using the broadcast bonding driver i could greatly increase the probability that at least one packet reaches its destination. And it worked! Throughput reached up to around 700kbit/s using the bonded interface (using the broadcast bonding method!). While the broadcast driver usually does not increase throughput for obvious reasons, applied to wifi at the limit of its range, it does increase throughput due to the probabilistic nature of packet loss. It effectively increases range, as more transmission power would.

Simple math to explain why: In theory, if each packet has chance of p to degrade beyond the point where ecc-encodings can rescue it, then the chance that all of it's clones (sent by each device in the bond) degrade is p^n, where n is the number of clones. The probability that at least one packet survives is 1-p^n (ignoring interference).
So far this is only on the receiving end, but it applies to the AP, too, because it will send replies to each of the interfaces, possibly over different channels and offset in time, to reduce interference.

Now for the questions.

How would you set up an access point using this method to increase range?
- If we really (and not just effectively) wanted to increase transmission power, each child device would have to send the exact same signals on the same channel at the same time, effectively working as multiple antennas for the same virtual transmitter. I expect that last constraint (same time) to be impossible, and even it is isn't, it may not even be legal (there is a limit to transmission power for each household, at least where i live).
- We could create an AP that offers multiple channels to the same client, and broadcasts the same packet accross all channels when packet loss is high, and a client that listens/replies in the same fashion.

Bonding devices on the receiving end is easy. But how would one configure an access point this way? Can you create an AP over bonded interfaces? For wifi bridges this is trivial and has been done before. But i'm hoping to get the full functionality of a proper AP, and blow expensive solutions out of the water using an array of cheap dollar-store wifi dongles (within legal limits..).

Im planning to switch back to Arch (and linux in general) as my daily driver, and i remembered this project. I'm not looking for a "solution", any ideas, ramblings, suggestions are welcome. I'm currently very bored.

Last edited by tonnz (2020-03-03 23:19:56)

Offline

## #2 2020-03-07 16:04:23

Zod
Member
From: Hoosiertucky
Registered: 2019-03-10
Posts: 455

tonnz wrote:

I'm not referring to bonding for better availability, but for better range. Radio range is directly proportional to transmission power.

I don't think it works like that.

Offline

## #3 2020-03-07 16:39:39

ewaller
Registered: 2009-07-13
Posts: 17,693

Won't help.
https://metis.fi/en/2017/10/txpower/

Not to mention, it is not legal in the US.  I am pretty sure it is not legal in the EU or Australia.
And, it is rude.

Edit:  The fundamental problem is not getting a signal through.  There are two issues; first, it is a bidirectional link and it won;t work unless there is communication in both directions.
Second, WiFi uses shared bandwidth.  Every system on the same channel -- regardless of which AP they are on -- have to work together to and share bandwidth.  This includes waiting for other systems on the channel to stop transmitting.  The more systems that can see your signal, the more systems you have to share bandwidth with.  You really want to have fewer systems see you by reducing your power as much as possible.  Also, keeping thing synchronized across multiple channels when one is having to negotiate for time slots a a channel by channel basis;  are you going to slow down to allow the most congested channel to keep up?

Last edited by ewaller (2020-03-07 16:53:02)

Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way

Offline