OID_SWITCH_NIC_REQUEST
Een OID-methodeaanvraag (Object Identifier) van OID_SWITCH_NIC_REQUEST wordt gebruikt om OID-aanvragen in te kapselen en door te sturen naar de Hyper-V uitbreidbare switch externe netwerkadapter. Hierdoor kan de ingekapselde OID-aanvraag aan het stuurprogramma worden geleverd voor de onderliggende fysieke netwerkadapter die is gebonden aan de externe netwerkadapter.
Deze OID-aanvraag wordt ook gebruikt voor het inkapselen van OID-aanvragen die zijn uitgegeven aan andere netwerkadapters die zijn verbonden met uitbreidbare switchpoorten. In dit geval wordt de ingekapselde OID-aanvraag doorgestuurd via de uitbreidbare stuurprogrammastack voor inspectie door extensies.
De InformationBuffer lid van de NDIS_OID_REQUEST-structuur bevat een aanwijzer naar een NDIS_SWITCH_NIC_OID_REQUEST structuur. Deze structuur geeft de doorstuurgegevens voor de OID-aanvraag op. Deze structuur bevat ook een aanwijzer naar de oorspronkelijke NDIS_OID_REQUEST structuur van de OID-aanvraag die wordt doorgestuurd.
Opmerkingen
Wanneer OID-aanvragen binnenkomen bij de Hyper-V uitbreidbare switchinterface, worden deze ingekapseld om ze door te sturen naar het uitbreidbare schakelbesturingspad. Deze OID-aanvragen omvatten het volgende:
OID-aanvragen voor hardware offloaden, inclusief aanvragen voor IPsec (Internet Protocol Security), VMQ (Virtual Machine Queue) en I/O-virtualisatie met één hoofdmap (SR-IOV). Deze OID-aanvragen worden uitgegeven door een overliggend protocol of filterstuurprogramma dat wordt uitgevoerd in het beheerbesturingssysteem van de Hyper-V bovenliggende partitie.
Wanneer deze OID-aanvragen binnenkomen bij de uitbreidbare switchinterface, bevat de protocolrand van de uitbreidbare switch de OID-aanvraag binnen een NDIS_SWITCH_NIC_OID_REQUEST structuur. De protocolrand stelt de leden van deze structuur op de volgende manier in:
De DestinationPortId en DestinationNicIndex leden zijn ingesteld op de bijbehorende waarden voor de externe netwerkadapter.
Als de OID-aanvraag afkomstig is van een Hyper-V onderliggende partitie, worden de SourcePortId- en SourceNicIndex-leden ingesteld op de bijbehorende waarden voor de poort en netwerkadapter die door de partitie worden gebruikt. Anders worden de SourcePortId- en SourceNicIndex-leden ingesteld op nul.
Opmerking De extensie moet de waarden van deze leden behouden als deze de OID-aanvraag doorstuurt of omleidt.
De OidRequest lid wordt ingesteld op een aanwijzer op de NDIS_OID_REQUEST structuur voor de ingekapselde OID-aanvraag.
De protocolrand geeft vervolgens de OID_SWITCH_NIC_REQUEST aanvraag uit om de ingekapselde OID-aanvraag naar de externe netwerkadapter door te sturen.
Een onderliggende doorstuurextensie kan ingekapselde hardware offload OID-aanvragen omleiden naar een fysieke netwerkadapter die is gebonden aan de externe netwerkadapter. Als de extensie bijvoorbeeld ondersteuning biedt voor fysieke netwerkadapters van een uitbreidbaar switchteam dat is gebonden aan de externe netwerkadapter, kan deze de OID_SWITCH_NIC_REQUEST aanvraag doorsturen naar een fysieke adapter in het LBFO-team (load balancing failover) dat ondersteuning biedt voor de hardware-offload. Zie Hardware Offload OID-aanvragen beheren voor fysieke netwerkadaptersvoor meer informatie over deze procedure.
Zie Typen configuraties van fysieke netwerkadaptersvoor meer informatie over uitbreidbare switchteams.
Multicast OID-aanvragen, waaronder OID_802_3_ADD_MULTICAST_ADDRESS en OID_802_3_DELETE_MULTICAST_ADDRESS. Deze OID-aanvragen worden uitgegeven door te veel protocol- en filterstuurprogramma's die worden uitgevoerd in het beheerbesturingssysteem of het gastbesturingssysteem van een Hyper-V onderliggende partitie.
Wanneer deze OID-aanvragen binnenkomen bij de uitbreidbare switchinterface, bevat de protocolrand van de uitbreidbare switch de OID-aanvraag binnen een NDIS_SWITCH_NIC_OID_REQUEST structuur. De protocolrand stelt ook de SourcePortId- en SourceNicIndex leden in op de bijbehorende waarden voor de poort en netwerkadapter waaruit de OID-aanvraag afkomstig is. De protocolrand geeft vervolgens de OID_SWITCH_NIC_REQUEST aanvraag uit om de ingekapselde OID-aanvraag door te sturen naar het uitbreidbare switchbesturingspad voor inspectie door onderliggende extensies.
Opmerking In dit geval stelt de protocolrand de DestinationPortId- en DestinationNicIndex leden in op nul. Hiermee geeft u op dat de ingekapselde OID-aanvraag moet worden geleverd aan extensies in het besturingspad.
Onderliggende doorstuuruitbreidingen kunnen deze ingekapselde OID-aanvragen inspecteren en de multicast-adresgegevens behouden die ze opgeven. De extensie heeft deze informatie bijvoorbeeld nodig als deze afkomstig is van multicastpakketten die worden doorgestuurd naar een uitbreidbare switchpoort.
Zie OID-aanvragen doorsturen vanuit een Hyper-V onderliggende partitievoor meer informatie.
Een doorstuurextensie kan ook een OID_SWITCH_NIC_REQUEST geven om ingekapselde OID-aanvragen door te sturen naar een fysieke netwerkadapter die is gebonden aan de externe netwerkadapter. Hierdoor kan de extensie afkomstig zijn van een eigen OID-aanvraag of een bestaande OID-aanvraag omleiden naar een fysieke netwerkadapter die is gebonden aan de externe netwerkadapter. Hiervoor moet de extensie de volgende stappen uitvoeren:
De extensie roept ReferenceSwitchNic aan om een referentiemeteritem voor de index van de fysieke doelnetwerkadapter te verhogen. Dit garandeert dat de uitbreidbare switchinterface de fysieke netwerkadapterverbinding niet verwijdert terwijl de referentiemeteritem niet nul is.
Opmerking De uitbreidbare switchinterface kan de verbinding met de fysieke netwerkadapter verbreken terwijl de verwijzingsteller niet-nul is. Zie Hyper-V Uitbreidbare switchpoort- en netwerkadapterstatussenvoor meer informatie.
De extensie omvat de OID-aanvraag door een NDIS_SWITCH_NIC_OID_REQUEST structuur op de volgende manier te initialiseren:
Het DestinationPortId lid moet worden ingesteld op de id van de uitbreidbare switchpoort waarmee de externe netwerkadapter is verbonden.
Het DestinationNicIndex- lid moet worden ingesteld op de niet-nulindexwaarde van de onderliggende fysieke netwerkadapter.
Als de extensie afkomstig is van een Hyper-V onderliggende partitie, worden de SourcePortId en SourceNicIndex leden ingesteld op de bijbehorende waarden voor de poort en netwerkadapter die door de partitie worden gebruikt. Anders worden de SourcePortId- en SourceNicIndex-leden ingesteld op nul.
Als de extensie bijvoorbeeld hardware-offloadresources voor een onderliggende partitie beheert, moet deze de SourcePortId- en SourceNicIndex- leden instellen om op te geven voor welke partitie de ingekapselde OID-aanvraag voor hardware offload is vereist.
De OidRequest lid moet worden ingesteld op een aanwijzer op een geïnitialiseerde NDIS_OID_REQUEST structuur voor de ingekapselde OID-aanvraag.
De extensie roept NdisFOidRequest aan om de OID-aanvraag door te sturen naar de opgegeven uitbreidbare switchpoort en netwerkadapter.
Wanneer NDIS de functie FilterOidRequestComplete aanroept, roept de extensie DereferenceSwitchNic aan om het referentiemeteritem voor de index van de fysieke doelnetwerkadapter te wissen.
Statuscodes retourneren
De onderliggende minipoortrand van de uitbreidbare switch voltooit de OID-queryaanvraag van OID_SWITCH_NIC_REQUEST en retourneert een van de volgende statuscodes.
Statuscode | Beschrijving |
---|---|
NDIS_STATUS_SUCCESS |
De OID-aanvraag is voltooid. |
NDIS_STATUS_Xxx- |
De aanvraag is om andere redenen mislukt. |
Eisen
Versie |
Ondersteund in NDIS 6.30 en hoger. |
Rubriek |
Ntddndis.h (inclusief Ndis.h) |