46% de la charge de la batterie est consacrée au transfert de 0,2% des octets
Lorsqu'un utilisateur de Pandora lit une chanson, le fichier entier est transféré en un seul morceau et, à juste titre, transférez autant de données que possible à la fois, puis éteignez la radio le plus longtemps possible.
Cependant, après ce transfert, l'application envoie des pings toutes les minutes pour une analyse périodique de l'audience. Et quelle est la ligne de fond? Ces pings représentent 0,2% du total des données transférées, tout en consommant 46% de toute l'énergie utilisée par l'application!
Ilya Grigorik, réseau de navigateurs haute performance
Chaque fois dans le livre, Ilya divulgue son point de vue assez largement, en le soutenant avec de nombreux exemples. Pour informer les lecteurs de l'autonomie de la batterie du téléphone, il consacre un chapitre entier aux détails du fonctionnement du modem GSM, UMTS et LTE. Il est intéressant de comprendre comment un problème survenant à l'un des niveaux a ses racines plusieurs niveaux en dessous.
En examinant l'ensemble des technologies, le livre nous donne non seulement un ensemble de faits, mais promeut toute une philosophie.
Les bons développeurs savent comment les choses fonctionnent.
Les grands développeurs savent pourquoi cela fonctionne.
Steve Souders, introduction à la mise en réseau de navigateurs haute performance
Ancienne idée d'une nouvelle manière
En 2013, alors que je lisais le livre, j'ai pensé que ce serait cool de faire ma propre enquête sur ce sujet et de visualiser comment le modem radio saute de tour en tour lorsque le téléphone bouge.
Il était impossible de faire cela avec un téléphone de 2013 sous iOS, cela ne donnait pas accès aux données nécessaires. Mais aujourd'hui, j'ai un Pixel, et il n'a pas ce problème. LocationManager donne l'emplacement GPS (latitude et longitude) toutes les secondes. TelephonyManager donne cellID = (mmc, mcc, lac, cid) pour la tour de téléphonie cellulaire.
La base de données cellID vous aidera à connaître la latitude et la longitude de chaque tour. Il ne reste plus qu'à tracer à chaque seconde l'itinéraire (en rouge) et la connexion avec les tours, pour chacune desquelles une couleur différente a été choisie. Conduire de Sunnyvale à Mountain View (cliquable)

Le diagramme montre un trajet de 7 minutes sur 3,7 km avec un téléphone compatible LTE (UE, à partir de l'équipement utilisateur). Sur le chemin, nous avons rencontré cinq tours et neuf cellules de communication (eNB, d'Evolved NodeB).
Analyse
En combinant Google StreetView et Wikipedia, vous pouvez comprendre beaucoup de choses. (cliquable) Plusieurs cellIDs peuvent être localisés aux mêmes coordonnées eNB. C'est juste que l'antenne de l'eNB ne couvre pas 360 °. L'angle de direction et la plage de fonctionnement de chaque antenne découpent l'espace en secteurs. L'emplacement et la direction des antennes sont stratégiquement sélectionnés. Sur la carte ci-dessus, les tours sont installées le long de la route 85 et les antennes lui sont parallèles. Certaines antennes ont une portée de fonctionnement étroite et longue - cela vous permet peut-être d'augmenter la densité des téléphones pendant les embouteillages.

La densité de l'eNB est beaucoup plus élevée que je ne le pensais. Sur Internet, ils écrivent que la portée de la tour cellulaire est de 45 miles. C'est peut-être dans la nature, mais en ville, la densité de population et la densité d'eNB sont liées. À Sunnyvale, il y a des tours tous les 1,5 km.
Plusieurs opérateurs ne partagent pas toujours les tours. La base de données CellID est si précise que j'ai pu trouver ces tours sur Google StreetView. Je pensais y trouver de grands monolithes parsemés d'antennes, plusieurs pour chaque opérateur, mais dans la plupart des cas une antenne est accrochée à la tour.
Les antennes ENB ne sont pas seulement montées sur des tours . Parfois, ils sont situés dans des églises, sur des lignes électriques à haute tension.et même sur les bâtiments commerciaux.

