1 718 läst ·
3 svar
2k läst
3 svar
Bästa QoS-systemet för att hantera bredbandet
Hej!
Tänkte på det här med bredband, speciellt *DSL och 3G/4G. Även om de flesta förbindelserna är duplexa, så påverkas nedladdningshastigheten av hur mycket som laddas up och vise versa.
Om jag börjar tanka 10 stora filer på mitt ADSL (8/1) så ökar ping från 22ms till typ 200-500ms och surfandet blir megasegt. Samma sak om jag laddar upp något. Det beror i största mån pga enorma buffertar som ligger i OS, modemet och på basstationen.
Vad har ni gjort för att förbättra era förbindelser?
Jag kör en Linux-router och har gjort så här med in lina (8mbit ner och 1mbit upp):
0) Aktiva ECN: Explicit Congestion Notification
1) Inkommande trafik.
1.a) Sätta bandbredsbegränsning på ca 90% av max.
1.b) Sätta en AQM (Active Queue Management) på inkommande kö som skickar ECN när bandbreddden är slut (dvs de 90% som jag satt)
2)Utgående trafik
2.a) Sätta bandbreddsbegränsning på ca 90% av max.
2.b) Skapa 6 parallella köer med AQM. Köerna är prioriterade i rang
2.c) Alla TCP ACK, SYN, ECN, osv har högsta prioritet och går i första kön
2.d) HTTP request och motsvarande går i nästa kö. Sist går bulk-data, typ mail och annat odefinierat utgående.
Med detta aktiverat kan jag tanka 10 stora filer och pingen ökar från 22 till 30ms
1.a och 2.a är den absolut viktigaste parametern. Eftersom jag inte kan kontrollera hur mycket kö som finns i DSL-modemet och hos ISPn måste jag se till att aldrig fylla kön. Det gör jag genom att begränsa trafiken.
Lite märkligt att begränsa trafik som redan har ankommit kan ni kanske tycka, men genom att begränsa trafiken kommer AQM via ECN att skicka ett meddelande till avsändaren att nu är bandbredden slut (Congestion) och då trappar avsändaren ner. 2.a behövs för att jag måste ju se till att få iväg ECN och ACK till avsändaren så snabbt som möjligt, annars fortsätter den ju att skicka.
Jag går gärna in på teorier och ser förslag på bra inställningar
Edit: om det är fel forum så flytta gärna till rätt ställe
Tänkte på det här med bredband, speciellt *DSL och 3G/4G. Även om de flesta förbindelserna är duplexa, så påverkas nedladdningshastigheten av hur mycket som laddas up och vise versa.
Om jag börjar tanka 10 stora filer på mitt ADSL (8/1) så ökar ping från 22ms till typ 200-500ms och surfandet blir megasegt. Samma sak om jag laddar upp något. Det beror i största mån pga enorma buffertar som ligger i OS, modemet och på basstationen.
Vad har ni gjort för att förbättra era förbindelser?
Jag kör en Linux-router och har gjort så här med in lina (8mbit ner och 1mbit upp):
0) Aktiva ECN: Explicit Congestion Notification
1) Inkommande trafik.
1.a) Sätta bandbredsbegränsning på ca 90% av max.
1.b) Sätta en AQM (Active Queue Management) på inkommande kö som skickar ECN när bandbreddden är slut (dvs de 90% som jag satt)
2)Utgående trafik
2.a) Sätta bandbreddsbegränsning på ca 90% av max.
2.b) Skapa 6 parallella köer med AQM. Köerna är prioriterade i rang
2.c) Alla TCP ACK, SYN, ECN, osv har högsta prioritet och går i första kön
2.d) HTTP request och motsvarande går i nästa kö. Sist går bulk-data, typ mail och annat odefinierat utgående.
Med detta aktiverat kan jag tanka 10 stora filer och pingen ökar från 22 till 30ms
1.a och 2.a är den absolut viktigaste parametern. Eftersom jag inte kan kontrollera hur mycket kö som finns i DSL-modemet och hos ISPn måste jag se till att aldrig fylla kön. Det gör jag genom att begränsa trafiken.
Lite märkligt att begränsa trafik som redan har ankommit kan ni kanske tycka, men genom att begränsa trafiken kommer AQM via ECN att skicka ett meddelande till avsändaren att nu är bandbredden slut (Congestion) och då trappar avsändaren ner. 2.a behövs för att jag måste ju se till att få iväg ECN och ACK till avsändaren så snabbt som möjligt, annars fortsätter den ju att skicka.
Jag går gärna in på teorier och ser förslag på bra inställningar
Edit: om det är fel forum så flytta gärna till rätt ställe
Min erfarenhet är att det ofta är upstream-problematik som sölar ned en ADSL. Särskilt om man kör bittorrent. Om upstream-länken är fylld går allt annat segt. Jag har löst det genom att begräsa upstream till 0.8 Mbit i och downstream till typ 90% av verklig hastighet i min bittorrent-klient.
Japp, det stämmer. Om du fyller din uppload + alla buffertar. kommer du ju ha en enorm fördröjning (RTT).
TCP funkar ju genom att skicka ACK packet för att bekräfta alla mottagna paket. Det innebär att om du fyller din upload kommer ACKarna ta lång tid, och då kommer avsändaren sänka sin hastighet till dig = du får dålig download.
Vi kan räkna lite: 1mbit/s lina = 1 024kbits/s = 128kbyte/s. 1 paket = 1500 byte (verklig data som kan skickas landar på typ 1480 byte)128/1,5=85 paket per sekund. Det räcker alltså med bara några få buffertar på vägen för att skapa stora fördröjningar.
Det är därför det fungerar bättre för dig när du sätter torrenten till 0.8mbit, då du förhoppningsvis klarar hålla buffertarna tomma och ACK paketen kommer fram snabbt.
Just detta är en sak som QOS är till för att fixa - så du slipper ställa in varje program på det här sättet
TCP funkar ju genom att skicka ACK packet för att bekräfta alla mottagna paket. Det innebär att om du fyller din upload kommer ACKarna ta lång tid, och då kommer avsändaren sänka sin hastighet till dig = du får dålig download.
Vi kan räkna lite: 1mbit/s lina = 1 024kbits/s = 128kbyte/s. 1 paket = 1500 byte (verklig data som kan skickas landar på typ 1480 byte)128/1,5=85 paket per sekund. Det räcker alltså med bara några få buffertar på vägen för att skapa stora fördröjningar.
Det är därför det fungerar bättre för dig när du sätter torrenten till 0.8mbit, då du förhoppningsvis klarar hålla buffertarna tomma och ACK paketen kommer fram snabbt.
Just detta är en sak som QOS är till för att fixa - så du slipper ställa in varje program på det här sättet
Jag använder en Mikrotik CCR1036 för att hantera min adsl 12/1 lina. RouterOS har något som heter queue tree vilket gör att man kan först markera trafik och sedan balansera trafiken. Har flera grupper med prio på beroende på vilken dhcp adress prylen har. Har även webproxy påslaget vilket även hjälper till lite extra.
Klicka här för att svara