Resumo
- O PING dos Fuzzballs descrito por Dave Mills em 1983 já era usado havia anos e fazia parte de um sistema de medição com sondas variadas e ferramentas de análise; o ping de Mike Muuss para BSD era uma implementação distinta.
- Na lembrança posterior de Muuss, a versão BSD surgiu em dezembro de 1983 e exigiu suporte de kernel para sockets ICMP brutos, além de uma apresentação simples de sequência, tempo de ida e volta e perda.
Quando a rede parece instável, a primeira pergunta costuma ser pequena: um destino responde a este teste, visto daqui e agora? Para responder, alguém precisa enviar um pacote, marcar o tempo, associar a resposta à solicitação e tornar o resultado legível. “Ping” acabou nomeando ferramentas feitas para esse trabalho em ambientes diferentes. A narrativa de uma única invenção esconde a passagem de uma bancada de experimentação para um comando que um operador podia repetir no Unix.
O protocolo veio antes. Em setembro de 1981, a RFC 792 definiu ICMP Echo e Echo Reply. O pedido podia transportar dados, identificador e número de sequência; o host respondente devolvia esses valores, que ajudavam a relacionar resposta e solicitação. A RFC não criou o comando de terminal, as medições em série nem um teste para saber se uma aplicação está pronta. Também não atribuiu confiabilidade ao ICMP: seu papel é relatar aspectos do ambiente de comunicação IP, sem garantir a entrega do datagrama ou da própria mensagem de controle.
Dave Mills já tinha um PING nos sistemas Fuzzball. Em sua RFC 889, de dezembro de 1983, ele o chama de PING original, expande o nome como “Packet InterNet Groper” e afirma que o programa era usado havia seis anos em medições da Internet e de redes clientes. Era um dos pacotes de medição de um host LSI-11 instrumentado. Enviava vários tipos de sondas, inclusive ICMP Echo; processava respostas; guardava tempos e outras informações; e produzia histogramas e rastros ao vivo. Essa descrição aponta para uma ferramenta dentro de um conjunto de pesquisa, não para um comando isolado.
Os ensaios da RFC mostram a diferença entre emitir um teste e fazer uma medição interpretável. Nos experimentos de outubro e novembro de 1983, um Fuzzball enviava Echo com comprimentos escolhidos e marcas de tempo, esperava a resposta correspondente e anotava o tempo decorrido; cada execução incluía 512 ciclos. Mills usou os registros para estudar como tamanho do pacote, caminhos e perdas afetavam a demora e o cálculo do timeout de retransmissão do TCP. Ele separou demora na rede de filas que podiam existir dentro dos hosts. Uma linha de tempo não explicava sozinha o caminho: os dados e a forma da coleta davam contexto.
O relato de Mike Muuss trata de outra implementação. Ele recorda que, em julho de 1983, durante uma reunião da DARPA na Noruega, Mills comentou as medições de latência com Echo temporizado nos Fuzzballs LSI-11. Em dezembro, um comportamento incomum da rede IP no Ballistic Research Laboratory levou Muuss a escrever PING para 4.2a BSD UNIX. A conversa e a sequência vêm da memória em primeira pessoa publicada depois por Muuss. Seu código usava uma socket Berkeley SOCK_RAW/AF_INET para ICMP, mas o kernel não oferecia o suporte necessário. Ele conta que acrescentou essa capacidade durante a noite. Antes do primeiro pacote de teste, Chuck Kennedy, seu colega, já havia encontrado e corrigido uma falha do hardware local.
O destino operacional era outro. O PING dos Fuzzballs ajudava pesquisadores a montar e analisar séries de experimentos. A versão BSD de Muuss deixava um operador repetir o Echo a partir do próprio sistema e ler a resposta sem uma bancada especializada. O exemplo que Muuss preservou exibe número de sequência, tempo por resposta, quantidade de pacotes enviados e recebidos, perda e valores mínimo, médio e máximo do tempo de ida e volta. O ICMP oferecia a resposta; o utilitário conectava repetição, relógio e resumo em linguagem de terminal.
Muuss diz que Berkeley recebeu o código e as mudanças de kernel e que o programa passou a integrar o Berkeley UNIX. Seu testemunho não determina em qual lançamento cada componente chegou nem prova que todas as implementações posteriores fossem idênticas.
O nome também tem mais de uma trilha. Muuss conta que pensou no som de um sonar e na ecolocalização. Mills, por sua vez, expande o nome do PING dos Fuzzballs como “Packet InterNet Groper”; Muuss diz que só ouviu de terceiros que Mills talvez tenha proposto a expressão. A evidência sustenta a associação da expansão com o programa Fuzzball e a explicação acústica dada por Muuss para sua versão BSD. Não sustenta uma única cerimônia de nomeação incontroversa.
Uma resposta ICMP Echo mostra que um respondente devolveu aquela sonda com os dados e campos usados para reconhecê-la. Uma série permite acompanhar latência e silêncio sob parâmetros, origem e período definidos. Ela não comprova que um site, um servidor de email ou outro serviço esteja disponível; não autentica quem respondeu; nem cobre todos os caminhos. A falta de resposta pode decorrer de filtragem, política, congestionamento ou carga do host. O valor do trabalho Fuzzball estava em reunir amostras, rastros e interpretação; o ping BSD tornou a observação fácil de repetir. Facilidade de uso não torna a conclusão mais abrangente.
Assim, 1983 não marca a invenção do ping por Muuss. O Echo já aparecia na RFC 792, e Mills documentava um PING dos Fuzzballs anterior e voltado à medição. A contribuição de Muuss foi levar a sonda para a rotina de diagnóstico do BSD e resolver a capacidade de kernel de que ela precisava. O comando facilitou perguntar se uma resposta voltou. A pergunta sobre o funcionamento de um serviço continua exigindo outro tipo de evidência.
Fontes
Briefing para membros
Contexto aprofundado do perfil
Faça login com o nível de assinatura correto para desbloquear o briefing completo e as notas das fontes.
Apenas para Strategic Circle
Strategic Circle
Aberto a todos os leitores. Desbloqueie Briefings de perfil após se inscrever e fazer login.
Junte-se ao Strategic CircleSomente para Leadership Alliance
Leadership Alliance
Para proprietários e gestores qualificados de ativos de PI; faça login para desbloquear os briefings da Leadership Alliance.
Junte-se ao Leadership Alliance
