Abfragen der Daten des erweiterbaren Switch-Zielports eines Pakets
Jeder erweiterbare Hyper-V-Switchzielport wird durch ein NDIS_SWITCH_PORT_DESTINATION-Element innerhalb der NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur angegeben. Dieses Array ist im Out-of-Band-Weiterleitungskontext (OOB) der NET_BUFFER_LIST Struktur des Pakets enthalten. Weitere Informationen zu diesem Kontext finden Sie unter Hyper-V Extensible Switch Forwarding Context.
Die erweiterbare Switcherweiterung ruft die GetNetBufferListDestinations-Funktion auf, um einen Zeiger auf die NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur innerhalb der NET_BUFFER_LIST Struktur eines Pakets abzurufen. Auf einzelne NDIS_SWITCH_PORT_DESTINATION Elemente innerhalb dieser Struktur kann mithilfe des makros NDIS_SWITCH_PORT_DESTINATION_AT_ARRAY_INDEX zugegriffen werden.
Um die Leistung zu verbessern, kann eine Weiterleitungserweiterung die Funktion GrowNetBufferListDestinations anstelle von GetNetBufferListDestinations aufrufen, um einen Zeiger auf die NDIS_SWITCH_FORWARDING_DESTINATION_ARRAY-Struktur abzurufen. Die Erweiterung tut dies, wenn sie feststellt, dass sie zusätzliche Arrayelemente in den OOB-Daten des Pakets für Zielports benötigt. Weitere Informationen finden Sie unter Hinzufügen von Extensible Switch-Zielportdaten zu einem Paket.
Hinweis Nur Pakete, die aus dem erweiterbaren Switch-Ausgangsdatenpfad abgerufen werden, enthalten Zielportinformationen. Weitere Informationen finden Sie unter Hyper-V Extensible Switch Data Path.