Condiciones de excepción que finalizan la fusión
En esta sección se definen las comprobaciones de que un miniportador de miniporte compatible con segmentos de recepción (RSC) debe realizar en un segmento antes de que se pueda fusionar.
Un segmento debe pasar ambos tipos de comprobaciones siguientes antes de que se pueda fusionar:
Comprueba la presencia de una condición determinada en el segmento. Por ejemplo, la presencia de una marca SYN en el encabezado TCP desencadenaría una excepción y el segmento no se fusionaría. Estos tipos de comprobaciones se definen a continuación.
Comprueba que dependen de inspeccionar y correlacionar información de segmentos previamente fusionados y de los segmentos examinados actualmente. Por ejemplo, comprobar si el segmento recibido es una confirmación duplicada se encuentra en esta categoría de comprobaciones. Estos tipos de comprobaciones se definen en Reglas para la fusión de segmentos TCP/IP.
Si se produce un error en una comprobación, se desencadena una excepción y el controlador de minipuerto debe finalizar la fusión para esa conexión TCP y tratar los segmentos de la siguiente manera:
Los segmentos TCP que se fusionaron antes de detectar la excepción deben indicarse como una sola unidad.
Los segmentos TCP que se fusionan después de detectar la excepción deben indicarse como una unidad independiente.
Nota Para las excepciones 7 y 8 siguientes, el controlador de minipuerto debe reanudar la fusión a partir del segmento que desencadenó la excepción.
La recepción de un segmento que cumpla cualquiera de los siguientes criterios debe desencadenar una excepción:
Las restricciones de recursos de hardware de la NIC impiden la fusión.
El segmento tiene una suma de comprobación TCP o IP no válida.
El segmento contiene cualquiera de los elementos SYN, URG, RST, FIN en su encabezado TCP, tal y como se define en la sección 3.1 de RFC 793. Más ampliamente, si el segmento contiene cualquier marca que no sea PSH o ACK, debe desencadenar una excepción. Para las marcas ecn, consulte la excepción 8 a continuación.
El segmento contiene una o varias opciones tcp distintas de la opción de marca de tiempo TCP. Consulte RFC 1323 para obtener una explicación de la opción de marca de tiempo TCP.
El segmento contiene opciones IPv4 o encabezados de extensión IPv6.
El segmento es un fragmento IPv4.
La fusión del segmento recibido actualmente hará que la unidad fusionada única supere la longitud máxima del datagrama ip legal. Esta excepción requiere un control especial. Para más información, consulte:
Primer diagrama de flujo de reglas para la fusión de paquetes TCP/IP
"Responder a las consultas de estadísticas RSC" en Consideraciones de programación para controladores RSC.
El segmento contiene marcas ECN, tal como se define en RFC 3168, que cumplen uno o ambos criterios:
El segmento contiene un valor diferente para el campo ECN (ECT, CE) en el encabezado IP que el segmento anterior.
El segmento tiene un valor diferente para las marcas ECN (ECE y CWR) en el encabezado TCP que el segmento anterior.