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.
Sterowniki miniportu MB obsługujące nieprzetworzone ramki pakietów IP w ścieżce danych wysyłania/odbierania powinny przestrzegać następujących wytycznych:
Flagi listy buforów sieciowych (NBL) do przetwarzania pakietów RAW IP
W przypadku pakietów IPv4:
NblFlags składnika struktury NET_BUFFER_LIST musi być ustawiona na NDIS_NBL_FLAGS_IS_IPV4.
Element NetBufferListFrameType struktury NET_BUFFER_LIST musi być ustawiony na 0x0800 (Ethertype IPv4) w kolejności bajtów sieciowych.
W przypadku pakietów IPv6:
W strukturze NET_BUFFER_LIST, członek NblFlags musi być ustawiony na NDIS_NBL_FLAGS_IS_IPV6.
Element NetBufferListFrameType struktury NET_BUFFER_LIST musi być ustawiony na 0x86dd (Ethertype IPv6) w kolejności bajtów sieciowych.
Sterowniki Miniport mogą używać makra NdisSetNblFlag, aby ustawić flagi na liście buforów sieciowych. W poniższym wierszu pokazano, jak ustawić flagę dla pakietów IPv4 na liście bufora sieci.
NdisSetNblFlag(pNbl, NDIS_NBL_FLAGS_IS_IPV4);
Sterowniki Miniport mogą używać NET_BUFFER_LIST_INFO do pobierania i ustawiania informacji wewnątrz listy buforów sieciowych. W poniższym przykładzie pokazano, jak zmodyfikować NetBufferListFrameType OOB na liście buforów sieciowych dla pakietów IPV4.
Value = ConvertToNetworkByteOrder(0x0800);
NET_BUFFER_LIST_INFO(pNbl, NetBufferListFrameType) = Value;
Przetwarzanie ścieżki wysyłania
Usługa MB ustawi te flagi w NBL przed przekazaniem listy do sterownika miniportu do wysyłania przez sieć. Sterownik miniportu może zweryfikować flagi w wejściowym NBL.
Przetwarzanie ścieżki odbioru
Sterowniki miniportów powinny ustawiać flagi w NBL przed przekazaniem go do usługi MB w celu obsługi odebranych pakietów.
Jeśli sterownik miniportu implementuje nieprzetworzone przetwarzanie pakietów IP w fazie opracowywania sterowników, ale nadal ma włączone fałszowanie serwera DHCP (EnableDhcp = 1), sterownik miniportu powinien zapewnić następujące warunki:
Adres sprzętowy i jego długość, ustawione w odpowiedzi DHCP otrzymanej od sterownika miniportu, powinny być zgodne z wartościami członków CurrentMacAddress i MacAddressLength określonych przez ten sterownik w strukturze NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES.
Identyfikator transakcji (członek xid) odpowiedzi DHCP ze sterownika miniportu powinien dokładnie odpowiadać identyfikatorowi transakcji ustawionemu w komunikacie żądania DHCP od klienta.