Hohe Kollisionsrate bei 100 MB-Netzwerkkarten

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 169789 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Dieser Artikel wurde zuvor veröffentlicht unter D41732
Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base:
169789 High Rate of Collisions on 100-MB Networks
WICHTIG: Dieser Artikel enthält Informationen zum Bearbeiten der Registrierung. Bevor Sie die Registrierung bearbeiten, vergewissern Sie sich, dass Sie die Registrierung wiederherstellen können, wenn ein Problem auftritt. Informationen hierzu erhalten Sie, indem Sie in der Datei "Regedit.exe" unter dem Hilfethema "Wiederherstellen der Registrierung" oder in der Datei "Regedt32.exe" unter dem Hilfethema "Wiederherstellen eines Registrierungsschlüssels" nachsehen.
Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung.
Alles erweitern | Alles schließen

Auf dieser Seite

Problembeschreibung

Sie stellen möglicherweise eine geringe Netzwerkleistung beim Kopieren von Dateien fest, wenn Sie das TCP/IP-Protokoll mit einer 100-MB-Netzwerkkarte verwenden. Es kommt zu dieser verringerten Leistung bei Verwendung des Windows-Explorers in Windows NT 4.0 oder Windows 2000 oder des Copy-Befehls an einer Eingabeaufforderung in Windows NT 3.51. Die Leistung ist normal, wenn Sie den Datei-Manager in Windows NT 3.51 verwenden.

Hinweis: Eine Verringerung der Leistung wurde zwar bei verschiedenen 100-MB-Netzwerkkarten beobachtet, jedoch ist dieses Problem nicht Windows NT-spezifisch.

Ursache

Die niedrige Netzwerkleistung ist auf eine hohe Rate frühzeitiger Kollisionen im Netzwerk zurückzuführen. Der Blockzwischenraum, die Zeit, die eine Arbeitsstation abwartet, bevor sie die Übertragung versucht, ist kürzer als von der IEEE 802.3-Spezifikation (9,6 Mikrosekunden) festgelegt.

Lösung

WARNUNG: Die unkorrekte Verwendung des Registrierungseditors kann schwer wiegende Probleme verursachen, die eine Neuinstallierung des Betriebssystems erforderlich machen. Microsoft kann nicht dafür garantieren, dass Probleme, die von einer falschen Verwendung des Registrierungseditors herrühren, behoben werden können. Benutzen Sie den Registrierungseditor auf eigene Verantwortung.

Informationen zum Bearbeiten der Registrierung finden Sie unter dem Online-Hilfethema "Ändern von Schlüsseln und Werten" im Registrierungseditor (Regedit.exe) oder unter den Hilfethemen "Hinzufügen und Entfernen von Informationen in der Registrierung" und "Bearbeiten von Registrierungsinformationen" in der Datei "Regedt32.exe". Beachten Sie bitte, dass Sie eine Sicherungskopie der Registrierungsdateien (System.dat und User.dat) erstellen sollten, bevor Sie die Registrierung bearbeiten.
  • Um dieses Problem zu beheben, müssen Sie sich an den Hersteller Ihrer Netzwerkkarte wenden, um Informationen dazu zu erhalten, wie Sie den Blockzwischenraum vergrößern können. Intel EtherExpress 100B-Adapter verfügen über einen Registrierungsparameter, der den Blockzwischenraum steuert. Gehen Sie wie folgt vor, um diesen Parameter zu ändern:
    1. Starten Sie den Registrierungseditor (Regedt32.exe).
    2. Gehen Sie zum folgenden Teilschlüssel:
      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\e100b"x"\Parameters
      "x" steht hierbei für die Nummer Ihrer Netzwerkkarte.
    3. Klicken Sie auf BEARBEITEN und auf WERT HINZUFÜGEN, und geben Sie die folgenden Informationen ein:
      Name: Adaptive_ifs
      Typ : REG_DWORD
      Wert: 1 (Anpassungsalgorithmus aktivieren)
      Der Anpassungsalgorithmus zum Erkennen von Kollisionen und Einstellen des Blockzwischenraums ist standardmäßig aktiviert. Durch Setzen auf 0 wird der Anpassungsalgorithmus deaktiviert. Durch einen Wert zwischen 2 und 200 wird ein vordefinierter Blockzwischenraum festgelegt. Messen Sie die Kollisionen durch Festlegen dieses Parameters auf Intervalle von je 20 Dezimalzahlen (beginnend mit 20). Wählen Sie einen Wert mit einer niedrigen Kollisionsrate, der sich nicht auf die Leistung auswirkt.
  • Um dieses Problem zu umgehen, können Sie den Registrierungsparameter "TcpWindowSize" so einstellen, dass der Absender auf den Eingang der ACK-Meldung des Empfängers wartet, bevor er weitere Daten sendet. Damit wird das Potential für Kollisionen beseitigt.

    Der Parameter TcpWindowSize existiert normalerweise nicht in der Registrierung. Daher muss der Parameter anhand der folgenden Schritte erstellt werden:
    1. Starten Sie den Registrierungseditor (Regedt32.exe).
    2. Gehen Sie zum folgenden Teilschlüssel:
      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
    3. Klicken Sie auf HINZUFÜGEN, klicken Sie auf WERT, und geben Sie die folgenden Informationen ein:
      Name: TcpWindowSize
      Typ : REG_DWORD
      Wert: 2920 (Dezimal) - Anzahl Bytes. Setzen Sie den Wert auf Dezimal 2920 für Ethernet (d.h. auf das Doppelte der maximalen TCP-Datengröße in anderen Netzwerken. Diese Einstellung muss für andere Netzwerke nicht geändert werden, da Token Ring- und FDDI-Netzwerke usw. keine Kollisionen wie Ethernet-Netzwerke aufweisen).
      Hinweis: Das Ändern dieses Parameters könnte signifikante Auswirkungen auf die Leistung haben. In Allgemeinen gibt es in WAN- oder herkömmlichen 10 MB-Netzwerken, in Abhängigkeit von der Topologie, eine gewisse Latenzzeit zwischen dem Absender und dem Empfänger. Daher besteht kein Potential für Kollisionen aufgrund der für TCP/IP typischen Sendung von ACK-Meldungen. Durch Ändern des Parameters "TcpWindowSize" wird in diesem Fall nur der Durchsatz verringert.
