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


структура 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.

Элемент типазаголовка должен иметь значение 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 последовательных битов. Каждый бит, имеющий значение одного, указывает идентификатор виртуальной локальной сети, пакеты которого блокируются от отправки или получения на расширяемом порту коммутатора. Например, если для одного бита задано значение одного, трафик пакетов из идентификатора виртуальной локальной сети блокируется на порту. Аналогичным образом, если для бита 64 задано нулевое значение, трафик пакетов из идентификатора VLAN 64 не блокируется на порту.

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

VlanProperties.TrunkVlanIdArray[64]

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

Массив содержит 64 элементов UINT64, представляющих 4096 последовательных битов. Каждый бит, имеющий значение одного, указывает идентификатор виртуальной локальной сети, пакеты которого разрешены отправлять или получать на расширяемый порт коммутатора. Например, если для двух битов задано одно значение, трафик пакетов из идентификатора виртуальной локальной сети разрешен в порту. Аналогичным образом, если для бита 1954 задано нулевое значение, трафик пакетов из идентификатора VLAN 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 последовательных битов. Каждый бит, имеющий значение одного, задает дополнительный идентификатор виртуальной локальной сети для расширяемого порта коммутатора. Например, если для пяти битов задано значение одного, дополнительный идентификатор виртуальной локальной сети равен пяти. Аналогичным образом, если для бита 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 (include 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