Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym temacie opisano, w jaki sposób NDIS i nadrzędne sterowniki określają funkcjonalności wirtualizacji I/O z pojedynczym rdzeniem (SR-IOV) karty sieciowej. Ten temat zawiera następujące informacje:
raportowanie możliwości SR-IOV podczas MiniportInitializeEx
Zapytania dotyczące możliwości SR-IOV przez nadległe sterowniki
Raportowanie możliwości SR-IOV podczas MiniportInitializeEx
Gdy NDIS wywołuje funkcję MiniportInitializeEx sterownika miniportu, sterownik zapewnia następujące SR-IOV możliwości:
Kompletny zestaw SR-IOV możliwości sprzętowych, które może obsługiwać karta sieciowa.
SR-IOV możliwości, które są aktualnie aktywne w karcie sieciowej.
Czy sterownik miniportu zarządza funkcją fizyczną PCI Express (PCIe) czy funkcją wirtualną (VF) na karcie sieciowej?
Sterownik miniportu zgłasza SR-IOV możliwości sprzętowe podstawowej karty sieciowej za pomocą struktury NDIS_SRIOV_CAPABILITIES, która jest inicjowana w następujący sposób:
Sterownik miniportu inicjuje składową Header. Sterownik ustawia człon Type nagłówka Header na NDIS_OBJECT_TYPE_DEFAULT.
Począwszy od wersji NDIS 6.30, sterownik miniportu ustawia pole Revision w Header na NDIS_SRIOV_CAPABILITIES_REVISION_1 oraz pole Size na NDIS_SIZEOF_SRIOV_CAPABILITIES_REVISION_1.
Sterownik miniportu ustawia odpowiednie flagi w członie SriovCapabilities, aby zgłosić SR-IOV funkcje.
Jeśli karta sieciowa obsługuje funkcję SR-IOV, sterownik miniportu dla funkcji fizycznej PCI Express (PCIe) karty musi ustawić następujące flagi:
NDIS_SRIOV_CAPS_SRIOV_SUPPORTED
NDIS_SRIOV_CAPS_PF_MINIPORT
Notatka
Sterownik miniportu dla funkcji wirtualnej PCIe (VF) adaptera sieciowego musi ustawić zarówno flagę NDIS_SRIOV_CAPS_VF_MINIPORT, jak i flagę NDIS_SRIOV_CAPS_SRIOV_SUPPORTED.
Gdy NDIS wywołuje funkcję MiniportInitializeEx sterownika miniportu, sterownik rejestruje SR-IOV możliwości karty sieciowej, wykonując następujące kroki:
Sterownik miniportu inicjuje strukturę NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES.
Sterownik miniportu ustawia członkowski element HardwareSriovCapabilities na wskaźnik do wcześniej zainicjowanej struktury NDIS_SRIOV_CAPABILITIES.
Jeśli ustawienie rejestru dla *SRIOV słowa kluczowego INF ma wartość jeden, możliwości SR-IOV są obecnie włączone na karcie sieciowej. Sterownik miniportu ustawia członków CurrentSriovCapabilities na wskaźnik do struktury NDIS_SRIOV_CAPABILITIES.
Jeśli ustawienie rejestru dla słowa kluczowego INF *SRIOV* ma wartość zero, możliwości SR-IOV na karcie sieciowej są obecnie wyłączone. Sterownik miniportu musi ustawić członek CurrentSriovCapabilities na NULL.
Aby uzyskać więcej informacji na temat słowa kluczowego INF *SRIOV, zobacz Standardowe słowa kluczowe INF dla technologii SR-IOV.
Sterownik wywołuje NdisMSetMiniportAttributes i ustawia parametr MiniportAttributes na wskaźnik do struktury NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES.
Aby uzyskać więcej informacji na temat procesu inicjowania adaptera, zobacz Inicjowanie adaptera Miniport.
Zapytania dotyczące możliwości SR-IOV przez nadrzędne sterowniki
Usługa NDIS przekazuje obecnie włączone możliwości SR-IOV karty sieciowej do nadrzędnych sterowników powiązanych z kartą sieciową w następujący sposób:
Gdy NDIS wywołuje funkcję FilterAttach nadrzędnego sterownika filtru, NDIS przekazuje możliwości karty sieciowej SR-IOV za pośrednictwem parametru AttachParameters. Ten parametr zawiera wskaźnik do struktury NDIS_FILTER_ATTACH_PARAMETERS. SriovCapabilities składowa tej struktury zawiera wskaźnik do struktury NDIS_SRIOV_CAPABILITIES.
Gdy NDIS wywołuje ProtocolBindAdapterEx sterownika protokołu nadrzędnego, usługa NDIS przekazuje za pośrednictwem parametru BindParameters możliwości SR-IOV karty sieciowej. Ten parametr zawiera wskaźnik do struktury NDIS_FILTER_ATTACH_PARAMETERS. SriovCapabilities składowa tej struktury zawiera wskaźnik do struktury NDIS_SRIOV_CAPABILITIES.
NDIS również zwraca strukturę NDIS_SRIOV_CAPABILITIES, gdy obsługuje żądania zapytań identyfikatora obiektu (OID) OID_SRIOV_HARDWARE_CAPABILITIES i OID_SRIOV_CURRENT_CAPABILITIES, które są wydawane przez nadrzędny protokół lub sterowniki filtru.