Uma queixa de consumo chega normalmente como «o VPN come a minha bateria», que é uma conclusão e não uma observação. O que a medição mostra é que uma mistura de transferências, despertares do rádio e reconexões manteve o dispositivo ocupado. A encriptação contribui para essa conta, e num telemóvel moderno raramente é a linha maior. Separe as três e a queixa passa a ser algo que realmente pode testar.

O que um túnel acrescenta à viagem de um pacote

Cada pacote que o túnel transporta é autenticado, encriptado, envolvido noutro cabeçalho e desembrulhado no outro extremo. Esse trabalho custa ciclos de processador e, mais importante, mantém a interface de rede ocupada durante mais tempo do que a carga útil sozinha faria. Uma cópia de segurança que dura dez minutos através de um túnel continua a ser uma cópia de dez minutos, com um pouco mais de sobrecarga por pacote. Os bytes e a duração vêm da aplicação, não do túnel.

É por isso que uma percentagem num relatório de bateria é uma má guia para a sobrecarga. O relatório atribui o trabalho por componentes, e as regras de atribuição variam entre plataformas.

Leia o relatório ao lado de um contador de rede e do tempo com o ecrã ligado. Quando a janela de transferência coincide com a de consumo, a carga de trabalho explica o resultado e o protocolo fica em segundo plano. Quando o consumo continua enquanto os contadores estão parados, algo mantém o rádio acordado, e a secção seguinte é o sítio onde deve olhar.

Keepalives, reconexões e o estado acordado do rádio

Um ecrã que parece inativo não prova uma rede inativa. A sincronização, as mensagens e as verificações de atualizações enviam pequenas quantidades de tráfego, e cada uma pode tirar o rádio de um estado de baixo consumo muito mais tempo do que dura a própria troca. O tráfego pequeno e frequente é caro por byte porque o custo fixo domina.

Um túnel acrescenta o seu próprio tráfego pequeno na forma de keepalives, que existem para manter aberto um mapeamento NAT ou para notar que um par desapareceu. O propósito depende do protocolo e da rede, e desativá-los pode reduzir a atividade mas deixar o túnel inutilizável após um período inativo. Se testar outro valor, registe o original e confirme que o túnel ainda recupera depois. Nunca importe um intervalo de outro protocolo, porque uma constante que serve um desenho é arbitrária noutro.

A rotação de ligações é o segundo custo. Um cliente que se reconecta a cada poucos minutos passa o tempo em handshakes em vez de carga útil, e o rádio nunca tem oportunidade de assentar.

Quando a plataforma para o túnel para poupar energia

Os sistemas operativos móveis restringem a execução em segundo plano, e um túnel não está isento dessa política. Uma ligação que desaparece quando o ecrã se apaga é normalmente um problema de integração com a plataforma e não um servidor que recusa a sessão. As indicações de bateria do próprio cliente são o ponto de partida, porque descrevem a forma suportada de permanecer ligado durante o sono.

Isentar tudo da gestão de energia não é uma solução. Cria uma carga de trabalho diferente e destrói a comparação que estava a tentar fazer.

Depois decida o que deve acontecer quando o dispositivo dorme, porque o funcionamento sempre ativo, o comportamento de bloqueio sem túnel e a otimização da bateria respondem a três perguntas diferentes. Uma definição que poupa energia ao largar silenciosamente a cobertura necessária não preservou o objetivo original: escondeu a falha. Escreva a política pretendida antes de ajustar seja o que for. Sem isso, acaba a escolher entre um túnel que consome e um túnel que simplesmente não existe, e a chamar sucesso a qualquer dos resultados.

Monte uma comparação em vez de uma crença

Compare o comparável: mesma tarefa, mesma rede, mesma duração, sinal semelhante. Registe os dados transferidos, o número de reconexões, a temperatura do dispositivo e as condições do sinal, porque qualquer um deles pode deslocar o resultado por si só. Alguns por cento de bateria numa hora estão dentro do ruído da maioria dos telemóveis, mas um padrão repetível em várias execuções não está. Guia de VPN do Android descreve o ciclo de vida e o comportamento sempre ativo que um cliente bem comportado segue, o que é contexto útil quando um cliente não o faz.

Mova as transferências grandes opcionais para um momento em que a energia e a rede sejam ambas baratas.

Depois aja conforme o que a comparação mostrou. Se a carga de trabalho o explica, agende a carga. Se a rotação o explica, corrija a transição de rede que a provoca. Se a plataforma o explica, siga a política de bateria suportada para esse cliente. Enfraquecer as definições criptográficas é a única alteração que melhora o número sem tocar na causa, e é por isso que deve ser a última coisa a que alguém recorre.

Artigos relacionados