Weitere Informationen zu TCP/IP erhalten Sie im folgenden Weißbuch, das auf dem Anonymous FTP-Server von Microsoft verfügbar ist:
Dateiname: Tcpipimp2.doc
Standort: ftp://ftp.microsoft.com/bussys/winnt/winnt-docs/papers/
Titel : "TCP/IP Implementation Details"

Weitere Informationen

Eine "Kollision" tritt auf, wenn zwei Stationen gleichzeitig auf der Leitung übertragen. Eine "frühzeitige Kollision" ist eine Kollision, die auftritt, bevor 512 Bit des Datenblocks übertragen wurden. Frühzeitige Kollisionen können in einem normal arbeitenden Ethernet-Netzwerk regelmäßig auftreten. Es besteht keine Hardware-Fehlfunktion bzw. kein Fehlverhalten der Stationen.

Die IEEE 802.3-Spezifikation legt fest, dass eine Station 9,6 Mikrosekunden (einen Blockzwischenraum) abwarten muss, bevor sie den Übertragungsversuch über die Leitung vornehmen kann. Einige Hersteller von Netzwerkkarten haben Ihre Adapter mit einem kürzeren Blockzwischenraum konfiguriert, um höhere Datenübertragungsraten zu erzielen, die zu einer hohen Kollisionsrate führen könnten.

Dieses Problem kann durch das Verhalten des Protokolls der oberen Schicht beeinflusst werden. Die TCP/IP-Spezifikation legt fest, dass für jeden zweiten empfangenen Datenblock eine ACK-Meldung gesendet werden soll. Wenn ein TCP-Host also zwei Datenblöcke empfängt, soll er eine ACK-Meldung an den Absender übertragen. Das Potential für das Auftreten von Kollisionen ist hoch, wenn ein Client, der zwei Pakete empfangen hat, versucht, eine ACK-Meldung zu senden, während der Absender möglicherweise noch versucht, weitere Daten an den Client zu senden.

Analyse des Dateikopiervorgangs im Datei-Manager von Windows NT 3.51

Wenn Sie unter Windows NT 3.51 Dateien mit dem Datei-Manager kopieren, führt der Redirector nur 4KB-Lesevorgänge aus. Das Datenübertragungsmuster ist nachstehend aufgeführt. Es wurde mit dem Netzwerkmonitor erfasst.
   18 CLIENT SERVER  SMB   C read & X, FID = 0x804, Read 0x10c5
   19 SERVER CLIENT  SMB   R read & X, Read 0x10c5
   20 SERVER CLIENT  NBT   SS: Session Message Cont., 1460 Bytes
   21 SERVER CLIENT  NBT   SS: Session Message Cont., 1437 Bytes
   22 CLIENT SERVER  TCP   .A...., len:    0, seq:585361-5851029
Auf TCP-Ebene:
   Frame 18: TCP: len:   64, seq: 585297-585360, ack:734154,
   >Client sendet 64 Byte Daten (SMB-Befehl zum Lesen von 4KB);

   Frame 19: TCP: len: 1460, seq: 734154-735613, ack:585361,
   >Server sendet anschließend 1460 Byte Daten (smb-Antwort + Daten) mit einer
   Piggyback-ACK-Meldung zurück, um den Empfang sämtlicher Daten im Datenblock 18
   zu bestätigen.

   Frame 20: TCP: len: 1460, seq: 735614-737073, ack: 585361,
   Frame 21: TCP: len: 1437, seq: 737074-738510, ack: 585361,
   >Server sendet anschließend zwei weitere Datenblöcke und schließt die
   4KB-Übertragung ab.

   Frame 22: TCP: len:    0, seq: 585361-585361, ack: 738511,
   >Client sendet ACK-Meldung für sämtliche Daten, die er in den beiden Datenblöcken
   erhalten hat.
