Yesterday there were some allegations made about whether Apple is intentionally throttling cellular data throughput on iPhones and iPads via some files used for network provisioning. The original source post has since been deleted, so I am linking to the always-awesome Tmonews instead. The reality is that this is simply not the case. Apple doesn't limit cellular data throughput on its devices — there's both no incentive for them to do so, and any traffic management is better off done in the packet core of the respective network operator rather than on devices. Sideloading tweaked carrier bundles isn't going to magically increase throughput, either.

At a high level, some of this seemed plausible at first, as this wouldn't be the first time that a handset maker throttled devices via some on-device setting at bequest of a network operator. If you've been with us long enough you'll probably remember the case of the HTC Inspire 4G and Atrix 4G, two handsets which AT&T disabled HSUPA on, and later re-enabled with an update. Later there was the AT&T Nexus S which also had its HSDPA and HSUPA categories limited via build.prop.

Thankfully this is not the case currently with any iOS devices.

There's no arbitrary capping of UE Category (User Equipment speed category), throttling on-device, or anything else that would prevent the device from attaching and taking full advantage of whatever the network wants to handshake with. If you're going to read anything, just take that away with you, as the full explanation gets technical fast. If you're willing, however, let's walk through it.

First, what is an IPCC or "Carrier Bundle" in the context of iOS? In order to support a huge number of mobile networks, Apple builds these bundles which contain settings used to provision and optimize the device for a particular network in collaboration with the respective network operator. These then get distributed inside a particular iOS release, or asynchronously via iTunes or over the air if they need to make updates as necessary.

Inside an IPCC are a number of .plist and .pri files for defining things unique to each network. There are also PNG images for the operator logo at top left with appropriate tweaks to character kerning and appearance.

Inside the .plist and .pri files are settings which define relevant network parameters for both iOS and the baseband. This spans the gamut from parameters like APNs that the phone should use, short codes (USSD codes) for checking balance or data use, credentials for WiFi networks that the mobile network operator runs to do offloading, to MMS settings such as payload size, address, and recipients, or tethering and visual voicemail settings. They also do contain lower level things such as band priority, configuration for UE category, and other network access settings. This is also where the "4G" indicator and 3G toggle settings are changed (see the above "DataIndicatorOverride" line), if you remember that whole situation. That last one remains my only gripe I've ever had with Apple's carrier bundles.

Apple doesn't openly document what these settings all do, because it doesn't have to since they're only developed and maintained internally, however nearly all of it is immediately obvious if you know the lingo. The problem is that a few of these were misinterpreted, leading to the false conclusion that there's some throttling conspiracy at play here, when there really isn't.

I'm going to look at the ATT_US bundle since that's where the most attention is. First is the allegation that the iPhone 5 is being artificially capped to HSDPA Category 10 (16 QAM single carrier - 14.4 Mbps) on the downlink when in fact it is capable of Category 24 (64QAM dual carrier - 42 Mbps).

This is inside the carrier.pri file, but it actually applies only to the iPhone 4S, a device which has Qualcomm's MDM6600 inside and is only capable of up to Category 10 on the downlink in the first place. There's no amount of hacking that is going to enable 64QAM or a second carrier on MDM6600, there simply isn't the appropriate QAM decoder inside the baseband, nor transceiver wide enough to do dual carrier.

The appropriate setting for HSDPA category on the iPhone 5 is set in the appropriately named 'overrides_N41_N42.plist' which of course refers directly to iPhone 5 via N41 and N42 codename. Inside this file we find the expected HSDPA Category 24 (64QAM dual carrier - 42 mbps) setting. This is actually entirely moot however, as the UE doesn't decide what capabilities it attaches to the network with, it merely exposes them in a message sent to the network on attach, which then decides what to negotiate. In the case of AT&T in the USA, that's Category 10 basically everywhere. I've never ever seen HSDPA Category 14 (64QAM - 21.1 Mbps) ever on AT&T's network, though this is a continually debated subject with enthusiasts, I've been told repeatedly AT&T has no desire to go any further, and certainly none to deploy dual carrier. So your HSDPA Cat 24 handset attaches as Cat 10 on HSPA+ either way, but Apple sets it to the full capabilities of their handset.

There's also the band class preference and something which looks like a UARFCN being set. I suspect this is being used to seed the baseband's preferred frequency table so it can perform a network search in that band on network attach to speed up initial attach. Changing this won't affect the neighbor list which the baseband builds out to decide what to handover to, something many don't understand.

Down below it we a similar set of settings for LTE.

The two keys here with the word "throttle" in them refer purely to a retry interval throttle to prevent the phone from continually trying to reattach to an LTE network in the case of some error. The name alone seems to be the burden of proof here that this is "throttling," however it could just as easily be renamed "retry interval timeout" and serve the same function. There are similar "FAILURE_TIMER_5:720;" entries in the IPCC files for the rest of the operators which do exactly the same thing and set a retry timer for their appropriate networks. For example, Verizon has "DATA_TRTL_ENABLED" which is the equivalent setting for 3GPP2 networks. I'm not going to go through all of them since they do exactly the same thing and basically prevent your phone from wasting a ton of battery trying to retry endlessly when there's some network issue, or creating a stampede or overload from too many handsets retrying to connect pointlessly fast.

