mTCP Ping

Ping is a simple utility commonly found on systems using TCP/IP. Ping allows you to do a basic check to see if a remote system is alive and responding to TCP/IP, even if it is not accepting connections on specific ports. Ping is also useful for measuring how "far away" a remote system seems to be - lower reported numbers are an indication of short round trip packet times.

This version of ping is designed for the early IBM PCs and similar machines. It requires a minimal amount of memory to run, and it uses some tricks to get more accurate timestamps than DOS normally allows for.

And here is a screen shot of ping testing the response time to

mTCP Ping screen shot

Pinging to my local router ( and then

Note the reported times. Normal timer resolution under DOS is limited to 55 milliseconds. This is how fast the BIOS timer clicks, and it works out to about 18 times a second.

Ping can measure time down to 0.85 milliseconds.  To do this it reprograms the hardware timer to generate interrupts faster, and then only passes the correct number of interrupts to the BIOS code.  This way BIOS keeps correct track of the time and everything else works as it should, while Ping can get 1 millisecond accuracy while it needs it.


Ping is included with the other mTCP based applications. They can be downloaded from the main mTCP page here.

Created July 31st, 2008, Last updated July 5th, 2015
(C)opyright Michael B. Brutman, mbbrutman at