Anzeige

Am Puls von Microsoft

Anzeige

Mit Windows-Einstellungen Internet- und Netzwerkverbindungen beschleunigen

Franz

Moderator
Teammitglied
Mit versteckten Windows-Einstellungen Internet- und Netzwerkverbindungen beschleunigen und reparieren

Wir hatten bereits schon mehrfach über das Thema geschrieben, wie man die Netzwerkgeschwindigkeit beschleunigen und evtl. auftretende Probleme bei der Datenübertragung beheben kann, aber zusammengefasst hatten wir es bisher noch nicht.

Es gibt bei Windows 7 und Vista einige Möglichkeiten, die dazu beitragen können, dem Datenverkehr mehr Speed zu verleihen und verschiedene Netzwerk- und Internet-Probleme zu beseitigen.
Die Betonung liegt auf "können". Denn es ist nicht garantiert, daß durch Änderungen an den TCP/IP-Einstellungen tatsächlich eine höhere Geschwindigkeit im Datentransfer erreicht werden kann. Die Einstellungen hängen sehr von der vorhandenen Hardware, der Netzwerkkarte, CPU und dem Router ab. Mitunter stehen bestimmte Einstellungen auf ihrem Rechner gar nicht zur Verfügung, wenn diese nicht von der Netzwerkkarte und Router unterstützt werden. Außerdem muß der oder die Ziel-Rechner die TCP/IP-Einstellungen ebenfalls unterstützen und natürlich auch entsprechend angepasst werden. Sie sollten auch unterschiedliche Konstellationen der Einstellungen testen, um ein positives Ergebnis zu erzielen. Für die Reparatur einer Internetverbindung (z.B. bei langsamen oder unterbrochenen Downloads oder Server-Verbindungsfehlern) können diese Einstellungen eine sehr große Hilfe und Lösung darstellen.
Übrigens nutzen Tuning-Programme von Drittherstellern genau diese Funktionen.

Ob ihr PC für die verschiedenen Technologien ausgestattet ist, überprüfen Sie am einfachsten im Internet. Microsoft bietet hierfür eine Netzwerkanalyse mit dem Online-Programm "Internet Connectivity Evaluation Tool" an:
Internet Connectivity Evaluation Tool

Zur Behebung von Geschwindigkeits-Problemen, z.B. bei Transferabbruch, einem langsamen Internet oder gedrosseltem Datenverkehr,
können die Eingestellungen eingesetzt werden, aber die Änderungen an den TCP/IP-Settings sollten immer einzeln durchgeführt werden, d.h.,
nach jedem Ändern des TCP-Status muß der PC neu gestartet und die Netzwerk- und Internetverbindung getestet werden.
Auf jeden Fall sollten Sie die Einstellungen wieder zurücksetzen, wenn kein Erfolg damit erzielt wurde.

Über Windows Start -> "cmd" eingeben -> OK starten Sie die Kommandozeile von Windows.
Jede Befehlszeile muß mit der [Enter]-Taste bestätigt werden.
Achten Sie darauf, daß das Programm mit erweiterten Berechtigungen gestartet werden muß (Rechtsklick auf cmd.exe -> "Als Administrator ausführen").

cmd_admin1.jpg


Ganz wichtig:
Bedenken Sie bitte, daß nach jeder einzelnen Änderung an den folgenden Werten ein PC-Neustart durchgeführt werden muß,
damit die neuen Internet-Parameter übernommen werden können.

Zuerst rufen wir unseren aktuellen Windows-Status mit dem Befehl auf:
Code:
netsh int tcp show global

tcp_parameter2.jpg


Da wir unterschiedliche Konfigurationen vornehmen wollen, kopieren Sie am besten den kompletten aktuellen Status
in eine Text-Datei oder machen Sie einen Screenshot davon. So können Sie leicht Änderungen wieder rückgängig machen,
die nicht zum gewünschten Erfolg beitragen und um evtl. negative Auswirkungen im Netzwerkverkehr zu vermeiden.


