Discussion:
Fritzbox: Downstream bremst Priorisierung aus
(zu alt für eine Antwort)
Rudolf Harras
2016-06-13 23:44:38 UTC
Permalink
Ich habe da eine FRITZ!Box Fon WLAN 7140 Annex A
(Firmware-Version 39.04.77).

Dabei besteht folgendes Problem: In den Einstellungen kann ich gewisse
Dienste als "Echtzeit-Dienst" festlegen, d.h. die werden priorisiert.
Das habe ich auch für ein Spiel gemacht, dass einen gewissen UDP-Port
benötigt.

Laut dem Traffic-Monitor scheint das aber nur für den Upstream zu
funktionieren:
Loading Image...

Hier ist man an der dunkleren Sptze, dass die Anwendung - die ja nicht
viel Traffic verusacht - als "Echtzeitanwendung" erkannt wird.

Allerdings ist im konkreten Fall der Downstream komplett ausgelastet,
und somit scheinen die UDP-Pakete vom Spielserver nicht mehr verlässlich
anzukommen.

Daher die Frage: Kann man das auch irgenwie beeinflussen? Oder lässt
sich die Priorisierung wirklich nur für den Upstream regeln? Was ja
gewissermaßen sinnlos ist weil die meisten Internet-Anwendungen ja in
beide Richtungen kommunizieren...
Juergen P. Meier
2016-06-14 03:52:04 UTC
Permalink
Post by Rudolf Harras
Ich habe da eine FRITZ!Box Fon WLAN 7140 Annex A
(Firmware-Version 39.04.77).
Dabei besteht folgendes Problem: In den Einstellungen kann ich gewisse
Dienste als "Echtzeit-Dienst" festlegen, d.h. die werden priorisiert.
Das habe ich auch für ein Spiel gemacht, dass einen gewissen UDP-Port
benötigt.
Laut dem Traffic-Monitor scheint das aber nur für den Upstream zu
http://picload.org/image/rgwraoiw/fritz_box_frage.png
Hier ist man an der dunkleren Sptze, dass die Anwendung - die ja nicht
viel Traffic verusacht - als "Echtzeitanwendung" erkannt wird.
Konzeptionell kannst du bei UDP nur auf den Traffic direkt Einfluss
nehmen, den du selbst verschickst, also hier den Ausgehenden Traffic.
Post by Rudolf Harras
Allerdings ist im konkreten Fall der Downstream komplett ausgelastet,
und somit scheinen die UDP-Pakete vom Spielserver nicht mehr verlässlich
anzukommen.
Daher die Frage: Kann man das auch irgenwie beeinflussen? Oder lässt
Das muss der Provider tun, der den Traffic vom Spieleserver zusammen
mit dem aller anderen Gegenstellen im Internet versucht in die duenne
DSL-Leitung zu quetschen, die zu deiner Fritzbox geht.
Post by Rudolf Harras
sich die Priorisierung wirklich nur für den Upstream regeln? Was ja
gewissermaßen sinnlos ist weil die meisten Internet-Anwendungen ja in
beide Richtungen kommunizieren...
Du muesstest zwei Dinge tun:

1) sicherstellen, dass dein ISP DSCP-Markierungen in Paketen honoriert
und entsprechend den so definierten QoS-Klassen Pakete passend queued.
Das machen einege schon per Default, insb. dann wenn sie ueber den
selben Anschluss auch eigene VoIP Telefonie bereitstellen.

2) dafuer sorgen, dass der Spieleserver die Pakete an dich als Client
mit der passenden DSCP-Markierung ausstattet, im Allgemeinen duerfte
dabei wohl der Wert 46 am besten sein (Expedited Forwarding)

Nur dann macht der Provider fuer den Downstream zu dir das gleiche,
was deine Fritzbox fuer den Upstream ins Internet macht.

Ersteres ist durchaus nicht selten per Default schon vorhanden, bzw.
kann fuer wenig Geld dazugekauft werden.

Letzteres ist bei den grossen kommerziellen Onlinespieleanbietern wohl
kaum durchzusetzen.

