Compartir a través de


Modificar filtros de recepción de fusión de paquetes

Para modificar un filtro de recepción en un controlador de minipuerto que admita la fusión de paquetes, un protocolo o un controlador de filtro excesivamente realiza los pasos siguientes:

  1. Para obtener una lista de todos los filtros de recepción de fusión de paquetes que se han descargado en un controlador de minipuerto, el controlador de sobrecarga emite una solicitud de método OID de OID_RECEIVE_FILTER_ENUM_FILTERS. El miembro InformationBuffer de la estructura NDIS_OID_REQUEST contiene un puntero a una estructura NDIS_RECEIVE_FILTER_INFO_ARRAY .

    Nota Cuando el controlador o la aplicación que se sobrepone inicializa la estructura de NDIS_RECEIVE_FILTER_INFO_ARRAY , debe establecer el miembro QueueId en NDIS_DEFAULT_RECEIVE_QUEUE_ID.

    Después de una devolución correcta de la solicitud de método OID de OID_RECEIVE_FILTER_ENUM_FILTERS, el miembro InformationBuffer de la estructura NDIS_OID_REQUEST contiene un puntero a una estructura de NDIS_RECEIVE_FILTER_INFO_ARRAY actualizada seguida de una o varias estructuras NDIS_RECEIVE_FILTER_INFO . Cada estructura NDIS_RECEIVE_FILTER_INFO especifica el identificador (ID) de un filtro establecido en el adaptador de red.

  2. Para obtener los parámetros de un filtro de recepción de fusión de paquetes específico que se descargó en el controlador de miniporte, el controlador excesivo emite la solicitud de método OID de OID_RECEIVE_FILTER_PARAMETERS. El miembro InformationBuffer de la estructura NDIS_OID_REQUEST contiene un puntero a una estructura NDIS_RECEIVE_FILTER_PARAMETERS . El controlador o la aplicación que se sobrepone inicializa la estructura de NDIS_RECEIVE_FILTER_PARAMETERS estableciendo el miembro FilterId en el valor de identificador distinto de cero del filtro cuyos parámetros se van a devolver.

    Después de una devolución correcta de la solicitud del método OID, el miembro InformationBuffer de la estructura NDIS_OID_REQUEST contiene un puntero a un búfer. Este búfer tiene el formato siguiente:

  3. El controlador de sobreaprovisionamiento modifica el filtro de recepción para agregar, eliminar o cambiar el conjunto de criterios de prueba del filtro. El controlador lo hace agregando, eliminando o modificando estructuras de NDIS_RECEIVE_FILTER_FIELD_PARAMETERS individuales de la matriz de parámetros de campo especificada por la estructura NDIS_RECEIVE_FILTER_PARAMETERS .

    Cuando el controlador de sobreslización ha completado las modificaciones en el criterio de prueba, debe actualizar los miembros de la estructura de NDIS_RECEIVE_FILTER_PARAMETERS para reflejar los cambios realizados en el filtro de recepción. Por ejemplo, el controlador de sobreasignación debe actualizar el miembro FieldParametersArrayNumElements para que contenga el nuevo número de elementos de la matriz.

    Para obtener más información, vea Especificar un filtro de recepción de fusión de paquetes.

  4. El controlador de sobreaprovisionamiento emite una solicitud de método OID de OID_RECEIVE_FILTER_SET_FILTER para descargar el filtro de recepción modificado en el controlador de minipuerto.

    Para obtener más información, vea Establecer un filtro de recepción de fusión de paquetes.