Para reemplazar TCP: QUIC está listo para la implementación [pero no está listo para convertirse en RFC]

Los representantes del Consejo de Ingeniería de Internet (IETF) anunciaron que el protocolo QUIC para la transmisión de datos a nivel de transporte está listo para pruebas a gran escala. Pero debido a una serie de deficiencias, todavía no se puede representar como un RFC. Los detalles están en nuestro material hoy.


/ Pixabay / www_slon_pics / PD

¿Por qué apareció QUIC?


Google comenzó a trabajar en QUIC en 2013. Fue probado en los navegadores Chrome y Chromium. Más tarde, la tecnología comenzó a admitir los sitios de la empresa, incluido YouTube. Después de un par de años, el gigante de TI anunció que las pruebas de protocolo fueron exitosas y se presentarán al IETF.

El Consejo de Internet comenzó a trabajar en QUIC en marzo de 2016. Como señalaron los representantes del IETF, en el futuro QUIC tendrá que reemplazar TCP, ya que este último ha agotado sus capacidades en las redes modernas (principalmente móviles).

En el protocolo TCP, la conexión está determinada por las direcciones IP y los puertos del servidor y el cliente. Si por alguna razón cambia uno de estos parámetros, debe volver a crear la conexión. De ahí las dificultades con la estabilidad de la comunicación en las redes móviles. El usuario se mueve entre diferentes torres celulares y cambia constantemente la dirección IP.
El objetivo de QUIC es hacer que el proceso de cambio entre redes inalámbricas (incluyendo Wi-Fi) sea más fluido. Además, las pruebas realizadas por Google muestran una reducción del 30% en el número de rebufers al mirar videos en YouTube.

Características del protocolo.


El trabajo de QUIC se basa en el protocolo UDP, que le permite intercambiar datos sin verificar si el destinatario está listo para recibirlos. A diferencia de TCP, que utiliza el principio de "triple apretón de manos", en QUIC, el apretón de manos ocurre en un paso con un servidor que ya es familiar y en dos pasos con un servidor con el que el cliente no trabajó antes. La segunda etapa es necesaria para abrir un canal de comunicación seguro e intercambiar claves criptográficas. Como resultado, QUIC tiene una conexión y retraso de transmisión más bajos que TCP. Cuando se transmiten datos a larga distancia (por ejemplo, de un continente a otro) utilizando un dispositivo móvil, la diferencia en la velocidad de establecer una conexión entre TCP con TLS y el paquete QUIC puede alcanzar los 300 ms.

QUIC ya no tiene un conjunto de parámetros asociados con las direcciones IP y los puertos del servidor y el cliente. En cambio, el protocolo funciona con el identificador de conexión UUID. Esto le permite cambiar entre Wi-Fi y la red móvil, cada vez sin volver a crear la conexión (se guarda UUID). El mecanismo es similar a la utilidad Mosh , que guarda sesiones al cambiar entre redes inalámbricas. Se puede encontrar información al respecto en el repositorio oficial del proyecto .

QUIC incluye además un método de control de integridad de datos: corrección directa de errores o corrección de errores de reenvío (FEC). Cada paquete que se transmite a través de QUIC tiene información vecina. Por lo tanto, si se pierde, el contenido del paquete se puede restaurar.

Crítica de la tecnología.


Hasta ahora, la tecnología tiene ciertas desventajas. Por ejemplo, vulnerabilidad a los ataques DDoS. Según los expertos en seguridad de la información, los kits populares para organizar ataques DDoS tienen soporte UDP incorporado, lo que representa una gran amenaza. Por este motivo, al implementar QUIC, es importante asegurarse de que el mecanismo de enlace funciona correctamente: debe optimizarse e implementarse lo más cerca posible del hardware. De lo contrario, esos ataques que el núcleo podría manejar antes tendrían que ser manejados por soluciones de terceros (por ejemplo, nginx).


/ Wikimedia / Sagor Kumar sr / CC

El segundo inconveniente es la incompatibilidad de protocolos con redes que usan tecnologías NAT, Anycast o ECMP. Funcionan con conexiones TCP y no podrán reconocer y regular el tráfico QUIC. Esta incompatibilidad limita el alcance de uso.

Además, los resultados de la prueba QUIC mostraron que el protocolo no funciona tan bien en dispositivos móviles como lo prometen los creadores de la tecnología. Según los experimentos , al aumentar el ancho de banda de la red y la cantidad de datos transferidos, el tiempo de carga de la página para TCP y QUIC se nivela. Esto se debe a que QUIC funciona en el espacio del usuario , no en el espacio del kernel.

Otro inconveniente de QUIC es su difícil solución de problemas. El protocolo encripta no solo los datos, sino también el encabezado del paquete en el que se transmite. Esto dificulta que los administradores del sistema evalúen el rendimiento de la red y resuelvan los problemas rápidamente.

Perspectivas

Debido a las vulnerabilidades existentes, proteger un sistema diseñado sobre QUIC puede ser difícil. Para eliminar los defectos del protocolo, los desarrolladores necesitan datos sobre su trabajo en condiciones reales. Para esto, el IETF involucra a las empresas de TI en las pruebas.
El protocolo ya es compatible con grandes organizaciones. Con QUIC, los servicios de CDN comenzaron a funcionar: Cloudflare y Verizon Digital Media Services (VDMS). En Cloudflare, la función de conectividad QUIC está en versión beta. El equipo de VDMS ha estado trabajando en la implementación del protocolo desde 2016, y ahora todos los clientes del servicio pueden utilizar QUIC. Las versiones del protocolo QUIC también son probadas por Apple, Pandora, Facebook. Una lista completa de empresas está disponible en GitHub .

Aunque QUIC sigue siendo una tecnología experimental, el número de sitios que respaldan este protocolo está creciendo; esto se muestra en los datos de la organización de investigación W3Techs. Los expertos estiman que con la adopción del estándar, el protocolo se usará con más frecuencia, aunque aún no está claro exactamente cuándo IETF presentará la versión final de QUIC.

PD: ¿Qué más estamos escribiendo en el blog corporativo de VAS Experts?

Source: https://habr.com/ru/post/es429380/


All Articles