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.
Un controlador intermedio debe estar preparado para manejar la situación en la que se pueden perder sus envíos pendientes en una vinculación a un controlador subyacente porque se restablece la NIC subyacente.
Normalmente, un controlador subyacente restablece una NIC porque NDIS llama a la función MiniportResetEx del controlador de miniport cuando NDIS agota el tiempo de espera de envíos en cola o solicitudes enlazadas para la NIC. Si se restablece una NIC subyacente, NDIS llama a la función ProtocolStatusEx(o ProtocolCoStatusEx) de cada protocolo enlazado y controlador intermedio con un estado de NDIS_STATUS_RESET_START. Cuando el controlador de miniporte completa el restablecimiento, NDIS llama de nuevo a ProtocolStatusEx(o ProtocolCoStatusEx) con un estado de NDIS_STATUS_RESET_END.
Cuando se reinicia una NIC, si un controlador intermedio reenlazado tiene datos de red de transmisión pendientes de esa NIC, NDIS devuelve esos datos de red al controlador intermedio con un estado adecuado. El controlador intermedio debe volver a enviar estos datos de red cuando se complete el restablecimiento.
Cuando un controlador intermedio recibe un estado de NDIS_STATUS_RESET_START, debe:
Mantenga los datos de red listos para transmitirse hasta que ProtocolStatusEx o ProtocolCoStatusEx reciban una notificación de NDIS_STATUS_RESET_END.
Retenga los datos de red recibidos que estén listos para indicarse al siguiente controlador superior hasta que ProtocolStatusEx (o ProtocolCoStatusEx) reciba una notificación NDIS_STATUS_RESET_END.
Limpie cualquier estado interno que mantenga para las operaciones en curso y el estado de la NIC.
Después de que ProtocolStatusEx(o ProtocolCoStatusEx) reciba NDIS_STATUS_RESET_END, el controlador intermedio puede reanudar el envío de datos de red, realizar solicitudes y realizar indicaciones a controladores de nivel superior.
Un controlador intermedio no proporciona una función MiniportResetEx .