Apa solusi perangkat lunak yang bagus untuk memperlambat koneksi internet pada mac untuk pengujian dan simulasi?
Kebutuhan utama saya adalah ketika menguji kode dalam iPhone / iOS simulator, jadi memperlambat koneksi untuk aplikasi atau proses tertentu akan sangat bagus.
Jawaban:
Apple telah membuat alat resmi yang sangat berguna untuk memperlambat koneksi jaringan pada Mac Anda untuk tujuan pengujian.
The Link Jaringan Conditioner preferensi adalah download gratis dari dalam Xcode (untuk Lion dan kemudian OS). Selain itu, iOS memiliki fungsi serupa yang dapat diakses dari dalam Xcode dan iOS 6 atau lebih baru.
Versi Xcode yang lebih lama sebelum versi 4.3.2 menyematkan salinan alat ini. Sekarang, Anda menggunakan Xcode untuk mengunduhnya secara langsung dengan cara yang mirip dengan simulator iOS dan dokumentasi pengembang.
Ada 11 profil bawaan dari jaringan Lossy Edge dengan penundaan 400ms ke modem kabel. Jika Anda membutuhkan batasan lain, Anda dapat membuat profil khusus dengan pengaturan Anda sendiri atau Anda juga dapat menggunakan
ipfw
diri Anda sendiri seperti yang dijelaskan dalam artikel slow ride karya Craig Hockenberry , membuatnya mudah. Itu juga menyebutkan panel Speed Limit oleh Mike Schrag yang merupakan unduhan yang lebih kecil daripada Xcode, tetapi memiliki lebih sedikit opsi daripada alat Apple.Ini memperlambat seluruh tumpukan jaringan, sehingga Anda tidak dapat mencekik pada basis per aplikasi tanpa melakukan hal-hal seperti menginstal singa di mesin virtual dan mengatur VM itu dengan tumpukan yang dibatasi.
sumber
OS X 10.9 dan sebelumnya menyediakan
ipfw
dan memungkinkan Anda untuk menentukan aturan firewall kustom. Buat pipa dengan penggunaan bandwidth terbatasipfw
dan Anda dapat menjalankan tes dan simulasi.Buat pipa "1" terbatas hingga 500KBytes / s via
Pandu semua lalu lintas jaringan port 80 melalui pipa "1" menggunakan
Bila Anda tidak membutuhkan pipa lagi, lepaskan dari pelabuhan menggunakan
Lain
MByte/s
80
: port standar untukhttp
lalu lintas yang tidak dienkripsi . Port ini digunakan untuk sebagian besar penjelajahan dan pengunduhan. Anda harus baik-baik saja dengan ini dalam banyak kasus.443
: port standar untukhttps
lalu lintas terenkripsi SSL .sumber
pfctl
dandnctl
contoh penggunaan.Batas Kecepatan adalah panel System Preferences untuk sengaja dan selektif memperlambat port dan domain tertentu.
sumber
Untuk menambah jawaban yang diterima: sepertinya Anda tidak perlu XCode, cukup sebuah akun di situs web Pengembang Apple (lebih sederhana daripada mengunduh paket 2GB XCode terlebih dahulu jika Anda belum memilikinya).
Buka https://developer.apple.com/downloads dan cari "Network Link Conditioner" atau "Tools Tambahan untuk XCode", yang terakhir adalah nama paket yang ditemukan.
Untuk mengunduhnya melalui Xcode 8.x:
sumber
Jika Anda hanya perlu pelambatan untuk pengembangan Web, saya dengan sepenuh hati dapat merekomendasikan Charles . Ini adalah alat yang sangat baik untuk men-debug aplikasi HTTP, dan di antara banyak fitur-fiturnya, ada opsi Throttle. Perangkat lunak ini tidak murah, tetapi melakukan pekerjaan yang sangat baik.
sumber
Pengguna Mac OS X 10.10+ perlu menggunakan
dnctl
danpfctl
tetapi contoh penggunaan yang terdokumentasi tidak mudah ditemukan.Jika Anda ingin keluar semua dan membentuk semua yang dapat Anda gunakan:
Saya percaya ini juga mempengaruhi pipa localhost yang memperlambat debugging vs-code saya, jadi berhati-hatilah.
sumber
Anda juga dapat menggunakan ipfw piping untuk memperlambat jaringan Anda.
Pertama, atur "pipa" virtual untuk membatasi throughput hingga 800KBit / detik:
Kemudian Anda dapat mengatur aturan untuk mendorong lalu lintas melalui pipa itu (pipa 1). (port 6881-6890 menjadi lalu lintas yang lebih kecil)
Berikut contoh lain untuk membatasi lalu lintas hingga 10Kbit / detik dari alamat IP tertentu:
(Sumber)
sumber
Untuk XCode 10.2, di Alat pengembang lainnya - Alat tambahan untuk XCode 10.2, Anda akan menemukan Network Link Conditioner.
sumber