Saya perhatikan bahwa iTunes tampaknya menyedot semua bandwidth saya dan tidak bermain bagus dengan aplikasi lain yang menggunakan web saat sedang mengunduh. Bahkan, ia bahkan tidak memberikan bandwidth yang cukup saat menjelajah iTunes Store saat mengunduh file besar atau banyak (podcast, acara TV, aplikasi besar, dll).
Saya tidak khawatir dengan mendapatkan semua unduhan saya sesegera mungkin, mereka benar-benar prioritas rendah, dan saya lebih suka tidak perlu melakukan ini ketika saya bangun, tetapi saya tidak bisa menekan tombol refresh jika saya ' Saya di tempat tidur dan sudah lupa itu.
Apakah ada aplikasi atau alat melalui Terminal untuk membatasi bandwidth unduhan yang didapat iTunes tanpa juga menghalangi browser web atau aplikasi lain?
Perangkat lunak FOSS / GPL lebih disukai, tetapi perangkat lunak berbayar mungkin juga dapat diterima.
sumber
Jawaban:
GUI:
CLI (tidak ada penyaringan khusus port tetapi dapat diadaptasi):
Alat-alat ini bergantung pada port atau rentang port sebagai kriteria filter. Jika Anda tidak tahu port apa yang digunakan aplikasi Anda, Anda dapat memeriksa dokumentasinya atau menggunakannya
lsof
saat aplikasi sedang berjalan untuk mengungkapkan nomor port.Sebagian besar atau semua alat menggunakan ipfw yang secara resmi ditinggalkan demi pf , jadi tidak yakin apakah solusi ini akan bekerja pada OS X 10.9 dan seterusnya.
sumber
Pertanyaan lama, tapi saya baru saja mengalami masalah yang sama jadi saya pikir saya akan menjawab.
Masalahnya mungkin sebenarnya karena pembentukan traffic di ISP Anda. Mereka secara agresif memprioritaskan lalu lintas ke penyedia konten yang dikenal dalam upaya untuk menyediakan layanan streaming yang lebih baik kepada pelanggan. Saya berpendapat mereka telah bertindak terlalu jauh dalam beberapa kasus - saya baru saja mendiagnosis masalah yang sama di mana unggahan foto iCloud latar belakang menyebabkan waktu ping lebih dari 45000 ms.
Untuk mengatasi masalah ini, Anda cukup mengurangi jumlah bandwidth total yang akan digunakan komputer Anda untuk mencegah pembentukan traffic ISP dari merampok bandwidth sepenuhnya dari semua aplikasi lain. Ironisnya, ini akan meningkatkan kinerja penelusuran di komputer Anda sendiri, di samping jelas meningkatkan kinerja untuk komputer lain di jaringan Anda. Jika misalnya Anda memiliki batas bawah 15Mbps, Anda dapat membatasi komputer Anda hanya menggunakan 12Mbps, dan algoritma ISP tidak akan lagi melihat kebutuhan untuk membentuk lalu lintas Anda secara agresif:
Dalam kasus saya, itu adalah bandwidth upstream (dibatasi pada 1Mbps oleh ISP saya) yang merupakan faktor pembatas, jadi saya menjalankan yang berikut, yang memecahkan masalah saya:
Perhatikan bahwa perintah ini hanya akan efektif sampai restart, tetapi untuk membatalkan aturan, lakukan saja hal berikut:
sumber
ipfw
dihentikan di os x, tetapi adapf
Bagaimana dengan waterroof ? Ini ujung depan yang mudah untuk IPFW. (Dan open source.)
sumber
Gunakan IceFloor di [Gunung] Lion
sumber
Ini adalah pemikiran yang sangat jahat, tetapi Anda mungkin dapat menggunakan ipfw dan dummynet bawaan Mac OS X untuk menulis aturan untuk melakukan ini. Lihat halaman manual untuk alat-alat itu.
sumber
Sehubungan dengan perkembangan saat ini untuk
OS X 10.10
,ipfw
executable yang biasa disebut, tidak lagi tersedia. Namun, adapf
yang dapat dieksekusi, yang dapat menangani konfigurasi firewall serupa.Ada antarmuka GUI yang disebut "Murus" ( http://www.murusfirewall.com ), yang dapat Anda gunakan untuk mengonfigurasi
pf
. Sejauh yang saya mengerti, itu juga secara aktif mendukung pembatasan bandwidth (dari UI).[EDIT]
Jika seseorang tidak dapat pergi tanpanya
ipfw
, Anda dapat mencoba untuk mengkompilasinya sendiri. Kode sumber (dari FreeBSD) tersedia di sini: http://www.freebsd.org/cgi/cvsweb.cgi/src/sbin/ipfw/Apple juga menerbitkan kode sumber proyek sumber terbuka yang digunakannya (d).
ipfw
dapat ditemukan di sini: http://www.opensource.apple.com/source/network_cmds/network_cmds-329.2.2/sumber
menetes adalah apa yang Anda cari.
Satu-satunya masalah adalah bahwa itu tidak mendukung executable menggunakan kqueue, dan tidak mendukung executable yang terhubung secara statis. iTunes seharusnya baik-baik saja.
sumber
poll()
. Yang lebih tua harusnya bekerja.http://github.com/zquestz/throttled ini mungkin yang Anda cari jika Anda belum menemukannya.
sumber
ipfw
, yang tidak lagi tersedia.Baru-baru ini saya menemukan (dan masih dalam tahap uji coba) Vallum untuk memiliki kendali atas aplikasi saya:
Ini adalah Firewall Aplikasi macOS yang memungkinkan Anda membatasi aplikasi apa saja yang dapat menggunakan internet. Sejauh ini benar-benar licin, saya baru saja membuat Profil Default yang memungkinkan semua yang saya ingin memiliki akses, dan Profil Hotspot Seluler yang membatasi lebih banyak aplikasi ketika saya sedang bepergian.
Pembaruan: Saya belum dapat " membatasi " bandwidth untuk aplikasi menggunakan Vallum , hanya menyiapkan profil yang berbeda di mana saya membatasi aplikasi lebih / kurang.
sumber
Cara terbaik untuk membatasi bandwidth pada macOS adalah menggunakan Dummynet, yang dibangun ke dalam kernel macOS dan bekerja dengan filter paket pf. Menurut pendapat saya satu-satunya cara untuk mengatur bandwidth secara efektif berdasarkan per proses adalah mengidentifikasi port lokal mana yang terikat oleh proses dan kemudian membuat aturan dummynet pf yang sesuai. Sejauh yang saya tahu satu-satunya aplikasi macOS yang menawarkan opsi ini adalah Scudo (saya adalah pengembang Scudo, Vallum dan Murus). Scudo 1.0 beta 3 saat ini tersedia secara gratis, info lebih lanjut tentang penyetelan bandwidth per proses Scudo dapat ditemukan di sini: http://www.murusfirewall.com/forum/viewtopic.php?f=2&t=1919&p=3281#p3281
sumber