A Possible Cause of AT&T's Wireless Clog — Configuration Errors
AT&T customers (iPhone users notably among them) have seen some wireless congestion in recent months; Brough Turner thinks the trouble might be self-inflicted. According to Turner, the poor throughput and connection errors can be chalked up to "configuration errors specifically, congestion collapse induced by misconfigured buffers in their mobile core network." His explanation makes an interesting read.
Wow. This is kind of amazing.
Nothing on this page (as I type) talks about zero packet loss, except you. That means you read the article.
Of course, the article says that AT&T has set their buffers large enough to prevent packet loss due to congestion in transit, not that they expect no radio packet loss. The problem is that TCP/IP needs packet loss to tell it when it's going too fast and AT&T's decision causes this to fail spectacularly at times.
The trolls read the articles. Weird.
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
So in this case, zero packet loss is a setup for disaster instead of a desirable quality.
The trouble is that it's not an intuitive solution to a problem, the introduction of occasional packet loss. It's usually something to avoid.
The determined Real Programmer can write Fortran programs in any language.
TCP measures round trip time, and doesn't need packet loss to tell it that the round trip time is long. The retransmit interval will go up appropriately. TCP will behave reasonably with a long round trip time. If you're trying to do a bulk transfer, there's nothing wrong with this. The problem comes when short messages and bulk transfers are sharing the same channel. The short messages can spend too much time in the queue.
The solution is reordering the packets, not dropping them. That's what "fair queuing" is about. It may be worthwhile to implement fairness at the port-pair level, rather than the IP address level, at entry to the air link. Then low-traffic connections will get through faster.
"Quality of service" can help, but it's not a panacea. The network layer can't tell which of the TCP connections on port 80 is highly interactive and which is a bulk download, other than by traffic volume.
(I used to do this stuff.)
1. the US is much bigger than Europe, with multiple overlapping jurisdictions. It's easy to cover any of the European countries, because they're small and there wasn't a technology transition.
2. there isn't as much rural subsidy for cellphones. Universal service was for landlines, mainly.
3. the problem is cost vs coverage. You can build out rural areas, but you make less money because there are less people. For urban areas, you start running into interference problems. Plus, you have to constantly build out your infrastructure (see AT&T's infrastructure problems).
Europe has it easy. It's not evil corporations (which, to be frank, is a retarded and simplistic view of how things work) - it's pure cost/benefit.
Example:
France: 211,207 square miles
Texas: 268,601 square miles
US: 3,537,441 square miles
If AT&T only had to operate in Texas, it would be able to do pretty well. AT&T's footprint is national, however. Do you develop Texas completely, or do you cover Michigan and Texas? How about extending to Missouri? etc etc.
Then that's current coverage; what about LTE? How about maintaining that infrastructure?