Yüksek gecikmeyi simüle etmek için bir yöntem var mı?


Yanıtlar:


14

Bunu kullanarak yapabilirsiniz netem. Gönderen kendi ana :

Geniş alan ağı gecikmelerini taklit etme

Bu en basit örnektir, yerel Ethernet'ten çıkan tüm paketlere sabit miktarda gecikme ekler.

# tc qdisc add dev eth0 root netem delay 100ms

Şimdi yerel ağda barındırmak için basit bir ping testi 100 milisaniyelik bir artış göstermelidir. Gecikme çekirdeğin saat çözünürlüğü (Hz) ile sınırlıdır. Çoğu 2.4 sistemde, sistem saati 100 Hz'de çalışır ve bu da 10 ms'lik artışlarla gecikmelere izin verir. 2.6'da, değer 1000 ila 100 Hz arasındaki bir yapılandırma parametresidir.

Sonraki örnekler sadece qdisc'i yeniden yüklemeden parametreleri değiştirir

Gerçek geniş alan ağları değişkenlik gösterir, bu nedenle rasgele varyasyon eklemek mümkündür.

# tc qdisc change dev eth0 root netem delay 100ms 10ms

Bu, eklenen gecikmenin 100 ± 10 ms olmasına neden olur. Ağ gecikmesi değişimi tamamen rastgele değildir, bu nedenle bir korelasyon değerinin de olduğunu taklit etmek için.

# tc qdisc change dev eth0 root netem delay 100ms 10ms 25%

Bu, eklenen gecikmenin 100 ± 10 ms olmasına neden olur ve bir sonraki rastgele eleman sonuncusunda% 25'e bağlıdır. Bu gerçek istatistiksel korelasyon değil, bir yaklaşımdır.

Gecikme dağılımı

Tipik olarak, bir ağdaki gecikme aynı değildir. Gecikmedeki değişimi tanımlamak için normal dağılım gibi bir şey kullanmak daha yaygındır. Netem disiplini, eşit olmayan bir dağılım belirtmek için bir tablo alabilir.

# tc qdisc change dev eth0 root netem delay 100ms 20ms distribution normal

Gerçek tablolar (normal, pareto, paretonormal) iproute2 derlemesinin bir parçası olarak oluşturulur ve / usr / lib / tc içine yerleştirilir; bu nedenle deneysel verilere dayalı olarak kendi dağıtımınızı yapmak için biraz çaba sarf etmek mümkündür.


3
Harika - ve tcmevcut SLES ve RHEL sistemlerinde bile var.
Nils
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.