Likewise there's an LTE band preference set here which corresponds to Band 17 (700 MHz Lower B and C), the only band AT&T runs its LTE network at present. There's no AT&T LTE on Band 4 lit up until at earliest later this summer, but again if there were, it'd attach anyway but after a while longer. There's nothing sinister about setting a preference here.

Virtually all the major mobile network operators do traffic management, but it's done in the packet core away from the UE where anyone can play with it. Some do more than others, and it varies more often than not by market region and time of day like you'd expect, as network conditions change. That's the reality of things, but in almost all cases the operators want their networks to go fast and for their users to see the best speeds.

Again, there's no reason for Apple to want to arbitrarily limit their devices, and the reality is that they don't, at all, on any version of iPad or iPhone or in any of the carrier bundles they've distributed for network operators. If anything, Apple has long been one of the few handset vendors who initially understood the importance of limiting annoying operator customizations. The Carrier Bundles are quite literally the only place in the entire OS they have indirect access (through Apple) to toggles they can play with.

Post Your Comment

39 Comments

Yes, but your bias is wrong. They aren't 'defending Apple', they are explaining a technical detail. Your request that they cover bent iPhones is in fact biased because it would be an intentional attempt to either attack Apple, or defend them. Either they would have to collect an enormous amount of data to be statistically significant, or they can't and then be running an opinion piece.Reply

The iPhone 5 is also several months old, introduced a slew of previously unseen technology and has had a staggered carrier launch. Also, it's clear that AnandTech spent weeks reviewing the HTC One and Samsung GS4... I'd say that's pretty thorough.

Here's the problem: every tech news site gets accusations of bias whenever it says anything positive about Apple or even covers Apple substantially. Engadget, Slashgear, TechCrunch, The Verge... even Android fan sites. This happens much less often with Google, HTC, LG, Microsoft or even Samsung. And that betrays the real issue, I think -- you're upset that AnandTech is acknowledging Apple's existence as something beyond a punching bag.Reply

No, I'm upset that there's never criticism towards Apple, it's closed ecosystem, its own standards or its products, and that every single thing they bring to market gets a 20+ page review with every nook and cranny analyzed. Everything they do is just amazing, awesome and unbelievable.How could anyone be upset about too much focus on, say, Windows Phone, when there's exactly 0 reviews on WinPho8 devices here...?Reply

So you believe that a TECH site's REVIEWS of Apple products should consist primarily of a rant about how Apple doesn't fit your model of an ideal tech company, a rant which is telling nothing new to anyone reading this site?

WTF do you think the purpose of this (or any other) blog is? Because I damn well am not interested in reading one article after another that constantly repeats the same damn thing. And it doesn't matter if that same damn thing is criticism of Apple, Google, MS, Intel, ARM, Samsung, or anyone else.

By the way, there's this thing called Google. If you want to read reviews of Win8 phones, you could start by spending more time using it and less time complaining that SOMEONE ELSE'S site doesn't do what you want.Reply

You're validating my point, here. You're not reading articles as they are, but rather as you presumed they would be. AnandTech's review of the iPhone 5 wrapped up by noting problems with battery life and the differing approaches to the OS that would lead some to choose Android. It wasn't effusive, that I can tell.Reply

If what you want is more reviews of Windows Phone 8, why couch that in terms of wanting fewer reviews of iPhone 5? Guess what: most readers are more interested in the iPhone 5 than you are, and this is not your personal site.Reply

Anandtech likely cost Apple millions when they proved the iP4 had antenna problems. Any bias here is yours. And this crap gets old, if you want a pro Android site there are quite a few,

Had Brian found throttling at the software level on the iPhone, that would have been reported too, that's not bias, that's just one of the best tech writers on one of the best tech sites doing his job, and that job is harder because of people like you screaming BIAS at the drop of a hat.

Have you listened to Brian on podcasts? He likes tech, not just one company over another, he likes tech, and his stories and reviews make all of our stuff better.Reply

Yeah, and Haswell just got, what, eight different articles in the last three days about various different aspects of it, plus another eight about motherboards using it, all based on the fact that this week is Computex.I don't see you whining about that.

Anand covers, for the most part, ALL technology, to an extent that's a combination of his team's interests and general public interest. If you want all Android all the time, stop reading here and go read AndroidPolice or something. Reply

What I want is the same treatment to all devices in the same category. Yes, Intel has had a lot of attention now. But AMD gets just as much attention when they have new stuff coming out. Also, AnandTech has criticized Intel about some of the choices especially in Haswell desktop parts.

If every iPhone, iPad, iMac and MacBook gets a 30 000 word review with in-depth analysis into every feature it has, why don't the flagship models from other manufacturers get that? Also, if and when Apple releases their rumoured mid-range smartphone, I'm 110% sure AnandTech will have a huge review on that, too. Where are the reviews of other mid-range smartphones? Why does the Apple mid-range phone matter so much more than the others? My problem is that whatever Apple does, it's on Anandtech. But with every other manufacturer they just review the flagship models if they happen to bother. There's no WinPho reviews, searching for "Jolla" or "Sailfish" gives 0 results, and so on.Reply