Поделиться через


Устранение неполадок эмуляции сети в нагрузочных тестах

Сведения об устранении неполадок в этом разделе применяются к эмуляции сети для нагрузочных тестов, сетей с типом, отличным от локальной сети (LAN) в Visual Studio Ultimate с нагрузочными тестами.В диалоговом окне "Изменение набора сетей" можно настраивать нагрузочные тесты для использования сетей следующих типов.

  • Локальная сеть (используется по умолчанию, не применяется к данному разделу по устранению неполадок)

  • 3G

  • Кабельный/DSL-канал, 1,5 Мбит/с

  • Кабельный/DSL-канал, 768 Кбит/с

  • Кабельный/DSL-канал, 384 Кбит/с

  • CDMA

  • Коммутируемое подключение, 56 Кбит/с

  • Межконтинентальная медленная глобальная сеть, 300 кбит/с

  • Межконтинентальная глобальная сеть, 1,5 Мбит/с

  • Континентальная глобальная сеть, 1,5 Мбит/с

Дополнительные сведения см. в разделе Step 2.4 - Specifying Network Mix in the New Load Test Wizard и Определение типов виртуальной сети в сценарии тестовой нагрузки.

Требования

  • Visual Studio Ultimate

Точная эмуляция сети

Visual Studio использует основанную на программном обеспечении истинную эмуляцию сети для всех типов тестов. Это включает нагрузочные тесты.Точная эмуляция сети имитирует состояние сети путем непосредственного управления сетевыми пакетами.Точный эмулятор сети может эмулировать поведение как проводных, так и беспроводных сетей с использованием надежного физического канала, например Ethernet.В точной эмуляции сети реализованы следующие атрибуты сети.

  • Время на передачу и подтверждение приема в сети (задержка)

  • Значение доступной пропускной способности

  • Поведение очереди

  • Потеря пакетов

  • Изменение порядка следования пакетов

  • Распространение ошибок

Точная эмуляция сети также обеспечивает гибкость при фильтрации сетевых пакетов на основе IP-адресов или протоколов, таких как TCP, UDP и ICMP.

Точная эмуляция сети может использоваться разработчиками и тест-инженерами сетевых приложений для эмуляции различных тестовых сред, оценки производительности, прогноза влияния изменений или принятия решений об оптимизации технологии.По сравнению с аппаратными тестовыми стендами точная эмуляция сети является намного более дешевым и гибким решением.

Ff817099.collapse_all(ru-ru,VS.110).gifРабота эмуляции сети в нагрузочных тестах

Для использования эмуляции сети в нагрузочных тестах необходимо установить Visual Studio Ultimate.Настройка эмуляции сети производится в диалоговом окне "Изменение набора сетей".Это окно открывается из мастера тестовой нагрузки или с помощью двойного щелчка существующего сценария в нагрузочном тесте и выбора команды Изменить набор сетей.

После запуска нагрузочного теста он выделяет диапазон свободных портов для каждого сетевого профиля, выбранного в смешанном сетевом профиле, например DSL и модем 56 Кбит/с.Этот диапазон портов доступен для драйвера эмуляции сети, который включается во время выполнения (по умолчанию драйвер эмуляции сети отключен).

Если в ходе нагрузочного тестирования генератор нагрузки отправляет запрос тестируемому приложению, он указывает порт из данного диапазона.Обнаружив указанный порт из выбранного диапазона, драйвер эмуляции сети может связать его с сетевым профилем, которому должен соответствовать отправленный запрос.Это позволяет драйверу повышать нагрузку на приложение в соответствии с выбранным сетевым профилем.

Ff817099.collapse_all(ru-ru,VS.110).gifСимптомы прекращения работы эмуляции сети

Одним из симптомов часто является наличие исключений сокетов записей нагрузочного теста в журнале, таких как следующее:

"The requested address is not valid in its context xx.xx.xx.xxx:80"

ПримечаниеПримечание

Подобные исключения сокетов могут также вызываться и другими условиями.Нагрузочный тест может продолжать работу, однако исключения сокетов регистрируются в журнале.Сведения следующего раздела помогут определить и устранить проблему.

Ff817099.collapse_all(ru-ru,VS.110).gifУстранение неполадок эмуляции сети

