«Сервер тормозит» может означать три разные вещи: занята сеть, что-то на сервере расходует канал или неправилен сам тест. Эти семь шагов помогают их различить. Команды для Linux; названия пакетов — для систем с apt.
1. Посмотрите графики в кабинете
Откройте сервер в кабинете и перейдите на вкладку Метрики. График сети показывает входящий и исходящий трафик в секунду за последний час, день или неделю. Данные берутся на уровне виртуализации, так что они есть, даже если ОС внутри сервера зависла.
Две вещи график не покажет: итоги в гигабайтах и то, какая программа создала трафик. Для этого следующие шаги.
Те же данные доступны через API, включая последний месяц:
curl -s "https://api.eqvps.com/api/v1/eqvps/services/SERVICE_ID/metrics?timeframe=month" \
-H "Authorization: Bearer $EQVPS_API_KEY"
2. Узнайте имя сетевого интерфейса
Большинству команд ниже нужно имя интерфейса:
ip -br addr
Нужен интерфейс с вашим публичным (или, на NAT-серверах, приватным) адресом — часто это eth0 или ens18. Если у вас другое имя, замените eth0 ниже.
3. Считайте трафик по дням и месяцам через vnStat
apt install -y vnstat
vnstat -l -i eth0 # live rate, Ctrl+C to stop
vnstat -d # per day
vnstat -m # per month
vnStat читает счётчики интерфейсов из ядра, переживает перезагрузки и почти ничего не потребляет. Он начинает считать с момента установки, поэтому ставьте его до того, как понадобятся цифры.
4. Посмотрите, какой процесс расходует канал
apt install -y nethogs
nethogs eth0
nethogs показывает процессы с текущей скоростью отправки и приёма. Если видите незнакомый процесс, который гонит трафик, присмотритесь к нему: неожиданный активный отправитель может означать, что сервер взломан.
Посмотреть сами соединения:
ss -tunap | head -30
5. Проведите тест скорости, которому можно верить
Надёжный способ — iperf3 между двумя машинами, которые вы контролируете. На второй машине запустите сервер:
iperf3 -s
На своём сервере проверьте оба направления: 4 потока по 30 секунд:
iperf3 -c OTHER_HOST -P 4 -t 30 # upload from this server
iperf3 -c OTHER_HOST -P 4 -t 30 -R # download to this server
NAT-сервер принимает входящие соединения только на свой SSH-порт, поэтому iperf3 -s запускайте на другой машине, а NAT-сервер оставьте клиентом, как выше.
Второй машины нет? Скачайте большой файл с быстрого зеркала поближе и посмотрите среднюю скорость:
curl -o /dev/null -w "%{speed_download}\n" https://mirror.example.net/1GB.bin
Результат — в байтах в секунду. Умножьте на 8, чтобы получить биты в секунду: 110000000 — это около 880 Mbit/s.
6. Проверьте задержку и потери пакетов
Низкая скорость на больших расстояниях часто упирается в задержку или потери, а не в ширину канала:
apt install -y mtr-tiny
mtr -rwc 100 example.com
Смотрите на столбец Loss% в последней строке. Потери, которые появляются на одном промежуточном узле и исчезают дальше, обычно означают, что этот маршрутизатор просто не спешит отвечать на ping, а не реальные потери.
7. Сравните с тем, чего стоит ждать
| Тариф | Порт | Типичный результат в 4 потока на свободном канале |
|---|---|---|
| Linux VPS | 1 Gbit/s | около 900–940 Mbit/s в каждую сторону |
| Windows VPS | 150 Mbit/s | около 140 Mbit/s |
Когда несколько серверов на одной физической машине загружены одновременно, канал делится между ними поровну, поэтому в загруженный момент меньшая цифра ожидаема. Квоты трафика нет ни на одном тарифе. Как устроено деление, рассказано в разделе Трафик и скорость сети.
На Windows-сервере текущую скорость показывает Диспетчер задач → Производительность → Ethernet, а трафик по процессам — Монитор ресурсов → Сеть.
Если цифры действительно низкие
Выполните шаг 5 с двумя разными тестовыми серверами, запишите время и откройте тикет с командами и их выводом. С этим мы сможем проверить канал в тот самый момент.
По теме
- Трафик и скорость сети: скорость портов, честное деление, порты исходящей почты.
- Сеть и порты: проброс на NAT и открытые порты.
- Как освободить место на диске, если vnStat или логи заполнили диск.
Комментарии
Пока нет комментариев. Будьте первым.