Schlechte Webleistung möglicherweise, wenn Sie Internet Explorer 6 verwenden, um auf eine Webanwendung zuzugreifen, die auf Internet Information Services 6.0 gehostet wird

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 922703 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Problembeschreibung

Stellen Sie sich das folgende Szenario vor:
  • Verwenden Sie integrierte Windows-Authentifizierung in einer Umgebung von Microsoft Internet Information Services 6.0 (IIS 6.0) Web Application.
  • Sie verwenden Microsoft Internet Explorer 6, um eine Webanwendung zugreifen, die auf IIS 6.0 gehostet wird.
In diesem Szenario können Web-Anwendung Leistungseinbußen auftreten.

Hinweis: Das Problem tritt nicht auf, wenn die anonyme Authentifizierung als Authentifizierungsprotokoll verwendet wird. Dieses Problem tritt auch nicht, wenn der Clientbrowser einen anderen Browser als Internet Explorer 6, z. B. Mozilla Firefox ist.

Ursache

Dieses Problem, da der Internet Explorer 6-Client die TCP-Verbindungen regelmäßig zurückgesetzt.

Wenn Sie eine Netzwerkablaufverfolgung, die während der schlecht durchführen Kommunikation zwischen Client und dem Server erfasst ist analysieren, zeigt die Netzwerkablaufverfolgung, dass TCP setzt auftreten werden, nachdem der Client erhält eine 200 Antwort für die Ressource, die der Client angefordert hat. Der Client stellt die GET-Anforderungen mit einem ETag-HTTP-Header und Wert. Wenn der Server, auf dem IIS 6.0 ausgeführt wird die Anforderung empfängt, den ETag-Wert verglichen und sucht, der ETag-Wert der angeforderten Datei ?s Aktueller Wert, außer für die Änderungsnummer Übereinstimmungen.

Hinweis: ETag-Header werden im folgenden Format angezeigt:

Filetimestamp: ChangeNumber

Angenommen, der Internet Explorer-Client sendet eine Anforderung mit einem ETag-Wert der 0222d5bffcbc41:301a und der Server sendet dann eine HTTP 200-Antwort mit einem ETag-Wert von 0222d5bffcbc41:3246.

Die Filetimestamp Zahl in der Anforderung ist die gleiche Anzahl, die IIS 6.0 auf aktuellen Wert für die Anforderung Ressource betrachtet. Aber da die ChangeNumber Zahl in der Anforderung unterscheidet, IIS 6.0 sendet wieder die aktuelle Version der Datei anstelle von erzählendes Internet Explorer eigene zwischengespeicherte Kopie dienen. In Internet Explorer, die Filetimestamp auf 200-Antwort mit der Timestamp der lokal zwischengespeicherten Kopie vergleicht ist bestimmter Code vorhanden. Die Verbindung wird zurückgesetzt, wenn Sie die gleiche Anzahl sind. Dies ist da Internet Explorer-Client einen 304 Statusbericht erhalten erwartet, wenn der Inhalt identisch ist.

Mit anderen Worten, sendet IIS 6.0 eine 200 Antwort, da er die andere Änderung Zahlen bedeuten betrachtet, dass die Ressource, die durch den Client und ?s Client bereits vorhandene Version von dieser Ressource, die im Browser-Cache befindet angefordert wird nicht die gleichen Versionen sind. Internet Explorer berücksichtigt jedoch die gleichen Versionen werden, da der Filetimestamp identisch ist. Darüber hinaus glaubt Internet Explorer, dass er 200 Antwort Fehler empfängt. In diesem Szenario setzt Internet Explorer die TCP-Verbindung zurück.

Abhilfe

Wenn Sie eine Windows Server 2003-Computer verwenden

Um dieses Problem zu umgehen, empfehlen wir, dass Sie schwer die Änderungsnummer auf dem Server code und, dass die Version der Datei für die Internet Explorer-Clients synchronisieren. Die Internet Explorer-Clients werden Versionen aller anderen Dateien verfügen, die für die Anwendung erforderlich sind. Sie müssen sicherstellen, dass der Server und alle Clients synchronisiert werden.

Hinweis: Wenn Sie in einer IIS 6.0-Webfarm-Umgebung ausführen, müssen Sie die gleiche Anzahl Änderung für alle Server hartcodieren, auf denen IIS 6.0 in der Farm ausgeführt werden.

