Como descobrir qual processo está consumindo minha largura de banda?


184

Eu acho que estou sendo vítima de um bug aqui. Às vezes, enquanto trabalho (ainda não sei por quê), o tráfego da minha rede sobe para 200 KB / s e permanece assim, mesmo sendo difícil, não estou fazendo nada relacionado à Internet.

Às vezes isso acontece comigo com o uso da CPU. Quando isso acontece, basta executar um topcomando para descobrir qual processo é responsável e depois kill. O problema é: não tenho como saber qual processo é responsável pelo meu alto uso de rede. O monitor de recursos e o topcomando informam apenas meu uso total da rede, nenhum deles informa informações de processo específicas da rede.

Encontrei perguntas aqui sobre o monitoramento do uso total da largura de banda, mas, como mencionei, não é disso que preciso. Existe outro comando que eu possa usar para descobrir qual processo está ficando fora de controle?

O comando iftopfornece resultados que discordam inteiramente das informações relatadas pelo System Monitor. Enquanto o último afirma que há alto tráfego de rede, o primeiro afirma que mal há 1 KB / s.

Eu já tentei matar todos os óbvios (Firefox, gerenciador de atualizações, Pidgin, etc) sem sorte. Até agora, reiniciar a máquina é a única maneira que encontrei de me livrar do problema.

Respostas:


221

Eu tive muito sucesso com nethogs . Ele precisa ser executado como root, mas existem diferentes maneiras de classificar as estatísticas (como KB / s ou largura de banda total monitorada desde que o nethogs foi iniciado).

Além disso, se você usar a conexão sem fio, precisará passar o dispositivo para ele.

Instale-o com o comando: sudo apt-get install nethogs

Exemplo: sudo nethogs wlan0


Em uma inspeção mais minuciosa, é realmente irritante supor que o terminal tenha sempre 80 caracteres de largura e trunca o comando.
Li Lo

3
Já faz um tempo, mas essa resposta é consideravelmente mais simples.
Malabarba

2
nethogsé bom, mas parece usar muito mais cpu no meu computador do queiftop
aidan

4
Esteja avisado de um bug que torna algumas versões nethoginutilizáveis: askubuntu.com/questions/726601/…
Rmano

3
Você não precisa passar o dispositivo se estiver usando conexão sem fio. sudo nethogsfunciona bem.
Ads20000

55

Use iftoppara localizar a porta TCP em sua máquina que está recebendo mais tráfego. Em seguida, use sudo netstat -tuppara localizar o processo "proprietário" dessa porta.

Esse é o processo que você está procurando.

PS: Também deve funcionar para UDP.


Obrigado, o comando parece funcionar, mas estou obtendo resultados estranhos. O monitor do sistema reivindica um total de cerca de 180 iftopKB / s, enquanto afirma um total de apenas 1 kilobyte por segundo.
Malabarba 16/08/10

1
Estou aceitando a resposta, pois ela responde à pergunta original. Mas vou ser legal se puder descobrir o que está acontecendo aqui.
Malabarba

O iptop exibe estatísticas para uma única interface. Não tenho certeza se o monitor do sistema analisa apenas uma interface ou todas elas. Se for esse o caso, haverá tráfego mostrado pelo monitor do sistema, mas não mostrado pelo iftop, o que é bom, porque você só quer olhar para a interface da Internet de qualquer maneira (e não lo). Acabei de testar o iftop no meu sistema e ele mostrou o que eu esperava. Esteja ciente de que iftop exibe médias acima de 2s, 10s, 40s, respectivamente. Corri o iftop como 'sudo iftop -i eth0 -nPB', como você o executou?
Li Lo

Eu executei como sudo iftop -B -i eth0, isso significa que ele estava apenas olhando para o meu tráfego na Internet, certo? Não me ocorreu que o monitor do sistema também estivesse verificando outras interfaces. Ironicamente, o problema desapareceu 10 minutos atrás (depois de muitas horas), então não posso verificar iftopnovamente por enquanto. O que significa a interface lo?
Malabarba

3
Como existem muitos números na tela do iftop, criei uma captura de tela em que destaquei o número do seu interesse. Compare isso ao Monitor do sistema. A captura de tela está em imgur.com/2iuiI . "lo" significa localhost, é uma interface através da qual os programas locais podem se comunicar.
Li Lo

14

Você pode pesquisar ntop- o que deve monitorar a atividade da rede em um nível de processo. Você pode encontrar ntopno Centro de Software ou comsudo apt-get install ntop

Para instruções de instalação, siga a página http://packages.ntop.org/


2
não disponível no ubuntu 17.04 (zesty)
shadi 25/11

veja packages.ntop.org/apt-stable para repositórios para versões posteriores do ubuntu. Também éapt-get install ntopng
DW1

7

Outra alternativa é o iptraf. Ele não mostrará o PID do processo, mas informará qual conexão usa quanta largura de banda.


6

Resposta tardia, mas tive o mesmo problema. Acabou sendo o Ubuntuone. Constatou que executando tcpdump. Passei pela mesma curva de aprendizado na identificação de processos.

Das minhas anotações :

Informações de conexão da caixa Ubuntu

Iniciei o meu desktop Ubuntu 10.04 esta manhã e descobri que, após alguns minutos, a conexão com a Internet está se arrastando. Eu já vi isso nas caixas do Windows antes e 99% das vezes é spyware. Então, eu precisava investigar ... estilo de linha de comando.

tcpdump. Mostra o Ubuntuone ficando louco.

Sistema> Preferências> Ubuntu One. Desligue toda a sincronização. Isso foi o que aconteceu.

Então, acho que gostaria de ver todas as conexões de rede e o que elas estão fazendo. eu posso

netstat -cW (liste as conexões de rede continuamente em grande formato para que endereços estrangeiros não sejam truncados)

lsof -i |grep -v 'localhost' (liste os arquivos abertos correspondentes a um endereço da Internet de qualquer um, grep para remover todos os arquivos abertos associados ao localhost - meu pensamento aqui é que eu não quero ver serviços locais, pois provavelmente não afetarão a utilização da rede).

Algumas coisas para tirar:

  1. Precisa aprender sobre os logs do Ubuntu para solucionar problemas.
  2. É preciso aprender mais sobre o tcpdump, então começarei com este tutorial de Daniel Miessler .

Nota do editor: Esta resposta se referia ao artigo de blogspot do funileiro, destinado apenas a usuários convidados. Como essa resposta tem votos apreciáveis, é valiosa. Encontrei uma cópia do artigo sobre Wayback Machine . E incluiu isso aqui.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.