Re: DSL / Download & Game

From: Peter Wullinger <peter.wullinger(at)gmail.com>
Date: Mon, 18 May 2009 19:28:00 +0200

Hallo Daniel,

Am 18. Mai 2009 18:24 schrieb Daniel C. Dowse <dcdowse(at)gmx.net>:
> Hallo Liste,
>
> Ich habe mal eine Frage und zwar ist es mir nicht ganz klar warum wenn
> ich filez per bittorrent ziehe so ca. um die 150kb/s in und 25 kb/s out,
> wenn ich nun zur selben Zeit Enemy Terrirtorry spielen will dann lagg
> es wie verueckt . Ich weiß das ist ein wenig OT aber ich dachte Ihr
> Leute habt vielleicht mehr Ahnung als ich Heimanwender was die
> Netzwerkbelastung und ähnliches betrifft. BTW WWW Surfen mit Opera
> funktioniert fast gleich gut während Qbittorrent zieht.

Im Prinzip fallen mir jetzt da zwei Gründe ein:

(1) Die --wohl häufige-- Verwechslung von Latenz und Bandbreite
(2) Überlastung des Routers durch P2P

Zum ersten Problem:

Im Prinzip ist so eine Netzwerkschnittstelle eine große
Warteschlange vor einem kleinen Durchgang (ral0):

+---+---+---+
| | | | -> ral0
+---+---+---+

In jeden der Wartschlangen-Schlitze passt ein Paket.
Die Bandbreite einer Schnittstelle bestimmt nun, wie häufig
ein neues Pakete aus der Wartschlange durch das Nadelöhr (ral0)
gehen kann. Also z.B. ein 2403-Byte (die MTU vom üblichen 802.11-WLAN)
großes Paket pro Milisekunde, was dann etwas mehr als 2MBit wären.
Diese "Datenmange pro Sekunde" ist die Bandbreite.

Will ein Rechner jetzt viele Daten versenden, füllt sich die Warteschlange
und die Pakete werden nach und nach so schnell als möglich über die
Schnittstelle versandt.

Neue Pakete werden normalerweise ans Ende der Wartschlange
gestellt, d.h. sie müssen warten, bis die schon vorhandenen
Pakete abgearbeitet sind. Es gibt (z.B. altq(8)) Methoden,
die Abarbeitungsreihenfolge zu bestimmen. Das ist dann das,
was man unter "Priority Queuing" versteht.

Online-Spiele hängen jetzt aber davon ab, dass Ihre Datenpakete
möglichst schnell über's Netz gehen. Wenn nun aber schon andere
Pakete in der Warteschlange sind, muss das "Spielpaket" eben
warten. Grob kann man diese "Wartezeit" dann "Latenz" nennen.

+---+---+---+
|et |bt |bt | -> ral0
+---+---+---+

Ein wenig Statistik für Anfänger und ohne Anspruch auf Korrektheit:

DSL hat üblicherweise so um die 15% (14,4%) Overhead, also
bleiben von 640 kib/s netto noch etwa 70 kiB/s brutto übrig.
Du gibst an, dass Du etwa 25 kb/s Upload von Bittorrent hast.
Im Prinzip ist also mehr als ein Drittel der Zeit mindestens
ein Paket in der ausgehenden Warteschlage. Da P2P öfter
mal stoßweise Daten versendet, kann es sein, dass die
Queue desöftern schon auch mal ganz voll ist. Das verzögert
dann den Versand der Spielepakete natürlich stark.

Das ist natürlich stark vereinfacht und ignoriert den
genauen Aufbau der Netztopologie.

Lösen kannst Du dieses Problem dann dadurch,
indem Du mit Hilfe von ipfw(4) oder pf(4) die Pakete von
Enemy Territoriy bevorzugt behandeln lässt.

>
> #net
> kern.ipc.maxsockbuf=16777216

Ob's Besserung bringt, wage ich zu bezweifeln.
Größere Puffer erhöhen die Latenz eher.

> Mein DSL ist Telekom 6000 mit laut aussage von dem Speedport Router

Zum 2. Verdacht:

P2P belastet die "einfachen" Router schon sehr, weil
dauernd Pakete an unterschiedlichste IP-Addressen versendet
werden müssen. Da die Router für jedes Paket internen
Zustand (Stichwort: 1:n-NAT) halten müssen, bremsen
viele Verbindungen solche Router dann aus.

Da hilft dann wohl nur, auf Bittorrent-Seite die Anzahl
der Verbindungen zu beschränken.

Grüße,
  Peter

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Mon 18 May 2009 - 19:29:00 CEST

search this site