Red de conocimiento informático - Conocimiento del nombre de dominio - Comprenda rápidamente el protocolo UDP

Comprenda rápidamente el protocolo UDP

Los funcionarios del Grupo de Trabajo de Ingeniería de Internet (IETF) revelaron que el protocolo experimental HTTP-over-QUIC pasará a llamarse HTTP/3 y se espera que se convierta en la tercera versión oficial del protocolo HTTP.

El protocolo UDP se usa ampliamente en situaciones donde la naturaleza en tiempo real de la transmisión de datos de la red es muy alta, pero la precisión de los datos no es muy alta. Además, la rápida mejora de los medios físicos de la red (. La fibra óptica) ha reducido el riesgo de pérdida de paquetes de datos y, cuando las condiciones de la red son muy buenas, las deficiencias de UDP se pueden mejorar en gran medida. Por tanto, el protocolo UDP tiene un futuro brillante.

Entonces, como capa inferior del protocolo HTTP de nueva generación, ¿quieres revisarlo?

¿Qué es UDP?

UDP es la abreviatura de User Datagram Protocol. Es un protocolo de datagramas de usuario, también conocido como User Datagram Protocol. A diferencia de TCP, que es un protocolo orientado a la conexión, UDP es un protocolo de capa de transporte simple orientado a datagramas. El inicio y la aceptación de UDP no requieren una conexión, solo es necesario enviarlo al puerto correspondiente para su monitoreo y aceptación. No es necesario Los dos clientes deben estar conectados

Hay cinco razones por las que la transmisión UDP no es confiable:

¿Cuál es la diferencia entre el protocolo TCP y el protocolo UDP?

Preguntas frecuentes: ¿QQ utiliza TCP o UDP?

El protocolo de comunicación utilizado por QQ es principalmente UDP, complementado con el protocolo TCP. QQ no se basa completamente en UDP. Por ejemplo, cuando se utiliza QQ para la transferencia de archivos y otras actividades, se utilizará TCP como garantía de transmisión confiable.

Dado que la capacidad de diseño del servidor QQ es para aplicaciones masivas, un servidor debe acomodar cientos de miles de conexiones simultáneas al mismo tiempo, por lo que el servidor solo puede garantizar esta escala ultragrande utilizando el protocolo UDP. comunicarse con los servicios del cliente.

La transmisión de mensajes entre clientes QQ también utiliza el modo UDP, porque el entorno de la red doméstica es muy complejo y muchos usuarios utilizan un servidor proxy para compartir una línea de acceso a Internet. En estas situaciones complejas, la probabilidad de que. Los clientes pueden establecer conexiones TCP entre sí son pequeños, lo que afecta seriamente la eficiencia de la transmisión de información. Los paquetes UDP pueden penetrar la mayoría de los servidores proxy, por lo que QQ eligió UDP como el principal protocolo de comunicación entre clientes.

Utiliza protocolo UDP y transfiere a través del servidor. Como todos sabemos, el protocolo UDP es un protocolo poco confiable. Solo envía datos independientemente de si la otra parte los recibe, pero su transmisión es muy eficiente. Sin embargo, como software de chat, ¿cómo puede utilizar un método tan poco fiable para transmitir mensajes? Por lo tanto, Tencent adoptó un protocolo de capa superior para garantizar una transmisión confiable: si el cliente usa el protocolo UDP para enviar un mensaje y el servidor recibe el paquete, debe usar el protocolo UDP para enviar un paquete de respuesta. Esto garantiza que los mensajes se puedan transmitir sin perder el ritmo. La razón por la que el cliente ve claramente "Error en el envío del mensaje" pero la otra parte recibe el mensaje es porque el servidor recibió y reenvió con éxito el mensaje enviado por el cliente, pero el cliente no lo recibió del servidor por razones de red. causado por el paquete de respuesta.

La razón por la que se utilizó UDP en ese momento fue que la ventaja más esencial de UDP era la utilización del ancho de banda. Todo esto se remonta a las condiciones de la red entre 1999 y 2003. Las características de la red en ese momento eran que el ancho de banda de acceso era muy estrecho y la fluctuación era extremadamente severa. El llamado jitter puede deberse a muchos aspectos, como un aumento repentino del retraso, un agujero negro de enrutamiento causado por cambios en el nivel de enrutamiento y varios otros problemas. Debido al control de congestión, la garantía de pedidos y otras razones, la utilización del ancho de banda de TCP es muy baja en este estado de red. Además, debido a la fluctuación de la red, el latido de la capa de aplicación se agota. Después de que la capa de aplicación desconecta activamente el socket, TCP requiere tres apretones de manos para restablecer el enlace. Una vez que se producen pequeñas fluctuaciones frecuentes, la utilización del ancho de banda será menor. El tiempo dedicado a esperar cuatro oleadas también ocupará recursos valiosos en el servidor.

En resumen, cuando la red es pobre hasta cierto punto, las ventajas de TCP se convertirán en desventajas.