PingRoute – Project

Overview:

After experiencing flaky internet connections with Verizon internet plan, and having talked with their phone support, it became clear that I needed to create an accurate history of connection problems and statistics to support my complaints. I needed a utility to monitor the internet connection and trigger diagnostic logging when failure or latency occurred. I created this application to monitor the internet connection and when failure or latency was detected, it automatically triggers a trace route and logs the results to a text file.

Challenge:

The challenge was in engineering the process, configuration parameters and triggers for controlling when and how often checks and logging occurred. Ping and tracert are popular command utilities that I have used consistently when troubleshooting network and internet connections problems. The idea was to bring them together in a single utility using the strengths of each to compliment the other, providing usable diagnostic data for troubleshooting.

Solution:

PingRoute is a C# WinForm Application combining Ping and tracert functionality for the purpose of monitoring and identifying network and internet latency and connection issues.

The application can be configured to set the frequency of pings, and to display and log warnings and alerts when certain conditions are met. Breakpoints can also be set according to the level of alerts and warnings to trigger tracert logging for additional diagnostic evaluation.

  • Accepts a destination in the form of a URL or IP address.
  • Allows setting the frequency of pings to the destination.
  • Displays connections status / quality and taskbar pop-ups for assigned warning levels.
  • Toggle Auto-Tracert.
  • Trigger tracert (if enabled) logging based on connection status / quality.

Result:

The result was a comprehensive log containing a history of ping, tracert and connection data providing all the evidence I needed to convince Verizon that there was indeed an issue with the service they provided. In the end, the issue was resolved and I had another useful network utility that I was able to include in my networking toolbox.