Tech Behind ThingsHow the ordinary machinery actually works

Networks

How A Connection Notices A Lost Packet Without Being Told

Nothing on the internet reports a dropped packet, so the sending computer infers loss from silence and from clues in the acknowledgments that do arrive.

Focused detail of a modern server rack with blue LED indicators in a data center.
Photograph by panumas nikhomkhai via Pexels
Editorial note. Independent reporting and analysis. Nothing here is sponsored or paid for. How we work.

When a packet is discarded somewhere along its path, no message is sent to anyone. The sender must work out that something vanished, and how it does that shapes the behavior of every download.

Routers drop packets as a matter of routine

A router holds arriving packets in a queue while it forwards them. When traffic exceeds what the outgoing link can carry, the queue fills and further arrivals are discarded.

This is normal operation rather than a fault. Discarding is the only tool a router has once memory is committed, and generating a notice for every drop would add traffic to an already congested link.

The consequence is that loss is silent, and detecting it is entirely the responsibility of the two computers at the ends.

Acknowledgments turn silence into evidence

The receiver confirms the data it has received, so the sender knows what arrived. A gap in those confirmations is the first sign that something did not.

The sender keeps a timer for unacknowledged data, and expiry is taken as proof of loss. Timers are deliberately generous, because declaring loss too eagerly causes needless retransmission.

Waiting for a timer is expensive, so protocols look for faster signals wherever they can find one.

Repeated acknowledgments are the fast signal

When packets arrive out of order, the receiver keeps acknowledging the last contiguous byte it holds, producing duplicate confirmations that all point at the same place.

A run of those duplicates tells the sender that later packets are arriving while one is missing, which is strong evidence of a single loss rather than a broken path.

The sender retransmits that packet immediately rather than waiting out the timer, which is why a single loss on a healthy connection is barely noticeable.

Loss is read as a message about congestion

Because drops usually mean a full queue, the sender treats loss as an instruction to slow down and sharply reduces the amount of data it keeps in flight.

It then increases again gradually, probing for the rate the path can sustain. The rise and fall of that cycle is what a throughput graph actually shows.

The logic misfires on links where packets are lost to interference rather than congestion, since a wireless error causes the sender to back off from a path that was never full.

Newer approaches stop waiting for loss

Algorithms that watch delay rather than drops notice queues building before anything is discarded, and reduce their rate while the queue is still short.

Some protocols also mark packets instead of dropping them, letting a router signal congestion without destroying data, provided every device in the path understands the marking.

Both approaches attack the same underlying problem: loss is a late, lossy signal about a condition that was visible earlier if anyone was watching for it.

Questions readers ask

Is a mesh system better than a single powerful router?

Only where coverage is the limitation. One well-placed unit serving a small flat will beat three nodes relaying through each other.

Do more nodes always improve things?

No. Each wireless hop costs airtime, and nodes that hear each other well compete for the same channel. Two good positions beat four poor ones.

Networkswirelesshome networkcoveragenetworking
Grigor Petrov
Hardware writer, Tech Behind Things

Grigor writes about silicon, thermals and the physical limits designers keep bumping into.

Also by Grigor Petrov