Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit onderwerp worden de typen netwerkinterfacekaarten (NIC's) beschreven die een NDIS-minipoortstuurprogramma kan beheren en hoe de verschillende soorten NIC's van invloed zijn op de manier waarop een stuurprogramma netwerkgegevens overdraagt.
Het gemiddelde type van een NIC rapporteren aan NDIS
Een minipoortstuurprogramma geeft een aanwijzer naar een NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES structuur door in de parameter MiniportAttributes van de functie NdisMSetMiniportAttributes om een mediumtype voor een NIC te rapporteren. Een minipoortstuurprogramma roept NdisMSetMiniportAttributes aan vanuit de MiniportInitializeEx-functie tijdens de initialisatie. Miniportstuurprogramma's moeten de MiniportAttributes-kenmerken instellen na het instellen van de registratiekenmerken in de NDIS_MINIPORT_ADAPTER_REGISTRATION_ATTRIBUTES structuur en voordat andere kenmerken worden ingesteld. Het instellen van de MiniportAttributes-kenmerken is verplicht. Het stuurprogramma stelt het MediaType-lid van de NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES-structuur in op het juiste mediatype bij het instellen van de MiniportAttributes-kenmerken .
Wanneer een bovenliggend NDIS-protocolstuurprogramma NdisOpenAdapterEx aanroept om verbinding te maken met een opgegeven minipoortadapter, biedt het een lijst met mediumtypen waarop het kan werken. NDIS gebruikt de informatie van het minipoortstuurprogramma en van het protocolstuurprogramma om een binding in te stellen. Deze binding biedt het pad voor het overdragen van netwerkgegevens omhoog en omlaag van de stuurprogrammastack.
Physical NICs
De stappen die een minipoortstuurprogramma voltooit om een minipoortadapter te initialiseren en netwerkgegevens te verzenden en te ontvangen, kunnen als volgt afhankelijk zijn van de functies van een fysiek apparaat.
NDIS-WDM NICs
Met NDIS-WDM NIC's, zoals OP USB gebaseerde NIC's, is de manier waarop het minipoortstuurprogramma geheugen beheert met DMA niet van belang voor NDIS en is niet zichtbaar.
Busmaster-DMA-NIC's
Deze NIC's hebben rechtstreeks toegang tot hostgeheugen via een DMA-controller aan boord die de overdracht van gegevens tussen het netwerk en het hostgeheugen beheert zonder gebruik te maken van de host-CPU.
Om te verzenden stelt het minipoortstuurprogramma de NIC in om de uitgaande buffers toe te wijzen. Het minipoortstuurprogramma zorgt er vervolgens voor dat het apparaat de overdracht vanaf dit geheugen start. De NIC DMA-controller draagt de gegevens van het gedeelde systeemgeheugen over naar het netwerk en onderbreekt de CPU wanneer het verzenden is voltooid. Voor ontvangst draagt de DMA-controller binnenkomende gegevens over naar hostgeheugen voordat de host met een interrupt wordt geïnformeerd.
Een DMA-NIC van een busmaster heeft doorgaans een onboard ringsbuffer die door het miniportstuurprogramma wordt toegewezen aan een set buffers in het systeemgeheugen. Normaal gesproken kan de NIC worden geprogrammeerd om verschillende pakketten efficiënt te verwerken. Een minipoortstuurprogramma dat een dergelijke NIC beheert, ondersteunt doorgaans multipacket verzend- en ontvangstverrichtingen, omdat de NIC efficiënt meerdere pakketten kan verwerken en daardoor de I/O-doorvoer kan verbeteren.
Nonbusmaster DMA NICs
Momenteel omvatten nonbusmaster DMA-NIC's het volgende:
Systeem-DMA-NIC's
Een minipoortstuurprogramma dat een dergelijke NIC beheert, gebruikt de systeem-DMA-controller om de overdracht van pakketgegevens naar en van het netwerk te beheren. Voor de overdracht van de gegevens is de samenwerking van de host-CPU vereist.
Virtuele NIC's en mini-poorten
In een virtuele machine kunnen NDIS-minipoortstuurprogramma's software-only-resources beheren als een virtuele minipoort, of ze kunnen een virtuele NIC beheren die hardwarebronnen vertegenwoordigt. In de volgende tabel worden de verschillen tussen een virtuele minipoort en een virtuele NIC uitgelegd.
| Attribute | Virtual miniport | Virtual NIC |
|---|---|---|
| Definition | Een NDIS-minipoortstuurprogramma dat overeenkomt met een door software genummerd PnP-apparaat. | Een NIC die wordt beheerd door de hypervisor van het hostbesturingssystemen. De hypervisor maakt de virtuele machine van mening dat deze een aantal hardware heeft, maar er bestaat geen dergelijke hardware in de fysieke wereld. |
| Has interrupts | No | Yes |
| Kan DMA gebruiken | No | Yes |
| Wordt gemaakt of vernietigd door... | Het gastbesturingssysteem | Het host-besturingssysteem |
| Kan buiten een gast-VM komen | No | Yes |