3 ms·
> terrible network And it's worse than just reliability. It's also performance. TCP just does not work well over wireless networks. Its congestion control is
by adrianmonk 5y ago
> terrible network
And it's worse than just reliability. It's also performance.
TCP just does not work well over wireless networks. Its congestion control is designed to allow multiple TCP streams to coexist on a network that has steady bandwidth. It works fine if the network layer is basically stable and the problem is sharing it.
On mobile networks, the available bandwidth fluctuates wildly over a short time period. When the bandwidth drops, TCP backs off exponentially, and when the bandwidth returns, TCP does not ramp back up quickly enough. So it ends up sitting around doing almost nothing when there's bandwidth available.
So even when the network is working, native apps typically perform better because they lend themselves to separating network activity from user interaction. With the web, unless you do a single page web app, navigating to different screens and views of things tends to be a page load, which is just too slow too often.