web-dev-qa-db-fra.com

Comment savoir quel processus consomme ma bande passante?

Je pense que je suis victime d'un bug ici. Parfois, pendant que je travaille (je ne sais toujours pas pourquoi), mon trafic réseau atteint 200 Ko/s et le reste, même si je ne fais rien d’internet.

Cela m'arrive parfois avec l'utilisation du processeur. Lorsque cela se produit, j'exécute simplement une commande top pour savoir quel processus est responsable, puis kill le. Le problème est le suivant: je n'ai aucun moyen de savoir quel processus est responsable de mon utilisation élevée du réseau. Le moniteur de ressources et la commande top me disent uniquement quelle est mon utilisation totale du réseau, et aucun d’eux ne me dit de traiter des informations réseau spécifiques.

J'ai trouvé des questions ici sur la surveillance de l'utilisation totale de la bande passante, mais, comme je l'ai mentionné, ce n'est pas ce dont j'ai besoin. Existe-t-il une autre commande que je peux utiliser pour savoir quel processus est hors de contrôle?

La commande iftop donne des résultats totalement en désaccord avec les informations signalées par le Moniteur système. Alors que ce dernier affirme qu'il y a un trafic réseau élevé, le premier affirme qu'il y a à peine 1 Ko/s.

J'ai déjà essayé de supprimer tous les problèmes évidents (Firefox, gestionnaire de mise à jour, Pidgin, etc.) sans succès. Jusqu'à présent, le redémarrage de la machine est le seul moyen que j'ai trouvé pour résoudre ce problème.

171
Malabarba

J'ai eu beaucoup de succès avec nethogs . Il doit s’exécuter en tant qu’utilisateur root, mais il existe différentes manières de trier les statistiques (par exemple, Ko/s ou la bande passante totale surveillée depuis le démarrage de nethogs).

De plus, si vous utilisez la technologie sans fil, vous devez y transférer le périphérique.

Installez-le avec la commande: Sudo apt-get install nethogs

Exemple: Sudo nethogs wlan0

205
Ben

Utilisez iftop pour localiser le port TCP de votre ordinateur recevant le plus de trafic. Utilisez ensuite Sudo netstat -tup pour localiser le processus "propriétaire" de ce port.

C'est le processus que vous recherchez.

PS: devrait aussi fonctionner pour UDP.

52
Li Lo

Vous voudrez peut-être examiner ntop - qui devrait surveiller l'activité du réseau au niveau du processus. Vous pouvez trouver ntop dans le Centre logiciel ou avec Sudo apt-get install ntop

Pour les instructions d’installation, suivez leur page http://packages.ntop.org/

13
Marco Ceppi

Une autre alternative est iptraf. Cela ne vous indiquera pas le PID du processus, mais vous indiquera quelle connexion utilise combien de bande passante.

7
Dennis Kaarsemaker

Réponse tardive, mais j'ai eu le même problème. S'est avéré être Ubuntuone. J'ai trouvé ça en exécutant tcpdump. J'ai suivi la même courbe d'apprentissage sur l'identification des processus. Mes notes sont ici .

6
tinker