Versão do algoritmo: link4you-2.5
Publicação: 21 de setembro de 2026.
1. Escopo e caminho medido
O cliente do teste roda no navegador. Antes de medir, ele compara a rota do endpoint próprio do Link4You com a de um endpoint público de medição da rede global de borda. A rota responsiva e confiável escolhida é usada para ping, jitter, download e upload daquela execução; não misturamos destinos para produzir uma única nota. Se o endpoint público falhar na preparação ou seleção, o teste usa o endpoint próprio. O roteamento Anycast é definido pela rede e pode variar; não garante o ponto geograficamente mais próximo. Assim, entram no resultado o aparelho, o navegador, a rede local, o acesso do provedor e a rota até o servidor selecionado.
O endpoint de metadados pode informar código do ponto de borda, país, região e cidade aproximada, ASN e nome da rede, protocolo HTTP e versão TLS quando esses campos forem disponibilizados pela infraestrutura. O código do servidor exibido acompanha a rota escolhida para medir, não apenas a rota usada para abrir a página. Se houver evidência de mudança de ponto durante a medição, os códigos observados aparecem em sequência e a confiança do resultado é reduzida. Esses dados descrevem as solicitações, não uma localização precisa do usuário.
2. Preparação e amostras válidas
A primeira conexão pode incluir resolução de nome, negociação TCP, TLS e aquecimento interno do navegador. Por isso, amostras iniciais podem ser usadas como preparação e não devem dominar a estimativa final. Respostas em cache são evitadas com cabeçalhos no-store e cargas parametrizadas.
A medição deve ser considerada menos confiável se a aba perde visibilidade, se a rede troca durante o processo, se há poucas amostras válidas ou se o navegador interrompe transferências. Nessas situações, o produto reduz a confiança exibida ou pede uma repetição.
3. Latência, percentis e jitter
Cada amostra de latência mede o tempo até o primeiro byte de uma resposta mínima; não é ICMP. Quando o navegador disponibiliza PerformanceResourceTiming, usamos responseStart − requestStart e descontamos somente o processamento identificado por campos técnicos confiáveis do servidor. Em recursos cross-origin com detalhes protegidos, usamos a duração interna da pequena solicitação registrada pelo próprio navegador; somente quando ela também não existe recorremos ao relógio monotônico.
As amostras válidas são ordenadas para análise por percentis:
- P50 (mediana): é o ping exibido e também resume a latência sob carga, representando a resposta típica sem deixar um único pico dominar.
- Menor RTT válido: pode ser útil como diagnóstico da melhor viagem observada, mas sozinho é otimista demais para representar a experiência normal.
Antes da medição, o navegador aquece as rotas em paralelo e as compara sequencialmente para evitar disputa artificial no Wi‑Fi ou rádio móvel. Se as três primeiras respostas de cada rota forem válidas e houver grande diferença de latência, a escolha termina cedo; caso contrário, recolhemos até cinco amostras por rota e exigimos ao menos quatro válidas. Entre as rotas elegíveis, uma diferença relevante de mediana decide; quando são parecidas, a confiabilidade desempata. Após a seleção, o tráfego de escolha é drenado e uma última amostra de aquecimento é descartada. Ping, jitter, download, upload e latência sob carga usam o mesmo hostname selecionado, embora o ponto Anycast possa mudar. Os dois modos tentam coletar 20 pings e só aceitam a série com ao menos 16 respostas válidas e 10 pares consecutivos. O ping exibido é a P50 da série. Depois da coleta, o jitter é calculado como a média das diferenças absolutas entre pings consecutivos; ele não inicia uma transferência concorrente. Falhas e timeouts quebram a sequência e não unem artificialmente as amostras vizinhas. Nenhum fator de correção ou multiplicador artificial é aplicado.
4. Download e upload: goodput HTTP
A velocidade é calculada a partir dos bytes úteis efetivamente processados dentro da janela válida:
Mbps = bytes úteis × 8 ÷ segundos ÷ 1.000.000
Esse valor é goodput HTTP. Cabeçalhos, retransmissões, encapsulamento, correção de erros e outros custos de protocolo não entram como bytes úteis. Por isso, o resultado normalmente é menor do que a taxa bruta de sincronismo ou capacidade nominal do meio físico.
No download, o servidor transmite uma carga binária sem transformação e sem cache. No upload, o navegador gera a carga, o servidor a lê e a descarta; o conteúdo não é armazenado. Cada solicitação é limitada a 100 MB no download e 50 MB no upload.
O algoritmo 2.5 aquece previamente as rotas e, no modo de conexões múltiplas, aumenta a concorrência em três rodadas — 2, 4 e, quando necessário, até 8 fluxos simultâneos. Essa progressão permite ocupar conexões rápidas sem depender do limite de uma única transferência. O modo de conexão única mantém um fluxo por rodada para diagnosticar o desempenho de uma só transferência. O modo completo usa no máximo 450 MB para download e 330 MB para upload; o modo econômico usa no máximo 40 MB e 22 MB, respectivamente.
A série de velocidades é analisada ao longo do tempo. A estimativa principal combina rodadas sustentadas e descarta a dependência de um único pico instantâneo. No upload, o navegador acompanha o avanço real dos bytes enviados em janelas curtas; bytes que não chegaram a ser transmitidos não entram no total.
5. Latência sob carga e bufferbloat
Enquanto a conexão é ocupada por download ou upload, pequenas solicitações continuam medindo resposta. O aumento usado para o diagnóstico é:
aumento = maior latência carregada − latência ociosa
| Nota | Aumento de latência | Leitura |
|---|---|---|
| A | até 20 ms | Excelente controle de filas |
| B | 21 a 50 ms | Bom |
| C | 51 a 100 ms | Perceptível em usos interativos |
| D | 101 a 200 ms | Impacto importante sob carga |
| E | acima de 200 ms | Impacto severo sob carga |
A nota é um indício de comportamento de fila. Ela não identifica sozinha se a origem está no roteador, Wi‑Fi, modem, provedor ou em outro trecho do caminho.
6. Variabilidade e estabilidade
A estabilidade usa o coeficiente de variação das amostras positivas de velocidade: desvio-padrão dividido pela média. A versão 2.5 converte essa dispersão em uma escala de 0 a 100 pela expressão 100 − coeficiente × 220, limitada ao intervalo de 0 a 100.
Uma nota alta significa que as amostras ficaram próximas entre si; não significa necessariamente alta velocidade. Poucas amostras, limitação de CPU, economia de energia e alternância de rede podem reduzir a qualidade dessa estimativa.
7. Nota Link4You
A nota geral representa usabilidade, não conformidade contratual. Cada dimensão é normalizada por faixas contínuas, com interpolação entre pontos, e recebe o seguinte peso:
| Dimensão | Peso |
|---|---|
| Download | 20% |
| Upload | 15% |
| Latência ociosa | 20% |
| Aumento de latência sob carga | 20% |
| Jitter | 10% |
| Estabilidade | 15% |
A classificação é: Excelente de 90 a 100; Boa de 75 a 89; Regular de 60 a 74; Fraca de 40 a 59; e Crítica abaixo de 40. A velocidade contratada informada pelo usuário aparece como comparação separada e não altera a fórmula da nota.
8. O que não medimos
- Potência física do sinal Wi‑Fi em dBm, porque navegadores comuns não disponibilizam esse dado de forma confiável.
- Perda real de pacotes ICMP. Falhas HTTP não são apresentadas como perda de pacotes.
- Velocidade entre o modem e a central do provedor isoladamente.
- Qualidade de todas as rotas, CDNs, jogos, serviços de vídeo ou destinos internacionais.
- Capacidade garantida do plano ou prova conclusiva de descumprimento contratual.
9. Limitações e reprodução
Resultados são afetados por Wi‑Fi, cabo, processador, navegador, extensões, VPN, proxy, economia de energia, outros aparelhos e tráfego simultâneo. Para comparação, use o mesmo aparelho e local, feche atividades paralelas, repita pelo menos três vezes e observe a mediana. Para investigar o provedor, compare também por cabo e em horários diferentes.
Esta metodologia será versionada quando pesos, faixas ou procedimentos mudarem de modo material. Resultados salvos registram a versão do algoritmo usada na ocasião.