Как я узнаю, какой процесс съедает мою пропускную способность?

Я думаю, что я - жертва ошибки здесь. Иногда, в то время как я работаю (я все еще не знаю, почему), мой сетевой трафик подходит к 200 кБайт/с и остается тот путь, даже жесткий, я не делаю ничего связанного с Интернетом.

Это иногда происходит со мной с использованием ЦП. Когда это делает, я просто выполняю a top команда для обнаружения, какой процесс ответственен и затем kill это. Проблема: у Меня нет способа знать, какой процесс ответственен за мое высокое использование сети. И монитор ресурсов и top команда только говорит мне мое общее использование сети, ни один из них не говорит мне, обрабатывают определенную информацию о сети.

Я нашел вопросы здесь о контроле общего использования пропускной способности, но, поскольку я упомянул, это не то, в чем я нуждаюсь. Есть ли другая команда, которую я могу использовать для обнаружения, какой процесс выходит из-под контроля?

Команда iftop дает результаты, которые не соглашаются полностью с информацией, сообщенной Системным монитором. В то время как последние требования там являются высоким сетевым трафиком, бывшие требования, там едва 1 кБайт/с.

Я уже попытался уничтожить все очевидные (Firefox, менеджер обновления, Гибридный язык, и т.д.) без удачи. До сих пор перезапуск машины является единственным способом, которым я нашел избавления от проблемы.

257
задан 11 December 2013 в 15:21

6 ответов

У меня были большие успехи с nethogs . Он должен работать как root, но есть разные способы сортировки статистики (например, KB/s или общая пропускная способность, отслеживаемая с момента начала работы nethogs)

Также, если вы используете беспроводную связь, вам необходимо передать устройство на него.

Установите его командой: sudo apt-get install nethogs

Пример: sudo nethogs wlan0

291
ответ дан 11 December 2013 в 15:21

Возможно, вы захотите заглянуть в ntop - который должен отслеживать сетевую активность на уровне процесса. Вы можете найти ntop в Software Center или с помощью sudo apt-get install ntop

Для инструкции по установке следуйте их странице http://packages.ntop.org/

16
ответ дан 11 December 2013 в 15:21

Другой вариант - iptraf. Она не покажет PID процесса, но скажет, какое соединение использует пропускную способность.

8
ответ дан 11 December 2013 в 15:21

Поздний ответ, но у меня была та же проблема. Оказалось, Ubuntuone. Обнаружил это, запустив tcpdump. Я прошел через ту же кривую обучения идентификации процесса.

Из моих заметок :

Информация о подключении к серверу Ubuntu

Сегодня утром запустил свой рабочий стол Ubuntu 10.04 и обнаружил, что через несколько минут Интернет-соединение сканирует. Я видел это на компьютерах с Windows раньше, и в 99% случаев это шпионское ПО. Итак, мне нужно было изучить ... стиль командной строки.

tcpdump . Показывает, что Ubuntuone сходит с ума.

Система> Настройки> Ubuntu One. Выключите всю синхронизацию.

Итак, я думаю, что хотел бы увидеть все сетевые подключения и то, что они делают. Я могу

netstat -cW (непрерывный список сетевых подключений в широком формате, чтобы внешние адреса не усекались)

lsof -i | grep -v 'localhost' (список открытых файлов, соответствующих Интернету адрес любого, grep, чтобы удалить все открытые файлы, связанные с localhost - здесь я подумал, что я не хочу видеть локальные службы, поскольку они, скорее всего, не повлияют на использование сети).

Некоторые вещи, которые нужно убрать:

  1. Необходимо узнать о журналах Ubuntu для устранения неполадок.
  2. Необходимо узнать больше о tcpdump, поэтому я начну с этого руководства Дэниела Мисслера .

Примечание редактора: В этом ответе имеется ссылка на статью в блоге tinker , предназначенную только для приглашенных пользователей. Поскольку этот ответ получил заметные положительные голоса, он ценен. Я нашел копию статьи о Wayback Machine . И включил это сюда.

6
ответ дан 11 December 2013 в 15:21

Используйте iftop, чтобы определить местонахождение TCP-порта на вашей машине, которая получает наибольший трафик. Затем используйте sudo netstat -tup, чтобы найти процесс, "владеющий" этим портом.

Это процесс, который вы ищете.

PS: Должен работать и для UDP.

65
ответ дан 11 December 2013 в 15:21

Вот один я в любом случае, он говорит вам, что читает из сети больше всего (похоже, не работает тот, который "пишет" в сеть, так что ... вы получаете половину).

$ sudo apt install dstat
then
$ dstat --net --top-io-adv
-net/total- -------most-expensive-i/o-process-------
 recv  send|process              pid  read write cpu
   0     0 |chrome               1885   19k  17k0.4%
 504B  734B|chrome               1923    0   66k0.2%
 651k   18k|chrome               1923  597k 593k2.0%
  19k   26k|gnome-terminal-      25834 429B  59k0.8%

4
ответ дан 5 January 2021 в 23:59

Другие вопросы по тегам:

Похожие вопросы: