[Frage] QoS mit Freetz

JulPal

Neuer User
Mitglied seit
19 Okt 2014
Beiträge
13
Punkte für Reaktionen
0
Punkte
1
Hallo liebe Community,
ich hoffe erstmal dass ich im richtigen Forum bin :)
Wie im Titel schon zu lesen ist, würde ich gerne wissen ob es möglich ist, per Freetz QoS auf dem Speedport W503V Typ A zu betreiben.
Bis jetzt war der Speedport gefritzt an einer 16000 Leitung, und es gab keine Ping Probleme.
Jedoch wurde die Internetleitung aus diversen Gründen jetzt auf 6000 umgestellt, und der Ping springt jetzt regelrecht in die Höhe, wenn die Mitbewohner sich Streams anschauen.
Mein Ziel ist es also im Router einstellen zu können, wie viel kb ein bestimmtes Endgerät bekommt.
Habe zwar schon per Google herausgefunden dass es möglich sein sollte, jedoch habe ich keine Erklärungen gefunden und wenn doch waren sie viel zu kompliziert, für mich als "Freetz Einsteiger".
Den Freetz habe ich schon mit den Standardwerten auf den Router gebracht, jedoch bin ich vollkommen überfragt wie ich nun QoS einrichten kann, oder ob ich nochmal ein neues Image mit bestimmten Paketen erstellen muss.
Wäre super wenn mir das jemand Schritt für Schritt erklären kann.
Vielen Dank im Voraus!
Gruß Julian
 
Was du möchtest ist kein QoS sondern meiner Meinung nach ein Loadbalancing. Such mal nach diesem Begriff.
 
Was du möchtest ist kein QoS sondern meiner Meinung nach ein Loadbalancing. Such mal nach diesem Begriff.

Danke für Deine Antwort,
soweit ich das gesehen habe, bringt dass ja nur was wenn man 2 Internetverbindungen in einem Netzwerk betreiben will. Kannst mich aber gerne eines Besseren belehren :rolleyes:
Ich hab mir dass so vorgestellt, dass ich per QoS die einzelnen Endgeräte z.B. 200kb vergebe, damit die Leitung nicht gleich ausgelastet ist, und der Ping im Rahmen bleibt.

Gruß Julian
 
QoS bedeutet das wenn du Telefonieren willst (VoIP) die Verbindung soweit freigehalten wird das ein Telefonieren möglich wird.
Das heisst ein laufender Download wird im Zweifel soweit gebremst.
Ich bin aber auch nicht vom Fach.
Eine Alternative wäre jedem Netzwerkteilnehmer eine max. Bandbreite zuweisen zu können. Das hätte ich auch gerne
 
QoS (Quality of Service) ist ein Begriff aus der Telekommunikation und wird in IP Netzen z.B. durch Priorisierung realisiert.

Load Balancing (Lastverteilung) ist wiederum die Aufteilung auf verschiedene gleichzeitig aktive Systeme.

Was Du machen willst hat mit beidem nichts zu tun.
 
Habe jetzt nur den OP gelesen aber da geht es wohl um QoS einer sehr langsamen Leitung, nicht um Geschwindigkeitsreduzierung einzelner Geräte.
 
Habe jetzt nur den OP gelesen aber da geht es wohl um QoS einer sehr langsamen Leitung, nicht um Geschwindigkeitsreduzierung einzelner Geräte.

Stimmt, aber wenn es im Endeffekt auf das selbe hinauskommt ist es ja egal. Mein Ziel ist es ja dass der Ping im Rahmen bleibt.
Probieren könnte man es ja mal.
 
