Назад | Перейти на главную страницу

Как проверить пропускную способность интернета в Ubuntu?

Вместо того, чтобы заходить на такие сайты, как http://speedtest.net или другие, я хочу проверить свою текущую скорость интернета с терминала в Ubuntu. Как мне это сделать?

Позвольте мне начать с того, что "скорость вашего интернета" обычно не фиксируется.

Это зависит от пути между вашим концом соединения и другой конечной точкой. И на этом пути может быть формирование трафика, соединения с высокой пропускной способностью, более медленные каналы, перегрузка, соединения с низкой задержкой или каналы с высокой задержкой (спутниковый восходящий канал?) И т. Д., И совокупный эффект всех сегментов определяет, что эффективный "скорость", при этом сегмент с наименьшей пропускной способностью обычно является ограничителем пропускной способности, а время задержки является кумулятивным.

Но сказав это:

ethtool предоставит согласованную / настроенную скорость соединения между Ethernet-устройством вашего Linux-сервера и любым другим устройством (обычно это порт коммутатора), к которому оно подключено:

ethtool  eth0
Settings for eth0:
    ...
    Speed: 1000Mb/s
    Duplex: Full
    ...

Таким образом, скорость между моим сервером и коммутатором составляет 1 Гбит / с.

Это, конечно, даже не означает, что я получаю такую ​​пропускную способность при загрузке данных исследований из Станция Макмердо на Антарктиде!

Другой инструмент iperf который можно использовать для измерения максимальной производительности TCP / IP из командной строки. Вы можете использовать это, например, для измерения пропускной способности, которую вы получаете между вашим сервером и вашим шлюзом, а также между вашим сервером при следующем переходе от вашего шлюза к вашему интернет-провайдеру.

Инструмент cli для speedtest.net:

https://github.com/sivel/speedtest-cli

Другой вариант - измерить время загрузки большого файла (> 100 МБ) с заведомо быстрым сервером и рассчитать на его основе текущую пропускную способность. Некоторое время назад я написал плагин munin, который отлично справлялся с этим.

Хорошей отправной точкой является следующая команда:

time(wget –output-document=/dev/null http: /// files / downloadtest 2>/dev/null 1>&2)