Die Einträge im Einzelnen:

  • Empfangsseite

    Dieser Eintrag muß auf "enabled" gesetzt bleiben, zudem wird es jetzt etwas theoretisch:
    Mit der "Empfangsseite" (Receive Window) und der maximalen Segmentgröße (MSS) eines TCP-Datenpaketes wird die Menge an Daten festgelegt,
    die ein Computer ohne Empfangsbestätigung (TCP ACK) in einem bestimmten Zeitfenster aufnehmen kann.
    Wird der Eintrag geändert, verlangsamt sich i.d.R. der Datenfluß.

  • Chimney-Abladestatus

    Mit dieser Funktion wird die CPU entlastet und der Datentransfer, bzw. die Verarbeitung
    der ankommenden und abgehenden Datenpakete, auf die Netzwerkkarte
    ausgelagert.
    Sollte hier der Eintrag auf "deaktiviert" stehen", können Sie ihn mit dem Befehl
    Code:
    netsh int tcp set global chimney=enabled
    aktivieren.
    Mit dem Befehl
    Code:
    netsh int tcp set global chimney=disabled
    deaktivieren sie wieder diese Funktion.
    Bedenken Sie, daß diese Einstellung auch auf allen Partner-PCs für die reibungslose Funktion aktiviert sein muß.
    Näheres zu dem Eintrag finden Sie hier:
    http://www.drwindows.de/windows-anleitungen-und-faq/8166-tcp-chimney-offload.html

  • Direkter Cachezugriff (DCA)

    Ab Windows 7 wird diese neue Technologie eingesetzt. Hier benutzt die Netzwerkkarte direkt
    den CPU-Cache, um Netzdaten weiter zu transportieren. Der CPU-Cache wird in diesem Modus als
    Zwischenspeicher benutzt. Das spart die CPU-Operationen, die notwendig sind, wenn Netzwerkdaten in den Arbeitsspeicher eingelesen werden.

    Mit dem Befehl
    Code:
    netsh int tcp set global dca=enabled
    wird dieser Modus aktiviert.
    Hinweis:
    Nicht jeder Chipsatz, Prozessor und Netzwerkadapter unterstützt diese Technologie.
    Die Option "DCA" muß hierfür im BIOS aktiviert sein.
    Mit
    Code:
    netsh int tcp set global dca=disabled
    deaktivieren Sie den Modus wieder.

  • NetDMA-Status

    Auch diese Technik wurde mit Windows 7 und Windows Server 2008 eingeführt.
    Die Netzwerkkarte überträgt, ohne den Umweg über die CPU, direkt an das empfangende Programm.
    Mit dem Befehl
    Code:
    netsh int tcp set global netdma=enabled
    wird die Option aktiviert.
    Mit dem Befehl
    Code:
    netsh int tcp set global netdma=enabled
    wird die Option deaktivert.

  • Autom. Abstimmungsgrad Empfangsfenster

    Besser bekannt als "AutoTuning-Level" für den TCP-Stack. Wie oben bereits erwähnt, kann ein PC nur eine bedingte Menge an Daten
    empfangen, bevor das Acknowledgement (ACK) an den Sender geschickt werden muß. Jeder PC handhabt diese Situation individuell.
    Um aber dennoch einen guten Datenfluß zu garantieren, wurde in Windows das AutoTuning eingeführt.
    Leider führt die aktivierte Option bei manchen PCs zu schweren Netzwerkfehlern, wie fehlender Seitenaufbau oder Abbruch von Datentransfers.
    Es gibt hier verschiedene Möglichkeiten, das AutoTuning einzuschränken bzw. abzuschalten.
    Code:
    netsh int tcp set global autotuninglevel=enabled
    Code:
    netsh int tcp set global autotuninglevel=restricted
    Code:
    netsh int tcp set global autotuninglevel=highlyrestricted
    Code:
    netsh int tcp set global autotuninglevel=disabled
    Sie sollten es schrittweise testen, inwieweit eine Änderung Einfluß auf
    die Datenübertragung hat.
    Weitere Informationen über das AutoTuning finden Sie hier:
    http://www.drwindows.de/windows-anl...ezeigt-kein-mailabruf-langsames-netzwerk.html

  • Add-On "Überlastungssteuerungsanbieter"

    Mit Vista wurde u.a. auch das Compound TCP (CTCP) als Teil des neuen TCP-Stack eingeführt.
    Es sorgt dafür, daß der höchstmögliche und schnellste Datenfluß beim Sender gewährleistet ist.
    Sinnvoll ist diese Funktion vor allem bei höheren Bandbreiten im Netzwerk. Steht hier der Anbieter auf "none"
    ändern Sie den Eintrag in
    Code:
    netsh int tcp set global congestionprovider=ctcp
    und testen Sie die Verbindung nach einem PC-Neustart.
    Mit dem Befehl
    Code:
    netsh int tcp set global congestionprovider=none
    wird die Funktion wieder deaktiviert.
    Diese Funktion ist bei Windows XP nur über einen Hotfix zu bekommen.

  • ECN Funktion

    Der ECN-Eintrag (Explicit Congestion Notification) steuert die Methode für den Router, wie er größeren Datenverkehr
    weiterleiten kann, ohne dabei Datenpakete zu verlieren, die neu angefordert werden müssen.
    Inwieweit eine Änderung dieser Option eine Verbesserung des Netzwerkverkehrs bringt, hängt von vielen unterschiedlichen Faktoren ab,
    u.a. auch, ob Ihr Router und Ihr Computer diese Funktion überhaupt unterstützen.

    Mit dem Befehl
    Code:
    netsh int tcp set global ecncapability=enabled
    aktivieren Sie die Funktion.

    Mit dem Befehl
    Code:
    netsh int tcp set global ecncapability=disabled
    deaktivieren Sie ihn wieder.
  • RFC 1323-Zeitstempel

    Dieser Eintrag ist nur minimal beeinflußbar. Der aktivierte Zeitstempel vergrößert ein Daten-Paket um ca.2-5kb.

    Mit dem Befehl
    Code:
    netsh int tcp set global timestamps=enabled
    aktivieren Sie die Funktion.

    Mit dem Befehl
    Code:
    netsh int tcp set global timestamps=disabled
    deaktivieren Sie ihn wieder.

    Alle TCP/IP-Einstellungen lassen sich natürlich auch über Registrierung und durch
    zusätzliche Tweaking-Programme anpassen.
 
