NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur (ndis.h)
Die NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur gibt ein Array von erweiterbaren Hyper-V-Switch-Zielports für ein Paket an. Jedes Element im Array ist als NDIS_SWITCH_PORT_DESTINATION-Struktur formatiert.
Diese Informationen sind in den Out-of-Band-Daten (OOB) der NET_BUFFER_LIST Struktur des Pakets enthalten.
Syntax
typedef struct _NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY {
NDIS_OBJECT_HEADER Header;
UINT32 ElementSize;
UINT32 NumElements;
UINT32 NumDestinations;
PVOID FirstElement;
} NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY, *PNDIS_SWITCH_FORWARDING_DESTINATION_ARRAY;
Member
Header
Der Typ, die Revision und die Größe der NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY Struktur. Dieses Element ist als NDIS_OBJECT_HEADER-Struktur formatiert.
Das Type-Element von Header muss auf NDIS_OBJECT_TYPE_DEFAULT festgelegt werden. Um die Version der NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur anzugeben, muss das Revisionselement von Header auf den folgenden Wert festgelegt werden:
NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY_REVISION_1
Ursprüngliche Version für NDIS 6.30 und höher.
Legen Sie das Element Größe auf NDIS_SIZEOF_NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY_REVISION_1 fest.
ElementSize
Ein ULONG-Wert, der die Größe jedes NDIS_SWITCH_PORT_DESTINATION Elements angibt, das der NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur folgt.
NumElements
Ein ULONG-Wert, der die Gesamtanzahl NDIS_SWITCH_PORT_DESTINATION Elemente in der NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur angibt.
Der Wert des NumElements-Members gibt die Anzahl der derzeit verwendeten NDIS_SWITCH_PORT_DESTINATION-Elemente (wie vom NumDestinations-Member angegeben) sowie die Anzahl der Elemente an, die für neue Zielports verfügbar sind. Die Anzahl der nicht verwendeten NDIS_SWITCH_PORT_DESTINATION Elemente in der NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur wird von (NumElements - NumDestinations) berechnet.
NumDestinations
Ein ULONG-Wert, der die Anzahl NDIS_SWITCH_PORT_DESTINATION Elemente in der NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur angibt, die Portziele angeben.
FirstElement
Ein Zeiger auf das erste NDIS_SWITCH_PORT_DESTINATION-Element im Puffer, das die NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur und alle zugehörigen Elemente enthält.
Hinweise
Die erweiterbare Switcherweiterung kann mit den Zielports in der NET_BUFFER_LIST Struktur eines Pakets Folgendes ausführen:
-
Fragen Sie die aktuellen Zielports auf dem erweiterbaren Switch ab, an den das Paket weitergeleitet wird.
Die erweiterbare Switcherweiterung ruft die GetNetBufferListDestinations-Funktion auf, um das Array von Portzielen für ein Paket abzurufen. GetNetBufferListDestinations gibt einen Zeiger auf die NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur im Destinations-Parameter zurück.
Weitere Informationen finden Sie unter Abfragen der Extensible Switch-Zielportdaten eines Pakets.
-
Fügen Sie die Zielports für das Paket hinzu, oder ändern Sie diese.
Nachdem die aktuellen Zielports für das Paket abfragt werden, kann die erweiterbare Switch-Erweiterung folgendes ausführen:
- Eine Weiterleitungserweiterung kann der NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur neue Zielports hinzufügen.
-
Eine Filter- oder Weiterleitungserweiterung kann die Daten innerhalb einer NDIS_SWITCH_PORT_DESTINATION Struktur für einen Zielport ändern.
Hinweis Eine Filtererweiterung kann nur das IsExcluded-Element dieser Struktur ändern. Eine Weiterleitungserweiterung kann auch die Elemente PreserveVLAN und PreservePriority ändern.
Weitere Informationen finden Sie unter Verwalten von Hyper-V Extensible Switch-Zielportdaten.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt in NDIS 6.30 und höher. |
Kopfzeile | ndis.h (einschließlich Ndis.h) |
Weitere Informationen
Hinzufügen von Extensible Switch-Zielportdaten zu einem Paket
Ausschließen der Paketübermittlung an erweiterbare Switch-Zielports
NDIS_SWITCH_PORT_DESTINATION_AT_ARRAY_INDEX