Очень редко при использовании моего Mac я замечаю, что мое интернет-соединение замедляется. Используя Activity Monitor, я вижу, что это происходит потому, что что-то загружает данные с полной скоростью, которую может поддерживать мое соединение - но я не знаю, как сказать, что за это отвечает. Это может быть вызвано несколькими причинами (синхронизация Dropbox; некоторые приложения выполняют автоматическое обновление; совсем недавно это была буферизация видео на вкладке браузера, о которой я забыл), поэтому было бы очень удобно иметь способ сообщить какое приложение отвечает за использование сети. Это возможно в OS X? В идеале я ищу бесплатное решение. (Командная строка в порядке.) Я на Snow Leopard, если это имеет значение.
9
Брандмауэры
Вы можете использовать Little Snitch или HandsOff . Они являются отличными брандмауэрами, и оба имеют функцию «Сетевой монитор», которая сделает эту работу:
Сетевые мониторы: Little Snitch (слева), HandsOff (справа)
неттоп
Бесплатное и встроенное решение Cli (к сожалению, оно не включено в Snow Leopard) - это неттоп . Неттоп группирует трафик по программам и портам и измеряет различную сетевую статистику.
Другой
Есть несколько других программ, которые собирают и измеряют трафик ( iftop , wireshark , tcpdump ), но они не знают, что такое pid. Чтобы установить соединение, вы должны использовать netstat .
источник
nettop
был новым для меня. Выглядит удобно.предоставит вам все сетевые доступы для всех приложений (и процессов). Обычно процесс, создающий большое количество трафика, чаще всего появляется на выходе.
источник
«Книга DTrace» имеет скрипт soconnect.d , который делает это.
Скопируйте версию «Mac OS X», вставьте ее в текстовый файл и запустите из терминала с помощью
sudo dtrace -s soconnect.d
.источник
Монитор активности также имеет столбцы для полученных и отправленных байтов с 10.9:
источник