# TcpAckFrequency



## Spichty (9. November 2009)

Hi, habe letztens mal den Trick getestet mit dem man angeblich seine Latenz in WoW senken kann, sprich TcpAckFrequency (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\Tcpip\Parameters\Interfaces\TcpAckFrequency). 

Und nun wollt ich gerne wissen wie ich diesen wieder rückgängig machen kann, reicht es den Eintrag einfach zu löschen?


----------



## Kyragan (9. November 2009)

Entweder den Key löschen oder dessen Wert auf 0 setzen.
Wobei ich mir nicht ganz sicher bin, ob auf 0 oder 1. Ich meine aber 0.
Ich schau gleich nochmal nach.

Edit: 0


----------



## Vaishyana (9. November 2009)

Zum Trick kann ich nur sagen dass es funktioniert. Messbar wie auch spürbar. :-)

Edit: Ist 1 nicht der geänderte Wert und 2 der Standartwert?


----------



## Xerivor (9. November 2009)

Vaishyana schrieb:


> Zum Trick kann ich nur sagen dass es funktioniert. Messbar wie auch spürbar. :-)



Muss abe rnicht unbedingt Funktionieren =/


----------



## Vaishyana (9. November 2009)

Xerivor schrieb:


> Muss abe rnicht unbedingt Funktionieren =/



Bei Vista hats geklappt, da ich seit heute XP drauf habe, teste ich es die Woche nochmal aus. Zwar lese ich des öfteren dass es nur optisch eine bessere Latenz ist ( <100ms ) aber ich merke auch, wie es etwas schneller ist mit dem casten. Kann zwar Einbildung sein aber immerhin - Einbildung ist auch ne' Bildung. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## eMJay (9. November 2009)

Bei XP geht der auch.


----------



## Spichty (10. November 2009)

Ja funktioniert auch toll bei wow, nur bei anderen sachen wie I-Net Streams usw ruckelt es rum.

Also den Eintrag zu löschen oder den Wert auf 2 zu setzen bewirkt das gleiche?


----------



## Spichty (29. November 2009)

Huhu, hab seit Mittwoch wie einige andere häufige DC's und auch mal gerne 300ms+ und nun frag ich mich ob es sich lohnen würde den "Trick" wieder anzuwenden oder ob das evtl. noch mehr DC's auslösen kann?


----------



## Dagonzo (29. November 2009)

Ich schreibe das gerne zum 587x. Dieser Eintrag in der Registry bringt 0,00. 

Erklären will ich es hier nicht noch mal. Das habe ich schon oft genug. 
Selbst speziell dafür auslegte Netzwerkkarten, zum verbessern der Pingzeiten bringen nicht das, was sie versprechen. Jedenfalls ist die Preis/Leistung für solch eine 140-150 Euro teure Karte völlig daneben. 

Und da soll solch ein Eintrag in der Registry was bewirken? Das glaubt ihr doch selber nicht. Aber wie weiter oben schon geschrieben wurde. Einbildung ist auch eine Bildung^^


----------



## eMJay (30. November 2009)

Der bringt was. Bei mir halbiert sich der Ping und dass auf allen Rechner bei denen ich es je gemacht hab.


----------



## Yaggoth (30. November 2009)

Thore-Thrall schrieb:


> Der bringt was. Bei mir halbiert sich der Ping und dass auf allen Rechner bei denen ich es je gemacht hab.




und was verringert der Eintrag nun genau? Die Zahl die du bei dir am Bildschirm abliest? Oder den Wert eines von dem Eintrag unabhängigen Messgeräts?
Naja, ich kann mir zumindest nicht vorstellen, dass der Eintrag einen Nutzen hat und denke hier eher an Augenwischerei.


----------



## Ogil (30. November 2009)

Der Eintrag bewirkt, dass jedes TCP-Packet direkt ein ACK (Bestaetigung) bekommt und nicht nur jedes zweite. Je nachdem ob ein Programm nun auf diese Acknowledgements wartet oder nicht, kann das Vorteile oder Nachteile haben.

Ein Online-Spiel wird z.B. sicher stellen, dass alle gesendeten Packete auch beim Client angekommen sind und daher diese ACKs ueberpruefen.

