Ответ
Оценка сетевой нагрузки включает анализ пропускной способности (throughput), количества соединений и ошибок.
1. Мониторинг трафика в реальном времени:
# Показывает трафик по хостам/соединениям (требует sudo)
sudo iftop -i eth0
# Простой график входящего/исходящего трафика
nload eth0
2. Анализ активных соединений и сокетов:
# Современная замена netstat. -s показывает сводную статистику.
ss -s
# Показать все TCP-соединения в состоянии ESTAB
ss -t state established
3. Сбор и просмотр исторической статистики:
# Установите vnstat: sudo apt install vnstat
vnstat -i eth0 --live # Режим реального времени
vnstat -i eth0 -d # Статистика по дням
4. DevOps-подход к мониторингу сети: Ручные команды хороши для диагностики, но для постоянного наблюдения я настраиваю автоматический сбор метрик:
- Prometheus + node_exporter: Собирает базовые метрики интерфейсов (
node_network_*): получено/передано байт, ошибки, сбросы. - Специализированные экспортеры: Для более глубокого анализа (например,
snmp_exporterдля сетевого оборудования). - eBPF-инструменты: В сложных случаях использую
bpftraceилиBCC tools(например,tcplife,tcptop) для трассировки сетевых вызовов на уровне ядра. - Дашборды Grafana: Визуализирую тренды трафика, процент использования линка, количество TCP-соединений и ошибок. Ключевые метрики (рост ошибок, неожиданный всплеск трафика) настраиваю на алерты.