Linux QOS: Внесение искажений и задержек в траффик: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
(Новая страница: «=Еще заметрка про управление траффиком= Задержка пакетов 500 миллисекунд: <PRE> tc qdisc add dev lo…»)
 
Строка 7: Строка 7:
 
tc qdisc add dev lo root netem delay 500ms
 
tc qdisc add dev lo root netem delay 500ms
 
</PRE>
 
</PRE>
  +
tc qdisc change dev lo root netem delay 1s
   
  +
https://habr.com/ru/company/funcorp/blog/486136/
 
  +
  +
  +
Помимо константного значения, для задержки можно задавать отклонение, функцию распределения и корреляцию (со значением для предыдущего пакета). Делается это следующим образом:
  +
  +
tc qdisc change dev lo root netem delay 500ms 400ms 50 distribution normal
  +
  +
Здесь мы задали задержку в промежутке от 100 до 900 миллисекунд, значения будут подбираться в соответствии с нормальным распределением и будет 50-процентная корреляция со значением задержки для предыдущего пакета.
  +
  +
  +
Сделаем потерю 50% пакетов с корреляцией 25%:
  +
  +
tc qdisc add dev lo root netem loss 50% 25%
  +
  +
  +
  +
Добавление шума в пакеты
  +
  +
Помимо потери пакетов, можно имитировать их повреждение: в рандомной позиции пакета появится шум. Сделаем повреждение пакетов с 50-процентной вероятностью и без корреляции:
  +
  +
tc qdisc change dev lo root netem corrupt 50%
  +
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.303.7914&rep=rep1&type=pdf
 
* https://habr.com/ru/company/funcorp/blog/486136/

Версия 12:35, 26 февраля 2020

Еще заметрка про управление траффиком

Задержка пакетов 500 миллисекунд:

tc qdisc add dev lo root netem delay 500ms

tc qdisc change dev lo root netem delay 1s



Помимо константного значения, для задержки можно задавать отклонение, функцию распределения и корреляцию (со значением для предыдущего пакета). Делается это следующим образом:

tc qdisc change dev lo root netem delay 500ms 400ms 50 distribution normal

Здесь мы задали задержку в промежутке от 100 до 900 миллисекунд, значения будут подбираться в соответствии с нормальным распределением и будет 50-процентная корреляция со значением задержки для предыдущего пакета.


Сделаем потерю 50% пакетов с корреляцией 25%:

tc qdisc add dev lo root netem loss 50% 25%


Добавление шума в пакеты

Помимо потери пакетов, можно имитировать их повреждение: в рандомной позиции пакета появится шум. Сделаем повреждение пакетов с 50-процентной вероятностью и без корреляции:

tc qdisc change dev lo root netem corrupt 50% http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.303.7914&rep=rep1&type=pdf