Dès que vous commencez à chercher ces tours, elles passent d'invisibles à des objets qui ne peuvent être ignorés.
La radio LTE peut passer d'une cellule à l'autre. Apparemment, cela se produit assez souvent plusieurs fois par minute pour faire face au fait que les bâtiments obstruent les tours.
Le choix de la tour semble être déterministe. Sur les deux cartes ci-dessus, les connexions de carte sur la même section du chemin se ressemblent. Le choix est fait par une machine à états dont la configuration est définie par chaque cellule au moyen de messages SIB. La transition d'état dépend de nombreux facteurs, y compris. à partir du seuil d'intensité du signal de la cellule précédente ou du seuil d'intensité du signal de la cellule suivante.
Ayant parcouru une assez longue distance, 16 km, j'ai remarqué que le code LAC (Location Area Code) du CellID n'a pas changé. Selon la spécification LTE, les tours cellulaires ne sont pas obligées d'effectuer une transmission UE si le LAC ne change pas. Le téléphone passe à la tour suivante, restant en mode RCC_IDLE et ne transmettant pas de données. Cela économise non seulement la batterie, mais signifie également que l'opérateur cellulaire ne connaît pas l'emplacement exact du téléphone si le LAC n'a pas changé (bien qu'il y ait eu un débat sur l'exactitude de la détermination de l'emplacement par les cellules depuis l'avènement du GSM) .
Apparemment, chaque tour possède trois antennes avec un secteur de couverture de 120 °. Cela est évident si vous entourez l'un d'entre eux.

Nous montons plus profondément dans le terrier du lapin
C'était intéressant de dessiner des cartes. Je voulais en savoir plus sur ce domaine. J'ai trouvé que c'était non seulement profond mais aussi large. Même pour dessiner un tableau minimal basé sur les résultats de l'enquête, j'ai dû passer beaucoup de temps à démonter avec des acronymes.
Génération | La technologie | Commercialisation | Notes (modifier) |
---|---|---|---|
0G | Téléphones dans les voitures | Comme Philip Drummond [personnage de la sitcom Diff'rent Strokes / env. par.] | |
1G | DynaTAC | Comme Gordon Gekko [personnage de film de Wall Street / env. par.] | |
2G | GSM | GSM | Nokia 3310 (alias «brique»). Prise en charge des SMS |
GPRS | Voix ou données | ||
BORD | iPhone 1 | ||
cdmaOne | CDMA | ||
3G | UMTS | HSPA | iPhone 3GS. Voix et données en même temps |
HSPA + | |||
CDMA2000 | C2K | ||
4G | LTE | LTE | iPhone 5 / Pixel 1 |
LTE avancé | LTE + | ||
LTE Advanced Pro | LTE Pro | ||
5G | 5G | 5G | iPhone 12 / Pixel 4a 5g |
5G mmWave | 5G mmWave | iPhone 12 Pro Max / Pixel 5G |
Monde ésotérique
Depuis la 2G (GSM) en 1998, 3GPP a élaboré des normes et de la documentation pour toutes les piles techniques. Toutes ces spécifications s'étendent sur des centaines de documents, et il semble prendre toute une vie pour les comprendre.
Je n'ai pas trouvé de pile LTE open source pour apprendre. Et même si c'était le cas, la transmission radio dans la gamme cellulaire est soigneusement régulée afin que ces fréquences ne soient pas des modems défectueux.
Peu de livres ont été publiés sur ce sujet et ils sont tous extrêmement coûteux. J'ai été personnellement inspiré pour faire mes recherches par les trois suivants:
- Une introduction à LTE par Christopher Cox.
- LTE Advanced par Sassan Ahmadi.
- Long Term Evolution In Bullets, 2e édition par Chris Johnnson.
Enfin, il existe des applications qui vous permettent de regarder sous le capot du modem, de lire son état et son message. Mais j'ai décidé de ne pas les utiliser - ils sont chers et nécessitent également un root.