Zuletzt bearbeitet:
Anzeige

Roberto

gehört zum Inventar
Bei diesen beiden Befehlen

netsh int tcp set global congestionprovider=ctcp

netsh int tcp set global ecncapability=enabled

wird es zu Problemen bei der Anmeldung am EA Server kommen, bzw. ist diese nicht mehr möglich.

Wer also online spielt sollte diese Einstellungen nicht ändern.
 

Koller

Bin gerne hier !
Und wie bekommt man in Windows 7 und Online Gamen einen niedrigeren Ping ?

Habe seit Windows 7 einen um 20 % erhöhten Ping !
 

Franz

Moderator
Teammitglied
Daß bestimmte Server obg. Änderungen nicht akzeptieren, müßte unter
Gamern hinlänglich bekannt sein. Veraltete Spiele-Server nehmen nur standardisierte TCP/IP-Pakete
entgegen (aufgrund der zwar angemeldeten, aber unterschiedlichen Betriebssysteme).

Zum Tweaken der Online-Spiele-Verbindungen gibt es einige Registrierungs-Einstellungen, die aber nur für Windows 7 gelten,
für Vista und ältere Systeme müssen vorab bestimmte Hotfixes installiert sein.
Die Tweaks deaktivieren den Nagle Algorithmus. Er reguliert durch Verzögerung das Versenden von ACK-Paketen.
Insgesamt verlangsamt er den Verkehr, wenn der Empfänger ebenfalls mit einem verzögerten ACK-Paket antwortet.
In der Registrierung kann der Intervall eingestellt werden.

