Hello -
I’m facing an issue that I believe is rare, primarily because of the unconventional way we are recording and uploading video. As such there is nothing we can find to help.
Basically our app records video in 1 minute file segments and then uploads that video file. So for example, after 10 minutes it would have created and uploaded 10 video files. In the past we’ve never had issues as our users typically record at schools with ample bandwidth, and have about 2-3 iPhone recording devices max. But now we’ve started doing tournaments where we have 15-20 recording devices (e.g. iPhones) and things have gone haywire.
My background is more in networking, and I couldn’t figure out why the WiFi would essentially crash/stall soon after we started recording. We had a fiber optic gigantic feed to the facility and had over 100Mbps to each device….and I knew on average we wouldn’t need more than 5-6Mbps. Doing the math, it seemed like things should fly. When we encountered the issues, we even went as far as installing our own WiFi 6 network and bypassing the facilities router (plugging directly into the ISP’s handoff device). But even that didn’t help.
Long story short, after suffering through multiple tournaments trying different strategies, we finally found a solution. We had a theory that each iPhone was essentially trying to take all the bandwidth it could when it had a file to upload, and in this way a few iPhones could lock up the network and crowd everyone else out…and unpredictably jump from device to device. It explained what we were seeing as some devices uploaded and others couldn’t even load a website….and yet a Speedtest on a computer could still yield speed test results of over 800Mbps synchronous being available. By the end of a long day we would find a few devices had fully uploaded, but the vast majority had hardly uploaded anything…and so we would stay several hours late into the evening waiting for the uploads to complete.
Operating on this theory we decided to set bandwidth limits for each device at the router (15Mbps down/ 10Mbps up). That day things worked flawlessly! By the time the event ended, within less than a couple of minutes all devices had their files fully uploaded (meaning that each 1-minute file segment on each device was able to be fully uploaded with the next 1-minute timeframe, but none were able to consume bandwidth and lockup other devices).
Now while we have the solution, it’s not practical for widespread applications as average users cannot set such individual bandwidth limits, nor would they have access to do so in facilities their using. So now we’re trying to see if we can limit bandwidth of our app at the iPhone itself. This far we’ve been unable to find anything. I did some tests at my home with a few devices while enabling low data mode on the iPhones WiFi settings, but even with that each phone consumed all it could (I only have 20Mbps upload at my home and even a single device consumed all of that until upload was complete).
I feel this is a kind of unique problem, and hoping your deep knowledge of networking and how iOS works can help me find a solution.
Thank you very much for reading my request.
Masud