Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los controladores de miniporte MB que admiten paquetes IP sin formato en su ruta de envío/recepción de datos deben seguir las siguientes directrices:
Marcas de NBL (lista de búferes netos) para el procesamiento de paquetes IP RAW
Para paquetes IPv4:
El miembro NblFlags de la estructura NET_BUFFER_LIST debe establecerse en NDIS_NBL_FLAGS_IS_IPV4.
El miembro NetBufferListFrameType de la estructura NET_BUFFER_LIST debe establecerse en 0x0800 (Ethertype IPv4) en orden de bytes de red.
Para paquetes IPv6:
El miembro NblFlags de la estructura NET_BUFFER_LIST debe configurarse como NDIS_NBL_FLAGS_IS_IPV6.
El miembro NetBufferListFrameType de la estructura NET_BUFFER_LIST debe establecerse en 0x86dd (Ethertype IPv6) en orden de bytes de red.
Los controladores de miniport pueden usar la macro NdisSetNblFlag para establecer marcas en la lista de búferes de red. En la línea siguiente se muestra cómo establecer la marca de paquete IPv4 en la lista de búferes netos:
NdisSetNblFlag(pNbl, NDIS_NBL_FLAGS_IS_IPV4);
Los controladores de miniport pueden usar el NET_BUFFER_LIST_INFO para obtener y establecer información en una lista de búferes netos. En la línea siguiente se muestra cómo modificar el OOB NetBufferListFrameType en la lista de búferes de red para paquetes IPV4:
Value = ConvertToNetworkByteOrder(0x0800);
NET_BUFFER_LIST_INFO(pNbl, NetBufferListFrameType) = Value;
Procesamiento de ruta de envío
El servicio MB establecerá estas banderas en el NBL antes de pasar la lista al controlador miniport para enviar a través de la red. El controlador de miniporte puede comprobar las marcas en el NBL de entrada.
Procesamiento de ruta de recepción
Los controladores de miniport deben establecer marcas en el NBL antes de pasar el NBL al servicio MB para los paquetes recibidos.
Si el controlador de miniporte implementa el procesamiento de paquetes IP sin procesar durante su fase de desarrollo del controlador, pero todavía tiene habilitada la suplantación de identidad del servidor DHCP (EnableDhcp = 1), el controlador de miniporte debe asegurarse de lo siguiente:
La dirección de hardware y su longitud establecidas en la respuesta DHCP del controlador de miniport deben coincidir con los valores de los miembros CurrentMacAddress y MacAddressLength especificados por el controlador de miniport en la estructura NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES.
El identificador de transacción (el miembro xid ) de la respuesta DHCP del controlador de miniport debe coincidir exactamente con el identificador de transacción establecido en el mensaje de solicitud DHCP del cliente.