Вместо того, чтобы заходить на такие сайты, как speedtest.net, я хочу проверить свою текущую скорость Интернета с терминала на Ubuntu. Как я могу это сделать?
Я рекомендую speedtest-cli инструмент для этого. Я создал сообщение в блоге (Измерьте скорость подключения к Интернету из командной строки Linux), который подробно описывает его загрузку, установку и использование.
Короткая версия такова: (корень не требуется)
curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python -
Выход:
Retrieving speedtest.net configuration...Retrieving speedtest.net server list...Testing from Comcast Cable (x.x.x.x)...Selecting best server based on ping...Hosted by FiberCloud, Inc (Seattle, WA) [12.03 km]: 44.028 msTesting download speed........................................Download: 32.29 Mbit/sTesting upload speed..................................................Upload: 5.18 Mbit/s
Обновление в 2018 году:
С помощью pip install --user speedtest-cli
выдает вам версию, которая, вероятно, новее, чем та, которая доступна в репозиториях вашего дистрибутива.
Обновление в 2016 году:
speedtest-cli
сейчас находится в репозиториях Ubuntu. Для Ubuntu 16.04 (Ubuntu) и более поздних версий используйте:
sudo apt install speedtest-clispeedtest-cli
попробуйте сделать это в командной строке
wget --output-document=/dev/null http://speedtest.wdc01.softlayer.com/downloads/test500.zip
попробуйте и это тоже
sourceforge.net/projects/tespeed/
получил это по ссылке выше
Если вы не можете потрудиться установить iperf, вы можете предшествовать любой команде, которая перемещает известный объем данных с помощью time
командуйте и выполняйте подсчет.
iperf прост и удобен в использовании.
Для этого требуются клиент и сервер.
(на сервере)
user@server$ iperf -s
(на клиенте)
user@client$ iperf -c server.domain ------------------------------------------------------------ Client connecting to 192.168.1.1, TCP port 5001 TCP window size: 16.0 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.1.3 port 52143 connected with 192.168.1.1 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 113 MBytes 94.7 Mbits/sec
Ну, я использую wget
за это. Этот маленький инструмент прекрасно подсказывает мне, какая у меня скорость.
Чтобы использовать его, просто укажите на файл в Интернете, который относительно больше, чтобы вы могли лучше оценить его.
Например
печатание: wget http://hostve.com/neobuntu/pics/Ubu1.avi
начал бы загружать файл Ubu1.avi и показывать, с какой скоростью он загружается.
Конечно, есть несколько рекомендаций:
Проверьте себя на скорости с помощью хороших серверов. В случае моей ссылки скорость составляет менее 200 КБ, поэтому, если у вас более высокая скорость, узким местом для вас будет сервер, а не ваша фактическая скорость.
Самая высокая скорость, которую вы увидите, - это максимальная скорость, которую может предложить ваше соединение и соединение сервера. Если ваше подключение составляет 512 КБ, а место, с которого вы загружаете, составляет 400 КБ, ваше максимальное подключение составит 400 КБ, потому что это максимальное значение для сервера, с которого вы загружаете.
Вам нужно выполнить тест не менее 5 раз, чтобы получить надежную проверку скорости, или, по крайней мере, сделать это в течение минуты или двух. Это поможет вам провести более точную проверку.
Вам необходимо иметь по крайней мере 4 или 5 различных источников тестирования, чтобы иметь более точную скорость. Никогда не тестируйте только с того же сайта, так как на это может повлиять ваше расстояние до него, любые проблемы с сервером и подключениями к нему и т.д. Всегда тестируйте с разных серверов.
АРИА2
Это альтернатива wget
. Обратная сторона wget
это отсутствие параллельных соединений. Чтобы использовать aria2, нам просто нужно скачать его:
sudo apt-get install aria2
Пользоваться им очень просто:
На изображении, -x 4 это то, сколько параллельных соединений мы хотим использовать. Параметр CN в следующей строке показывает, сколько активных параллельных подключений было разрешено загружать с этого сайта. В этом случае CN равно 4. Но если бы мы попытались установить больше связей, то получили бы что-то вроде этого:
Мы установили 8 параллельных подключений, но сайт разрешил только максимум 5, как показано CN: 5. Это можно было бы решить с помощью - джей опция, которая сообщает aria2c максимальное количество одновременных подключений, которое мы хотим (которое по умолчанию равно 5), но если сервер ограничил это, -j не будет работать.
Поскольку speedtest-cli - это приложение на python, его гораздо проще установить, выполнив:
pip install speedtest-cli
или:
easy_install speedtest-cli
В зависимости от того, как Python установлен в вашей системе, вам может потребоваться быть root для выполнения вышеуказанного.
Так случилось, что мне нравится speedometer
Интерфейс командной строки Ubuntu.
speedometer -r eth0
Для просмотра живого графика скорости входящих данных.
Я регулярно использую что-то вроде этого:
% wget -O /dev/null --progress=dot:mega http://cachefly.cachefly.net/10mb.test ; date--2020-01-06 03:31:05-- http://cachefly.cachefly.net/10mb.testResolving cachefly.cachefly.net (cachefly.cachefly.net)... 2607:7700::18:0:1:cdea:afaf, 205.234.175.175Connecting to cachefly.cachefly.net (cachefly.cachefly.net)|2607:7700::18:0:1:cdea:afaf|:80... connected.HTTP request sent, awaiting response... 200 OKLength: 10485760 (10M) [application/octet-stream]Saving to: <</dev/null>> 0K ........ ........ ........ ........ ........ ........ 30% 3.02M 2s 3072K ........ ........ ........ ........ ........ ........ 60% 3.97M 1s 6144K ........ ........ ........ ........ ........ ........ 90% 3.94M 0s 9216K ........ ........ 100% 3.99M=2.8s2020-01-06 03:31:08 (3.62 MB/s) - <</dev/null>> saved [10485760/10485760]Mon Jan 6 03:31:08 CST 2020%
Вы можете изменить 10mb
участие в /10mb.test
к 1mb
, 4mb
, 5mb
, 10mb
, 50mb
, 100mb
, 200mb
, 400mb
, 2000mb
, 4000mb
, и, возможно, некоторые другие значения.
Вы также можете изменить --progress=dot:mega
часть для --progress=dot:default
, --progress=dot:binary
, --progress=dot:mega
и --progress=dot:giga
; этот параметр помогает вам видеть, насколько быстро происходит загрузка, и сохранять более одного чтения в течение всего времени загрузки, что полезно, когда вам нужно поделиться результатами с кем-то или просто сохранить их для своих собственных записей в виде своего рода графика.
простая однострочная программа, которая проверяет, сколько времени требуется для загрузки 100 МБ (работает на /bin/sh
также):
t=$(date +"%s"); wget http://speedtest.tele2.net/100MB.zip -O ->/dev/null ; echo -n "MBit/s: "; expr 8 \* 100 / $(($(date +"%s")-$t))
объяснение:
- храните временную метку в $t
- скачивайте 100 мб, но ничего не храните
- вычислять
8 * 100mb / $t
Запустите несколько экземпляров wget с командой timeout для больших файлов:
#!/bin/bashtimeout 5 wget -q url_1/100MB.zip &timeout 5 wget -q url_2/file.zip &timeout 5 wget -q url_3/sample.mov &timeout 5 wget -q url_4/speech.mp4 &
А затем напишите скрипт для вычисления общего количества загруженных байт и разделите 5 секунд, вы получите цифру байт / сек. Должно быть достаточно точным, и вы можете добавить больше экземпляров, чтобы увеличить пропускную способность.
Мне еще предстоит протестировать полный сценарий, но однострочная команда "timeout 5 wget url" работает, и в результате вы получаете частично загруженный файл (если 5 секунд недостаточно для завершения загрузки).
Вы можете использовать tespeed
. это тест скорости терминальной сети, в котором используются серверы из Speedtest.net
. Он использует ближайший тестовый сервер, но также может использовать сервер, указанный пользователем вручную.
git clone git://github.com/Janhouse/tespeed.git cd tespeed git submodule init git submodule update ./tespeed.py
для получения дополнительной информации используйте :
./tespeed.py -h
это предоставит больше возможностей для проверки скорости.
Результаты, которые я получаю с помощью speedtest-cli, значительно ниже того, что я получаю от speedtest.net speedtest-cli Загрузка 18,27 Мбит/с Загрузка 3,43 Мбит/с speedtest.net Загрузка 59,38 Мбит / с Загрузка 12,14 Мбит / с Я не могу считать speedtest-cli каким-либо образом действительным тестом скорости сети.
@user375058: speedtest-cli
использует те же серверы (и т.д.), Что и SpeedTest.net . Вам следует рассмотреть “speedtest-cli” и www.speedtest.net
чтобы быть эквивалентным, просто с другим интерфейсом. Я был бы удивлен, если бы вы последовательно получали * значительно * разные результаты, если они оба используют один и тот же сервер. Если они не используют один и тот же сервер, то у вас нет оснований для сравнения. Наконец, мои результаты для обеих утилит варьируются в 2-4 раза от запуска к запуску. Я предлагаю вам протестировать 2-4 сервера, выполнить 3-4 запуска для каждого сервера и сравнить инструменты.
sudo apt устанавливает speedtest-cli
@user375058: На самом деле я просто сделал то, что предложил. Мои результаты смотрите по ссылке в моем комментарии ниже.