Weiß denn niemand wie das geht?
Ansonsten muss wohl doch ein neuer Router her. :(
 
Eigenes QoS ist bei FRITZ!Boxen ein Problem. Es wird zwar tc verwendet für die Verwaltung von Queues, Tokens und Buckets (die Support-Daten zeigen das gut, ansonsten ist auch tc im Image), aber die Klassifizierung von Paketen (also die Zuordnung zu einer Queue) erfolgt durch den AVM-eigenen IP-Stack. Was da nicht geht, geht auch mit Freetz meines Wissens nicht (mehr) ... ohne iptables und das "classify"-Target dürfte eine eigene Klassifizierung nicht möglich sein.
 
Ohne mich jetzt groß mit dem Thema befasst zu haben, wäre das hier vielleicht interessant für dich. Dort ist von dem gleichen "Problem" die Rede, wobei eine Umsetzung mit iptables, trickle und privoxy vorgeschlagen wird (natürlich ohne ein gepostetes Endergebnis).

Meine Vermutung wäre erstmal, dass mit der Kombination trickle + privoxy die Bandbreite für einzelne IPs beschränkt und mit iptables der Proxy "aufgezwungen" wird.

Problematisch stelle ich mir da nur die Nutzung von FTP-Verbindungen vor, da Privoxy dafür eigentlich nicht genutzt werden kann.

edit: Und dazu ist der Link evtl. auch noch hilfreich.
http://www.ip-phone-forum.de/showthread.php?t=210262
 
Zuletzt bearbeitet:
Meine Vermutung wäre erstmal, dass mit der Kombination trickle + privoxy die Bandbreite für einzelne IPs beschränkt und mit iptables der Proxy "aufgezwungen" wird.
Da trickle nur die Bandbreitennutzung des überwachten Programms (in diesem Falle dann des privoxy) einschränken kann, greift diese Beschränkung dann für alle über den privoxy geleiteten Verbindungen gemeinsam, d.h. werden mit Trickle mal als Hausnummer 3 MBit/s für den privoxy zugelassen, teilen sich diese Bandbreite alle über den privoxy geleiteten Verbindungen, ob das nun 2 oder 20 sind.

Wenn man das also - wie in #1 erläutert - pro Endgerät machen will, braucht man auch pro Endgerät eine privoxy-Instanz und muß dann noch aufpassen, daß die Summe < 100% bleibt, sonst hat man außer zusätzlicher Belastung auf der FRITZ!Box wenig erreicht.

iptables an sich ist bei aktueller Firmware unstable (s. auch der Hinweis im verlinkten Thread) ... aber bei dem W503V müßtest Du ja ohnehin bis zur 54.04.89 zurück, wie es da mit iptables aussieht, weiß ich nicht.

EDIT: Um das nicht zu unterschlagen: Es gibt beim trickle auch einen Daemon, der die Überwachung des Gesamtverbrauchs aller mit trickle gestarteten Programme übernimmt und diesen Gesamtverbrauch unter der vorgegebenen Schwelle hält. Das kann einem das Problem der 100% abnehmen, das gezielte Zuweisen einer bestimmten Bandbreite zu einem bestimmten Endgerät (bzw. einer IP-Adresse) ist aber immer noch nur mit einzelnen privoxy-Instanzen drin. Die Priorisierung des Daemons arbeitet mit dem Dateinamen des überwachten Programms, will man also verschiedene privoxy-Instanzen mit unterschiedlicher Priorität betreiben (das wäre notwendig, wenn bei Verwendung des Daemons unterschiedliche Einstellungen pro Gerät (am Ende also pro privoxy-Instanz) gelten sollen, muß man unter verschiedenen Dateinamen starten.
 
Zuletzt bearbeitet:
OK, daher also dort die angebotene Kombination - mit nur einem zu begrenzenden Nutzer.

Ob die Ressourcen der Box für mehrere Privoxy-Instanzen ausreichend sind, ist natürlich fraglich (zumindest empfinde ich Privoxy auf meiner Box - auch ohne Nutzung von Filterlisten - als deutlich ressourcenfressender als andere Proxys, z. B. Polipo oder TinyProxy).
Wären dementsprechend mehrere z. B. Polipo-Instanzen denkbar, sofern iptables in einer älteren Firmware läuft? Die Frage ist natürlich auch, um wieviele Mitbewohner es sich handelt. :p

edit: Vielleicht genügt ja aber dennoch eine Proxy-Instanz, damit die Summe der Bandbreitennutzungen der Mitbewohner gedrosselt wird. Damit wäre alles wie bisher, nur dass nicht volle 6 MBit/s, sondern vielleicht nur 3 MBit/s für die Mitbewohner zur Verfügung stehen. Die Leitung wäre demnach durch andere Nutzer nie voll ausgelastet und der Ping im Rahmen.
 
Zuletzt bearbeitet:
Die Leitung wäre demnach durch andere Nutzer nie voll ausgelastet und der Ping im Rahmen.
Das sollte sicherlich machbar sein, da muß es dann auch nicht unbedingt der privoxy sein, trickle kann ja jedes Programm als Proxy begrenzen ... das ganze Konstrukt ist für eine unbestimmte Nutzerzahl imho aber ganz schön restriktiv und berücksichtigt natürlich in keinster Weise die tatsächlich gerade auftretende Last.
Selbst wenn die Einschränkung nicht notwendig ist, weil der TE gerade keine niedrige Latenz braucht, ist der Proxy weiterhin reguliert ... solange man das nicht entsprechend startet und stoppt. Das verschenkt dann am Ende viel von der Anschlußkapazität, wenn man nicht vorher genau überlegt, wann da wie für wen gedrosselt werden soll.

Wenn in einer WG der Anschluß prozentual bezahlt wird, kann ich mir so eine individuelle Regelung pro Bewohner aber durchaus als wünschenswert vorstellen ... nur irgendwie nicht als "machbar", jedenfalls nicht auf diesem Weg. Wer wohnt heute in einer WG (i.d.R. Jüngere/Studenten) und hat dann nur ein einziges Gerät mit Internetzugang ? Wie macht man das bei Leuten mit zwei vs. drei Geräten, auch wenn die mit den drei Geräten dann nur zwei gerade benutzen ?

Und auch wenn "vom Ping" die Rede ist, dürfte es vermutlich ja eher um die Latenz bei anderen Protokollen/Anwendungen gehen, ich tippe mal auf FPS-Spiele und die Unlust, entweder immer rauszufliegen oder vorzeitig "im Dienst für's Vaterland" (um mal BF zu unterstellen) zu enden ... wer will denn schon die Latenz für ICMP-Roundtrips wirklich wissen ? Wenn man dann noch der einzige "Kundige" in der WG ist ... aber vielleicht bezahlt der TE den Anschluß ja auch und die anderen dürfen ihn kostenlos mitbenutzen. Ist halt alles nur Spekulation ... aber es fehlen ja auch die Angaben. ;)

Was mich nur irritiert ... bis zur 05.irgendwas hat ja eigentlich das Priorisieren von Traffic noch leidlich funktioniert oder irre ich mich da und verwechsele das mit der 05.xx ?
Wir reden hier ja über die Firmware (als Alien) für eine 7270v1 und da sollte die schon erwähnte 54.04.89 (ohne Lücke) verwendet werden. Ist da keine Priorisierung von Haus aus drin ? Es ist verdammt lange her ...
 
Ist da keine Priorisierung von Haus aus drin ? Es ist verdammt lange her ...
Habe ich noch nie genutzt - kann der TE ja aber auf die schnelle bei erweiterter Ansicht unter Internet -> Filter -> Priorisierung schauen.

Da ist dann wieder nur die Frage, ob sein gewünschtes Ziel (niedriger Ping/Latenz) erreicht wird. Denn nur weil ihm die benötigte Bandbreite zugeschrieben wird, gehen doch trotzdem Ping und Latenz bei Vollauslastung der Leitung in den Keller, oder irre ich mich? Dann würde er ja einen nicht nutzbaren Bandbreitenpuffer benötigen.
 
Denn nur weil ihm die benötigte Bandbreite zugeschrieben wird, gehen doch trotzdem Ping und Latenz bei Vollauslastung der Leitung in den Keller, oder irre ich mich? Dann würde er ja einen nicht nutzbaren Bandbreitenpuffer benötigen.
Wie das bei der alten Firmware wirklich aussieht und was da zu regeln ist, weiß ich auch nicht mehr. Auch sind die ganzen Überlegungen zum Spielen ja reine Spekulation ... aber man darf ja trotzdem nachdenken.

Für seine Latenzprobleme sollte es eigentlich ausreichend sein (bzw. das ist das einzige, was er wirklich machen kann), wenn seine eigenen Pakete vorne eingereiht werden bei den zu sendenden Daten (Priorisierung). Eine Reservierung gelingt ihm am Ende ohnehin höchstens im Upstream, da sollte aber die Priorisierung auch reichen ... wenn ein von ihm eingehendes Paket vor allen anderen in Richtung Internet weitergeleitet wird, ist das - vorausgesetzt der Stau entsteht nicht hinter dem Router in Richtung Internet - imho so ziemlich dasselbe,

Mal grob gerechnet: 384KBit/s im Upstream = 384*1024/9 (damit der Overhead drin ist) ~ 43600 Byte/s = knapp 30 "volle" Pakete/s -> etwas über 30 ms Verzögerung schon im eigenen Router, wenn's schlecht läuft. Das ändert sich aber auch nicht, wenn da eine Bandbreite reserviert wurde, denn der Sendevorgang für das vorherige Paket wird ja nicht spontan unterbrochen, nur weil da plötzlich eines mit höherer Priorität auftaucht. (Im Downstream ergäbe das dann bei 6000 KBit/s eine max. Latenz von knapp über 2ms ... aber das ist eine andere und von ihm nicht zu beeinflussende Baustelle.)

Ein schmaler Upload (wenn man ihn nicht zu jeder Zeit garantiert sofort benutzen kann), bringt eben auch eine Latenz im Upload mit sich. Wenn die Bandbreite im Upload das Dreifache beträgt (bei dem vorherigen 16.000er-Anschluß m.W. die Regel), ist eben schon dadurch auch die Latenz beim Senden auf ein Drittel verringert.

Wenn die WG-Mitbewohner wirklich streamen (damit meine ich, Filme sehen), brauchen sie - je nach Protokoll beim Streamen - ja den Upload ohnehin nur in sehr bescheidenem Umfang und mit sehr kurzen Paketen (wenn überhaupt ACKs gesendet werden).

Den beim Router von extern eingehenden Datenstrom kann er ohnehin nicht richtig steuern. Er kann nur drosseln, wieviel davon pro Zeiteinheit an den Client weitergeleitet wird und damit dann eben auch, wieviel dieser Client quittiert, was dann am Ende auch den eingehenden Strom regeln kann, aber nur bei TCP-Verbindungen. Bei UDP-basierten Streams kommt das beim Router immer mit der maximalen Rate an, die das Netz bis dahin hergibt. Da es keine Quittungen gibt, merkt der Sender gar nicht, ob das alles richtig beim Empfänger ankommt oder nicht. Er sendet es einfach, Schwund unterwegs ist per Definition möglich. Wenn das am Ende schneller ist, als es wiedergegeben wird, wird es eben beim Empfänger gepuffert. Nur in ganz seltenen Fällen wird der Empfänger den Sender um eine Pause bitten.

Bei einem Protokoll mit Transportsicherung (also da, wo sichergestellt wird, daß auch alle Daten richtig angekommen sind), kann das genauso zu Bursts führen, wenn der Sender da dann mal einige Pakete am Stück erneut senden muß. Beim TCP wird eine bestimmte Anzahl von Paketen (die Window Size legt fest, wie viele) erst einmal "blind" auf die Reise geschickt und dann wird auf die entsprechenden Quittungen des Empfängers gewartet. Bei dem können die Daten auch in anderer Reihenfolge ankommen, er sortiert sie in seinem Empfangspuffer wieder richtig und bestätigt den Erhalt. Für jedes quittierte Paket könnte der Server nun ein weiteres schicken, aber i.d.R. wird auch er eine Pause einlegen, wenn ein noch vorgehaltenes Paket vom Empfänger schon länger nicht bestätigt wurde (das kann ja auch daran liegen, daß es komplett verloren gegangen ist und nicht nur an der Verzögerung der Quittungspakete). Wenn dann plötzlich der komplette Sendepuffer leer ist, sendet der Server wieder bis zur maximalen Window Size und so kann sich - u.a. bei "schlechter Übertragung" der ACK-Pakete - ein "schubweiser" Verkehr aufbauen, dem eigentlich mit "Congestion Control" entgegengewirkt werden soll.

Da führt dann eine Limitierung zwar im Mittel zu einer verringerten Belastung der Leitung, die DS-Latenz zu einem bestimmten Zeitpunkt kann man damit aber nicht wirklich steuern ... wenn's voll ist, ist's voll und wenn der vorgelagerte Router nicht weiß, daß er die Pakete an den TE vor allen anderen übertragen muß, dauert es eben, bis er an der Reihe ist.
Da ist dann schon mal ein Geschoß oder eine Kampfbewegung des Gegners schneller angekommen/ausgeführt, als der Spielteilnehmer es mitbekommt. Wenn dann der Server als zentrale Instanz das zu Ungunsten des Spielers wertet, ist das ja auch nachvollziehbar, was kann der Gegner für die schmale Leitung.

Eine Reservierung von Bandbreite (so sie für Spieler überhaupt Sinn macht, die Latenz für ein einzelnes Paket ändert sich dadurch ja gerade nicht) im Upstream ist Sache des Routers, eine Reservierung im Downstream wäre Sache des DSLAM - meines Wissens unterstützen die meisten Provider nicht mal ordentlich TOS/QOS für IP-Pakete. Wenn da irgendwas reserviert wird, ist da - zumindest bisher so gewesen - immer ein zweiter PVC beim ATM für die Telefonie, der dann wegen der eigenen garantierten Bandbreite im ATM eine QOS-Garantie ermöglicht.

Insofern ist halt ein "schlechter Ping" nur dann zu beheben, wenn man weiß, wie er konkret zustande kommt. Einfach mal "auf Verdacht" da ein Traffic Shaping durch Drosselung einzelner Teilnehmer zu machen, bringt nur "im Mittel" etwas und wirkt sich auf die Latenz einzelner Pakete (wenn da nicht zig Pakete im Upstream warten und man sich hinten anstellen muß) eher nicht aus. Wenn man nicht auf den Versand seiner Mails mit Anhang die doppelte Zeit warten will, dann kann es etwas bringen, wobei auch dann für einen einzelnen Teilnehmer die Priorisierung (weg da, ich bin Arzt) bessere Ergebnisse für alle bringen sollte. Bei Echtzeitanwendungen wie IP-Telefonie ist eine Bandbreitenreservierung etwas anderes ... aber auch da wird durch die Reservierung die Latenz nicht direkt beeinflußt.

Just my 2 cents ...
 
Wow, mit so vielen Beiträgen hätte ich nicht gerechnet :)
Erstmal die Daten zur Internetleitung:
Download: 6656 kBit/s
Upload: 672 kBit/s

