El VPN es menja la bateria? Què ja feia la ràdio
El xifratge és una part petita del compte. Separa la transferència, els despertars de la ràdio i les reconnexions, i després compara dues execucions que només difereixen en una cosa.
Una queixa de consum sol arribar com “el VPN es menja la bateria”, que és una conclusió i no una observació. El que mostra el mesurament és que una barreja de transferències, despertars de la ràdio i reconnexions va mantenir el dispositiu ocupat. El xifratge hi contribueix, i en un telèfon modern poques vegades és la línia més gran. Separa les tres coses i la queixa es converteix en alguna cosa que realment pots provar.
Què afegeix un túnel al viatge d’un paquet
Cada paquet que el túnel transporta s’autentica, es xifra, s’embolcalla en una altra capçalera i es desembolcalla a l’altre extrem. Aquesta feina costa cicles de processador i, més important, manté la interfície de xarxa ocupada més estona del que ho faria la càrrega útil sola. Una còpia de seguretat que dura deu minuts per un túnel continua sent una còpia de deu minuts amb una mica més de sobrecàrrega per paquet. Els bytes i la durada vénen de l’aplicació, no del túnel.
Per això un percentatge en un informe de bateria és una mala guia de la sobrecàrrega. L’informe atribueix la feina per components, i les regles d’atribució difereixen entre plataformes.
Llegeix l’informe al costat d’un comptador de xarxa i del temps amb la pantalla encesa. Quan la finestra de transferència coincideix amb la de consum, la càrrega de treball explica el resultat i el protocol és secundari. Quan el consum continua mentre els comptadors no es mouen, alguna cosa manté la ràdio desperta, i la secció següent és on cal mirar.
Keepalives, reconnexions i l’estat despert de la ràdio
Una pantalla que sembla inactiva no demostra una xarxa inactiva. La sincronització, els missatges i les comprovacions d’actualitzacions envien petites quantitats de trànsit, i cadascuna pot treure la ràdio d’un estat de baix consum molt més estona del que dura l’intercanvi. El trànsit petit i freqüent és car per byte perquè el cost fix domina.
Un túnel afegeix el seu propi trànsit petit en forma de keepalives, que existeixen per mantenir oberta una assignació NAT o per adonar-se que un igual ha desaparegut. La seva finalitat depèn del protocol i de la xarxa, i desactivar-los pot reduir l’activitat però deixar el túnel inservible després d’un període inactiu. Si proves un valor diferent, anota l’original i confirma que el túnel encara es recupera després. No importis mai un interval d’un altre protocol, perquè una constant que va bé en un disseny és arbitrària en un altre.
El moviment de connexions és el segon cost. Un client que es reconnecta cada pocs minuts passa el temps en els handshakes en lloc de la càrrega útil, i la ràdio no té mai l’oportunitat d’estabilitzar-se.
Quan la plataforma atura el túnel per estalviar energia
Els sistemes operatius mòbils limiten l’execució en segon pla, i un túnel no n’està exempt. Una connexió que desapareix quan s’apaga la pantalla sol ser un problema d’integració amb la plataforma, no un servidor que rebutja la sessió. Les indicacions de bateria del propi client són el punt de partida, perquè descriuen la manera admesa de romandre connectat durant la son.
Eximir-ho tot de la gestió d’energia no és cap solució. Crea una càrrega de treball diferent i destrueix la comparació que volies fer.
Després decideix què ha de passar quan el dispositiu dorm, perquè el funcionament sempre actiu, el comportament de bloqueig sense túnel i l’optimització de bateria responen tres preguntes diferents. Un paràmetre que estalvia energia deixant caure en silenci la cobertura necessària no ha conservat l’objectiu original: ha amagat la fallada. Escriu la política prevista abans de tocar res. Sense això, acabes triant entre un túnel que consumeix i un túnel que simplement no hi és, i anomenant èxit qualsevol dels dos resultats.
Munta una comparació en lloc d’una creença
Compara el que és comparable: mateixa tasca, mateixa xarxa, mateixa durada, senyal similar. Anota les dades transferides, el nombre de reconnexions, la temperatura del dispositiu i les condicions del senyal, perquè qualsevol d’aquests factors pot moure el resultat per si sol. Uns quants per cent de bateria en una hora és dins del soroll de la majoria de telèfons, mentre que un patró repetible en diverses execucions no ho és. Guia de VPN d’Android descriu el cicle de vida i el comportament sempre actiu que segueix un client ben educat, cosa que és un context útil quan un client no ho fa.
Mou les transferències grans opcionals a un moment en què tant l’energia com la xarxa siguin barates.
Després actua segons el que va mostrar la comparació. Si ho explica la càrrega de treball, programa la càrrega. Si ho explica el moviment de connexions, arregla la transició de xarxa que el provoca. Si ho explica la plataforma, segueix la política de bateria admesa per a aquell client. Debilitar la configuració criptogràfica és l’únic canvi que millora el número sense tocar la causa, i per això hauria de ser l’últim recurs de qualsevol.