Capa de transporte de red TCP, protocolo UDP

1. Protocolo TCP y UDP

TCP/IP协议族的传输层协议

TCP(Transmission Control Protocol)传输控制协议

UDP(User Datagram Protocol)用户数据报协议
  • Protocolo TCP: protocolo de control de transmisión, transmisión estable y confiable

  • TCP es un protocolo de comunicación de proceso a proceso confiable y orientado a la conexión. TCP proporciona servicios full-duplex, es decir, los datos se pueden transmitir en ambas direcciones al mismo tiempo. Cada TCP tiene un búfer de envío y un búfer de recepción para temporalmente Almacenamiento de datos.

  • Protocolo UDP: protocolo de datagrama de usuario, mayor eficiencia de transmisión

  • El protocolo UDP es un protocolo de capa de transporte confiable y sin conexión. Al remitente no le importa si los datos enviados llegan al host de destino, si los datos son incorrectos, etc. El host que recibe los datos no le dirá al remitente si los ha recibido.Su fiabilidad está garantizada por el protocolo de capa superior. Transfiera datos de forma más rápida y eficiente.

El protocolo de red orientado a la conexión se refiere al establecimiento de una conexión entre las partes que se comunican antes de comunicarse. Por ejemplo, al realizar una llamada, las dos partes deben establecer una conexión antes de hablar.

El protocolo de red sin conexión significa que las partes de la comunicación no necesitan establecer una línea de comunicación por adelantado, sino que envían cada paquete con la dirección de destino a la línea de la red, y el sistema selecciona independientemente la ruta para la transmisión. Por ejemplo, qq, WeChat envía información.

Dos paquetes. TCP

TCP将若干个字节构成一个分组,叫报文段
TCP报文段封装在IP数据报中 10部分

Inserte la descripción de la imagen aquí

  • Número de puerto de origen: el número de puerto correspondiente al proceso del remitente.
  • Número de puerto de destino: corresponde al número de puerto del proceso en el extremo receptor.
  • Número de secuencia: el remitente numerará cada byte para facilitar el reensamblaje correcto del receptor.
  • Número de confirmación: se utiliza para confirmar la información del remitente. Esto se utiliza para decirle al remitente que se han recibido los segmentos de datos antes del número de secuencia.Si el número de confirmación es N, significa que se han recibido los primeros segmentos de datos N-1.
  • Longitud del encabezado: utilícelo para determinar la longitud en bytes de la estructura de datos del encabezado TCP. En circunstancias normales, el encabezado TCP tiene 20 bytes, pero la longitud del encabezado puede extenderse a 60 bytes como máximo.
  • Reservado: como un bit de extensión, no se utiliza actualmente.

Bit de control:

URG Bit de emergencia Bit efectivo de puntero de emergencia, utilizado con puntero de emergencia
ACK Bit de confirmación Cuando ACK = 1, el campo del número de secuencia de confirmación es válido, cuando es 0, no es válido
PSH Urgencia Cuando el bit de bandera es 1, se requiere que el receptor envíe el segmento de datos a la capa de aplicación lo antes posible
RST Restablecer bit Cuando el valor de RST es 1, se le notifica para restablecer la conexión TCP
SYN Bit de sincronización (conexión) Bit de número de secuencia de sincronización, establezca este valor en 1 cuando TCP necesite establecer una conexión
FIN Fuera de poco Cuando TCP completa la transmisión de datos y necesita desconectarse, la parte que propone desconectarse establecerá este valor en 1.
  • Tamaño de la ventana: indica la cantidad de segmentos de datos que se pueden aceptar localmente. El tamaño de este valor es variable. Cuando la red está desbloqueada, el extremo receptor responde al mensaje para aumentar este valor de ventana para acelerar la velocidad de transmisión. Cuando la red es inestable, reducir este valor puede garantizar la transmisión confiable de datos de red. , el tráfico en TCP Control se logra cambiando el tamaño de la ventana. Por ejemplo, la velocidad de descarga aumenta gradualmente de unos pocos KB a unos MB al principio. Se utiliza para controlar la velocidad de la red.

  • Suma de comprobación: se utiliza para el control de errores. El alcance de la inspección de campo incluye dos partes: encabezado y datos. El segmento de datos se comprobará y calculará cuando se envíe y cuando llegue al destino. Si los valores son inconsistentes, los datos se considerarán corruptos y el extremo receptor los descartará.

  • Puntero de emergencia: usado junto con URG, válido cuando URG = 1.

  • Opción: puede haber hasta 40 bytes de información opcional en el encabezado TCP. Por ejemplo, la longitud máxima de segmento MSS (Tamaño máximo de segmento). MSS le dice a la otra parte TCP: El campo de datos del segmento de mensaje que mi búfer puede recibir es de hasta bytes MSS.

3. Proceso de apretón de manos de tres vías

Inserte la descripción de la imagen aquí

  • PC1 quiere establecer una conexión con PC2, primero envíe un mensaje SYN (SYN = 1) para solicitar el establecimiento de una conexión PC1seq número de secuencia x

  • Después de que la PC2 lo recibe, envía paquetes SYN y ACK, es decir, (ACK = 1) confirmar y también (SYN = 1) solicitar establecer una conexión. PC2seq es y, Ack = x + 1, este Ack es el número de confirmación , lo que significa que la x de PC1 ha sido Roger eso.

  • PC1 recibe la solicitud de PC2 para establecer una conexión y también confirma (ACK = 1) y responde con seq = x + 1, Ack = y + 1 significa que se ha recibido y de PC2.

Cuatro. Proceso de cuatro ondas

Inserte la descripción de la imagen aquí

  • PC1 quiere desconectarse de PC2, primero envíe (FIN = 1) para solicitar la desconexión y (ACK = 1) confirmación.

  • PC2 responde (ACK = 1) y acepta desconectarse. Está medio desconectado En este momento, la PC1 ya no puede conectarse a la PC2, pero la PC2 aún puede enviar datos a la PC1.

  • Entonces PC2 también quiere desconectarse de PC1, enviar (FIN = 1) y confirmar (ACK = 1).

  • PC1 (ACK = 1) confirma la desconexión.

Supongo que te gusta

Origin blog.csdn.net/Wsxyi/article/details/113658534
Recomendado
Clasificación