Создание внешнего виртуального коммутатора на Hyper-V приводит к тому, что хост испытывает очень медленную сеть.

Вопрос или проблема

Я настроил свою среду Hyper-V (Windows 10 Pro 64-бит, обновление 1809), чтобы внешний виртуальный переключатель был связан с моим Wi-Fi адаптером и разделялся с хост-ОС. Я использовал этот виртуальный переключатель с моей гостевой виртуальной машиной Debian для доступа в интернет и к локальной сети.

С этим все было в порядке до нескольких дней назад, когда сеть моего хоста внезапно снизила пропускную способность с 350 Мбит/с до 8 Мбит/с.

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

Я пытался отключить VMQ, хотя драйвер моего беспроводного адаптера не поддерживает его (это встроенный чип Wi-Fi Qualcomm на материнской плате Asus Strix z270e), но это не изменило ситуацию.

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

Обновление 1

Ответ, предоставленный здесь, действительно точно описывает мою ситуацию, и я попробовал решение, выполнив следующие шаги:

  1. создание внутреннего виртуального переключателя,
  2. выбор внутреннего виртуального переключателя и моего Wi-Fi NIC в панели управления сетью и выбор “создать мост” из контекстного меню.

Это привело к тому же замедлению, что и ранее с внешним виртуальным переключателем.

Внешние ссылки

https://win10.guru/hyper-v-external-switches-killing-networking-in-insider-builds

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

Так как у меня есть Intel NIC, я не уверен, поможет ли это, но мне любопытно, и я хотел бы, чтобы вы попробовали, если у вас еще не получилось разобраться с этим.

Проблема №1: Медленная загрузка
Отключите объединение на Wi-Fi адаптере. Это полностью восстановило мою скорость загрузки и решило проблемы, которые я наблюдал с прерывистым подключением в хост-ОС и на виртуальных машинах.

Проблема №2: Медленная загрузка
Отключите Large Send Offload на виртуальном адаптере, представляющем внешний переключатель. В моем случае это называется vEthernet(WAN)

У меня есть Intel Killer WiFi на XPS 15 9570 и XPS 17 9700, и у них аналогичные проблемы с Hyper-V. Я дам конкретную конфигурацию, которая восстановила полную производительность для меня:

  • Адаптер vEthernet, настроенный для внешнего доступа с указанием на Wi-Fi адаптер

    • Установите “Объединение сегментов (IPv4)” на “Отключено”
    • Установите “Объединение сегментов (IPv6)” на “Отключено”
    • Установите “Large Send Offload Version 2 (IPv4)” на “Отключено”
    • Установите “Large Send Offload Version 2 (IPv6)” на “Отключено”
  • Wi-Fi адаптер

    • Установите “D0 PacketCoalescing” или “Packet Coalescing” на “Включить” (или “Отключить” — иногда изменение этой настройки делает вещи быстрее, хотя одна настройка была лучше — это не кажется последовательным). Эта настройка может не иметь значения. Сначала попробуйте пропустить этот шаг и посмотрите, достаточно ли изменений vEthernet выше.

Внутри самой виртуальной машины я также обнаружил, что мне нужно:

  • Эфирный адаптер
    • Установите “Large Send Offload Version 2 (IPv4)” на “Отключено”
    • Установите “Large Send Offload Version 2 (IPv6)” на “Отключено”

Вместе эти настройки восстановили скорость соединения моей хост-системы с 7 Мбит/с до 60 Мбит/с, что является производительностью, которую я получал, если бы у меня не было настроен Hyper-V вообще. Я также по-прежнему получаю почти такую же производительность на своих гостях.

Обратите внимание, что в последней версии Windows 11 вам, возможно, придется перейти в Диспетчер устройств, чтобы открыть свойства оборудования для ваших сетевых адаптеров, поскольку они, похоже, больше не доступны из центра “Сеть и общий доступ” панели управления.

Отключение Large Send Offload Version 2 в свойствах внешнего адаптера vEthernet помогло мне с этой проблемой.

Я не знаю, сможет ли мое предложение удовлетворить то, что вы действительно спрашиваете, но то, что я сделал, вместо использования внешних переключателей, я создал внутренний и настроил его как NAT виртуальный переключатель… таким образом, мне не нужно иметь дело с внешними vSwitches… если вы хотите предоставить интернет-доступ гостевым виртуальным машинам, это работает отлично. Вот ссылка, если вы хотите реализовать это… это относительно легко. Надеюсь, это поможет!

Моя скорость загрузки через Wi-Fi составляет 300 Мбит/с до создания внешнего виртуального переключателя. После этого, и без каких-либо настроек, скорость упала до однозначных чисел. Отключение Packet Coalescing на Wi-Fi адаптере увеличило скорость до примерно 50 Мбит/с. Однако включение Throughput Booster полностью восстановило скорость до 300 Мбит/с.

введите описание изображения здесь

Добавляю еще одну возможную причину и решение для виртуального переключателя, вызывающего очень медленную скорость загрузки для всей системы (гостей и хоста). Это на Windows 11. Расширение Microsoft NDIS Capture было включено по умолчанию. Просто отключив его (убрав галочку), я восстановил свою нормальную сетевую производительность.

Менеджер виртуальных переключателей Hyper-V