Gehen Sie folgendermaßen vor um die Änderung Nummer Werte zwischen den Clients und dem Server zu synchronisieren.
  1. manuell Festplatte Code den ETag-Wert in der IIS 6.0-Metabasis

    Die Möglichkeit, die Änderungsnummer ETag auf IIS 6.0 zu ändern, ist in Windows Server 2003 Service Pack 1 (SP1) verfügbar.

    Hinweis: Ein Problem kann auftreten, wenn Sie den ETag-Wert ändern, und Sie müssen einen Hotfix zur Behebung dieses Problems installieren. Weitere Informationen zum Hotfix finden Sie im folgenden Artikel der Microsoft Knowledge Base:
    900245Der Wert im Feld ETAG wird aktualisiert, wenn Sie eine Metabasiseigenschaft in IIS 6.0 ändern
    Nachdem Sie den Hotfix installiert haben, können Sie manuell Festplatte Code ETag Anzahl ändern. Die Einstellung für die Änderungsnummer ETag wird jedoch nicht auf den Active Directory Service Interfaces (ADSI)-Namespace verfügbar gemacht. Daher müssen Sie das Tool Metabase Explorer verwenden, um den Wert von ID-Eigenschaft festlegen Besuchen Sie der folgenden Microsoft-Webseite zum Downloaden und um Metabase Explorer zu installieren:
    http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/993a8a36 -5761-448f-889e-9ae58d072c09.mspx
    Hinweis: Metabase Explorer ist in IIS 6.0 Resource Kit enthalten.

    Manuell Festplatte Code ETag ändern Sie Anzahl, führen Sie diese Schritte aus:
    1. Öffnen Sie Metabase Explorer, erweitern Sie im linken Fensterbereich LM und erweitern Sie dann die W3SVC .
    2. Doppelklicken Sie auf den ID 2039 Datensatz im rechten Fensterbereich. Wenn der Datensatz-ID 2039 nicht vorhanden ist, müssen Sie ihn erstellen. Gehen Sie hierzu folgendermaßen vor:
      1. Klicken Sie im W3SVC im den Metabase Explorer mit der rechten Maustaste auf, zeigen Sie auf Neu erstellen und klicken Sie dann auf DWORD-Wert .
      2. Legen Sie die ID des neuen DWORD 2039 .
      3. Festlegen der neuen DWORD-Wert auf 0 .
    3. Geben Sie 0 im Feld Wert ein.

      Hinweis: Die Zahl, die Sie in das Feld Wert eingeben muss zwischen 0 bis 4294967295 liegen. Darüber hinaus müssen alle Server in der Farm die identische Anzahl im Feld Wert aufweisen. Weitere Informationen finden Sie auf der folgenden Microsoft-Webseite:
      http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/ef7f9d58- 2a96-4bd8-8ac1-2a67b43284f1.mspx
    4. Klicken Sie auf Übernehmen , und klicken Sie dann auf OK .
    Hinweis: Wenn Sie IIS 6.0-Servern in einer IIS 6.0-Webfarm-Umgebung ausführen, wiederholen Sie die Schritte 1a bis 1D auf allen IIS 6.0-Servern in der Farm. Stellen Sie sicher, dass Sie dieselbe Zahl Wert auf allen Servern ändern hinzufügen.
  2. Löschen Sie den Client Browser-Cache in Internet Explorer

    Wenn zu viele Clientbrowser um den Cache manuell zu löschen, können Sie Inhalt Ablauf aktivieren in IIS 6.0 auswählen und dann angeben, dass der Inhalt sofort abläuft. In diesem Szenario müssen Sie den Ablauf von Inhalten aktivieren nur solange dauert für alle Clients Werbeinhalte für eingeschaltet lassen. Anschließend müssen Sie Inhalt Ablauf aktivieren Internet Explorer zwischengespeicherte Inhalte erneut dienen Möglichkeit erteilen deaktivieren. Gehen Sie folgendermaßen vor um Ablaufdatum für Inhalt aktivieren
    1. Öffnen Sie Internet-Informationsdienste.
    2. Erweitern Sie LocalMachine im linken Fensterbereich, und klicken Sie dann auf Websites .
    3. Klicken Sie mit der rechten Maustaste auf Websites , und klicken Sie dann auf Eigenschaften .
    4. Klicken Sie auf der Registerkarte HTTP-Header dann auf das Kontrollkästchen Gültigkeit von Inhalten aktivieren , und klicken Sie dann auf die Option Sofort ablaufen .
    5. Beenden und starten Sie alle Dienste von IIS 6.0 ihn neu.
    Hinweis: Ein Client möglicherweise zwei Anforderungen für eine Ressource zu stellen, nachdem das Kontrollkästchen Gültigkeit von Inhalten aktivieren aktiviert ist, um den Cache von Internet Explorer zu aktualisieren.

Wenn Sie einem Windows Server 2003-Computer nicht verwenden

Um dieses Problem zu umgehen, aktivieren Sie in IIS 6.0 die Option Ablaufdatum für Inhalt aktivieren mithilfe der Prozedur, die beschrieben wird im Abschnitt "Client Browser-Cache in Internet Explorer leeren", und auf lassen. Darüber hinaus Deaktivieren der Zwischenspeicherung in Internet Explorer oder Cache-Control-Header in der Webanwendung festgelegt. Weitere Informationen zum Verhindern von Web-Zwischenspeicherung finden Sie im folgenden Artikel der Microsoft Knowledge Base:
311006Wie Sie Web-Zwischenspeicherung in Windows 2000 verhindern