Ohne mich jetzt groß mit dem Thema befasst zu haben, wäre das hier vielleicht interessant für dich. Dort ist von dem gleichen "Problem" die Rede, wobei eine Umsetzung mit iptables, trickle und privoxy vorgeschlagen wird (natürlich ohne ein gepostetes Endergebnis).

Meine Vermutung wäre erstmal, dass mit der Kombination trickle + privoxy die Bandbreite für einzelne IPs beschränkt und mit iptables der Proxy "aufgezwungen" wird.

Problematisch stelle ich mir da nur die Nutzung von FTP-Verbindungen vor, da Privoxy dafür eigentlich nicht genutzt werden kann.

edit: Und dazu ist der Link evtl. auch noch hilfreich.
http://www.ip-phone-forum.de/showthread.php?t=210262
Eine gute Idee, jedoch finde ich Keinen Weg um an das Paket "iptables" ranzukommen.

Das sollte sicherlich machbar sein, da muß es dann auch nicht unbedingt der privoxy sein, trickle kann ja jedes Programm als Proxy begrenzen ... das ganze Konstrukt ist für eine unbestimmte Nutzerzahl imho aber
Und auch wenn "vom Ping" die Rede ist, dürfte es vermutlich ja eher um die Latenz bei anderen Protokollen/Anwendungen gehen, ich tippe mal auf FPS-Spiele und die Unlust, entweder immer rauszufliegen oder vorzeitig "im Dienst für's Vaterland" (um mal BF zu unterstellen) zu enden ... wer will denn schon die Latenz für ICMP-Roundtrips wirklich wissen ? Wenn man dann noch der einzige "Kundige" in der WG ist ... aber vielleicht bezahlt der TE den Anschluß ja auch und die anderen dürfen ihn kostenlos mitbenutzen. Ist halt alles nur Spekulation ... aber es fehlen ja auch die Angaben. ;)

