La Red de Conocimientos Pedagógicos - Currículum vitae - ¿Qué es la confirmación de sincronización TCP?

¿Qué es la confirmación de sincronización TCP?

El encabezado TCP tiene 6 bits de bandera.

SYN es uno de ellos. Es un número de secuencia de sincronización. Cuando se establece una conexión TCP, SYN se establece en 1.

Generalmente, el extremo solicitante enviará un mensaje que contiene el campo SYN 1415531521: 1415531521(0).

Luego, el servidor devolverá un acuse de recibo 1415531522 después de recibirlo. El acuse de recibo significa confirmación de recepción.

SYN, ACK son banderas.

SEQ, AN es el número de secuencia del paquete.

SYN=1, ACK=0, SEQ=200 significa: la respuesta enviada es una solicitud SYN y el número de secuencia del paquete de datos inicial del extremo emisor es 200

SYN= 1, ACK=1, SEQ=4800, AN=201 significa: la información de confirmación del extremo receptor y el paquete de datos inicial del extremo receptor. El número de serie es 4800.

Los números de secuencia y confirmación existen en el encabezado del segmento TCP. La secuencia es el número de secuencia y la confirmación es el número de confirmación. Ambos tienen un tamaño de 4 bytes.

seq: 4 bytes, rango de números de secuencia [0, 2^32-1], después de que el número de secuencia aumenta a 2^32-1, el siguiente número de secuencia vuelve a 0. TCP está orientado a flujos de bytes. Cada byte en el flujo de bytes transmitido a través de TCP está numerado en secuencia, y el valor del campo de número de secuencia en el encabezado se refiere al número de secuencia del primer byte de datos en este segmento.

ack: 4 bytes, se espera que reciba el número de secuencia del primer byte de datos del siguiente segmento de mensaje de la otra parte.

Información ampliada:

El establecimiento de una conexión TCP se logra mediante un protocolo de enlace de tres vías

1 (A) _> [SYN] _>. (B )

Supongamos que el servidor B se comunica con el cliente A. Cuando A quiere comunicarse con B, A primero envía un paquete marcado SYN (Sincronizar) a B, diciéndole a B que solicite establecer una conexión.

p>

Nota: Un paquete SYN es un paquete TCP con solo el indicador SYN establecido en 1 (consulte Recursos del encabezado TCP. Es importante tener en cuenta que la conexión solo se puede establecer cuando B recibe el paquete SYN de A). De lo contrario, no hay otra manera. Por lo tanto, si su firewall descarta todos los paquetes SYN enviados a la interfaz de red externa, no podrá conectarse activamente a ningún host externo a menos que no sea el protocolo TCP.

2. (A) <_ [SYN/ACK] <_(B)

Luego, B enviará un paquete de confirmación (SYN/ACK) al paquete SYN después de recibirlo. it ) regresa para indicar la confirmación del primer paquete SYN y continúa la operación de protocolo de enlace.

Nota: Los paquetes SYN/ACK son solo paquetes con SYN y ACK marcados 1.

3 (A) _> [ACK] _> (B)

A recibe el paquete SYN/ACK y A envía un paquete de confirmación (ACK) para notificar a B que se ha establecido la conexión. En este punto, se completa el protocolo de enlace de tres vías y se completa una conexión TCP

Nota: el paquete ACK es un paquete TCP con solo el indicador ACK establecido en 1. Cabe señalar que cuando los tres Se completa el protocolo de enlace bidireccional y se establece la conexión, cada conexión TCP. Cada paquete tendrá el bit ACK establecido.

Material de referencia: Enciclopedia Baidu: apretón de manos de tres vías