I am building a monitoring application to continuously monitor all aspects of my system. I was hoping to use the `Ping()` function to determine if the server is up but the [MSDN documentation](http://msdn.microsoft.com/en-us/library/system.net.networkinformation.ping.aspx) itself says that it is not the best way:

> 
> A successful Ping indicates only that
>  the remote host can be reached on the
>  network; the presence of higher level
>  services (such as a Web server) on the
>  remote host is not guaranteed.
> 
> 
> 

Are there any other ways to do this better?