1. Apretón de manos TCP a tres bandas
El emisor envía un paquete con la bandera SYN=1 y ACK=0 al receptor, solicitando una conexión, que es el primer apretón de mano. Si el receptor recibe la solicitud y permite la conexión, enviará un paquete con las banderas SYN=1 y ACK=1 al emisor, indicándole que puede comunicarse y solicitando al emisor que envíe un paquete de confirmación, que es el segundo handshake. Finalmente, el emisor envía un paquete con SYN=0 y ACK=1 al receptor, indicándole que la conexión ha sido confirmada, lo que es el tercer apretón de manos. Después de eso, se establece una conexión TCP y comienza la comunicación.
2. Información de bandera en el paquete TCP
*SYN: Bandera de sincronización
El campo Sincronizar Números de Secuencia es válido. Esta señal solo es válida cuando se establece una conexión TCP durante un triple handshake. Solicita al servidor de la conexión TCP que compruebe el número de serie, que es el número de secuencia inicial de la conexión TCP inicial (normalmente el cliente). Aquí, el número de secuencia TCP puede considerarse como un contador de 32 bits que va de 0 a 4.294.967.295. Cada byte de datos intercambiado a través de una conexión TCP está secuenciado. La columna de número de secuencia en la cabecera TCP contiene el número de secuencia del primer byte en el segmento TCP.
*ACK: Bandera de confirmación
El campo Número de Acuse de Acuse de Recimo es válido. La mayoría de las veces, se coloca la barra de bandera. El número de confirmación (w+1, Figura-1) contenido en la columna del número de confirmación en la cabecera TCP es el siguiente número de secuencia esperado, y el extremo remoto se indicaSistemaTodos los datos han sido recibidos con éxito.
*RST: Bandera de reinicio
El signo de reinicio es válido. Se usó para restablecer la conexión TCP correspondiente.
*URG: Señal de emergencia
El signo de puntero urgente es válido. colocación de señales de emergencia,
*PSH: Logo de Push
Cuando se coloca la bandera, el receptor no pone los datos en cola, sino que los transfiere a la aplicación lo más rápido posible. La bandera siempre se activa al tratar con conexiones en modos de interacción como telnet o rlogin.
*FIN: Signo de fin
El paquete con esta bandera se utiliza para finalizar una callback TCP, pero el puerto sigue abierto para recibir datos posteriores.
3. El papel de varios estados de TCP en nuestro análisis
En la capa TCP, hay un campo FLAGS, que tiene los siguientes identificadores: SYN, FIN, ACK, PSH, RST, URG. Entre ellos, los primeros cinco campos son útiles para nuestro análisis diario. Significan lo siguiente: SYN significa establecer una conexión, FIN significa cerrar la conexión, ACK significa responder, PSH significa transferir DATOS y RST significa reinicio de conexión. Entre ellas, ACK puede usarse al mismo tiempo que SYN, FIN, etc.; por ejemplo, SYN y ACK pueden ser 1 al mismo tiempo, lo que representa la respuesta tras establecer una conexión; si es solo una SYN, solo representa el establecimiento de una conexión. Los varios apretones de manos de TCP se manifiestan a través de estos ACKs. Sin embargo, SYN y FIN no serán uno a la vez, porque el primero significa establecer una conexión, mientras que el segundo significa desconectarse. La RST suele aparecer después de FIN a 1, indicando un restablecimiento de conexión. Generalmente, cuando aparece un paquete FIN o un paquete RST, asumimos que el cliente está desconectado del servidor. Cuando aparecen los paquetes SYN y SYN+ACK, pensamos que el cliente ha establecido una conexión con el servidor. El PSH de 1 generalmente solo aparece en paquetes con contenido DATA distinto de 0, lo que significa que un PSH de 1 indica que se está transmitiendo contenido real de paquetes TCP. El establecimiento y cierre de conexión TCP se realiza mediante un patrón de solicitud-respuesta
|