Existe uma maneira de descobrir qual aplicativo usa a maior parte da largura de banda do Linux? [fechadas]

53

Estou à procura de um utilitário que me mostre quanto de largura de banda cada processo está usando. Ele deve apenas imprimir os dados e sair como eu quero alimentar essa lista em conky.

    
por vava 31.08.2009 / 16:11

3 respostas

70

Você pode tentar NetHogs .

NetHogs is a small 'net top' tool. Instead of breaking the traffic down per protocol or per subnet, like most tools do, it groups bandwidth by process. NetHogs does not rely on a special kernel module to be loaded. If there's suddenly a lot of network traffic, you can fire up NetHogs and immediately see which PID is causing this. This makes it easy to indentify programs that have gone wild and are suddenly taking up your bandwidth.

    
por 31.08.2009 / 16:23
6

Existem algumas listadas aqui .

Meus favoritos, no entanto, permanecem iftop e tcpdump . Wireshark também é uma ótima opção.

    
por 31.08.2009 / 16:16
5

Teste atop ... para aproveitar ao máximo o que pode ser necessário para ativar alguns patches de kernel adicionais (patches de contabilidade de E / S).

Se atop não for uma opção, use netstat -anp --inet (como root) para fornecer uma listagem de quais portas TCP / UDP estão em uso por quais processos (ou possivelmente usar lsof para isso). A partir daí, basta iterar sobre cada processo que tenha um soquete aberto e anexá-lo usando ltrace -S ou strace para examinar as leituras, gravações, envios e recebimentos ou usar tcpdump com um filtro especificando seu endereço IP local (es) e as portas TCP / UDP que foram listadas.

atop é certamente o mais conveniente deles ... se você tiver o suporte de kernel necessário instalado. No passado, eu tinha clientes e empregadores configurando sistemas especiais (diferentes de suas imagens de produção) com o único propósito de suportar perfis de E / S usando atop . No entanto, essas outras técnicas vão te levar até lá.

Tenho certeza de que também poderíamos fazer algo usando o SystemTap ... mas não sei de nenhuma receita pré-cozida fácil para fazer isso. O SystemTap é muito mais uma ferramenta de análise de programação.

    
por 01.09.2009 / 04:51