Windows Start - "regedit" eingeben -> OK

  • Unter
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces
    befinden sich (meist mehrere) Netzwerkkarten-SIDs.

    Um herauszufinden, wo die folgenden Änderungen vorgenommen werden müssen,
    wählt man die aktive Netzwerkverbindung, erkennbar an der aktuellen IP-Adresse (s. Anhang1).
    Bitte nicht verwechseln mit dem TCPIP6-Eintrag, hier sind Änderungen nur relevant,
    wenn der Netzwerkverkehr ausschließlich über IPv6 aufgebaut wird.


    Im rechten Fenster wird folgender neuer Eintrag erstellt:
    Rechtsklick -> Neu -> DWORD Wert (32bit) -> Name "TcpAckFrequency"
    Anschließend über Rechtsklick auf den neuen Eintrag den Wert "1" eintragen und bestätigen. (s.Anhang 2,3)

    Mögliche Werte:
    1 = deaktiviert
    2 = default
    2-n = sendet ACKs wenn mehr als 200ms vergangen sind oder keine 2 ACK-Pakete in dieser Zeit empfangen wurden
    Für Online-Spieler ist der Wert "1" nützlich. Für den normalen Datenverkehr müssen die Werte über 2 getestet werden.
    Faustregel für Netzwerkkarten bei aktiviertem Eintrag:
    1 Gbit: TcpAckFrequency = 13 (RWIN = 64 KByte, s.o.)
    10 Mbit: TcpAckFrequency = 2 (RWIN = 8 KByte, s.o.)
    100 Mbit: TcpAckFrequency = 5 (RWIN = 17 KByte, s.o.)

  • Ist der Nagle Algorithmus aktiviert, kann mit folgendem Eintrag die Intervalldauer reguliert werden:

    Rechtsklick -> Neu -> DWORD Wert (32bit) -> Name "TcpDelAckTicks"
    Anschließend über Rechtsklick auf den neuen Eintrag den gewünschten Wert eintragen und bestätigen.
    Mögliche Werte:

    0 = deaktiviert den Algorithmus
    2 = default
    1-6 = reguliert den Intervall 100-600ms

  • Unter
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSMQ\Parameters

    wird ein neuer DWORD-Wert mit dem Namen "TCPNoDelay" erstellt.

    Mögliche Werte:
    0 = aktiviert den Nagle Algorithmus
    1 = deaktiviert den Nagle Algorithmus

  • Unter
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile
    ändert man den Eintrag "NetworkThrottlingIndex" in folgenden Wert um:

    NetworkThrottlingIndex=dword:ffffffff

Nach vorgenommenen Änderungen muß ein PC-Neustart furchgeführt werden.
 

Anhänge

  • tcpip_spiele_registry1.jpg
    tcpip_spiele_registry1.jpg
    314,1 KB · Aufrufe: 2.446
  • tcpip_spiele_registry2.jpg
    tcpip_spiele_registry2.jpg
    89,4 KB · Aufrufe: 1.235
  • tcpip_spiele_registry3.jpg
    tcpip_spiele_registry3.jpg
    92,5 KB · Aufrufe: 1.428
Zuletzt bearbeitet:

Thomas!

treuer Stammgast
Sehr interessanter Beitrag. Könnte man den Beitrag mal für Windows 8.1 auffrischen?
Bei mir sieht das jetzt so aus:
Globale TCP-Parameter
------------------------------------------------------------------
Zustand der empfangsseitigen Skalierung : enabled
Chimney-Abladezustand : enabled
NetDMA-Zustand : disabled
Direkter Cachezugriff (DCA) : disabled
Autom. Abstimmungsgrad Empfangsfenster : normal
Add-On "Überlastungssteuerungsanbieter" : none
ECN-Funktion : enabled
RFC 1323-Zeitstempel : enabled
RTO (anfänglich) : 3000
Zustand der Empfangssegmentzusammenfügung : disabled
Nicht-SACK-RTT-Widerstandsfähigkeit : disabled
Maximale SYN-Neuübertragungen : 2

Ändere ich den NetDMA Zustand kommt zwar "ok." Aber die alte Einstellung bleibt wohl erhalten
Das gilt auch für DCA.

Danke Thomas
 

Nikkorix

treuer Stammgast
Anzeige
Oben