Representantes do Internet Engineering Council (IETF) anunciaram que o protocolo QUIC para transmissão de dados no nível de transporte está pronto para testes em larga escala. Mas devido a várias deficiências, ele ainda não pode ser representado como uma RFC. Os detalhes estão em nosso material hoje.
/ Pixabay / www_slon_pics / PDPor que o QUIC apareceu
O Google começou a trabalhar no QUIC em 2013. Foi
testado nos navegadores Chrome e Chromium. Mais tarde, a tecnologia
começou a dar suporte aos sites da empresa, incluindo o YouTube. Após alguns anos, a gigante de TI
anunciou que o teste do protocolo foi bem-sucedido e será apresentado à IETF.
O Conselho da Internet começou a trabalhar no QUIC em março de 2016. Como
observaram os representantes da IETF, no futuro o QUIC terá que substituir o TCP, já que este esgotou suas capacidades em redes modernas (principalmente móveis).
No protocolo TCP, a conexão é determinada pelos endereços IP e portas do servidor e cliente. Se, por algum motivo, um desses parâmetros for alterado, você deverá recriar a conexão. Daí as dificuldades com a estabilidade da comunicação nas redes móveis. O usuário se move entre diferentes torres de celular e muda constantemente o endereço IP.
O objetivo do QUIC é tornar o processo de alternância entre redes sem fio (incluindo Wi-Fi) mais suave. Além disso, os testes realizados pelo Google mostram uma redução de 30% no número de rebufers ao assistir a vídeos no YouTube.
Características do protocolo
O trabalho do QUIC é baseado no protocolo UDP, que permite trocar dados sem verificar se o destinatário está pronto para recebê-lo. Ao contrário do TCP, que
usa o princípio do “triple handshake”, no QUIC, o handshake ocorre em uma etapa com um servidor que já é familiar e em duas etapas com um servidor com o qual o cliente não trabalhava anteriormente. O segundo estágio é necessário para abrir um canal de comunicação seguro e trocar chaves criptográficas. Como resultado, o QUIC
possui um atraso de
conexão e transmissão
menor que o TCP. Ao transmitir dados a uma longa distância (por exemplo, de um continente para outro) usando um dispositivo móvel, a diferença na velocidade de estabelecer uma conexão entre TCP com TLS e o pacote QUIC pode chegar a 300 ms.
O QUIC não possui mais um conjunto de parâmetros associados aos endereços IP e portas do servidor e cliente. Em vez disso, o protocolo trabalha com o identificador de conexão UUID. Isso permite alternar entre o Wi-Fi e a rede móvel, sempre sem recriar a conexão (o UUID é salvo). O mecanismo é semelhante ao utilitário
Mosh , que salva sessões ao alternar entre redes sem fio. Informações sobre isso podem ser encontradas no
repositório oficial do projeto .
O QUIC também
inclui um método de controle de integridade de dados - correção direta de erros ou FEC (Forward Error Correction). Cada pacote que é transmitido através do QUIC possui informações de vizinhos. Portanto, se ele for perdido, o conteúdo do pacote poderá ser restaurado.
Crítica da tecnologia
Até agora, a tecnologia tem certas desvantagens. Por exemplo,
vulnerabilidade a ataques DDoS. De acordo com especialistas em segurança da informação, os kits populares para organizar ataques DDoS contam com suporte UDP integrado, o que representa uma grande ameaça. Por esse motivo, ao implementar o QUIC, é importante garantir que o mecanismo de handshake funcione corretamente - ele deve ser otimizado e implementado o mais próximo possível do hardware. Caso contrário, os ataques que o kernel poderia manipular antes teriam que ser tratados por soluções de terceiros (por exemplo, nginx).
/ Wikimedia / Sagor Kumar sr / CCA segunda desvantagem é a
incompatibilidade de protocolo com redes que usam tecnologias NAT, Anycast ou ECMP. Eles trabalham com conexões TCP e não poderão reconhecer e regular o tráfego QUIC. Essa incompatibilidade limita o escopo de uso.
Além disso, os resultados dos testes QUIC mostraram que o protocolo não funciona tão bem em dispositivos móveis quanto prometem os criadores da tecnologia. De acordo com
experimentos , com o aumento da largura de banda da rede e a quantidade de dados transferidos, o tempo de carregamento da página para TCP e QUIC é nivelado. Isso ocorre porque o QUIC funciona no
espaço do usuário , não no espaço do kernel.
Outra
desvantagem do QUIC é a difícil solução de problemas. O protocolo criptografa não apenas os dados, mas também o cabeçalho do pacote no qual é transmitido. Isso dificulta aos administradores de sistema avaliar o desempenho da rede e solucionar problemas rapidamente.
Perspectivas
Devido às vulnerabilidades existentes, proteger um sistema projetado sobre o QUIC pode ser difícil. Para eliminar as falhas do protocolo, os desenvolvedores precisam de dados sobre seu trabalho em condições reais. Para isso, o IETF envolve empresas de TI em testes.
O protocolo já é suportado por grandes organizações. Com o QUIC, os
serviços da CDN começaram a funcionar - Cloudflare e Verizon Digital Media Services (VDMS). No Cloudflare, o recurso de conectividade QUIC está na versão beta. A equipe do VDMS
trabalha na implementação do protocolo desde 2016 e agora o QUIC pode ser usado por todos os clientes do serviço. Versões do protocolo QUIC também são testadas pela Apple, Pandora, Facebook. Uma lista completa de empresas está disponível no
GitHub .
Embora o QUIC continue sendo uma tecnologia experimental, o número de sites que suportam esse protocolo está crescendo - isso é mostrado pelos
dados da organização de pesquisa W3Techs. Os especialistas
estimam que, com a adoção do padrão, o protocolo será usado com mais frequência - embora ainda não esteja claro exatamente quando a IETF apresentará a versão final do QUIC.
PS O que mais estamos escrevendo no blog corporativo da VAS Experts: