Ich denke, du musst unterscheiden zwischen der Zeit, die der Server (die Maschine) benötigt, und der Zeit, die dein Server-seitiger Prozess benötigt, um dies zu verarbeiten. Zum Beispiel wird ping einfach die ICMP-Antwortzeit messen, was eine Low-Level-Netzwerkprotokollrückgabe ist. Wenn du den TCP-Stack berücksichtigst und dann die anschließende Verarbeitung durch den Server, wird dieser Zeitraum größer sein.
Aus deiner Frage klingt es so, als ob du ping (ICMP) möchtest. In JDK 5 und höher kannst du folgendes tun:
String host = "192.168.0.1"
int timeOut = 5000;
boolean status = InetAddress.getByName(host).isReachable(timeOut)
und du müsstest das mit System.nano()
oder ähnlichem messen.