The central problem
Measure useful capacity.
Good network reasoning separates the mechanism from the symptom. Start with the boundary, identify the evidence, and test the explanation that accounts for the observation.
Interpret the result
Useful throughput is not raw link rate.
Headers, acknowledgements, encryption, contention, loss, and retransmissions all consume time or capacity without becoming application payload. A link can therefore operate near its configured rate while the application receives less useful data.
Measure the same workload at the application and network boundaries, over a defined interval. Compare payload delivered, offered load, and retransmissions so that a lower result can be explained rather than dismissed as a slow link.
Build the model
Four useful signals
Bandwidth
A theoretical or configured capacity.
Throughput
Observed useful delivery over time.
Overhead
Consumes capacity without being application payload.
Bottleneck
Limits the end-to-end result.
Mini investigation
Inspect the evidence
Select the observation and identify the most direct next check.
This observation narrows the mechanism but does not prove every downstream layer.
Compare it with one nearby-layer check.
Knowledge check
Test your model
Answer eight questions. The answer order changes each time.