Mac'te Uygulama Başına Wi-Fi Kullanımı Nasıl İzlenir
Mac'te gerçek zamanlı ve uzun vadeli olarak uygulama başına Wi-Fi kullanımını SaaS abonelik ücreti ödemeden nasıl görürsünüz.
- macOS
- Wi-Fi
- Bandwidth
- Tutorial
Otel Wi-Fi'ındasınız, bağlantı olması gerekenden yavaş hissediyor ve hangi uygulamanın bağlantıyı işgal ettiğini bilmiyorsunuz. Activity Monitor size süreç başına gelen ve giden baytları söyleyecektir, ancak bu baytların Wi-Fi mı yoksa ethernet üzerinden mi gittiğini — veya o sırada hangi ağda olduğunuzu — söylemez. Mac'te monitor wifi usage per app yapmak için, macOS'un trafiği süreç başına nasıl saydığını, bu baytları arayüzler aracılığıyla nasıl yönlendirdiğini ve bu veriyi gün boyu ağır bir uygulama çalıştırmadan nasıl yüzeye çıkaracağını anlamanız gerekir.
Bu rehber macOS'ta "Wi-Fi kullanımı"nın gerçekte ne anlama geldiğini, bugün kullanabileceğiniz yerleşik araçları ve bir menü çubuğu izleyicisinin aynı çekirdek verisini çalışırken bir bakışla görebileceğiniz bir şeye nasıl dönüştürdüğünü adım adım anlatır.
"monitor wifi usage per app mac" gerçekte ne demektir
macOS, uygulama katmanında Wi-Fi'ı ethernetten ayrı izlemez. Her uygulama soketler açar, çekirdek paketleri şu anda varsayılan yol olan arayüz aracılığıyla yönlendirir (en0, en1, utun0 vb.) ve süreç başına sayaçlar hangi fiziksel bağlantının taşıdığına bakılmaksızın baytları toplar.
Yani insanlar Mac'te uygulama başına Wi-Fi kullanımının nasıl izleneceğini aradıklarında, neredeyse her zaman iki şeyden birini kastederler:
- Mac'im Wi-Fi'da olduğunda uygulama başına trafik — yani bir kafedeyim, ethernet takılı değil, bu yüzden tüm trafik
en0üzerinden gidiyor. Bu durumda, "uygulama başına trafik" ve "uygulama başına Wi-Fi trafiği" aynı şeydir. - Diğer arayüzler var olduğunda bile özellikle Wi-Fi arayüzü üzerinden yönlendirilen uygulama başına trafik. Bu, USB ethernet adaptörlü bir Mac mini'de veya bir telefon hotspot'una tethering yapıldığında önemlidir.
Her iki soru da şuna iner: "süreç başına bayt göster ve hangi arayüzü kullandıklarını söyle." Apple, nettop ve Activity Monitor'da kısmi cevaplar gönderir. Adanmış bir araç boşluğu doldurur.
macOS, Wi-Fi ve ethernet arasında trafiği nasıl yönlendirir
Sistem Ayarları → Ağ'ı açın. Öncelik sırasında bir hizmet listesi göreceksiniz: Wi-Fi, USB 10/100/1000 LAN, Thunderbolt Bridge vb. Bir uygulama açıkça farklı bir arayüze bağlanmadıkça en üstteki etkin hizmet yeni bağlantılar için kazanır.
Buradan birkaç şey çıkar:
- Hem ethernet hem de Wi-Fi bağlıysa ve ethernet hizmet sırasında daha yüksekse, siz fişten çekene kadar neredeyse hiçbir şey Wi-Fi üzerinden akmaz.
- Wi-Fi'dayken bir bağlantı açmış arka plan uygulamaları, yeniden bağlanana kadar bu bağlantıyı Wi-Fi'da tutacaktır. Yani ethernete geçmek iCloud senkronizasyonunu hemen taşımaz — sonraki yeniden bağlantı taşır.
- VPN tünelleri (
utun*) altta yatan arayüzü sarar. Baytlarutun0'da ve tüneli taşıyan fiziksel arayüzde görünür.
Mevcut varsayılan arayüzü Terminal'de route get default ile doğrulayabilirsiniz — interface: en0 (Wi-Fi) veya interface: en6 (USB ethernet) veya benzeri yazdıracaktır.
Yerleşik araçlar: nettop ve Activity Monitor
Yeni bir şeye uzanmadan önce, Mac'inizde zaten olan araçları deneyin.
nettop
Terminal'i açın ve çalıştırın:
nettop -P -m route-P süreç başına toplar (bağlantı başına yerine) ve -m route yola gruplandırılmış bir görünüme geçer. Slack.21341 gibi satırları canlı güncelleyen bytes_in ve bytes_out ile göreceksiniz. Modları değiştirmek için c, çıkmak için q tuşuna basın.
Sınırlar: nettop sayaçları varsayılan görünümünde tek bir arayüze sabitleyemez ve yardımcı süreçleri katlamaz. Slack, Slack Helper, Slack Helper (GPU) ve Slack Helper (Renderer)'ı dört ayrı satır olarak göreceksiniz.
Activity Monitor — Network sekmesi
Activity Monitor'un Network sekmesi, sürecin başlangıcından bu yana süreç başına gönderilen ve alınan toplam baytları gösterir. Canlı bir oran göstermez, yardımcıları katlamaz ve arayüzleri ayırmaz. Akıl kontrolü olarak faydalı, gerçek zamanlı bir araç olarak değil.
Wi-Fi'a özel veri: wdutil
sudo wdutil infobağlantı katmanı durumunu yazdırır — kanal, RSSI, PHY modu, BSSID. Uygulama başına sayaçlarla birleştirildiğinde, yavaşlığın bir radyo sorunu mu yoksa bir uygulama sorunu mu olduğunu söyler.
Mac'te monitor wifi usage per app yapmak için neden bir menü çubuğu aracı kazanır
Tüm gün bir Terminal penceresinde nettop çalıştırmak harika bir iş akışı değildir. Bir oturum değil, bir bakış istersiniz. Bir menü çubuğu izleyicisinin devreye girdiği yer burasıdır.
ova macOS menü çubuğunda oturur ve varsayılan olarak canlı yukarı/aşağı oranları gösterir. Tıklayın ve mevcut oran artı tarihsel kullanımın kaydırılabilir bir zaman çizelgesiyle uygulama başına bir liste alırsınız. Yardımcı süreçler — Slack Helper, Google Chrome Helper, Discord Helper — üst uygulamaları altında katlanır, böylece yedi yardımcı satır yerine "Slack" okursunuz.
Mac'iniz yalnızca Wi-Fi üzerinden bağlandığında, o uygulama başına liste Wi-Fi kullanım dökümünüzdür. Birden fazla arayüzünüz olduğunda, zaman çizelgesini hangi arayüzün etkin olduğuyla ilişkilendirebilirsiniz.
Bugün uygulama başına Wi-Fi kullanımını görmek için 5 dakikalık bir kurulum
Şu anda çalıştırabileceğiniz tekrarlanabilir bir iş akışı:
- Wi-Fi'ın etkin arayüz olduğunu doğrulayın. Terminal'de:
route get default.interface: en0(veya Sistem Ayarları → Ağ'da Wi-Fi'ınızın gösterdiği her ne ise) için bakın. - Bir menü çubuğu izleyicisi yükleyin. ova'yı
/Applications'a bırakın. Yaklaşık 3 MB, imzalanmış ve notarize ve macOS 14 ve sonrasında çalışır. - Menü çubuğu listesini açın. Uygulama başına canlı bir oran göreceksiniz. Konuşmacıyı bulmak için mevcut orana göre sıralayın.
- Zaman çizelgesini kaydırın. Bir uygulamanın beş dakika önce mi, bir saat önce mi sıçradığını veya tüm sabah sürekli mi olduğunu görmek için tarihsel görünüme tıklayın.
- nettop ile çapraz kontrol edin. Bir sayı şüpheli görünüyorsa,
nettop -P -m routeçalıştırın ve karşılaştırın. İkisi yakından uyuşmalı — aynı çekirdek sayaçlarını okurlar.
ova'yı eylemde görün
Bir bakışta görülebilir bir menü çubuğu bant genişliği izleyicisi — yerel, imzalanmış, ~3 MB.
Verileri okuma: normal nedir, normal değildir
Wi-Fi'da tipik bir iş gününden bazı taban çizgileri:
- Slack boşta: kararlı durumda 5-30 KB/sn, websocket ping'leri artı varlık güncellemeleri. Bir huddle sırasında veya birisi bir dosya paylaştığında daha yüksek.
- 10 sekmeli Chrome: çılgınca değişken, sıklıkla 0-200 KB/sn boştayken, bir video oynadığında veya bir Drive senkronizasyonu başladığında 5+ MB/sn'ye sıçrayan.
- Spotify akış: varsayılan kalitede ~150-300 KB/sn, lossless'da ~700 KB/sn.
- Zoom 1080p: birebir için 2,5-3,8 Mbps yukarı ve aşağı, gallery view için daha fazla.
- Bir telefon içe aktarımından sonra iCloud Photos senkronizasyonu: dakikalarca yukarı bağlantınızı doyurabilir.
Konuşkan olmaması gereken bir uygulamadan sürekli trafik görüyorsanız — bir ekran koruyucu, bir duvar kağıdı güncelleyici, bir hesap makinesi — bu araştırmaya değer bir bayraktır.
Arayüz başına muhasebenin gerçekten önemli olduğu zamanlar
Çoğu Mac kullanıcısının aynı anda bir etkin arayüzü vardır. Ancak arayüz başına ayrıntıya ihtiyacınız olduğu gerçek durumlar vardır:
- Bir hotspot'ta gigabayt başına ödüyorsunuz. iPhone tether (
en4veya benzeri) ile normal Wi-Fi üzerinden ne kadarının gittiğini bilmek istiyorsunuz. - Kurumsal bir VPN'desiniz.
utun0'daki trafik bölünmüş tünel hassasıdır — uygulamaların gerçekten tüneli kullandığını görmek istersiniz. - Çift bağlantılı bir Mac mini sunucunuz var. Yönetim için Wi-Fi, iş yükü için ethernet ve hiçbir şeyin yanlış yola sızmadığını doğrulamanız gerekiyor.
Çekirdek, arayüz başına sayaçları sysctl net.link.generic ve getifaddrs(3) aracılığıyla sunar, ancak bunları süreçlere geri eşlemek PID-soket-arayüz bağlamalarını yürümeyi gerektirir. Bu tam olarak nettop'un dahili olarak yaptığı şeydir ve ova gibi iyi bir menü çubuğu izleyicisinin bir bakışta görülebilir bir UI'da yüzeye çıkardığı şeydir.
Gizlilik düşünceleri
Bir ağ izleyicisi meta veri okur — süreç başına bayt, bazı araçlardaki ana bilgisayar adları, zaman damgaları. Bu hassastır. Herhangi bir şey yüklemeden önce üç şeyi kontrol edin:
- Veri nerede yaşar? Bant genişliği geçmişinizi bir bulut panosuna gönderen bir izleyici davranışınızı dışa aktarıyor demektir. Açıklamada "tüm veriler diskte" veya "%100 yerel" arayın.
- Uygulama imzalanmış ve notarize edilmiş mi? macOS Gatekeeper ilk başlatmada size söyleyecektir. Çekirdek erişimi olan imzasız bir izleyici çalıştırmak istediğiniz bir şey değildir.
- Hesap gerektirir mi? Gerektirmemelidir. Yerel bir izleyicinin giriş kimlik bilgilerine ihtiyacı yoktur.
ova yalnızca yereldir, imzalanmıştır ve notarize edilmiştir ve hiç hesap istemez. Sizin için olmadığına karar verirseniz, 14 günlük geri ödeme koşulsuzdur.
Yaygın sorular
Little Snitch zaten bunu yapmıyor mu?
Little Snitch bir güvenlik duvarı — işi bağlantıları engellemek veya izin vermektir. Trafiği de gösterir, ancak odak metrik değil, kurallardır. ova bir izleyici — işi size ne olduğunu göstermektir, engelleme katmanı yoktur. İyi eşleşirler. Politikayı uygulamak istediğinizde Little Snitch'i çalıştırın. Sessiz, doğru bir okuma istediğinizde ova'yı çalıştırın.
iPhone'da Wi-Fi kullanımı?
Farklı işletim sistemi, farklı API'ler. iOS, Ayarlar → Hücresel'de uygulama başına hücresel veriyi sunar ancak üçüncü taraf uygulamaları dahil hiç kimseye uygulama başına Wi-Fi verisi sunmaz. iOS'ta nettop'un eşdeğeri yoktur. Üzgünüm.
ova macOS 13 veya öncesinde çalışır mı?
ova macOS 14 (Sonoma) veya sonrasını gerektirir. Önceki sürümlerde uygulamanın doğru muhasebe için kullandığı bazı süreç başına ağ API'leri eksiktir.
Toparlarken
Mac'te monitor wifi usage per app yapmak için, gerçekten iki soruyu yığarsınız: süreç başına muhasebe artı arayüz başına farkındalık. macOS size ham veriyi nettop ve çekirdek aracılığıyla verir; Activity Monitor size bir anlık görüntü verir; bir menü çubuğu izleyicisi aynı sayıları bir Terminal penceresi gerektirmeyen canlı, kaydırılabilir bir görünüme dönüştürür.
Bugün yalnızca bir şey yaparsanız, ova'yı yükleyin, çalışırken bir saat çalışmasına izin verin ve uygulama başına listeyi kontrol edin. Konuşmacılar sizi şaşırtacak — her zaman şaşırtırlar.