QoS przy zmiennej prędkości łącza
|
michalkos |
Dodano 31-12-2014 01:34
|
User
Posty: 5
Dołączył: 10/04/2013 05:30
|
Witam
Korzystam z routera D-Link DIR-300 z oprogramowaniem DD-WRT. Do tej pory nie korzystałem z QoS. Jednak sieć się rozrosła i obecnie składa się z:
- 5 komputerów
- telewizora z WiFi
- konsoli PlayStation 3
- dekodera Cyfrowego Polsatu
- smartfonów i tabletów
Chciałbym, żeby to wszystko działało jak najlepiej.
Zależy mi, żeby strony www, filmy z internetu (YouTube itp.), Skype, gry on-line (na PC i na konsoli) miały najwyższy priorytet i zawsze działały szybko, a pobieranie plików (zarówno przez przeglądarkę, torrent, jak i gry na konsolę) miały priorytet najniższy i nie wpływały na inne usługi. Problem jest w tym, że prędkość mojego łącza jest zmienna. Gwarantowana prędkość to 4/1 Mbits/s (i taka jest zawsze), ale zdarza się że download osiąga poziom 10 Mbits/s. W związku z tym nie mogą w ustawieniach QoS na sztywno wpisać prędkości downloadau i uploadu. Co prawda mógłbym wpisać prędkości gwarantowane, ale szkoda mi tych kilku megabitów (jeśli łącze nie jest wykorzystywane w inny sposób to chciałbym, żeby torrent leciał maksymalną prędkością). Jak rozwiązać ten problem? Czym może skutkować wpisanie wyższych prędkości niż rzeczywiste?
Będę bardzo wdzięczny za wszelkie sugestie i rady.
Pozdrawiam
Połączony z 05 January 2015 23:12:32:
A co by się stało, gdybym wpisał w QoS prędkość downloadu np. 8Mb/s, a faktyczna prędkość w danym momencie wynosiłaby 4 Mb/s?
Edytowany przez michalkos dnia 05-01-2015 23:12
|
|
|
|
grz3si3k |
Dodano 06-01-2015 09:10
|
Super User
Posty: 630
Dołączył: 28/06/2008 17:19
|
Z QoS to jest tak, że niestety trzeba sobie samemu dopracować reguły, jak pewnie zauważyłeś jest w sieci kilka pomocnych reguł, ale finalnie zawsze wyjdzie tak że każdy oczekuje czegoś innego.
Jak używałem QoS, robiłem je sam, posiłkując się oczywiście innymi, ale finalnie testowałem każdą z osobna, dziś nie używam i jestem zdrowy
Połączony z 06 January 2015 09:52:48:
Cytat A co by się stało, gdybym wpisał w QoS prędkość downloadu np. 8Mb/s, a faktyczna prędkość w danym momencie wynosiłaby 4 Mb/s?
Nadal będzie wynosiła 4Mb/s ??
A jak ma wynosić więcej jak nie ma więcej a górna granica ustawiona jest na 8.
Edytowany przez grz3si3k dnia 06-01-2015 09:52
RT-AC68U
|
|
|
|
michalkos |
Dodano 06-01-2015 16:07
|
User
Posty: 5
Dołączył: 10/04/2013 05:30
|
Ustawiłem sobie QoS następująco:
http://naforum.zapodaj.net/1b7ede6b97...8.jpg.html
Jednak wygląda na to, że nie działa. Gdy włącze pobieranie jakiegoś pliku przez uTorrent to strony chodzą strasznie wolno. Prędkości ustawiłem 4/1 (czyli takie jak mam gwarantowana), jako algorytm ybrałem HFSC. Nie wiem gdzie popełniłem błąd? |
|
|
|
grz3si3k |
Dodano 06-01-2015 16:11
|
Super User
Posty: 630
Dołączył: 28/06/2008 17:19
|
Ponieważ torrent łączy się z dużą ilością peerów i zapycha ci łącze
RT-AC68U
|
|
|
|
wajs |
Dodano 06-01-2015 16:48
|
User
Posty: 42
Dołączył: 26/08/2014 16:46
|
Stwórz dla testu nową usługę, w niej porty 1025-65535, później daj ją na bulk i zobacz, czy dalej torrenty będą zamulać neta. |
|
|
|
michalkos |
Dodano 06-01-2015 18:01
|
User
Posty: 5
Dołączył: 10/04/2013 05:30
|
Cytat wajs napisał(a):
Stwórz dla testu nową usługę, w niej porty 1025-65535, później daj ją na bulk i zobacz, czy dalej torrenty będą zamulać neta.
Ustawiłem bulk na porty 1025-65535 i nic to nie dało. Może strony ładują się odrobinkę szybciej, ale nie ma szans na oglądnięcie filmiku na YouTube, a prawie całe łącze wykorzystuje uTorrent
A jak sobie z tym poradzić? Myślałem, że QoS eliminuje właśnie takie problemy |
|
|
|
grz3si3k |
Dodano 06-01-2015 18:14
|
Super User
Posty: 630
Dołączył: 28/06/2008 17:19
|
z torrentem nie jest tak łatwo, poszukaj było już o tym na tym forum
RT-AC68U
|
|
|
|
kille72 |
Dodano 06-01-2015 19:18
|
Administrator
Posty: 2986
Dołączył: 12/02/2007 23:43
|
Wylacz QOS a wlacz Bandwidth Limiter, kazdemu MAC/IP przydziel pasmo i niech sobie zamulaja sami sobie...ew dodaj TCP Limit UDP Limit.
Chyba ze sam sobie zamulasz, wiec proponuje zmniejszyc download/upload/peers w kliencie torrent.
Edit:
Sorry, nie przeczytalem ze masz DD-WRT, ale tam tez chyba mozna uzyc skryptu do podzialu lacza.
Edytowany przez kille72 dnia 06-01-2015 19:31
|
|
|
|
wajs |
Dodano 06-01-2015 20:40
|
User
Posty: 42
Dołączył: 26/08/2014 16:46
|
A sprawdź jeszcze:
Administration -> Management -> IP Filter Settings (adjust these for P2P) -> Maximum Ports
ustaw tam na test 500. |
|
|
|
michalkos |
Dodano 06-01-2015 22:29
|
User
Posty: 5
Dołączył: 10/04/2013 05:30
|
Zmniejszyłem ilość portów na 500
Szukałem jeszcze na forum informacji na temat podziału łącza i znalazłem wzór skryptu. Przerobiłem go trochę i wygląda następująco:
Cytat
DEV="br0"
TCA="tc class add dev ${DEV}"
TFA="tc filter add dev ${DEV}"
TQA="tc qdisc add dev ${DEV}"
SFQ="sfq perturb 10"
CEIL=4096
WWWMAX=1000000
PRIO0="27964,27015:27016,27045"
PRIO1="20:110,8080"
P2P="62000:62100"
tc qdisc del dev ${DEV} root
tc qdisc add dev ${DEV} root handle 1: htb
tc class add dev ${DEV} parent 1: classid 1:1 htb rate ${CEIL}kbit
$TCA parent 1:1 classid 1:10 htb rate 512kbit ceil 512kbit prio 0
$TCA parent 1:1 classid 1:11 htb rate 2048kbit ceil ${CEIL}kbit prio 1
$TCA parent 1:1 classid 1:12 htb rate 1024kbit ceil ${CEIL}kbit prio 3
$TCA parent 1:1 classid 1:13 htb rate 512kbit ceil ${CEIL}kbit prio 4
$TQA parent 1:10 handle 10: $SFQ
$TQA parent 1:11 handle 11: $SFQ
$TQA parent 1:12 handle 12: $SFQ
$TQA parent 1:13 handle 13: $SFQ
$TFA parent 1:0 prio 0 protocol ip handle 10 fw flowid 1:10
$TFA parent 1:0 prio 1 protocol ip handle 11 fw flowid 1:11
$TFA parent 1:0 prio 3 protocol ip handle 12 fw flowid 1:12
$TFA parent 1:0 prio 4 protocol ip handle 13 fw flowid 1:13
iptables -t mangle -A PREROUTING -j BCOUNT
iptables -t mangle -A PREROUTING -p tcp -m mport --dports ${P2P} -j MARK --set-mark 13
iptables -t mangle -A PREROUTING -p tcp -m mport --dports ${P2P} -j RETURN
iptables -t mangle -A PREROUTING -p udp -m mport --dports ${P2P} -j MARK --set-mark 13
iptables -t mangle -A PREROUTING -p udp -m mport --dports ${P2P} -j RETURN
iptables -t mangle -A PREROUTING -p tcp -m mport --sports ${PRIO0} -j MARK --set-mark 10
iptables -t mangle -A PREROUTING -p tcp -m mport --sports ${PRIO0} -j RETURN
iptables -t mangle -A PREROUTING -p udp -m mport --sports ${PRIO0} -j MARK --set-mark 10
iptables -t mangle -A PREROUTING -p udp -m mport --sports ${PRIO0} -j RETURN
iptables -t mangle -A PREROUTING -p tcp -m mport --sports ${PRIO1} -m bcount --range 0x0-${WWWMAX} -j MARK --set-mark 11
iptables -t mangle -A PREROUTING -p tcp -m mport --sports ${PRIO1} -m bcount --range 0x0-${WWWMAX} -j RETURN
iptables -t mangle -A PREROUTING -p udp -m mport --sports ${PRIO1} -m bcount --range 0x0-${WWWMAX} -j MARK --set-mark 11
iptables -t mangle -A PREROUTING -p udp -m mport --sports ${PRIO1} -m bcount --range 0x0-${WWWMAX} -j RETURN
iptables -t mangle -A PREROUTING -p tcp -m mport --sports ${PRIO1} -m bcount --range $(($WWWMAX+1)) -j MARK --set-mark 12
iptables -t mangle -A PREROUTING -p tcp -m mport --sports ${PRIO1} -m bcount --range $(($WWWMAX+1)) -j RETURN
iptables -t mangle -A PREROUTING -p udp -m mport --sports ${PRIO1} -m bcount --range $(($WWWMAX+1)) -j MARK --set-mark 12
iptables -t mangle -A PREROUTING -p udp -m mport --sports ${PRIO1} -m bcount --range $(($WWWMAX+1)) -j RETURN
iptables -t mangle -A PREROUTING -j MARK --set-mark 13
iptables -t mangle -A PREROUTING -m layer7 --l7proto shoutcast -j MARK --set-mark 11
iptables -t mangle -A PREROUTING -m layer7 --l7proto skypetoskype -j MARK --set-mark 11
iptables -t mangle -A PREROUTING -d 192.168.1.200 -j MARK --set-mark 11
iptables -t mangle -A PREROUTING -m layer7 --l7proto .youtube -j MARK --set-mark 11
Bardzo bym prosił o sprawdzenie jego poprawności. W sumie niwiele w nim zmieniałem. Jedynie prędkość downloadu i rate oraz ceil w poszczególnych klasach.
Dodałem także regułę przypisująca adres 192.168.1.200 (telewizor z wi-fi) do klasy z najwyższym priorytetem. Ustaliłem też dla każdego komputera na sztywno port do uTorrenta (z zakresu 62000:62100). |
|
|
|
wajs |
Dodano 07-01-2015 16:44
|
User
Posty: 42
Dołączył: 26/08/2014 16:46
|
Działa ci ten skrypt?
Próbowałem kilka podobnych na dd-wrt i nie działały. |
|
|
|
sszpila |
Dodano 08-01-2015 11:15
|
User
Posty: 147
Dołączył: 20/08/2009 10:59
|
Nie wiem co wy macie z tym QoS. Ja jadę na lekko zmodyfikowanym przeze mnie standardowym od Toastmana (jest on standardowo w tomato od wersji 100cośtam) i strony mi ładują się błyskawicznie mimo że NAS wysyca łącze w obydwie strony. Trzeba tylko właściwie określić maksymalny upload i download w limitach QoS. Powinien być ok 20% niższy od zmierzonego na łączu. Przy moim łączu 25/1.5 ustawione mam 21.5/1200 i nie ma że torrent nie pozwoli mi oglądać filmu w HD na youtube.
APU2E4 4GB OpenWRT Snapshot
UAP-AC LITE
Xpenology@Microserver gen8
|
|
|
|
qrs |
Dodano 10-08-2015 23:43
|
Maxi User
Posty: 749
Dołączył: 02/12/2012 00:55
|
odnośnie QoS - zapytam jeszcze o jedną rzecz, mając łącze Download ~ 100 Mb/s i Upload ~20 Mb/s jakie muszę ustawić Max Bandwidth Limit oraz Max Bandwidth Limit? Czy te wartości to np 30% wartości jakie daje mi mój IPS? Dodatkowo czy ACK SYN FIN RST muszę być aktywne?
---
Netgear R7000 • Netgear WNR3500L v2 • MikroTik hAP ac^2 • TP-LINK M7650
|
|
|