Hyper-V состояния портов и сетевых адаптеров расширяемого коммутатора
Интерфейс расширяемого коммутатора Hyper-V управляет временем существования следующих компонентов:
порты расширяемого коммутатора Hyper-V
Каждое подключение сетевого адаптера к расширяемым коммутатору представлено портом. Порты создаются при настройке дочерней виртуальной машины Hyper-V для подключения к экземпляру расширяемого коммутатора. В зависимости от типа коммутатора порты также создаются для подключений внешнего и внутреннего сетевого адаптера. Дополнительные сведения о типах коммутаторов см. в разделе «Обзор Hyper-V расширяемого коммутатора».
Каждый порт используется для хранения конфигурации подключения к сетевому интерфейсу. Если конфигурация подключения сетевого интерфейса удалена или дочерний раздел остановлен, порт отключается и удаляется.
Дополнительные сведения об этом компоненте см. в разделе Hyper-V Расширяемые порты коммутаторов.
Hyper-V расширяемые сетевые адаптеры коммутаторов
Это адаптеры виртуальной сети, которые подключаются к порту расширяемого коммутатора. Эти виртуальные сетевые адаптеры предоставляются в дочерних и родительских разделах Hyper-V. Это включает сетевой адаптер виртуальной машины, предоставляемый в дочернем разделе, и внешний сетевой адаптер, объединяемый с базовым физическим сетевым адаптером.
Для каждого подключения сетевого адаптера требуется соответствующий расширяемый порт коммутатора. Порт должен быть создан до подключения сетевого адаптера. Аналогичным образом, необходимо удалить подключение сетевого адаптера, прежде чем порт может быть разрушен и удален.
Примечание В некоторых ситуациях расширяемые порты коммутаторов можно создавать и удалять без подключения к сетевому адаптеру.
Например, когда запускается Hyper-V дочерний раздел, расширяемый интерфейс коммутатора создает порт до того, как сетевой адаптер виртуальной машины будет доступен в гостевой операционной системе. После предоставления и перечисления сетевого адаптера виртуальной машины расширяемый интерфейс коммутатора создает сетевое подключение между сетевым адаптером виртуальной машины и расширяемым портом коммутатора. Если дочерний раздел остановлен, интерфейс расширяемого коммутатора сначала удаляет сетевое подключение, а затем удаляет расширяемый порт коммутатора.
Дополнительные сведения об этом компоненте см. в разделе Hyper-V Расширяемые сетевые адаптеры коммутаторов.
Когда расширяемый интерфейс коммутатора создает, удаляет или изменяет конфигурацию этих компонентов, он выдает запросы, заданные идентификатором объекта (OID), в стеке расширяемого драйвера коммутатора. Эта операция выполняется так, чтобы базовые расширения расширяемого коммутатора могли получать уведомления о состоянии компонента и его конфигурации. Каждый запрос набора OID приводит к переходу состояния для этих компонентов.
Если расширение привязано и включено в расширяемом экземпляре коммутатора, оно может выдавать OID для обнаружения существующего порта и конфигурации подключения сетевого адаптера коммутатора.
На следующей схеме показаны различные состояния для компонентов подключения расширяемого коммутатора и сетевого адаптера. На схеме также показаны запросы набора OID, которые вызывают переход состояния для компонента.
В следующем списке описаны различные состояния расширяемого порта коммутатора и компонентов подключения сетевого адаптера:
порт не создан
В этом состоянии расширяемый порт коммутатора не существует на расширяемом коммутаторе. Запросы OID, предназначенные для ранее созданного порта, не могут быть выданы после того, как порт ввел это состояние.
порт создан
Когда интерфейс расширяемого коммутатора выдает запрос набора OID OID_SWITCH_PORT_CREATE, порт создается на расширяемом коммутаторе. В этом состоянии расширяемый интерфейс коммутатора и расширение могут выдавать запросы OID, предназначенные для порта.
Дополнительные сведения о трафике OID через стек драйверов расширяемого коммутатора см. в указаниях по управлению расширяемым коммутатором Hyper-V.
Примечание Основное расширение может отказать в установке OID и наложить вето на создание порта. Расширение выполняет это, завершая обработку запроса OID с использованием STATUS_DATA_NOT_ACCEPTED. Если это сделано, порт не создается на расширяемом коммутаторе. Дополнительные сведения об этой процедуре см. в разделе Hyper-V Расширяемые порты коммутаторов.
подключение сетевого адаптера, созданное
Когда интерфейс расширяемого коммутатора выдает запрос набора OID OID_SWITCH_NIC_CREATE, подключение сетевого адаптера к порту создается на расширяемом коммутаторе. В этом состоянии расширяемый интерфейс коммутатора может выполнять следующие действия:
Выдавать запросы OID, предназначенные для подключения сетевого адаптера.
Переадресация трафика пакетов на подключение сетевого адаптера или от него.
Кроме того, новый адаптер может подключиться к существующему порту, не проходя этапы разрыва порта и создания новой последовательности.
В этом состоянии расширение должно пересылать эти пакеты и запросы OID через расширяемый стек расширений коммутатора. Однако расширение не может создавать или перенаправлять пакеты или запросы OID к другим подключениям сетевого адаптера на расширяемом коммутаторе.
Примечание В этом состоянии расширение не должно выдавать запросы OID или отправлять трафик пакета к подключению сетевого адаптера.
Дополнительные сведения о трафике OID через стек драйверов расширяемого коммутатора см. в пути управления расширяемым коммутатором Hyper-V.
Дополнительные сведения о трафике пакетов через стек драйверов расширяемого коммутатора см. в разделе Hyper-V Extensible Switch Data Path.
Примечание Базовое расширение может привести к сбою запроса установки OID и предотвратить создание подключения сетевого адаптера. В этом случае подключение не создается на расширяемом порту коммутатора. Для получения дополнительной информации об этой процедуре см. Hyper-V модульные сетевые адаптеры коммутаторов.
сетевой адаптер подключен
Когда интерфейс расширяемого коммутатора выдает запрос набора OID OID_SWITCH_NIC_CONNECT, сетевой адаптер полностью подключен к порту расширяемого коммутатора. В этом состоянии расширение теперь может выполнять следующие действия:
Выполните запросы OID, нацеленные на подключение сетевого адаптера.
Инициировать пакетный трафик к соединению сетевого адаптера.
Перенаправьте трафик пакета в подключение сетевого адаптера. Например, расширение может перенаправлять пакеты из одного сетевого адаптера к другому подключению на расширяемом коммутаторе.
Примечание Выполнять эту операцию способны только расширения пересылки. Дополнительные сведения см. в расширения для пересылки.
сетевой адаптер отключен
Когда интерфейс расширяемого коммутатора выдает запрос набора OID OID_SWITCH_NIC_DISCONNECT, сетевой адаптер отключается от порта расширяемого коммутатора. Например, этот запрос OID выдается, когда дочерний раздел, предоставляющий сетевой адаптер виртуальной машины, останавливается или внешний сетевой адаптер отключен.
В этом состоянии расширение расширяемого коммутатора больше не может получать пакеты или запросы OID, предназначенные для подключения. Кроме того, переадресация расширений больше не может перенаправлять пакеты на соединение.
Примечание Ожидающие пакеты и запросы OID, выданные интерфейсом расширяемого коммутатора до того, как подключение было разорвано, всё равно могут быть доставлены в расширение. Однако расширение должно пересылать пакеты и запросы OID без внесения изменений.
Подключение сетевого адаптера удалено
После завершения всего пакетного трафика и запросов OID, направленных на подключение сетевого адаптера, расширяемый интерфейс коммутатора формирует запрос на установку OID OID_SWITCH_NIC_DELETE для удаления подключения из расширяемого коммутатора.
В этом состоянии расширяемый интерфейс коммутатора больше не будет выдавать пакеты или запросы OID, предназначенные для подключения.
снос порта
Когда интерфейс расширяемого коммутатора выдает запрос набора OID OID_SWITCH_PORT_TEARDOWN, порт расширяемого коммутатора готовится к демонтажу перед его удалением.
В этом состоянии расширение расширяемого коммутатора больше не может создавать запросы OID, адресованные к порту.
Примечание Ожидающие запросы OID, выданные интерфейсом расширяемого коммутатора до начала процесса отключения порта, по-прежнему могут быть доставлены в расширение. Однако расширение должно пересылать запросы OID без внесения изменений.
После завершения всех ожидающих запросов OID, предназначенных для порта, расширяемый интерфейс коммутатора выдает запрос набора OID OID_SWITCH_PORT_DELETE. Это приводит к переходу порта на порт , который не создан состоянии.
Расширение может вызвать функцию обработчика расширяемого коммутатора для увеличения или уменьшения счетчика ссылок на порту или компоненте подключения сетевого адаптера. Хотя счетчик ссылок компонента не является ненулевой, расширяемый интерфейс коммутатора не может удалить компонент.
Расширение может вызывать ReferenceSwitchPort или DereferenceSwitchPort для увеличения или уменьшения счетчика ссылок для расширяемого порта коммутатора. Эти вызовы можно выполнить после того, как порт достиг состояния "Создан порт ". Эти вызовы не должны выполняться после того, как порт достиг порта, завершающего работу или порта, не созданных состояний.
Расширение может вызывать ReferenceSwitchNic или DereferenceSwitchNic для увеличения или уменьшения счетчика ссылок для подключения сетевого адаптера расширяемого коммутатора. Эти вызовы можно выполнить после того, как подключение достигнет состояния подключения сетевого адаптера к. Эти вызовы не должны выполняться после того, как подключение достигло состояния отключенного (или) либо удаленного (или) сетевого адаптера.
В следующей таблице описаны операции, которые разрешены на основе состояния расширяемого порта коммутатора или компонентов подключения сетевого адаптера.
Состояние компонента | Разрешены ли вызовы ReferenceSwitchPort или DereferenceSwitchPort? | Разрешены ли вызовы ReferenceSwitchNic или DereferenceSwitchNic? |
---|---|---|
Порт не создан |
Нет |
Нет |
Созданный порт |
Да |
Нет |
Подключение к сетевому адаптеру создано |
Да |
Нет |
Сетевой адаптер подключен |
Да |
Да |
Сетевой адаптер отключен |
Да |
Нет |
Удалено подключение к сетевому адаптеру |
Да |
Нет |
Снос порта |
Нет |
Нет |
Состояние компонента | Разрешены ли запросы OID от расширяемого коммутатора для порта? | Запросы OID от расширений, разрешённых для порта? | Разрешены ли запросы OID от расширяемого коммутатора для подключения к сетевому адаптеру? | Разрешены ли запросы OID от расширений для подключения к сетевому адаптеру? | Трафик пакетов из расширяемого коммутатора разрешен через соединение сетевого адаптера? | Разрешен ли трафик пакетов от расширений через соединение сетевого адаптера? |
---|---|---|---|---|---|---|
Порт не создан |
Нет |
Нет |
Нет |
Нет |
Нет |
Нет |
Созданный порт |
Да |
Да |
Нет |
Нет |
Нет |
Нет |
Подключение к сетевому адаптеру создано |
Да |
Да |
Да |
Нет |
Да |
Нет |
Сетевой адаптер подключен |
Да |
Да |
Да |
Да |
Да |
Да |
Сетевой адаптер отключен |
Да |
Да |
Да |
Нет |
Да |
Нет |
Удалено подключение к сетевому адаптеру |
Да |
Да |
Нет |
Нет |
Нет |
Нет |
Демонтаж портов |
Да |
Нет |
Нет |
Нет |
Нет |
Нет |