Web-monitoring: Ping vs TCP vs HTTP Checks

CloudRadar supports three types of web-based uptime checks: Ping Checks, TCP Checks, and HTTP Checks.

Ping Checks

A Ping Check is a basic networking level check. Ping uses the ICMP protocol to check the network reachability of the website/network device you are checking. This tells you that the device is available and connected to the network interface. However, just because something returns a ping, it is not certain that the service on the device is running but it does help in troubleshooting. So definitely one of the core checks to use.

One issue with Ping is that some Internet firewalls will block ping traffic reaching the network. It is common for TCP and HTTP checks to work fine but the ping check fail so be sure to be mindful of this and be sure to disable it if this is the case.

Checkout more details at the Wikipedia entry for Ping.

TCP Checks

If we can ping a device we know it is connected to the network. The next level up is to check that the services are running on the device. All common applications run on a network device on what is called a port. These are either TCP or UDP ports.

By enabling a TCP Check you are checking that the service is running on the network device. For example, all websites are hosted on a web server.These web servers default to running on TCP Port 80. So, if we set up a TCP Check on Port 80 we are checking that the web server service is running on the network device.

There is a list of commonly used port numbers for both TCP and UDP and this can be used to configure a TCP Check for most applications that would run on a network device.

Checkout more details at the Wikipedia entry for TCP.

HTTP Checks

This check is checking for the existence of pages for your monitored website. The check works by looking at the HTTP Response Code for the configured page. If a page exists, the web server will return a status code of 200, which means OK. This is a simple check to ascertain if a page exists on a website.

it is advisable to check every page on your website (within reason if it is a database driven site) and also to check for the existence of other items such as your favicon.ico or your custom 404 page.

At this level you can also add what is called a Content Check.This extra level of complexity checks the correct response code and that some text is visible on a specific page.

So, how to used these checks?

Configuring Ping, TCP and HTTP checks for your website provides you with valuable information for troubleshooting if any error occurs. For example, if your Ping and TCP checks are passing but your HTTP checks are failing then this is probably a configuration error on the web server that is preventing your pages from being displayed.

If only the ping check is responding then the web server may have crashed on your network device. If the Ping check goes down (and presuming it was not initially blocked) then it is normally an indication that there is a total server outage or something between you and the server totally blocking your access.