Status

Windows Internet Explorer 7 wurde geändert, die Änderungsnummer ETag nach RFC 2616 richtig verarbeiten. Jedoch wird ETag Anzahl geändert wird, Windows Internet Explorer 7 die vollständige Datei anstelle der Abbruch der Verbindung downloaden. Dieses Verhalten kann die Leistung von Internet Explorer 7 im Vergleich zu Internet Explorer 6 verlangsamen.

Weitere Informationen

Wenn analysieren Sie eine Netzwerkmonitor-Ablaufverfolgung, die auf dem Client oder auf dem Server aufgezeichnet wird und diese Ablaufverfolgung Leistung Szenario beteiligt ist, sehen Sie die folgende Sequenz:
  1. Der Client sendet die GET-Anforderung auf dem Server mit IIS 6.0 und die Anforderung enthält einen If-None-Match-Header mit einer Filetimestamp: ChangeNumber-Wert. Diese Anforderung ähnelt die folgenden:
    HTTP: GET Request from Client
    HTTP: Request Method =GET
    HTTP: Uniform Resource Identifier =/MARRS/webService.htc
    HTTP: Protocol Version =HTTP/1.1
    HTTP: Accept = */*
    HTTP: Accept-Encoding =gzip, deflate
    HTTP: If-Modified-Since =Tue, 16 Nov 2004 17:11:48 GMT
    HTTP: If-None-Match ="0222d5bffcbc41:301a" 
    HTTP: User-Agent =Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET 
    CLR 1
    HTTP: Host =nnoma-wwapp02m
    HTTP: Connection =Keep-Alive
    HTTP: Authorization =Negotiate 
    TlRMTVNTUAADAAAAGAAYAG4AAAAKAQoBhgAAAAoACgBIAAAAEgASA
    HTTP: Cookie =ASP.NET_SessionId=uqnwgpygpf0dh2iwysznat55
    
    Hinweis einige der HTTP-Variablen in diesen Beispielen unterscheidet sich möglicherweise in Ihrer Umgebung.
  2. Der Server empfängt die Anforderung und sendet eine 200 Antwort zusammen mit den Daten, die angefordert wird. Da der Client der If-None-Match-Header gesendet, hat IIS 6.0 ein ETag-Antwortheader und Headerwert in seiner Antwort aufzunehmen. Diese Antwort ähnelt die folgenden:
    HTTP: Response to Client; HTTP/1.1; Status Code = 200 - OK
    HTTP: Protocol Version =HTTP/1.1
    HTTP: Status Code = OK
    HTTP: Reason =OK
    HTTP: Content-Length =51622
    HTTP: Content-Type =text/x-component
    HTTP: Last-Modified =Tue, 16 Nov 2004 17:11:48 GMT
    HTTP: Accept-Ranges =bytes
    HTTP: ETag ="0222d5bffcbc41:3246"
    HTTP: Server =Microsoft-IIS/6.0
    HTTP: X-Powered-By = ASP.NET
    HTTP: Date =Tue, 27 Sep 2005 12:18:27 GMT
    HTTP: Data: Number of data bytes remaining = 1202 (0x04B2)
    
  3. Der Client empfängt die Antwort. Die Antwort hat einen Status HTTP 200 anstelle der 304 HTTP-Status, den der Browser erwartet wurde. Daher sendet der Browser einen TCP RST zum Zurücksetzen der Verbindung. Dies geschieht da Internet Explorer davon ausgeht, dass der Server HTTP 200-Status in Fehler gesendet. TCP RST sieht etwa folgendermaßen aus:
    TCP: Control Bits: .A.R.., 
    TCP: Source Port = 0x0747
    TCP: Destination Port = World Wide Web HTTP
    TCP: Sequence Number = 3840808344 (0xE4EE1598)
    TCP: Acknowledgement Number = 3150159894 (0xBBC3A016)
    TCP: Data Offset = 20 bytes
    TCP: 0101.... = Data Offset (20 bytes)
    TCP: ....0000 = Reserved bits
    TCP: Flags = 0x14 : .A.R..
    TCP: ..0..... = No urgent data
    TCP: ...1.... = Acknowledgement field significant
    TCP: ....0... = No Push function
    TCP: .....1.. = Reset the connection
    TCP: ......0. = No Synchronize
    TCP: .......0 = Not the end of the data
    TCP: Window = 0 (0x0)
    TCP: Checksum = 0xF26C
    TCP: Urgent Pointer = 0 (0x0)
    
    finden Sie weitere Informationen über TCP (Transmission Control Protocol) auf der folgenden Webseite:
    http://www.faqs.org/rfcs/rfc793.html

Eigenschaften

Artikel-ID: 922703 - Geändert am: Donnerstag, 7. Juni 2007 - Version: 3.2
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Internet Explorer 6.0
  • Microsoft Internet Information Services 6.0
Keywords: 
kbmt kbtshoot kbprb KB922703 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 922703
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