- Monitoring Network Bandwidth and Speed in Linux
- Tools for Monitoring Internet traffic and speed in Linux
- 1. NetSpeed – GNOME shell extension for desktop users
- 2. Fast – Netflix’s Internet speed tester
- 3. speedtest-cli: check upload and download speed
- 4. NetHogs – Check bandwidth utilization per program basis
- 5. nload – Real-Time internet traffic monitoring
- 6. CBM – Color Bandwidth Meter
- 7. iPerf – Test network performance between two hosts
- 8. vnStat – Network traffic logger
- 9. iftop – The ‘top’ of Network Usage
- Я сошёл с ума и перешёл с Windows на Linux. Не ожидал такого
- Зачем переходить на Linux
- Кому не стоит переходить на Linux
- Как попробовать понравившуюся сборку Linux
- Как подготовиться к переходу на Linux
- Переходить или нет?
Monitoring Network Bandwidth and Speed in Linux
Last updated October 7, 2020 By Sergiu 23 Comments
Brief: In this article, we list some open source utilities to monitor the network traffic, bandwidth and internet speed in Linux.
Monitoring internet speed can be a crucial step in understanding your connection and it can help you find possible problems. It will also help you troubleshoot any connectivity problems you might have and find possible bottlenecks.
Tools for Monitoring Internet traffic and speed in Linux
I am going to present you different tools to help monitor your internet speed. I have provided installation instructions for Ubuntu/Debian based distributions but the tools can be easily installed in other distributions.
It doesn’t matter if you are a beginner that wants a simple, working solution, a guru looking to get as much information about your network as possible, if you prefer GUI or CLI programs, I’ll help you find the right tool for the job.
1. NetSpeed – GNOME shell extension for desktop users
NetSpeed is a GNOME shell extension that displays the sum of your download and upload speed in your gnome panel. Clicking on it displays the separate values in a drop-down.
It is applicable only if you use the GNOME desktop environment. If you are not familiar already, read this tutorial to know how to use GNOME Shell extensions.
2. Fast – Netflix’s Internet speed tester
Fast is an open-source CLI utility powered by Netflix fast.com service. Although the code for the website itself isn’t open-source, Netflix have explained how it works here. Fast is the perfect tool for someone that just wants to check the download speed in a very simple manner.
You can install it using snap. Make sure to enable Snap support in your distribution and then run the following command:
Once installed, you can run the utility by typing in:
Once again, after a few seconds, you’ll get your result:
3. speedtest-cli: check upload and download speed
speedtest-cli is an open-source command line interface for testing internet bandwidth using speedtest.net (which, itself, isn’t open-source). It is a quick little tool for checking your download and upload speed.
speedtest-cli is available in most distros and can easily be installed using the package manager. On Debian/Ubuntu, you can use the following command:
Once installed, simply run:
After a few seconds, you’ll get information about which server was used for checking your connection, as well as the details concerning your internet speed. Use man speedtest to learn about additional options (such as not performing download test with –no-download).
4. NetHogs – Check bandwidth utilization per program basis
NetHogs is a simple open-source utility that runs in the terminal. Instead of breaking the traffic down per protocol or per subnet, it groups bandwith by process. It is very helpful for finding the PID of a hanging program or just for seeing what is eating your bandwidth. It relies mostly on /proc, so most features are Linux-only.
Luckily, NetHogs is included in many distros. That means you can install and remove it using your normal package manager. On Debian/Ubuntu, you can use this:
To run it, simply use:
Conveniently, you can specify devices after the command (such as sudo nethogs eth0). You also have additional parameters, such as choosing a delay for the refresh rate (-d), version info (-V), tracemode (-t) and a few others which you can check out in the man pages (man nethogs).
5. nload – Real-Time internet traffic monitoring
nload is an open-source console application that allows you to monitor network traffic and bandwidth usage in real time. It visualizes incoming and outgoing traffic using graphs, while also providing additional information (total amount of transferred data, min/max network usage etc.). It’s a simple to use tool that can be really helpful at times.
You can install it in Debian and Ubuntu based distributions using the command:
To run it, simpy type in:
You can control its various aspects from the manpage (man nload).
6. CBM – Color Bandwidth Meter
CBM is a very simple tool that displays (in color) network traffic on all connected devices, in a very stripped-down manner.
CBM is a slightly older piece of software that can be found in most distro repositories. This makes installing and removing it using the package manager very easy.
Using CBM is just as easy as installing it. You run:
The commands are displayed in the bottom of your terminal so that you can control them easily.
7. iPerf – Test network performance between two hosts
iPerf is tool used for network performance measurement and tuning and can produce standardized performance measurements for any network. It has client and server functionality, and can create data streams to measure bandwidth, loss and other parameters between the two ends in one or both directions. There are two implementations: the original iPerf (iPerf2) and a non-backwards compatible implementation iPerf3.
The easiest way to install (or remove) iPerf or iPerf3 is using the package manager. For example, in Ubuntu:
Then you can just run the one you want:
Note: For all further examples, if you are using iPerf3 simply replace all instances of iperf with iperf3.
However, doing so will only display your options. To run iPerf, you need a minimum of 2 machines: one to act as a client and one to act as a server. For the server, you’ll use:
This will open the machine for listening on port 5001. To connect to another machine and run a test, you’ll use:
Where server_address is, of course, the address of the server you are trying to connect to. This can be either an IP address, or something like ping.online.net. The iPerf3 team has a list of servers to use for testing purposes.
iPerf is a widely used tool that has a lot of specific uses and many options. I won’t go into those, since it is beyond the scope of this article. However, you can check out the manpage (man iperf / man iperf3) or the documentation.
8. vnStat – Network traffic logger
vnStat is an open-source console-based network traffic monitor that uses the network interface statistics provided by the kernel as information source for its periodic logs. This means that vnStat won’t actually be sniffing any traffic and also ensures light CPU usage. It can be run without root permissions.
As with many other networking tools, vnStat is include in most distribution repositories. This means you can very easily install (and remove) it using your package manager.
To use it in the most basic way, simply enter:
vnStat offers you more advanced features too, such as the ability to use databases (importing them or exporting output to a file). You can check these out in the manpage (man vnstat). More examples can be found on the official website.
9. iftop – The ‘top’ of Network Usage
iftop is a free open-source software command-line system monitor tool that produces a frequently updated list of network connections between pairs of hosts. The connections can be ordered by different parameters, but they ordered by default by bandwidth usage, with only the “top” bandwidth consumers shown.
Wrapping Up
In this article I showed you multiple tools you can use to monitor different statistics concerning the performance of your network. There is a tool that is right for everyone, and you can pick and choose the one that fits your specific needs. I hope this article was a good introduction to the world of internet monitoring.
What is your favorite tool and how are you using it? Let us know in the comments section!
Like what you read? Please share it with others.
Я сошёл с ума и перешёл с Windows на Linux. Не ожидал такого
Так сложились обстоятельства, что мне пришлось сменить рабочее место на пару недель. Зная, что в новом месте временного обитания есть средненький ноутбук HP 5-летней давности, решил не брать свой компьютер и поработать на нем.
Первые дни я закрывал глаза на косяки и терпел всевозможные капризы Windows 10, но к исходу первой недели решил положить конец этому беспределу. Лицензионная “винда” регулярно что-то обновляла, тянула из сети кривые драйвера, не хотела работать быстро и стабильно.
Ноутбук будил меня ночью шумом системы охлаждения на максимальных оборотах. Просто процесс обновления, который стартовал при выключении компьютера из-за чего-то зависал. Приходилось половину следующего дня проводить за ручным обновлением системы.
Через несколько дней в ноутбуке перестал работать тачпад. После копания на форумах узнал, что так иногда обновляются драйвера на Windows 10. Нужно полностью сносить их, чистить реестр и пробовать старые версии перебором.
Окончательный крест на Windows поставила Apple, а точнее ее приложение iCloud. Я никак не смог добиться стабильной работы системы с данной программой. “Винда” периодически не хотела засыпать, если не завершить процесс приложения даже после полной синхронизации данных.
Вдохновленный рассказами коллег, я решил попробовать Linux.
В итоге не самый новый ноутбук со средним железом стал практически “летать” и перестал напрягаться при открытии двух десятков вкладок в браузере. Работать в операционной системе стало комфортнее, пропали регулярные глюки и обновления.
Зачем переходить на Linux
◆ Linux и большая часть ПО бесплатные. Конечно, можно купить Windows 10 за 300 рублей и не париться, но вот большинство современных пользователей до сих пор пиратят ОС и большую часть софта.
Если хотите перестать заниматься цифровым пиратством, начните с установки Linux. А еще это будет весомым плюсом, если приходите на работу со своим ноутбуком.
◆ В Linux есть магазин приложений. Когда пользователи после переустановки Windows начинают настройку стороннего ПО, они либо идут на торренты, либо начинают занимательное путешествие по файлообменным помойкам и рекламным сайтам в поисках установщика нужной программы.
Только не нужно говорить, что в Windows есть свой магазин приложений, я уже пробовал, как он работает и чуть не сошел с ума.
Пользователи Linux без проблем могут установить весь нужный софт в пару нажатий мышью и при этом не переживать, что после установки придется чистить систему от всевозможных mail.ru-агентов или Амиго-браузеров.
◆ Архитектура Linux менее подвержена вирусам. Большая часть вредоносного ПО сейчас разрабатывается именно для Windows. Сложности с поиском приложений и желание пользователей скачать что-то бесплатно буквально открывают двери для троянов и вирусов.
В Linux имеется более сложная система разграничения прав доступа, модульность компонентов и монолитное ядро обеспечивают гораздо большую безопасность, чем “дырявый” системный реестр в Windows.
◆ Linux потребляет меньше ресурсов компьютера. Для современных ПК с многоядерными процессорами и двузначным числом ОЗУ это не будет преимуществом, но вот старый системник или ноутбук с двумя ядрами и парой планок ОЗУ по 2 ГБ на Linux просто оживет.
Это отличное преимущество, если хотите отдать свой устаревший ПК родителям или бабушкам, решили настроить запылившийся ноут для дистанционного обучения ребенка либо хотите настроить стоящий без дела системник в качестве медиасервера.
◆ Исходный код Linux открытый. Это позволяет энтузиастам быстрее находить уязвимости, а разработчикам устранять их. Еще такой подход позволяет моментально выявить шпионские или вредоносные части кода, предупредить об этом общественность и отказаться от проблемного дистрибутива.
Много ли пользователи знают о механизмах слежки и шпионских скриптах в Windows? Часть из них известна сообществу энтузиастов, но отключать их придется в ручном режиме после установки системы.
◆ У Linux есть множество дистрибутивов. Если разделение Windows на версии направлено только на то, чтобы отключить у пользователя фишки, за который он не хочет платить, то в мире Linux есть действительно отличающиеся друг от друга сборки.
Есть дистрибутивы, которые хорошо оптимизированы под определенное железо, например, Clear Linux OS от Intel. Есть версии с упором на защиту пользовательских данных, анонимность и конфиденциальность вроде Kodachi. Есть сборки, которые буквально оживляют старое железо и нетребовательны к ресурсам, например, antiX или SliTaz (образ последнего занимает менее 100 Мб и может полностью харниться в ОЗУ).
Сборка Ubuntu Ultimate Edition может похвастаться полным набором предустановленного ПО и драйверов. Одними из самых популярных и стабильных являются дистрибутивы Debian и Ubuntu, а одним из самых простых и дружелюбных – Linux Mint.
◆ Linux имеет большое количество графических интерфейсов и элементов управления. Это не просто изменяемые обои, украшательства или съедающие ОЗУ дополнения. Это специально разработанные модули, которые могут добавляться или убираться при необходимости, делая систему такой, какой ее хочет видеть пользователь.
Самые опытные могут и вовсе обойтись командной строкой без графического интерфейса, а самые дотошные смогут превратить Linux в практически в полное подобие Windows или macOS.
◆ Практически любую версию Linux можно запустить с флешки. Так называемый Live-режим есть у большинства распространенных сборок и дистрибутивов. Вы можете попробовать любую версию Linux, посмотреть на графический интерфейс, встроенный набор ПО и драйверов без полной переустановки системы.
Еще подобные версии удобно использовать для восстановления системы или вовсе на компьютерах без накопителя. Запускается такая версия ОС с флешки за пару минут и все готово к работе.
Все это делает Linux более привлекательной операционной системой для многих пользователей Windows.
Кому не стоит переходить на Linux
Есть три весомых причины не переходить на Linux и остаться на “винде”.
Во-первых, если вы играете в топовые игры. Только крутые современные проекты могут удержать вас на Windows, поиграть в популярные сетевые игры вроде CS:GO, Dota 2, Team Fortress 2 или War Thunder можно и на Linux. Есть для бесплатной ОС как порты так и официально выходящие версии многих стратегий, симуляторов, аркад и экшенов.
Если игры для вас не самое главное и вы не против сыграть во что-то 2-5 летней давности, то можно смело переходить на Linux.
Во-вторых, если вы используете специализированное ПО, которые работает только под Windows. Всевозможные узконаправленные приложения, бухгалтерские или управленческие программы, ПО для взаимодействия с банками хоть и устанавливаются на Linux с определенными костылями, рисковать стабильностью рабочих инструментов вряд ли кто-то захочет.
Не радостная ситуация и с распространенным программным обеспечением для профессионалов. То же Photoshop или Pixelmator на Linux заменить практически не чем. Лучший из графических редакторов GIMP имеет довольно скромные возможности, остается только пытаться запустить нужное приложение через среду WINE.
В-третьих, если вы используете редкое оборудование. Подавляющее большинство компонентов компьютера без труда подружатся с Linux и будут работать без проблем. Однако, специфические графические планшеты, карты нелинейного монтажа или сложная аудиоаппаратура, с большой долей вероятности, просто на заведутся.
Если же вы используете популярные модели железа, ситуацию исправят несколько команд в терминале.
Во всех остальных случаях можете смело качать дистрибутив Linux и пробовать.
Как попробовать понравившуюся сборку Linux
1. Скачиваем и устанавливаем бесплатную утилиту Etcher. Она кроссплатформенная, можно установить на Windows, Linux и macOS.
2. Загружаем подходящий образ Linux, например, Ubuntu.
3. Запускаем приложение Etcher и подключаем к компьютеру флешку объемом 4 Гб или более.
4. Выбираем флешку в качестве целевого диска и скачанный образ Linux в качестве источника.
Внимание! Все данные с флешки будут удалены при форматировании.
5. Ждем несколько минут, пока утилита не запишет образ на накопитель.
6. Подключаем флешку к компьютеру и перезагружаем его в режиме запуска с USB-диска. Это можно настроить в BIOS или зажать определенную клавишу при включении ПК.
7. После загрузки оболочки следует выбрать нужный язык и активировать ознакомительный режим Live-запуска Linux.
Буквально через минуту-две увидите рабочий стол операционной системы с полным набором утилит и возможностей. Запускайте любые приложения, тестируйте систему, выходите в сеть и подбирайте подходящую сборку Linux.
Как подготовиться к переходу на Linux
1. Создайте загрузочную флешку с понравившейся сборкой операционной системы по инструкции выше.
2. Поищите в перечне приложений Linux аналоги нужных программ. Одним из лучших видеоплееров для платформы считается VLC, самый всеядный аудиоплеер Audacious, а графический редактор – GIMP. Офисный пакет может заменить LibreOffice, а роль основного браузера займет Chromium или Firefox.
Убедитесь, что замена для всех важных приложений найдена.
3. Будьте готовы к тому, что какой-то из компонентов компьютера не будет распознан операционной системой. Все решается поиском и установкой необходимых драйверов. “Нагуглить” способ решения проблемы просто, если есть интернет.
Иногда после установки Linux отказывается работать Wi-Fi, что делает затруднительным поиск решения. Вот, например, инструкция по установке драйверов для сетевых кар Broadcom.
Придется использовать второй компьютер или подключать ноутбук к роутеру через патч-корд, если заранее не загрузите нужные пакеты.
4. Определитесь с разбивкой накопителя на разделы. Лучше оставить физический или логический диск с операционной системой Windows. Возможно, вы захотите выделить место для хранения файлов и данных или раскроить пространство по своему усмотрению.
Разбить накопитель можно как из Windows, так и во время установки Linux.
5. Используйте имеющуюся флешку для установки полноценной операционной системы.
Переходить или нет?
Здесь у каждого пользователя будет свой набор аргументов “за” или “против”, но вот полностью отказаться и не попробовать Linux даже в Live-режиме вряд ли кто-то сможет.
Простая и легковесная ОС с удобными инструментами, магазином приложений и возможностью полной кастомизации давно обзавелась большой армией поклонников.
Никто не утверждает, что Linux идеальна. С переходом на эту систему будут и потери: придется мириться с ограниченностью софта, решать возникшие проблемы при помощи командной строки, отказаться от некоторых привычных приложений или утилит. Однако, при этом вы будете повышать свой уровень знаний, учиться новому и приобретать полезные навыки.
Для себя я решил, что все компьютеры знакомых и родственников (кроме игровых) буду со временем переводить на Linux.
Если потенциальные трудности не пугают – Linux ждет вас!