Можно попробовать NetHogs.
NetHogs является маленьким 'сетевым лучшим' инструментом. Вместо того, чтобы ломать трафик на протокол или на подсеть, как большинство инструментов делают, это группирует пропускную способность процессом. NetHogs не полагается на специальный модуль ядра, который будет загружен. Если внезапно существует большой сетевой трафик, можно разжечь NetHogs и сразу видеть, который PID вызывает это. Это помогает indentify программам, которые взбесились и внезапно поднимают Вашу пропускную способность.
Попробовать atop
... чтобы получить все возможное от него, Вам, вероятно, придется включить некоторые дополнительные патчи ядра (патчи учета ввода-вывода).
Если atop
не опция, затем используют netstat -anp --inet
(как корень) для обеспечения списка, которого используются порты TCP/UDP, которыми процессами (или возможно используют lsof
для этого). Оттуда просто выполните итерации по каждому процессу, это имеет открытый сокет и любое присоединение к нему использование ltrace -S
или strace
смотреть на чтения, записи, отправляет и получает, или использование tcpdump
с фильтром, указывающим Ваш локальный IP-адрес (IP-адреса) и порты TCP/UDP, которые были перечислены.
atop
является, конечно, самым удобным из них..., если у Вас есть он и необходимая установленная поддержка ядра. В прошлом мне настроили клиентов и работодателей специальные системы (отличающийся от их производственных изображений) для единственной цели поддерживать использование профилирования ввода-вывода atop
. Однако эти другие методы получат Вас там.
Я уверен, что мы могли также сделать что-то использование SystemTap..., но я не знаю ни о каких легких прошедших предварительную обработку рецептах для того, чтобы сделать это. SystemTap является в значительной степени аналитическим инструментом программирования.