The Foundation: ICMP, DNS, and TCP

Synthetic Monitoring Series — Part 2 of 8

The Foundation: ICMP, DNS, and TCP

Every synthetic monitoring strategy is built on three protocols. Not because they’re the newest or the most sophisticated — but because they answer the three questions that matter most before anything else can be measured.

Can you reach the host? Can you resolve its name? Is the service actually listening?

ICMP, DNS, and TCP answer those questions, in that order. If any one of them fails, everything downstream fails with it. Understanding them isn’t optional for anyone who operates infrastructure — it’s foundational.

Start Here: What the Videos Cover

▶  Video 3 — “The Ping Heard Round the World — ICMP Fundamentals”
▶  Video 4 — “DNS — The Invisible First Step”
▶  Video 5 — “TCP — The Handshake That Starts Everything”

ICMP: The Oldest Synthetic Test

The Internet Control Message Protocol was defined in RFC 792 in 1981. The ping command — still the first thing most engineers run when something looks wrong — was written by Mike Muuss in 1983 to debug a network problem. He named it after sonar.

The concept is as simple as it gets. Your machine sends an Echo Request packet. The destination sends back an Echo Reply. The time between those two events is your round-trip time — RTT.

But RTT isn’t just the destination’s response time. It’s the sum of every router hop, every queue, every processing delay — in both directions. That distinction matters when you’re trying to isolate where a problem lives.

What ping actually measures

Metric

What It Tells You

Minimum RTT

Your best-case scenario — the path when clear

Maximum RTT

Your worst case, often a congestion spike

Average RTT

The typical user experience

Std. Deviation

Consistency; high stddev means jittery connections

Packet Loss

Even 1% loss can devastate TCP throughput

Ping is indispensable. It’s also never enough on its own — it operates at the network layer only, can’t detect application failures, and is frequently blocked by firewalls.


DNS: The Step That Happens Before Everything Else

Every outage investigation should start with one question: is DNS working?

Because if DNS is broken, everything looks broken — even if the underlying service is completely healthy. The Domain Name System translates hostnames to IP addresses, and it runs silently before every single network request your application makes.

The resolution chain

Step

What Happens

1. Query

Device asks the recursive resolver: “Where is example.com?”

2. Root

Resolver asks a root name server, which points to the TLD

3. TLD

TLD server (.com) points to the authoritative nameserver

4. Auth

Authoritative server returns the IP address

All of this happens before your browser loads a single byte of content.

Record types you should be monitoring

Record

Purpose

A

Maps hostname to IPv4 address

AAAA

Maps hostname to IPv6 address

MX

Directs email traffic

NS

Identifies authoritative nameservers

TXT

Carries verification data (SPF, DKIM, etc.)

CNAME

Creates hostname aliases

Why location matters: DNS-based load balancing and geo-steering mean the same hostname can return different IP addresses depending on where you ask from. A probe in New York resolves to one IP. London gets another. Tokyo gets a third. You need to test from multiple locations to understand the full picture.


TCP: Proving the Service Is Actually Listening

Here’s a scenario that illustrates exactly why ICMP isn’t enough.

Ping to a database server succeeds — the host is up, the network is reachable. But a TCP check to port 5432 fails — PostgreSQL has crashed. Ping missed the actual outage entirely.

That’s the gap TCP monitoring fills. The three-way handshake is the connection that precedes every application interaction:

Packet

Meaning

SYN

Client: “I want to connect”

SYN-ACK

Server: “Acknowledged, I’m ready”

ACK

Client: “Let’s go”

The total time for these three packets is your TCP connection time — a pure measurement of network latency with no application processing involved.

Best used for: database ports (PostgreSQL 5432, MySQL 3306, Redis 6379), custom application protocols, load balancer health checks, and any internal service that doesn’t expose a web interface.

The Three Together: A Layered Baseline

These three protocols aren’t alternatives — they’re layers. Each one verifies something the others can’t.

Protocol

What It Confirms

What It Misses

ICMP

Host is reachable

Service health, application errors

DNS

Hostname resolves correctly

Whether the resolved service works

TCP

Port is open and accepting connections

Application-layer behavior

When you run all three continuously from multiple geographic locations, problems that would take minutes to diagnose manually become immediately locatable — wrong layer, wrong region, wrong component.

Real-World Scenario

Users in Europe report the app is slow, but US-based monitoring shows everything green. ICMP from a European probe shows normal latency. TCP to port 443 connects cleanly. But DNS resolution from Frankfurt is taking 380ms — versus 28ms from US-East. The problem isn’t the application. It’s a misconfigured DNS resolver adding hundreds of milliseconds to every European request. Without geographic DNS monitoring, this is invisible. With it, you have the answer in seconds.

This is the baseline every synthetic monitoring strategy is built on. Everything else — HTTP phase decomposition, TLS certificate tracking, WebSocket validation, ML anomaly detection — sits on top of it.

Next in the Series

Part 3 — TLS, HTTP, and the Full Request Lifecycle. How a complete web request gets measured, phase by phase.

Synthetic MonitoringICMPDNS MonitoringTCP MonitoringPingNetwork ObservabilityInfrastructure MonitoringSRENetwork Operations

About Parlon
Parlon is an infrastructure observability platform built for enterprise teams operating complex, hybrid environments. Parlon combines active synthetic validation, real-time telemetry normalization, and learning-based alerting into a single platform — shifting operations from firefighting to foresight. Learn more at parlon.io.