Es gibt aber auch dafuer einen Trick, der kostet dich aber den
Mietpreis fuer einen gehosteten Server.

Juergen
--
Juergen P. Meier - "This World is about to be Destroyed!"
end
If you think technology can solve your problems you don't understand
technology and you don't understand your problems. (Bruce Schneier)
Martin Wohlauer
2016-06-14 08:07:20 UTC
Permalink
Post by Juergen P. Meier
2) dafuer sorgen, dass der Spieleserver die Pakete an dich als Client
mit der passenden DSCP-Markierung ausstattet, im Allgemeinen duerfte
dabei wohl der Wert 46 am besten sein (Expedited Forwarding)
Nur dann macht der Provider fuer den Downstream zu dir das gleiche,
was deine Fritzbox fuer den Upstream ins Internet macht.
Ersteres ist durchaus nicht selten per Default schon vorhanden, bzw.
kann fuer wenig Geld dazugekauft werden.
Letzteres ist bei den grossen kommerziellen Onlinespieleanbietern wohl
kaum durchzusetzen.
Es gibt aber auch dafuer einen Trick, der kostet dich aber den
Mietpreis fuer einen gehosteten Server.
Da bin ich mal ganz Ohr: Wie macht man das selbst? Hier laufen ein paar
Spieleserver auf einem Server lokal, aber wie man das selber
priorisiert, weiß ich noch nicht.

Grüßle,

Martin.
Juergen P. Meier
2016-06-14 08:27:14 UTC
Permalink
Post by Martin Wohlauer
Post by Juergen P. Meier
Es gibt aber auch dafuer einen Trick, der kostet dich aber den
Mietpreis fuer einen gehosteten Server.
Da bin ich mal ganz Ohr: Wie macht man das selbst? Hier laufen ein paar
Spieleserver auf einem Server lokal, aber wie man das selber
priorisiert, weiß ich noch nicht.
Du leitest einfach all deinen Traffic ueber den gehosteten Server (der
eine signifikant dickere Anbindung hat als dein DSL zuhause).
(bzw. all deinen Spiele-traffic oder genauer: allen Traffic wo du auch
in Rueckrichtung Einfluss nehmen willst).

Zum beispiel per VPN-Tunnel dort hin, oder einfacher per GRE-tunnel
oder SOCKS-Tunnel.

Auf diesem Server kannst du dann nach belieben die Antwortpakete vom
Spieleserver mit den passenden QoS-Markierungen versehen damit dein
DSL-Provider sie entsprechend priorisieren kann, und so ein
verstopfter DSL-Anschluss nicht mehr dein Spielerlebnis truebt.

Eignen tut sich dafuer praktisch jeder V-Host mit Gigabit
Netzwerkanbindung (das ware dann sogar 10 Mal mehr Bandbreite
als ein VDSL-100), die gibts fuer nen Zehner pro Monat.

Du richtest dann nur noch ein VPN, GRE-Tunnel oder einfach
SOCKS-Tunnel auf deinem Windows-PC oder dem Router vorm DSL-Modem
ein der allen Traffic ueber diesen Server leitet, und fertig.

Der Server kann unter Linux laufen (dort kann man ganz einfach mit
iptables und Mangle-Regeln pakete nach belieben mit DCSP-Markierungen
versehen), aber auch unter Windows (dort geht das auch mit Bordmitteln).
Je nach dem mit was man sich besser auskennt.

*

Und wenn dein ISP selbst am DSL-Anschluss keine Priorisierung oder
QoS-Queuing macht (also trotz Markierung auch EF-Pakete wahlfrei
droppt), dann kannst du mit so einem extern gehosteten Server auch das
selbst erledigen:

Du musst aber allen Traffic ueber den Server leiten (GRE/VPN-Tunnel),
auf dem Server realisierst du dann das Traffic-Shaping (Google:
"linux traffic shaping") und sorgst dort dafuer, dass der
Gesamttraffic vom Internet zu deinem DSL-Endpunkt durch den VPN-Tunnel
genau passend auf die Downlink-Rate deines DSL-Anschlusses mit
entsprechender Priorisierung fuer Spiele-Traffic etc. zugeschnitten
wird.

