Before we can even talk about evaluating network performance, we have to collect the metrics used to measure your system network performance. If your application runs on AWS EC2/ECS/Lambda/EKS, out of box AWS has some basic monitoring metrics in AWS Cloud Watch.
If your application is containerized and runs on K8s, you could leverage Grafana and Prometheus to collect metrics (more cloud native). Otherwise, there are third party tools such as Datadog, new relic, etc.
Whatever methods/tools you use, it is crucial to have a metrics collecting mechanism and dashboard to display performance, along with alerting and notification. I attached one sample dashboard that I use for some of my applications below:
Performance Metrics Review
In Linux Network Fundamentals, we once said that bandwidth, throughput, latency, PPS, etc. are the most commonly used network performance indicators. A quick recap of important network metrics:
- bandwidth: The maximum transmission rate of the link in b/s. When you purchase a network card, commonly used bandwidth are 1G, 10G, 100G.