Reiniciar un enlace
Para reiniciar un enlace que está en pausa, NDIS envía al controlador de protocolo una notificación de eventos de reinicio de Plug and Play de red (PnP). Una vez que el controlador de protocolo recibe la notificación de reinicio, el enlace afectado entra en el estado Reinicio.
Para enviar una notificación de reinicio, NDIS llama a la función ProtocolNetPnPEvent del controlador de protocolo. La estructura NET_PNP_EVENT_NOTIFICATION que NDIS pasa a ProtocolNetPnPEvent especifica NetEventRestart en el miembro NetEvent y el miembro Buffer contiene un puntero a la estructura NDIS_PROTOCOL_RESTART_PARAMETERS . NDIS proporciona un puntero a una estructura NDIS_RESTART_ATTRIBUTES en el miembro RestartAttributes de la estructura NDIS_PROTOCOL_RESTART_PARAMETERS.
Nota Mientras el enlace estaba en pausa, NDIS podría haber reconfigurado la pila de controladores. La nueva configuración de pila puede admitir un conjunto diferente de funcionalidades para el adaptador subyacente. Estas nuevas funcionalidades pueden afectar a cómo se comunica el controlador de protocolo en un enlace.
El controlador de protocolo debe usar la información de la estructura NDIS_PROTOCOL_RESTART_PARAMETERS para evitar solicitudes de OID innecesarias.
En el estado Reinicio, el controlador de protocolo puede:
Use solicitudes de OID para consultar la pila de controladores. Por ejemplo, el controlador puede obtener información sobre la compatibilidad con el escalado lateral de recepción mediante OID_GEN_RECEIVE_SCALE_CAPABILITIES.
Reasignar NET_BUFFER y grupos de NET_BUFFER_LIST, si es necesario.
Enumere la lista de los módulos de filtro subyacentes.
Use solicitudes de OID para mostrar nuevas funcionalidades del adaptador.
Una vez que el controlador esté listo para reanudar las operaciones de envío y recepción para el enlace, el enlace entra en estado En ejecución.