Гибридная пересылка
Начиная с NDIS 6.40 (Windows Server 2012 R2, архитектура расширяемого коммутатора Hyper-V поддерживает гибридную пересылку с помощью компонента виртуализации сети Hyper-V (HNV) расширяемого коммутатора и расширений переадресации.
Примечание На этой странице предполагается, что вы знакомы с виртуализацией сети с помощью разгрузки задач Инкапсуляции универсальной маршрутизации (NVGRE) и обзором расширяемого коммутатора Hyper-V.
Пакеты NVGRE и не NVGRE
В гибридной среде пересылки существует два типа пакетов, которые входят и покидают расширяемый коммутатор Hyper-V: пакеты NVGRE и пакеты, отличные от NVGRE:
- Пакеты NVGRE имеют инкапсулированный формат, указанный в NVGRE: Network Virtualization using Generic Routing Encapsulation Internet Draft. Пакеты NVGRE перенаправляются компонентом HNV расширяемого коммутатора Hyper-V.
- Пакеты, отличные от NVGRE, — это обычные сетевые пакеты. Пакеты, не относящиеся к NVGRE, перенаправляются расширением пересылки (или, при отсутствии расширения пересылки, самим расширяемым коммутатором).
Поток пакетов NVGRE и пакетов, отличных от NVGRE, через коммутатор
В пути к данным входящего трафика после расширений записи и фильтрации, но перед расширением пересылки, если пакет является пакетом NVGRE, расширяемый переключатель устанавливает флаг NativeForwardingRequired в структуре NDIS_SWITCH_FORWARDING_DETAIL_NET_BUFFER_LIST_INFO для пакета. Эта структура содержится в элементе NetBufferListInfoструктуры NET_BUFFER_LIST пакета.
Примечание Элемент NetBufferListInfoNET_BUFFER_LIST часто называется "данными внеполосного (OOB) пакета".
Если в данных OOB пакета установлен флаг NativeForwardingRequired , пакет является пакетом NVGRE. Если он не задан, пакет не является пакетом NVGRE.
Расширения должны использовать макрос NET_BUFFER_LIST_SWITCH_FORWARDING_DETAIL для проверка значения флага NativeForwardingRequired.
Пакеты NVGRE и не NVGRE обрабатываются следующим образом:
- Компонент HNV расширяемого коммутатора Hyper-V вперед (т. е. определяет целевую таблицу для) всех пакетов NVGRE.
- Компонент HNV при необходимости выполняет инкапсуляцию и декапсуляцию NVGRE.
- Расширение переадресации пересылает все пакеты, не относящиеся к NVGRE.
- Расширение переадресации не может пересылать пакеты NVGRE, но может выполнять те же действия фильтрации, что и расширение фильтрации, включая добавление или исключение портов назначения или даже удаление пакетов.
- Если расширения пересылки нет, расширяемый коммутатор Hyper-V перенаправит все пакеты.
Дополнительные сведения см. в разделе Поток пакетов через путь к данным расширяемого коммутатора.
Поддержка виртуализации сети сторонних производителей
VirtualSubnetId можно настроить на порте сетевого адаптера виртуальной машины в качестве внешней виртуальной подсети. Эта функция была добавлена для включения расширений переадресации для предоставления сторонних решений для виртуализации сети. Входящего трафика расширяемый коммутатор Hyper-V не устанавливает флаг NativeForwardingRequired в структурах NET_BUFFER_LIST для этих пакетов. Затем расширение переадресации может изменить заголовки пакетов при необходимости во время переадресации. Изменяемые пакеты должны быть клонированы, а их указатели ParentNetBufferList должны иметь исходный NET_BUFFER_LIST. (См. раздел Клонирование трафика пакетов.)
Связанные темы
Добавление данных порта назначения расширяемого коммутатора в пакет
Поток пакетов через путь к данным расширяемого коммутатора