Troubleshooting Network Emulation in Load Tests
Die Problembehandlungsinformationen in diesem Thema gelten für die Netzwerkemulation für Auslastungstests, bei denen der Netzwerktyp in Microsoft Visual Studio 2010 Ultimate mit Auslastungstests nicht LAN ist. Im Dialogfeld "Netzwerkmischung bearbeiten" können Sie Auslastungstests für die Verwendung der folgenden Netzwerktypen konfigurieren:
LAN (Standard, gilt nicht für dieses Problembehandlungsthema)
3G
Kabel/DSL mit 1,5 MBit/s
Kabel/DSL mit 768 KBit/s
Kabel/DSL mit 384 KBit/s
CDMA
Einwahlverbindung mit 56 KBit/s
Interkontinentales WAN mit 300 KBit/s (langsam)
Interkontinentales WAN mit 1,5 MBit/s
Intrakontinentales WAN mit 1,5 MBit/s
Weitere Informationen finden Sie unter How to: Create a Network Mix in the New Load Test Wizard und Angeben von virtuellen Netzwerktypen in einem Auslastungstestszenario.
Wahre Netzwerkemulation
Microsoft Visual Studio 2010 verwendet softwarebasierte wahre Netzwerkemulation für alle Testtypen einschließlich Auslastungstests. Wahre Netzwerkemulation simuliert Netzwerkbedingungen durch direkte Bearbeitung der Netzwerkpakete. Der wahre Netzwerkemulator kann das Verhalten von Kabel- und Funknetzwerken mit einem zuverlässigen physischen Kanal (z. B. einem Ethernet) emulieren. Die folgenden Netzwerkattribute werden in wahre Netzwerkemulation integriert:
Roundtripzeit für das Netzwerk (Wartezeit)
Die Menge an verfügbarer Bandbreite
Warteschlangenverhalten
Paketverlust
Neuanordnung von Paketen
Fehlerweitergabe
Wahre Netzwerkemulation bietet auch Flexibilität zum Filtern von Netzwerkpaketen, die auf IP-Adressen oder Protokollen (z. B. TCP, UDP oder ICMP) basieren.
Wahre Netzwerkemulation kann von netzwerkbasierten Entwicklern und Testern dazu verwendet werden, eine gewünschte Testumgebung zu emulieren, die Leistung zu bewerten, die Auswirkungen auf Änderung zu prognostizieren oder Entscheidungen zur Technologieoptimierung zu treffen. Im Vergleich zu Hardwareprüfständen ist wahre Netzwerkemulation eine weitaus günstigere und flexiblere Lösung.
Funktionsweise der Netzwerkemulation in Auslastungstests
Damit Sie die Netzwerkemulation in Auslastungstests verwenden können, muss Microsoft Visual Studio 2010 Ultimate installiert sein. Die Netzwerkemulation wird mit dem Dialogfeld "Netzwerkmischung bearbeiten" konfiguriert. Dieses wird entweder mit dem Assistenten für neuen Auslastungstest angezeigt oder kann aufgerufen werden, indem Sie mit der rechten Maustaste auf ein vorhandenes Szenario in einem Auslastungstest und dann auf Netzwerkmischung bearbeiten klicken.
Wenn Sie einen Auslastungstest starten, wird ein Bereich verfügbarer Ports für jedes Netzwerkprofil zugeordnet, das Sie in der Netzwerkmischung ausgewählt haben (z. B. DSL- und 56-K-Modem). Dieser Portbereich steht dem Netzwerkemulationstreiber zur Verfügung, der zur Laufzeit aktiviert wird. Der Netzwerkemulationstreiber ist standardmäßig deaktiviert.
Wenn der Auslastungsgenerator während der Auslastungstests eine Anforderung an die zu testende Anwendung sendet, wird ein Port aus dem Portbereich angegeben. Wenn der Netzwerkemulationstreiber diesen Port im ausgewählten Portbereich erkennt, kann dieser Port dem Netzwerkprofil zugeordnet werden, dem diese Anforderung folgen sollte. So kann der Treiber die Last in Software einschränken, um sicherzustellen, dass sie dem von Ihnen ausgewählten Netzwerkprofil entspricht.
Erkennen von Fehlern bei der Netzwerkemulation
Ein häufig auftretendes Symptom sind Socketausnahmen bei Auslastungstestdatensätzen im Protokoll. Beispiele:
"The requested address is not valid in its context xx.xx.xx.xxx:80"
Tipp
Solche Socketausnahmen könnten auch durch andere Bedingungen verursacht werden. Möglicherweise funktioniert der Auslastungstest weiterhin, aber die Socketausnahmen werden protokolliert. Der nächste Abschnitt enthält Informationen zum Isolieren des Problems und zum Durchführen einer Problembehandlung.
So beheben Sie Fehler in der Netzwerkemulation
Für eine effektive Problembehandlung und -isolierung müssen Sie sicherstellen, dass Sie die grundlegenden Tests abgeschlossen haben.
Stellen Sie sicher, dass alle Computer, die am Auslastungstest teilnehmen, vollständige Netzwerkkonnektivität haben.
Stellen Sie außerdem sicher, dass Sie die Netzwerkemulation ordnungsgemäß konfiguriert haben, indem Sie den Anweisungen gefolgt sind und sichergestellt haben, dass der Test-Agent über Administratorrechte verfügt.
Überprüfen Sie, ob alle Firewalls deaktiviert sind, wenn Sie eine Problembehandlung durchführen, um sicherzustellen, dass bestimmte Ports oder Datenverkehr im Netzwerk nicht durch eine Firewall blockiert werden.
Stellen Sie sicher, dass kein Virenschutzprogramm auf dem Auslastungsgeneratorcomputer diese Software blockiert.
Um zu isolieren, ob das Problem durch den Netzwerkemulationstreiber oder die Auslastungstestkomponenten verursacht wird, führen Sie folgende Schritte aus:
Schließen Sie den Netzwerkemulationstreiber als Ursache aus:
Führen Sie den Auslastungstest mit ordnungsgemäß konfigurierter Netzwerkemulation aus, auch wenn möglicherweise Socketausnahmen auftreten.
Pingen Sie einen anderen Host, um zu sehen, ob in der Ausgabe eine Netzwerkverlangsamung, eine höhere Wartezeit oder beides angezeigt wird. Überprüfen Sie, ob der Verzögerungswert mit dem ausgewählten Netzwerkprofil übereinstimmt. Wenn die Wartezeitwerte dem von Ihnen ausgewählten Profil entsprechen, funktioniert der Netzwerktreiber ordnungsgemäß.
Versuchen Sie, mit dem Test-Agent-Computer, auf dem der Auslastungstest ausgeführt wird, eine Verbindung zu einem Host außerhalb des Netzwerks herzustellen, z. B. zu einer Webseite. Bei diesem Test wird überprüft, ob Probleme mit der externen oder der Lab-Konnektivität auftreten, wenn der Auslastungstest ausgeführt wird und der Netzwerktreiber aktiviert ist. So kann der Netzwerkemulationstreiber als Problemursache ausgeschlossen werden.
Schließen Sie die Auslastungstestkomponenten als Ursache aus:
Sie können Sendrequests.exe auf dem Computer herunterladen und ausführen, der auch der Auslastungsgenerator (Test-Agent-Computer) ist. "Sendrequests.exe" ist ein Beispielprogramm zur Problembehandlung von Socketausnahmen während Netzwerkemulationsauslastungstests.
Warnung
Das Sendrequests.exe-Programm wird nicht von Microsoft unterstützt.
Dieses Beispielprogramm simuliert den genauen Satz von Socketverbindungsaufrufen, die in den Auslastungstestkomponenten verwendet werden. Wenn auch in diesem Testprogramm Socketausnahmen angezeigt werden, können die Auslastungstests als Ursache der Socketausnahmen ausgeschlossen werden. Die Socketausnahmen weisen auch darauf hin, dass das Problem entweder in der Umgebung, auf dem Computer, im Netzwerk oder außerhalb der Ausrüstung auftritt.
Debuggen Sie zunächst das externe Problem, bevor Sie erneut versuchen, den Auslastungstest auszuführen.
Wenn dieses Beispielprogramm ordnungsgemäß funktioniert, entspricht die Ausgabe der in der folgenden Abbildung. Hierdurch wird bestätigt, dass ein Problem wahrscheinlich im Auslastungstestprogramm auftritt, und dass die Umgebung wahrscheinlich nicht die Ursache ist.
Erfolgreiche Sendrequests.exe-Ausgabe
IPSEC-Inkompatibilität mit Netzwerkemulation
Wenn IPSEC aktiviert ist, sind die Ports im Netzwerkpaket verschlüsselt. Daher kann der Netzwerkemulationstreiber nicht bestimmen, ob die Pakete aus dem Portbereich stammen, der im zuvor in Funktionsweise der Netzwerkemulation in Auslastungstests beschriebenen Auslastungstestmodul festgelegt wurde. Sie müssen IPSEC deaktivieren, damit die Netzwerkemulation funktioniert.
Siehe auch
Aufgaben
Problembehandlung für Auslastungstests
Gewusst wie: Konfigurieren von Netzwerkemulation mithilfe von Testeinstellungen
Gewusst wie: Hinzufügen von Netzwerken mit dem Auslastungstest-Editor
Weitere Ressourcen
Problembehandlung für Auslastungs- und Webleistungstests
How to: Create a Test Setting for a Distributed Load Test
Angeben von virtuellen Netzwerktypen in einem Auslastungstestszenario