Advertisement
Sumgan

Shaper

Jul 7th, 2015
239
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.00 KB | None | 0 0
  1. #!/bin/sh
  2.  
  3. if [ $1 -eq clear ]; then
  4.   /sbin/tc qdisc del dev $2 root    2> /dev/null > /dev/null
  5.   /sbin/tc qdisc del dev $2 ingress 2> /dev/null > /dev/null
  6.   echo Wondershaper queues have been cleared.
  7.   exit
  8. fi
  9.  
  10. DEV=$1
  11. DOWNLINK=$2
  12. UPLINK=$3
  13.  
  14. #echo $dev
  15. #echo $rate
  16.  
  17. ## Очищаем текущие значения
  18. tc qdisc del dev $DEV root    2> /dev/null > /dev/null
  19. tc qdisc del dev $DEV ingress 2> /dev/null > /dev/null
  20.  
  21.  
  22. ### Корневая дисциплина ###
  23. # Для корневой дисциплины используем Hierarchical Token Bucket
  24. # по-умолчанию трафик падает в класс 30:
  25. tc qdisc add dev $DEV root handle 1: htb default 30
  26.  
  27. ## Описываем корневой класс
  28. tc class add dev $DEV parent 1: classid 1:1 htb rate ${UPLINK}kbit burst 3m # Общее ограничение согласно введенному значению
  29.  
  30.  
  31. ## Описываем краевые классы
  32. tc class add dev $DEV parent 1:1 classid 1:10 htb rate $(($UPLINK/10))kbit burst 500k # класс интерактивного трафика
  33. tc class add dev $DEV parent 1:1 classid 1:20 htb rate $((7*$UPLINK/10))kbit ceil $((9*$UPLINK/10))kbit burst 2m # класс общего полезного трафика 1 типа
  34. # tc class add dev $DEV parent 1:1 classid 1:21 htb rate $((4*$UPLINK/10))kbit ceil $((7*$UPLINK/10))kbit burst 2m # класс общего полезного трафика 2 типа
  35. tc class add dev $DEV parent 1:1 classid 1:30 htb rate $((2*$UPLINK/10))kbit ceil $((4*$UPLINK/10))kbit burst 15k # класс остального трафика
  36.  
  37. ## Задаем дисциплины краевых классов (пропускная способность в пределах каждого канала делится поровну между сессиями)
  38. tc qdisc add dev $DEV parent 1:10 handle 10: sfq
  39. tc qdisc add dev $DEV parent 1:20 handle 20: sfq
  40. tc qdisc add dev $DEV parent 1:30 handle 30: sfq
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement