I've been doing some testing lately on 802.11g and I'm very confused by the results. I'll go into the details below. First please understand I'm a software developer, but not a network engineer. I know very little about the lowest layers of how wifi or networking in general work. So part of this will be a learning exercise while trying to get an explanation for the behavior I'm seeing.
In my test I have 15 battery powered ARM devices running an 802.11g wifi chip. I run a script on my machine that sends an SSH command to each of the 15 devices, which executes rsync
to pull down about 5GB of data.
The network is mostly Aruba equipment. I don't know a lot about it, but I know that the AP is their 205 model and for the test I had them configure it to 2.4GHz, because that's all the devices are capable of anyway.
When I run 1 device, it gets about 2MB/s. When I run all 15 devices, they all slow down to around 50-100KB/s per device, maybe more (it jumps up and down a lot, by a wide range, and is very inconsistent). Overall, total throughput across all 15 devices is 2-4MB/s. Even as I power down devices, the maximum of 2-4MB/s across all of them never changes. Each device ends up going faster as I turn off devices, and each device ends up going slower as I turn ON more devices. It's like there's some strange load-balancing happening somewhere.
My naive assumption was that since a single device got 1-2MB/s, that 15 devices would each get the same, for a total of 30MB/s or so. As I am told by others I work with, this isn't how it works. But they have no explanation as to why device throughput is being affected in real time when other devices get busy on the network.
Can anyone explain this weird load-balancing behavior? What it feels like to me is that the overall maximum throughput is the same for 1 device as it is for 15.
A subsequent test that I ran involved 15 completely different ARM devices with a wifi chip on them that supports both 5GHz and 2.4GHz, but since I restricted to 2.4GHz I believe they were running on 802.11n. At these speeds, single device runs between 5-10MB/s, but with 15 devices it sticks at a total of 8MB/s. Again, I'm seeing the same semantics here, but that overall, total limit is still there.