Ein Video-Stream setzt sicher nicht auf diese ACKs, ein verlorenes Packet wuerde ja wahrscheinlich nur in einem Fehler eines Bildes resultieren. Wenn nun fuer jedes Packet ein ACK gesendet wird hat das also sehr wahrscheinlich keine positiven Effekte, eher im Gegenteil.

Dazu mehr in der Knowledge Base...


----------



## eMJay (30. November 2009)

Danke das wollte ich eben auch suchen.


----------



## Dagonzo (30. November 2009)

Thore-Thrall schrieb:


> Der bringt was. Bei mir halbiert sich der Ping und dass auf allen Rechner bei denen ich es je gemacht hab.


Und genau das ist der Punkt, wo viele glauben das es was bringt, nur weil ein niedrigerer Ping angezeigt wird. An den Lags ändert das nichts.
Aber ich kann es wahrscheinlich noch hundert mal schreiben und trotzdem glauben die Leute das es was bringt.


----------



## Soramac (30. November 2009)

Bei mir funktoniert er auch nicht wirklich, sprich ich merke eigentlich garnichts.

Da ich auf einen der vollsten WoW Server spiele: Stormscale ist der Ping allein schon etwas hoch, trotzdem habe ich selber mein eigenen Trick: World of Warcraft auf Mac OS X spielen, man denkt man Einzelspielermodus, wo es garnicht laggt. So ist das, nur brauche ich noch eine anständige Maus unter Mac, das ich vollständig so spielen kann wie auf Windows 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Dunedin (30. November 2009)

Mal wieder hilft Wikipedia aus. Hinter den beiden Registrykeys versteckt sich mehr als ihr denkt. http://de.wikipedia.org/wiki/Nagle-Algorithmus

Außerdem funktioniert auf XP der Registryhack seit Patch 2.3.2 nicht mehr. Auf Vista und Win7 aber immer noch. Gestern erst gemacht nach System-Neuinstallation. Senkt Ping von 150-200ms auf 50-60ms.


----------



## Ogil (30. November 2009)

Der Nagle-Algorithmus hat aber mit der TCP_NODELAY-option zu tun und nix mit der TcpAckFrequency. 


			Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.


----------



## Klos1 (30. November 2009)

Ogil schrieb:


> Der Nagle-Algorithmus hat aber mit der TCP_NODELAY-option zu tun und nix mit der TcpAckFrequency.
> 
> 
> Dieser Inhalt steht nur eingeloggten Mitgliedern zur Verfügung.



Doch hat er eigentlich schon. Denn er steht in einer Beziehung mit der TcpAckFrequency. Einmal hast du den Sender und einmal den Empfänger.
Der Nagle-Algorithmus soll verhindern, daß zuviele kleine Pakete durch das Netzwerk schwirren. Ein Paket, daß nicht voll ist, daß wird nur dann rausgeschickt, wenn kein Ack vorangegangener Pakete mehr aussteht. Und in welcher Abfolge die Ack's vom Empfänger kommen, wird ja durch die TcpAckFrequency bestimmt. Somit gibt es schon eine eindeutige Beziehung zwischen den Nagle-Algorithmus und der TcpAckFrequency meiner Meinung nach.

Ob es jetzt Sinn macht, daran zu schrauben, daß hängt vom Einzelfall ab. 

So zum Beispiel wird durch die Angabe, daß jedes Paket sofort bestätigt werden soll, der Traffic erhöht. Das heißt, bei Verbindungen, die die Bandbreite bereits voll ausnutzen, geht der Schuß nach hinten los.

Ebenso nach hinten geht der Schuß los, wenn man möglicherweise mehrere Rechner an einen Hub angeschlossen hat. Denn die Anzahl der Kollisionen wird definitv ansteigen.

Oder etwa bei einen Rechner, der eigentlich fast nur Empfänger großer Daten ist. Auch hier macht es mehr Sinn, wenn er mehrere Pakete gleichzeitig bestätigt, als jedes einzeln. Dazu gibt es dann schöne Rechnungen, mit denen man die optimale RWin in Abhängigkeit von MTU und TcpAckFrequency errechnen kann.


----------



## eMJay (30. November 2009)

Macht doch mal einen Vergleich mit 2 Rechnern über die gleiche Leitung einer mit einer ohne TcpAck..... dann werdet ihr es sehen. Geht damit mal in WoW mal bissle spazieren, in der Welt in dem einer dem anderen folgt. Einfach nur /folgen..... und das abwächselnd....


----------

