Solusi 1:
Saya akhirnya memutuskan untuk hanya menyetel bandwidth/latensi keluar di server, lalu melakukan hal yang sama di klien, secara efektif mencapai hasil yang sama.
Ini adalah perintah yang saya jalankan masing-masing di server dan klien untuk mencapai tujuan saya:
Server:4 Mbit 50 md
tc qdisc add dev eth0 handle 1: root htb default 11
tc class add dev eth0 parent 1: classid 1:1 htb rate 1000Mbps
tc class add dev eth0 parent 1:1 classid 1:11 htb rate 4Mbit
tc qdisc add dev eth0 parent 1:11 handle 10: netem delay 50ms
Klien:512 kbit 50 ms
tc qdisc add dev vmnet1 handle 1: root htb default 11
tc class add dev vmnet1 parent 1: classid 1:1 htb rate 1000Mbps
tc class add dev vmnet1 parent 1:1 classid 1:11 htb rate 512kbit
tc qdisc add dev vmnet1 parent 1:11 handle 10: netem delay 50ms
Solusi 2:
Sekitar 80-90 kByte / s adalah tentang apa yang diharapkan dari
tc filter add ... police rate 1.0mbit ...
Anda meminta data yang masuk untuk dibuang ketika mencapai 1 mBit / s, yaitu sekitar 125 kByte / s. Server jarak jauh kemudian akan turun jauh lebih rendah dari itu (mungkin setengahnya, tidak yakin). Setelah itu, semua paket masuk, sehingga ujung jarak jauh perlahan menambah kecepatan hingga mencapai 125 kByte / s lagi. Anda mendapatkan rata-rata throughput jauh di bawah 125 kByte / dtk, yang merupakan tipikal pembentukan jalan masuk.
Saya agak terkejut bahwa kecepatannya harus mencapai 2 MByte / s dengan filter kebijakan masuknya sudah ada. Di mana Anda mengukur - di klien hilir (program) atau di beberapa router hulu? Atau mungkin Anda pertama kali memulai koneksi dan baru setelah itu Anda mengaktifkan filter kebijakan masuknya?