Das ganze kostet halt je nach Hoster und Qualitaet ein paar Euro im
Monat.
Marc Haber
2016-06-14 15:47:57 UTC
Permalink
Post by Juergen P. Meier
1) sicherstellen, dass dein ISP DSCP-Markierungen in Paketen honoriert
und entsprechend den so definierten QoS-Klassen Pakete passend queued.
Das machen einege schon per Default, insb. dann wenn sie ueber den
selben Anschluss auch eigene VoIP Telefonie bereitstellen.
Ersteres ist durchaus nicht selten per Default schon vorhanden, bzw.
kann fuer wenig Geld dazugekauft werden.
Welcher Endkunden-Provider bietet das an?

Grüße
Marc
--
-------------------------------------- !! No courtesy copies, please !! -----
Marc Haber | " Questions are the | Mailadresse im Header
Mannheim, Germany | Beginning of Wisdom " | http://www.zugschlus.de/
Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fon: *49 621 72739834
Rudolf Harras
2016-06-15 10:21:36 UTC
Permalink
Post by Juergen P. Meier
1) sicherstellen, dass dein ISP DSCP-Markierungen in Paketen honoriert
und entsprechend den so definierten QoS-Klassen Pakete passend queued.
Das machen einege schon per Default, insb. dann wenn sie ueber den
selben Anschluss auch eigene VoIP Telefonie bereitstellen.
2) dafuer sorgen, dass der Spieleserver die Pakete an dich als Client
mit der passenden DSCP-Markierung ausstattet, im Allgemeinen duerfte
dabei wohl der Wert 46 am besten sein (Expedited Forwarding)
Danke, das sind gute Tipps! Im Windows habe ich ja diese für die
betreffende EXE sogar schon die richtlinie auf den Wert 46 gestellt.

Was Punkt 2 angeht, könnte ich hier den Programmierer des Spiels
kontaktieren, da es sich ja nicht um ein riesengroßes Spiel handelt wo
man kaum zu den Machern durchdringt. Im Prinzip startet da nur einfach
einer das Spiel als Server, und das müsste dann eben diese Pakete
entsprechend markieren wenn ich das richtig verstehe.
Rudolf Harras
2016-06-15 10:36:55 UTC
Permalink
Post by Rudolf Harras
Was Punkt 2 angeht, könnte ich hier den Programmierer des Spiels
kontaktieren
...äh moment mal.
Ein Nachsatz, ob ich das richtig verstehe:

Kann diesen Wert für das Expedited Forwarding überhaupt das Spiel selbst
mitschicken, oder geht das nur über das Betriebssystem?

Also: Ich habe im Windows für das Spiel das QoS auf 46 gesetzt wie hier
bei der Konfiguration per Gruppenrichtlinien beschrieben:
http://www.msxfaq.de/lync/technik/qoswin.htm

Könnte das überhaupt das Spiel von sich aus einfordern? Könnte da der
Programmierer eingreifen?


Jedenfalls scheint das auch zu klappen, wenn ich mir den Traffic mit
Wireshark ansehe, dann sehe ich:

Differentiated Services Field: 0xb8 (DSCP: EF PHB, ECN: Not-ECT)
1011 10.. = Differentiated Services Codepoint: Expedited Forwarding (46)
.... ..00 = Explicit Congestion Notification: Not ECN-Capable Transport (0)


Leider ist das eben umgekehrt vom Server nicht, der Fall, dort habe ich nur:

Differentiated Services Field: 0x00 (DSCP: CS0, ECN: Not-ECT)
0000 00.. = Differentiated Services Codepoint: Default (0)
.... ..00 = Explicit Congestion Notification: Not ECN-Capable
Transport (0)

D.h. diese Priorisierung am Server einzustellen wäre schon mal ein guter
Ansatzpunkt, danke für diesen Tipp!

Loading...