Compartir a través de


Información general sobre la fusión de paquetes

Determinados protocolos de red ip versión 4 (IPv4) e IP versión 6 (IPv6) implican la transmisión de paquetes a direcciones de difusión o multidifusión. Varios hosts reciben estos paquetes en la subred IPv4/IPv6. En la mayoría de los casos, el host que recibe estos paquetes no hace nada con estos paquetes. Por lo tanto, la recepción de estos paquetes de multidifusión o difusión no deseados hace que el procesamiento innecesario y el consumo de energía se produzcan dentro del host receptor.

Por ejemplo, el host A envía una solicitud de resolución de nombres de multidifusión local de vínculo (LLMNR) en una subred IPv6 para resolver el nombre del host B. Excepto para el host A, todos los hosts de la subred reciben esta solicitud LLMNR. Excepto en el caso del host B, la pila de protocolo TCP/IP que se ejecuta en los demás hosts inspecciona el paquete y determina que el paquete no está pensado para él. Por lo tanto, la pila de protocolos rechaza el paquete y llama a NdisReturnNetBufferLists para devolver el paquete al controlador de miniport.

A partir de NDIS 6.30, los adaptadores de red pueden admitir el fusión de paquetes NDIS. Al reducir el número de interrupciones de recepción a través del fusión de paquetes de difusión aleatoria o multidifusión, la sobrecarga de procesamiento y el consumo de energía se reduce significativamente en el sistema.

La fusión de paquetes implica los pasos siguientes:

  1. Los controladores superpuestos, como la pila de protocolos TCP/IP, definen los filtros de recepción NDIS que se utilizan para filtrar paquetes de difusión y multidifusión. Los controladores superiores cargan estos filtros al controlador de miniport subyacente que admite la acumulación de paquetes. Una vez descargado, el controlador de minipuerto configura el adaptador de red con los filtros de recepción de fusión de paquetes.

    Para obtener más información sobre estos filtros, consulte Filtros de recepción de fusión de paquetes.

  2. Los paquetes recibidos que coinciden con los filtros de recepción se almacenan en caché o se fusionan, en el adaptador de red. El adaptador no genera una interrupción de recepción para paquetes combinados. En su lugar, el adaptador interrumpe al host cuando se produce otro evento de hardware.

    Cuando se genera esta interrupción, el adaptador debe indicar un evento de recepción con la interrupción. Esto permite al adaptador de red procesar paquetes combinados recibidos por el adaptador de red.

    Por ejemplo, el adaptador de red que admite la fusión de paquetes puede generar una interrupción de recepción cuando se produce uno de los siguientes eventos:

    • Expiración de un temporizador de hardware cuyo tiempo de expiración se establece en un valor máximo de retraso combinado del filtro de recepción coincidente.

    • El espacio disponible dentro del búfer de consolidación de hardware alcanza un marcador de nivel bajo especificado por el adaptador.

    • Se recibe un paquete que no coincide con un filtro de consolidación.

    • Se ha producido otro evento de interrupción, como un evento de finalización de envío.

    Para obtener más información sobre este proceso, consulte Gestión de filtros de recepción para fusión de paquetes.

Los siguientes puntos se aplican al soporte de la aglomeración de paquetes mediante NDIS:

  • NDIS admite la fusión de paquetes para los paquetes recibidos en el puerto NDIS predeterminado (puerto 0) asignado al adaptador de red físico. NDIS no admite la fusión de paquetes en puertos NDIS asignados a adaptadores de red virtual. Para obtener más información, consulte Información general sobre los puertos NDIS.

  • NDIS admite la fusión de paquetes para aquellos recibidos en la cola de recepción predeterminada del adaptador de red. Esta cola de recepción tiene un identificador de NDIS_DEFAULT_RECEIVE_QUEUE_ID.