Come faccio a sapere quale processo sta consumando la mia larghezza di banda? [duplicare]

152

Penso di essere vittima di un bug qui. A volte, mentre sto lavorando (non so ancora perché), il mio traffico di rete arriva fino a 200 KB / s e resta così, anche se non sto facendo nulla su internet.

Questo a volte mi capita con l'utilizzo della CPU. Quando lo fa, eseguo solo un comando top per scoprire quale processo è responsabile e quindi kill esso. Il problema è: non ho modo di sapere quale processo è responsabile per il mio elevato utilizzo della rete. Sia il controllo risorse che il comando top mi dicono solo il mio utilizzo totale della rete, nessuno dei due mi dice di elaborare specifiche informazioni di rete.

Ho trovato domande sul monitoraggio dell'uso totale della larghezza di banda, ma, come ho detto, non è quello che mi serve. C'è un altro comando che posso usare per scoprire quale processo sta sfuggendo di mano?

Il comando iftop fornisce risultati in disaccordo con le informazioni riportate da Monitor di sistema. Mentre il secondo afferma che c'è un elevato traffico di rete, il primo afferma che ci sono appena 1 KB / s.

Ho già provato a uccidere tutti quelli ovvi (Firefox, update-manager, Pidgin, ecc.) senza fortuna. Finora, il riavvio della macchina è l'unico modo in cui ho trovato di eliminare il problema.

    
posta Malabarba 16.08.2010 - 21:22

5 risposte

180

Ho avuto molto successo con nethogs . Deve essere eseguito come root ma esistono diversi modi per ordinare le statistiche (come KB / s o larghezza di banda totale monitorata da quando i nethog sono stati avviati).

Inoltre, se si utilizza il wireless, è necessario passare il dispositivo ad esso.

Installalo con il comando: sudo apt-get install nethogs

Esempio: sudo nethogs wlan0

    
risposta data Ben 18.08.2010 - 03:47
46

Utilizza iftop per individuare la porta TCP sulla macchina che riceve il maggior numero di traffico. Quindi usa sudo netstat -tup per individuare il processo "proprietario" di quella porta.

Questa è la procedura che stai cercando.

PS: dovrebbe funzionare anche per UDP.

    
risposta data Li Lo 16.08.2010 - 21:56
13

Potresti voler esaminare ntop - che dovrebbe monitorare l'attività di rete a livello di processo. Puoi trovare ntop nel Software Center o con sudo apt-get install ntop

Per le istruzioni di installazione, segui la loro pagina link

    
risposta data Marco Ceppi 16.08.2010 - 21:43
7

Un'altra alternativa è iptraf. Non ti mostrerà il PID del processo, ma ti dirà quale connessione usa la larghezza di banda.

    
risposta data Dennis Kaarsemaker 16.08.2010 - 22:21
6

Risposta tardiva, ma ho avuto lo stesso problema. Si è rivelato essere Ubuntuone. Trovato che eseguendo tcpdump. Ho attraversato la stessa curva di apprendimento sull'identificazione del processo. Le mie note sono qui .

    
risposta data tinker 13.09.2010 - 02:03

Leggi altre domande sui tag