Da der Server die 4-KB-Datenübertragung bereits abgeschlossen hat, sind keine weiteren zu sendenden Daten vorhanden. Deshalb besteht kein Potential für das Auftreten von Kollisionen.

Analyse des Dateikopiervorgangs im Windows-Explorer von Windows NT 4.0 oder Windows 2000

Wenn der gleiche Dateikopiervorgang über die Eingabeaufforderung oder den Windows-Explorer in Windows NT 4.0 oder Windows 2000 erfolgt, ist das Datenübertragungsmuster anders. In diesem Fall gibt der Redirector einen 60KB-"Bulk Read"- oder "Raw Read"-Befehl aus (Windows NT 3.51). Das Datenübertragungsmuster ist nachstehend aufgeführt:
   10 CLIENT SERVER  SMB C read & X, FID = 0x1004, Read 0xf000
   11 SERVER CLIENT  SMB R read & X, Read 0xf000
   12 SERVER CLIENT  NBT SS: Session Message Cont., 1460 Bytes
   13 SERVER CLIENT  NBT SS: Session Message Cont., 1460 Bytes
   14 SERVER CLIENT  NBT SS: Session Message Cont., 1460 Bytes
   15 SERVER CLIENT  NBT SS: Session Message Cont., 1460 Bytes
   16 CLIENT SERVER  TCP .A...., len: 0, seq:404791-404791, ack
   17 CLIENT SERVER  TCP .A...., len: 0, seq:404791-404791, ack
   18 SERVER CLIENT  NBT SS: Session Message Cont., 1460 Bytes
   19 SERVER CLIENT  NBT SS: Session Message Cont., 1460 Bytes
   20 SERVER CLIENT  NBT SS: Session Message Cont., 1460 Bytes
Auf TCP-Ebene:
   10 CLIENT SERVER TCP len:   64, seq: 404727-404790, ack:   6992081
   >Client sendet 64 Byte Daten (SMB-Befehl zum Lesen von 4KB);

   11 SERVER CLIENT TCP len: 1460, seq: 6992081-6993540, ack: 404791
   >Server sendet die Piggyback-ACK-Meldung und die SMB-Antwort mit einigen Daten;

   12 SERVER CLIENT TCP len: 1460, seq: 6993541-6995000, ack: 404791
   13 SERVER CLIENT TCP len: 1460, seq: 6995001-6996460, ack: 404791
   >Server sendet den Rest der Daten an den Client.

   >**Kollision ist an diesem Punkt wahrscheinlich, da der Client
   versuchen wird, eine ACK-Meldung zu senden.

   14 SERVER CLIENT TCP len: 1460, seq: 6996461-6997920, ack: 404791
   15 SERVER CLIENT TCP len: 1460, seq: 6997921-6999380, ack: 404791
   >Der Server ist jedoch in der Lage, die Leitung zu erhalten und weitere Daten
   zu senden.

   16 CLIENT SERVER TCP len:    0, seq:   404791-404791, ack: 6996461
   >Client ist in der Lage, die Leitung zu erhalten und die ACK-Meldung für die
   Daten in den Datenblöcken 12 und 13 zu senden.

   17 CLIENT SERVER TCP len:    0, seq:   404791-404791, ack: 6999381
   >Client ist in der Lage, die Leitung zu erhalten und die ACK-Meldung für die
   Daten in den Datenblöcken 14 und 15 zu senden.

   18 SERVER CLIENT TCP len: 1460, seq: 6999381-7000840, ack: 404791
   19 SERVER CLIENT TCP len: 1460, seq: 7000841-7002300, ack: 404791
   >Server sendet weiterhin Daten.

   >**Kollision an dieser Stelle wahrscheinlich, da der Client
   versuchen wird, eine ACK-Meldung zu senden.

   20 SERVER CLIENT TCP len: 1460, seq: 7002301-7003760, ack: 404791
   >Der Server ist jedoch in der Lage, die Leitung zu erhalten und weitere Daten
   zu senden.
Wenn Sie das TCP/IP-Protokoll verwenden, beeinflusst die Sendung von TCP-ACK-Meldungen, wie oben beschrieben, die Kollisionsrate. Das Problem ist jedoch nicht auf TCP/IP oder die Erweiterung von Windows-Explorer zum Ausführen von 60KB-Bulk Reads zurückzuführen. Das Problem kann auch anhand von FTP veranschaulicht werden. TCP/IP, der Redirector und Windows-Explorer haben keinerlei Kontrolle über den Blockzwischenraum. Der Blockzwischenraum wird auf der physikalischen Schicht festgelegt, die vom Chipsatz der Netzwerkkarte gesteuert wird. Falls es zu einer hohen Kollisionsrate kommt, sollten Sie sich an den Hersteller Ihrer Netzwerkkarte wenden.

Eigenschaften

Artikel-ID: 169789 - Geändert am: Dienstag, 27. November 2007 - Version: 2.3
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
Keywords: 
kbtshoot kbnetwork kbproductlink KB169789
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com