Bagaimana saya bisa melihat bandwidth apa yang digunakan setiap aplikasi atau proses?

15

Tiba-tiba saya melihat bahwa bandwidth downstream saya adalah 400 KBps yang merupakan maksimum yang diberikan ISP saya kepada saya, jadi ada aplikasi yang mengunduh pada kapasitas teratasnya.
Masalahnya adalah saya tidak memulai unduhan, jadi melakukannya di latar belakang tanpa memberi tahu.
Bagaimana saya bisa tahu aplikasi atau proses mana yang menggunakannya?
Atau, pada dasarnya, bagaimana saya bisa menentukan berapa banyak bandwidth yang digunakan oleh setiap proses atau aplikasi terbuka?

Petruza
sumber
Saya telah menemukan aplikasi firewall sebelumnya yang dapat menggambarkan penggunaan jaringan per aplikasi dan per pengguna ... tapi sepertinya saya tidak dapat menemukannya lagi. : /
Jason Salaz
HandsOff menunjukkan penggunaan per aplikasi
hsmiths
apakah pembaruan perangkat lunak otomatis?
jm666
@ jm666: Itu tersangka pertama saya, tapi ternyata tidak
Petruza

Jawaban:

14

Quote: "Bagaimana saya bisa tahu aplikasi atau proses mana yang menggunakannya?"

Anda dapat mencoba nettop (1) di Terminal. Ini sudah diinstal sebelumnya, dan diperbarui setiap beberapa detik untuk menyediakan dasbor semua koneksi jaringan terbuka (dengan proses) dengan penggunaannya. Lebih baik daripada lsofkarena itu menunjukkan data penggunaan juga.

$ nettop

Kemudian tekan 'd' dan cari entri atau entri yang tampak aneh dengan lalu lintas besar secara konsisten di kolom 'byte dalam' atau 'byte keluar'. 'D' menginstruksikan nettop untuk hanya menampilkan perbedaan di setiap refresh layar.

Catatan penggunaan praktis:

Jika Anda tidak mengenali nama proses, Google itu.

Jika Anda tidak ingin prosesnya berjalan, dapatkan pid (nomor di sebelah nama proses di nettop), dan bunuh dengan kill -9 <pid>. Jika itu tidak menyelesaikannya, cari tahu apakah Anda dapat menghapus proses tersebut.

Jika Anda tertarik dengan proses yang ditransmisikan melalui jaringan, gunakan nomor port klien untuk koneksi tertentu (mis. '53133' dari 10.0.0.1:53133->74.125.68.100:80) untuk menjalankan tcpdump (1) untuk melihat data dalam paket yang dipertukarkan:sudo tcpdump -nnvvXSs 1514 port 53133

Jika Anda tertarik pada tujuan yang dituju oleh proses ini, tetapi alamat IP tujuan tidak memiliki nama host DNS terbalik (seperti dalam contoh sebelumnya), kemudian coba kunjungi alamat IP tersebut di browser web sebagai https: // IP , klik ikon kunci rusak di bilah alamat, dan lihat detail sertifikat untuk mengetahui domain mana yang dilayani di sana (* .google.com dalam hal ini). Ini tidak akan berfungsi jika port SSL 443 tidak terbuka di tujuan.

2rdmc
sumber
Saya tidak mengerti alasan pemungutan suara negatif. AFAICT, jawabannya adalah persis apa yang dicari OP (bagaimana memonitor proses mana yang menggunakan bandwidth).
2rdmc
Pada pandangan pertama nettoptampaknya lebih samar daripada top. Misalnya saya tidak bisa melihat cara mendapatkan proses paling aktif di atas.
hippietrail
4

Anda dapat dengan mudah melihat semua aktivitas jaringan dari Monitor Aktivitas; itu dibangun langsung ke OS X.

  • Buka Aplikasi> Utilitas> Monitor Aktivitas
  • Klik tab Network

Monitor Aktivitas, Tab Jaringan;  Diurutkan berdasarkan Paket yang Dikirim

Michael Thompson
sumber
2
Apakah ada cara untuk melihat bandwidth per detik, dibandingkan dengan total byte?
payah
@Rumrum jika Anda mengklik kanan header kolom Anda dapat memodifikasi kolom apa yang ditampilkan. Tidak yakin apakah ada kolom per detik, tetapi harus ada sesuatu di sana yang dapat membantu.
Michael Thompson
4

Hanya untuk melengkapi jawaban nettop (hebat) - beberapa mengeluh bahwa outputnya samar. Untuk keluaran bersih, coba:

nettop -P -k state,interface -d

Bendera menjelaskan:

-P menciutkan baris dari setiap proses induk

-k state,interface menghapus kolom yang kurang informatif yang berada di antara Anda dan byte dalam / keluar kolom

-dmengaktifkan opsi delta (sama seperti menekan dtombol)

Gunakan htombol atau jalankan man nettopuntuk beberapa opsi lagi.

berks
sumber
3

Rubbernet adalah aplikasi yang sangat hebat yang memungkinkan Anda melihat per penggunaan jaringan aplikasi Mac Anda plus itu mendukung Remote Monitoring. Anda dapat menginstal plugin Rubbernet setiap Mac yang Anda miliki akses administratif dan kemudian memantau pemanfaatan bandwidth per aplikasi semua Macintosh di jaringan Anda dari komputer Anda sendiri.

Memang membutuhkan biaya (30 Euro di situs web mereka tetapi karena suatu alasan $ 19,99 di Mac App Store tetapi mereka memiliki Uji Coba Gratis yang berfungsi penuh di situs web mereka. Saya belum membeli aplikasi ini, jadi saya tidak dapat mengonfirmasi bahwa Anda dapat beli satu lisensi untuk aplikasi dan kemudian instal plugin pada sejumlah Mac untuk biaya tambahan sekarang. Tapi itu tampaknya situasinya.

Para Pengembang adalah orang-orang yang sama yang melakukan Klien IRC Linkinus.

tautan ke rubbernet dihapus karena mengarah ke situs web dengan peringatan palsu tentang pembaruan Flash yang kedaluwarsa

Robert J Berger
sumber
2

lsof dan iftop (Tautan langsung untuk menginstal paket) adalah alat terbaik yang terlintas dalam pikiran.

Lihat juga pertanyaan ini .

Somantra
sumber
Tapi itu tidak menunjukkan aplikasi mana yang menggunakan bandwidth
Petruza
@Petruza, Anda dapat mengidentifikasi program yang terkait dengan koneksi tertentu menggunakan lsof dan kemudian memonitor bandwidth koneksi dengan iftop. Itu harus cukup informasi untuk mengaudit koneksi / program yang dicurigai.
Somantra
@Petruza, dalam kasus Anda, Anda mungkin akan mulai dengan iftop untuk mengidentifikasi koneksi yang menggunakan bandwidth Anda kemudian melacak koneksi ke aplikasi yang memiliki lsof atau netstat.
Somantra
1

Pilihan lain yang tidak sebagus itu tidak memiliki mekanisme pemantauan jarak jauh dan sepertinya tidak melakukan pekerjaan dengan baik adalah OS Track . Ini juga tersedia di Mac App Store secara gratis. Saya tidak terlalu menyukai aplikasi ini karena sepertinya menghabiskan banyak sumber daya itu sendiri. Tapi itu mungkin sesuatu yang mereka perbaiki di versi yang lebih baru.

Robert J Berger
sumber
0

sudo fs_usage mungkin id proses

hsmiths
sumber