Resumo

  • O teste com um servidor reuniu 254.894.985 ensaios e teve média de 3,43 consultas autoritativas por ensaio; o teste posterior com dois servidores reuniu 150.221.951 e teve média de 2,57.
  • A parcela de ensaios com apenas uma consulta subiu de 58% para 71%. Como as duas séries ocorreram separadamente e tinham tamanhos diferentes, os agregados não provam que o servidor adicional causou a mudança.
  • O próximo produto necessário é um recibo de reprodução: tratamentos aleatórios na mesma janela, coortes comparáveis, topologia autoritativa congelada, fórmula de normalização aberta e distribuições temporais que testem explicações concorrentes.

Uma diferença grande, um mecanismo em aberto

A APNIC Labs fez uma pergunta prática: oferecer dois servidores autoritativos muda a quantidade de consultas enviadas por resolvedores recursivos? No primeiro conjunto, com um servidor, 254.894.985 ensaios geraram 875.316.423 consultas, média de 3,43. Em 147.233.117 ensaios — 58% no relatório — houve uma única consulta.

O conjunto posterior, com dois servidores, contém 150.221.951 ensaios e 385.725.364 consultas, média de 2,57. Foram 106.376.529 ensaios com consulta única, ou 71%. Nos ensaios com repetições, a média de consultas repetidas também caiu de 3,80 para 2,56.

O volume e a magnitude da diferença são relevantes. O segundo teste realmente mostra menos consultas por ensaio e mais casos com uma só consulta. Mas o nome do tratamento não identifica a causa. O próprio autor chama o resultado de inesperado e diz não ter uma explicação definitiva.

Tamanho diferente não é o mesmo que condição diferente

Comparar cerca de 255 milhões de ensaios com 150 milhões não invalida, por si só, a análise. Estudos observacionais grandes usam proporções e normalizações; a APNIC normalizou os conjuntos antes de comparar seus perfis temporais. A pergunta mais difícil é se as condições de medição eram comparáveis.

O experimento anterior descreve nomes aleatórios únicos acionados por pontos de medição em anúncios do Google, uma zona sem assinatura, respostas curtas não truncadas, serviço UDP e TCP e observação por 24 horas. Também registra diferenças geográficas, com a Rússia como exceção notável. A configuração com um servidor usava um servidor autoritativo de pilha dupla em cada uma de seis zonas: América do Norte, América do Sul, Europa e África, Índia, Ásia e China.

Para uma comparação causal, é necessário saber o que permaneceu constante quando o segundo nome foi adicionado. Os tratamentos ocorreram nas mesmas datas e horários? A mistura de países, redes de acesso, endereços de resolvedores e famílias IP foi estável? Local, rota, anycast ou unicast, TTL, código e tamanho de resposta e janela de observação eram iguais? Normalizar ajusta denominadores; não corrige mudança não informada de população ou caminho de rede.

O diagnóstico correto não é que os tamanhos distintos tornam o experimento inútil. É que falta o recibo que liga tratamento e controle. Uma segunda amostra menor pode convencer quando a alocação e as constantes estão visíveis. Centenas de milhões de observações ainda deixam a causalidade aberta quando o relógio ou a população muda junto com o tratamento.

As curvas de tempo dão a melhor pista

As distribuições informam mais que as médias. Com um servidor, mais de 85% das duplicatas chegaram no primeiro segundo; com dois, foram 75%. Em ambos os testes, cerca de 90% chegaram em cinco segundos. A curva de dois servidores também apresentou picos próximos de 0,75, 1,5 e 3 segundos.

Na ponta rápida, 17% das repetições do teste com um servidor ocorreram em menos de 10 milissegundos, contra 12% com dois. Depois da normalização, a maior diferença ficou entre 10 e 70 milissegundos, sobretudo entre 10 e 40. Isso é mais curto do que um timeout UDP típico de um resolvedor recursivo e não combina apenas com uma sequência de esperar, falhar e repetir.

Uma possibilidade levantada pelo autor é uma fazenda de resolvedores. Um frontend ciente de DNS pode distribuir o trabalho entre vários backends recursivos, e mais de um backend pode buscar o mesmo nome. A PowerDNS descreve o dnsdist como um balanceador DNS na frente de servidores recursivos. Isso mostra que a arquitetura existe; não demonstra que ela produziu as curvas da APNIC. Sem rastros internos, um endereço de origem pode esconder distribuição, corridas entre backends, escolha IPv4/IPv6, estado de cache ou algoritmo específico.

Tampouco há uma regra universal de escolha de servidor autoritativo. As notas da APNIC sobre o DNS-OARC 43 registram diferenças de pontuação inicial, aprendizado de latência e preferência IPv6 entre BIND, PowerDNS Recursor, Knot Resolver e Unbound. Um segundo nome de pilha dupla adiciona opções de nome e endereço; o efeito depende do software e da topologia.

O que deve entrar no recibo

Uma repetição deve alocar aleatoriamente os ensaios entre um e dois servidores dentro da mesma janela ou alternar blocos curtos definidos previamente. A contagem por bloco precisa ser publicada para impedir que uma mudança de dia, campanha ou tráfego vire silenciosamente “efeito do servidor”.

A composição por macrorregião, rede de acesso, endereço estável de resolvedor e família IP deve aparecer em agregados que preservem privacidade. O objetivo não é identificar usuários, e sim verificar se as populações por trás de 58% e 71% são comparáveis e se a diferença permanece dentro de cada estrato.

Toda a superfície autoritativa deve ficar fixa, exceto pelo nome adicional: software, conteúdo da zona, TTL, DNSSEC, código e tamanho da resposta, truncamento, UDP/TCP, período de observação, endereços, locais e rotas. O uso de unicast ou anycast deve ser declarado. Dois nomes que chegam ao mesmo local não testam a mesma resiliência de dois serviços topologicamente separados.

O relatório também precisa trazer fórmula de normalização, exclusões, denominadores, curvas brutas e normalizadas e intervalos de incerteza. Rajadas abaixo de 10 ms, a faixa de 10 a 70 ms, picos posteriores e a cauda acima de cinco segundos devem ser separados. Distribuição no frontend, concorrência de backends, família IP, implementação, cache e geografia da campanha precisam ser hipóteses registradas antes do resultado.

Dois servidores continuam fazendo sentido por resiliência

Esta auditoria não rejeita múltiplos servidores autoritativos. A RFC 2182 recomenda servidores fisicamente e topologicamente separados para confiabilidade e distribuição de carga. Um estudo anterior da APNIC também sugeriu pelo menos dois serviços distintos, de pilha dupla e geograficamente diversos, com ganho marginal menor acima de dois nas suas medições.

Essa orientação se apoia na continuidade: se um servidor, rota ou local falhar, outro pode manter a zona acessível. Ela não precisa da promessa não comprovada de que o segundo servidor sempre reduzirá a média de consultas de 3,43 para 2,57. Operadores podem adotar diversidade agora e ainda exigir uma reprodução controlada antes de usar a diferença em capacidade, desenho de resolvedores ou previsão de desempenho.

A conclusão robusta é estreita. A APNIC observou uma mudança importante entre duas linhas de base publicadas e deixou o mecanismo em aberto. Um recibo compartilhado de tempo, coorte e topologia transformaria essa incerteza honesta em resultado operacional testável.

Fontes