Mike Muuss hizo funcionar su nuevo programa antes del amanecer. Para entonces, su colega Chuck Kennedy ya había reparado el hardware de red que se suponía que debía investigar. Muuss había pasado la noche creando una herramienta para un problema que desapareció antes de que pudiera enviar su primer paquete de prueba. Llamó al programa ping.[1]

En diciembre de 1983, Muuss estaba lidiando con un comportamiento extraño en la red IP del Laboratorio de Investigación Balística del Ejército de EE. UU. Un comentario que había escuchado meses antes le ofreció un punto de partida. En una reunión de DARPA en Noruega ese julio, Dave Mills había descrito cómo cronometrar ecos electrónicos para medir el tiempo que tardaban los mensajes en viajar por una ruta de red. Muuss recordó la idea y comenzó a codificar.[1]

Su programa compiló con éxito, pero luego se negó a funcionar. El kernel UNIX subyacente carecía de soporte para los sockets ICMP sin procesar que su código necesitaba. Muuss se describió a sí mismo como "furioso". También escribió el soporte de kernel faltante, logrando que ambas partes funcionaran antes del amanecer. Kennedy, conocido como Kermit, ya había encontrado y reparado el hardware para cuando Muuss pudo lanzar su primer paquete ping.[1]

Muuss había modelado sistemas de sonar y radar en la universidad, y tomó prestado el sonido del sonar para el nombre. Un pulso viaja hacia afuera; un eco regresa. Su software utilizaba mensajes ya definidos en el Protocolo de Mensajes de Control de Internet: Eco y Respuesta de Eco. El protocolo especificaba que la máquina receptora devolviera los datos que se le enviaban. Cronometrar ese intercambio le dio a Muuss una manera de sondear el viaje hacia otra máquina y de vuelta.[1][2]

En Berkeley, los desarrolladores incorporaron el código fuente y sus modificaciones de kernel a Berkeley UNIX. La reparación de emergencia se había realizado sin ping, pero otras personas podían usar la siguiente copia sin tener que escribir su propia solución de la noche a la mañana. Muuss describió más tarde su programa como un "hack" nocturno de mil líneas y bromeó diciendo que, si hubiera sabido que se convertiría en su logro más famoso, podría haber dedicado uno o dos días más a añadir opciones.[1]

Un manual moderno de Linux describe el mismo intercambio de solicitudes y respuestas, con tiempos de ida y vuelta y estadísticas de pérdida de paquetes. También ofrece una opción audible. El programa puede producir un sonido cuando llega una respuesta, permitiendo a alguien escuchar una conexión que funciona en lugar de ver aparecer cada nueva línea.[3]

En una conferencia de USENIX, Muuss escuchó una historia sobre un administrador que había llevado esa idea de escuchar mucho más lejos. Según el relato que Muuss registró, el hombre conectó ping a un vocoder, introdujo su salida a través del estéreo de su oficina y subió el volumen tan alto como pudo soportar. Una vez por segundo, la computadora gritaba "Ping, ping, ping..." mientras él caminaba por el edificio, moviendo los conectores Ethernet.[1]

Muuss la llamó la mejor historia de ping que había escuchado. El nombre que había tomado prestado del sonar se había convertido en una herramienta audible para la detección de fallos: el administrador siguió moviéndose de conector en conector hasta que el sonido se detuvo. Ese silencio le indicó dónde se encontraba la falla intermitente.[1]

Fuentes

  1. Mike Muuss, La Historia del Programa PING
  2. RFC 792, Protocolo de Mensajes de Control de Internet
  3. Manual de Linux, ping(8)

Foto: Chuck Kennedy (izquierda), Mike Muuss (centro) y Doug Kingston en el Laboratorio de Investigación Balística. Esta fotografía no muestra la noche en que se escribió ping. Ron Natalie, Wikimedia Commons, CC BY-SA 4.0. Recortada y redimensionada; derivada bajo la misma licencia.