Article

Choosing a Network Debugging Tool

Decide which tool works best for your network debugging problem.

Overview

Debugging network problems is challenging because of the fundamental nature of networking. Networking is asynchronous, time-sensitive, and error prone. Moreover, the two programs involved (the client and the server, say) are often created by different developers, who disagree on the exact format of the data being exchanged. Fortunately, a variety of tools can help you debug such problems.

A key goal of these tools is to divide the problem in two. For example, if you’re working on a network client that sends a request to a server and then gets an error back from that server, it’s important to know whether things failed because the request was incorrect (a problem with your client) or because the server is misbehaving. You can use these network debugging tools to view the traffic going over the network, and thus independently check the validity of that traffic.

The best tool to use depends on the APIs you’re using and the type of problems you’ve encountered:

See Also

Network Debugging

Debugging HTTP Server-Side Errors

Understand HTTP server-side errors and how to debug them.

Debugging HTTPS Problems with CFNetwork Diagnostic Logging

Use CFNetwork diagnostic logging to investigate HTTP and HTTPS problems.

Recording a Packet Trace

Learn how to record a low-level trace of network traffic.

Taking Advantage of Third-Party Network Debugging Tools

Learn about the available third-party network debugging tools.