Muito ocasionalmente, ao usar o Mac, percebo que minha conexão com a Internet está diminuindo. Usando o Monitor de Atividade, percebo que é porque algo está baixando dados na velocidade máxima que minha conexão pode suportar - mas não sei dizer o que é responsável por isso. Isso pode ser causado por várias coisas diferentes (sincronização do Dropbox; algum aplicativo está fazendo uma atualização automática; mais recentemente, foi um buffer de vídeo em uma guia do navegador que eu havia esquecido), por isso seria muito útil ter uma maneira de dizer qual aplicativo é responsável pelo uso da rede. Isso é possível no OS X? Idealmente, estou procurando uma solução gratuita. (A linha de comando está OK.) Estou no Snow Leopard se isso faz diferença.
9
Firewalls
Você pode usar Little Snitch ou HandsOff . Eles são ótimos firewalls e ambos têm um recurso "Network Monitor", que fará o trabalho:
A rede monitora: Little Snitch (esquerda), HandsOff (direita)
Nettop
Uma solução cli gratuita e integrada (infelizmente não está incluída no Snow Leopard) seria o nettop . O nettop agrupa o tráfego por programa e porta e mede várias estatísticas da rede.
De outros
Existem alguns outros programas que capturam e medem o tráfego ( iftop , wireshark , tcpdump ), mas eles não conhecem o pid originado. Para fazer a conexão, você deve usar o netstat .
fonte
nettop
era novo para mim. Parece útil.lhe dará todos os acessos à rede por todos os aplicativos (e processos). Normalmente, o processo de criação de muito tráfego é o que aparece com mais frequência na saída.
fonte
O "livro do DTrace" possui um script, soconnect.d , que faz isso.
Copie a versão "Mac OS X", cole-a em um arquivo de texto e execute-a no terminal com
sudo dtrace -s soconnect.d
.fonte
O Activity Monitor também possui colunas para bytes recebidos e enviados desde 10.9:
fonte