структура NDIS_SWITCH_PORT_PROPERTY_VLAN (ntddndis.h)

Структура NDIS_SWITCH_PORT_PROPERTY_VLAN указывает свойство политики виртуальной локальной сети (VLAN) для порта расширяемого коммутатора Hyper-V.

Синтаксис

typedef struct _NDIS_SWITCH_PORT_PROPERTY_VLAN {
  NDIS_OBJECT_HEADER         Header;
  ULONG                      Flags;
  NDIS_SWITCH_PORT_VLAN_MODE OperationMode;
  union {
    struct {
      UINT16 AccessVlanId;
      UINT16 NativeVlanId;
      UINT64 PruneVlanIdArray[64];
      UINT64 TrunkVlanIdArray[64];
    } VlanProperties;
    struct {
      NDIS_SWITCH_PORT_PVLAN_MODE PvlanMode;
      UINT16                      PrimaryVlanId;
      union {
        UINT16 SecondaryVlanId;
        UINT64 SecondaryVlanIdArray[64];
      };
    } PvlanProperties;
  };
} NDIS_SWITCH_PORT_PROPERTY_VLAN, *PNDIS_SWITCH_PORT_PROPERTY_VLAN;

Члены

Header

Тип, редакция и размер структуры NDIS_SWITCH_PORT_PROPERTY_VLAN . Этот элемент имеет формат структуры NDIS_OBJECT_HEADER .

Элемент Typeзаголовка должен иметь значение NDIS_OBJECT_TYPE_DEFAULT. Чтобы указать версию структуры NDIS_SWITCH_PORT_PROPERTY_VLAN , члену Редакциизаголовка необходимо задать следующее значение:

NDIS_SWITCH_PORT_PROPERTY_VLAN_REVISION_1

Исходная версия для NDIS 6.30 и более поздних версий.

Задайте для элемента Размер значение NDIS_SIZEOF_NDIS_SWITCH_PORT_PROPERTY_VLAN_REVISION_1.

Flags

Значение ULONG, содержащее побитовое ИЛИ флагов. Этот элемент зарезервирован для NDIS.

OperationMode

Значение перечисления NDIS_SWITCH_PORT_VLAN_MODE , указывающее режим работы виртуальной локальной сети.

VlanProperties

Структура, задающая свойства виртуальной локальной сети с режимом работы NdisSwitchPortVlanModeAccess или NdisSwitchPortVlanModeTrunk. Эта структура содержит следующие элементы:

VlanProperties.AccessVlanId

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

Примечание Этот член действителен, только если для элемента OperationMode задано значение NdisSwitchPortVlanModeAccess.
 

VlanProperties.NativeVlanId

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

VlanProperties.PruneVlanIdArray[64]

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

Массив содержит 64 элемента UINT64, представляющих 4096 последовательных битов. Каждый бит, имеющий значение 1, указывает идентификатор виртуальной локальной сети, пакеты которого блокируются от отправки или получения через порт расширяемого коммутатора. Например, если для бита 3 задано значение 1, трафик пакета из виртуальной локальной сети с идентификатором 3 блокируется на порту. Аналогичным образом, если бит 64 равен нулю, трафик пакетов из виртуальной локальной сети с идентификатором 64 не блокируется на порту.

Примечание Виртуальные локальные сети с идентификаторами, которые сопоставляются с битовой величиной 1, всегда блокируются. Это переопределяет эквивалентный битовый параметр для идентификатора виртуальной локальной сети в элементе TrunkVlanIdArray .
 

VlanProperties.TrunkVlanIdArray[64]

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

Массив содержит 64 элемента UINT64, представляющих 4096 последовательных битов. Каждый бит, имеющий значение 1, указывает идентификатор виртуальной локальной сети, пакеты которого разрешены для отправки или получения через порт расширяемого коммутатора. Например, если для бита два задано значение 1, трафик пакета из виртуальной локальной сети с идентификатором 2 разрешен через порт. Аналогичным образом, если бит 1954 равен нулю, трафик пакетов из виртуальной локальной сети с идентификатором 1954 не допускается на порту.

PvlanProperties

Структура, задающая свойства виртуальной локальной сети с режимом работы NdisSwitchPortVlanModePrivate. Эта структура содержит следующие элементы:

PvlanProperties.PvlanMode

Значение перечисления NDIS_SWITCH_PORT_PVLAN_MODE , указывающее режим работы PVLAN.

PvlanProperties.PrimaryVlanId

Значение UINT16, указывающее основной идентификатор виртуальной ЛС для порта расширяемого коммутатора.

Примечание Этот элемент действителен, только если для элемента PvlanMode задано значение NdisSwitchPortPvlanModeCommunity.
 

PvlanProperties.SecondaryVlanId

Значение UINT16, указывающее дополнительный идентификатор виртуальной ЛС для порта расширяемого коммутатора.

Примечание Этот элемент действителен, только если для элемента PvlanMode задано значение NdisSwitchPortPvlanModeIsolated или NdisSwitchPortPvlanModeCommunity.
 

PvlanProperties.SecondaryVlanIdArray[64]

Массив элементов UINT64, определяющих идентификаторы дополнительных виртуальных ЛС для порта расширяемого коммутатора.

Массив содержит 64 элемента UINT64, которые представляют 4096 последовательных битов. Каждый бит, имеющий значение 1, указывает дополнительный идентификатор виртуальной ЛС для порта расширяемого коммутатора. Например, если для бита пять задано значение 1, дополнительный идентификатор виртуальной локальной сети равен пяти. Аналогичным образом, если бит 128 имеет нулевое значение, 128 нельзя использовать в качестве дополнительного идентификатора виртуальной локальной сети.

Примечание Этот элемент действителен, только если для элемента PvlanMode задано значение NdisSwitchPortPvlanModePromiscuous.
 

Комментарии

Структура NDIS_SWITCH_PORT_PROPERTY_VLAN используется в следующих запросах на набор OID:

Структура NDIS_SWITCH_PORT_PROPERTY_VLAN соответствует структуре NDIS_SWITCH_PORT_PROPERTY_PARAMETERS в буфере, связанной с этими запросами наборов OID. Элемент InformationBuffer структуры NDIS_OID_REQUEST содержит указатель на этот буфер.

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

Дополнительные сведения о переадресации расширений см. в разделе Переадресация расширений.

Примечание Если расширение переадресации не установлено, интерфейс расширяемого коммутатора принудительно применяет само свойство порта.
 

Требования

Требование Значение
Минимальная версия клиента Поддерживается в NDIS 6.30 и более поздних версиях.
Верхняя часть ntddndis.h (включая Ndis.h)

См. также раздел

NDIS_OBJECT_HEADER

NDIS_OID_REQUEST

NDIS_SWITCH_PORT_PROPERTY_PARAMETERS

NDIS_SWITCH_PORT_VLAN_MODE

OID_SWITCH_PORT_PROPERTY_ADD

OID_SWITCH_PORT_PROPERTY_UPDATE