Wir reden hier ja über die Firmware (als Alien) für eine 7270v1 und da sollte die schon erwähnte 54.04.89 (ohne Lücke) verwendet werden. Ist da keine Priorisierung von Haus aus drin ? Es ist verdammt lange her ...

Ja, wie ihr hier schon vermutet habt geht es um die Ping bei FPS-Spielen.
Ja, ich zahle den Anschluss und kann machen was ich will.
Und ja, die Priorisierung ist bei der 54.04.89 schon von Haus aus drin, habe mich auch schon damit befasst. Aber bringt in dem Fall leider gar nichts.

Vielen Dank für eure Bemühungen :rolleyes:

PS. Falls es irgendwas bringen sollte, die "Verwendete Firmware-Versionen":

Erstes Image: Firmware_Speedport_W_503V.AnnexB.66.04.79.image
AVM Systemimage: 7270_v1_04.89-freetz-2.0-12708M.de_20141108-094854.image
 
Zuletzt bearbeitet:
Könntest du nicht einfach Video aus der Prioisierung herausnehmen und dein Programm oder deinen Rechner explizit prioisieren?

Wenn das nichts hilft den "bösen" Rechner in die Hintergrundanwednugnen aufnehmen damit dieser nachrangig behandelt wird?
 
Zuletzt bearbeitet:
Ist es nicht bei den Paketen unter "unstable" oder "testing" zu finden?

Jap, du hattest Recht. Allerdings sieht man die Option erst wenn man sich als "Expert" einträgt.
Nach langem rum und rum probieren, da das Image immer zu groß war, habe ich es jetzt geschafft iptables, privoxy und trickle auf die Box zu bekommen.
Diesen Code habe ich in der rc.privoxy geändert:
Original:
Code:
 modlib_startdaemon $DAEMON --pidfile /var/run/$DAEMON.pid /mod/etc/privoxy/config
Geändert:
Code:
 modlib_startdaemon trickle -s -w 1024 -u 25 -d 300 $DAEMON --pidfile /var/run/$DAEMON.pid /mod/etc/privoxy/config
Ich weiß jedoch nicht wie es jetzt weitergeht.
Gruß Julian
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.