Для эффективного определения и устранения проблем необходимо выполнить все основные тесты.

  1. Убедитесь в полной работоспособности сетевых подключений между всеми компьютерами, участвующими в нагрузочном тесте.

  2. Убедитесь, что эмуляция сети правильно настроена в соответствии с инструкциями, а агенту тестирования предоставлены права администратора.

  3. Проверьте, что в ходе устранения неполадок отключены все брандмауэры и ни один брандмауэр не блокирует определенные порты или сетевой трафик.

    1. Запустите средство TCPView, чтобы убедиться в видимости всех соединений сокетов во время выполнения. Проверьте строки, выделенные красным цветом.

      СоветСовет

      Можно использовать другие средства мониторинга портов, например Portmon.

  4. Убедитесь, что антивирусные программы, установленные на компьютере генератора нагрузки, не препятствуют работе генератора.

  5. Чтобы определить, связана ли проблема с драйвером эмуляции сети или с компонентами нагрузочного теста, выполните следующие действия.

    1. Убедитесь, что драйвер эмуляции сети не является причиной проблемы:

      1. Запустите нагрузочный тест с правильно настроенной эмуляцией сети, несмотря на возможное появление исключений сокетов.

      2. Проверьте связь с другим узлом с помощью команды ping; просмотрите в выходных данных наличие перебоев в работе сети, продолжительных задержек или обеих проблем.Проверьте, соответствуют ли значения задержки выбранному сетевому профилю.Если значения задержки соответствуют выбранному профилю, сетевой драйвер работает исправно.

      3. Попытайтесь подключиться с компьютера агента тестирования, на котором выполняется нагрузочный тест, к любому внешнему узлу, например к веб-странице из папки "Избранное".Таким образом можно проверить, что при выполнении нагрузочного теста и включении сетевого драйвера не возникает проблема с подключением ко внешней сети или лаборатории.Благодаря этому драйвер эмуляции сети будет исключен из проблемной области.

  6. Убедитесь, что компоненты нагрузочного теста не является причиной проблемы:

    1. Можно загрузить и запустить программу Sendrequests.exe на компьютере генератора нагрузки (компьютере агента тестирования).Sendrequests.exe — это пример программы для устранения исключений сокетов, возникающих во время нагрузочных тестов с эмуляцией сети.

      Предупреждающее замечаниеВнимание

      Программа Sendrequests.exe не поддерживается Майкрософт.

      Данный пример программы моделирует точный набор вызовов соединений сокетов, которые используются в компонентах нагрузочного тестирования.Если при работе этой тестовой программы также появляются исключения сокетов, можно придти к выводу, что продукт для нагрузочного тестирования не является причиной этих исключений.Исключения сокетов также показывают, что проблема возникает в среде, сети, на компьютере или в иной области, внешней по отношению с используемым средствам.

      Перед повторением попытки запуска нагрузочного теста выполните отладку внешней проблемы.

    2. При исправной работе данного примера программы выводятся выходные данные, аналогичные показанным на следующем рисунке.Это подтверждает, что проблема, скорее всего, происходит в программе тестовой нагрузки, а среда не является ее причиной.

      Выходные данные в случае успешной работы программы Sendrequests.exe

      Выходные данные SendRequests

IPSEC несовместим с эмуляцией сети

Включение IPSEC приводит к шифрованию портов в сетевом пакете.Поэтому драйверу эмуляции сети не удастся определить, поступают ли пакеты из разрешенного диапазона портов, определенного обработчиком нагрузочных тестов, как было ранее описано в разделе Работа эмуляции сети в нагрузочных тестах.Для обеспечения работы эмуляции сети необходимо отключить IPSEC.

См. также

Задачи

Устранение неполадок нагрузочных тестов

Практическое руководство. Создание параметра тестирования для распределенного нагрузочного теста

Практическое руководство. Настройка эмуляции сети с использованием параметров тестирования в Visual Studio

Другие ресурсы

Устранение неполадок веб-тестов производительности и нагрузочных тестов

Определение типов виртуальной сети в сценарии тестовой нагрузки

Определение типов виртуальной сети в сценарии тестовой нагрузки