Я просто добавляю скриншоты, чтобы это было немного проще.

  1. Медленная загрузка – отключить объединение пакетов в настройках Wi-Fi адаптера в диспетчере устройств.
    введите описание изображения здесь

  2. Медленная загрузка – отключить Large Send Offload (для IPV4 и IPV6) от внешнего vEthernet переключателя, который соединяет (не по умолчанию).
    введите описание изображения здесь

Я отключил tcp-segmentation-offload в VM с ethtool -K eth0 tcp-segmentation-offload off. Я думаю, вы также можете использовать ethtool -K eth0 tso off https://kb.vmware.com/s/article/2055140

Отключение этой настройки улучшило мою скорость загрузки и выгрузки.

У меня есть хост HYPER-V (Server 2019 1809 & 1903), который я тестировал. У гостя Windows 10 была быстрая SMB сеть, но крайне медленные скорости интернет-серфинга/загрузки. Мой пост не связан с Wi-Fi, может помочь в любом случае.

Мои Linux гости получали быстрые скорости загрузки.

Мои Windows 10 были настроены как Gen2 VM. Я создал виртуальную машину Windows 10 как Gen1 VM, я назову это W10G1.

W10G1 по-прежнему имела плохую интернет-производительность, используя “Сетевой адаптер” в конфигурации.
W10G1 имела отличную интернет-производительность, используя “Устаревший сетевой адаптер”. Других изменений не было.

Похоже, что есть проблема в коде “Сетевого адаптера” хоста или “Сетевого адаптера” гостя Windows 10.

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

Мой сценарий решения этого:

  • Удалить все внешние карты.
  • Создать внутреннюю карту vEthernet.
  • Поделиться интернетом с моего Wi-Fi соединения с этой внутренней картой.
  • Внутри виртуальной машины установить LAN карту на DHCP-auto. Так вы настраиваете NAT и получаете случайный IP (192.168.137.45 в моем случае).
  • Порт пересылки для моих рабочих нужд.
  • В админ-консоли: netsh interface portproxy set v4tov4 listenport=180 connectaddress=192.168.137.45 connectport=80
  • Это позволит вашему ПК слушать 180 и пересылать его на 80 виртуальных машин. Вы можете настроить любое переадресацию портов таким образом.

Ответ или решение

Причины медленной сети в Hyper-V при использовании внешнего виртуального коммутатора и решения проблемы

При создании внешнего виртуального коммутатора в среде Hyper-V, подключённого к адаптеру Wi-Fi, пользователи могут столкнуться с неожиданным снижением скорости сети на хост-машине, что в вашем случае выражается в падении пропускной способности с 350 Мбит/с до 8 Мбит/с. Эта проблема может быть вызвана множеством факторов, связанных как с настройками самой сети, так и с характеристиками используемого оборудования.

1. Конфликт настроек адаптера
Часто медленный интернет на хосте при включённом внешнем коммутаторе может быть связан с конфликтом в конфигурации сетевого адаптера. В частности, некоторые функции управления потоком, такие как "Large Send Offload" и "Receive Segment Coalescing", могут вызывать снижении производительности. Рекомендуется отключить следующие параметры для вашего виртуального адаптера vEthernet и физического адаптера Wi-Fi:

  • Large Send Offload Version 2 (IPv4 и IPv6) – отключите эту опцию в свойствах внешнего виртуального адаптера, чтобы предотвратить разделение крупных пакетов на более мелкие.
  • Receive Segment Coalescing (IPv4 и IPv6) – отключите эти функции на обоих адаптерах, так как они могут увеличивать задержки и снижать скорость.

2. Проблемы с пакетом данных
Если включена функция пакетного объединения (Packet Coalescing), это может негативно сказаться на производительности сети. Рекомендуется попробовать разные настройки для улучшения ситуации:

  • Отключите пакетное объединение на адаптере Wi-Fi через диспетчер устройств.
  • Поэкспериментируйте с параметрами "D0 PacketCoalescing": иногда переключение между включенной и выключенной настройкой может дать облегчение.

3. Настройка NAT вместо внешнего коммутатора
Если цель использования внешнего виртуального коммутатора заключается в предоставлении интернет-доступа виртуальным машинам, рассмотрите возможность использования внутреннего коммутатора с NAT. Это позволит избежать проблем, свойственных внешним коммутаторам, и улучшить скорость. Для этого следуйте следующим шагам:

  1. Создайте внутренний виртуальный коммутатор.
  2. Поделитесь интернет-соединением с внутренним адаптером.
  3. Настройте DHCP в вашем виртуальном окружении, что позволит автоматически предоставлять IP-адреса.

4. Проверка обновлений драйверов и системы
Убедитесь, что драйверы вашего сетевого оборудования (особенно Wi-Fi адаптера) и сама операционная система обновлены до последних версий. Иногда обновления могут включать в себя исправления ошибок, которые влияют на функциональность сетевых функций.

5. Отключение NDIS Capture
В последних версиях Windows, для улучшения производительности, рекомендуется отключить опцию NDIS Capture в параметрах виртуального коммутатора. Это изменение может значительно повысить скорость вашей сети.

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

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

Оцените материал
Добавить комментарий

Капча загружается...