Header Ads

O HTTP / 3 está chegando QUIC, aqui está o que você precisa saber

Shutterstock / Robert Avgustin

HTTP / 3 é a próxima geração do protocolo HTTP. É alimentado por QUIC, que substitui o TCP na camada de transporte e reduz o número de viagens de ida e volta que um cliente deve fazer para estabelecer uma conexão.

O que o torna melhor?

Se você não consegue distinguir do acrônimo "QUIC", ” O HTTP / 3 é muito mais rápido.

O HTTP é apenas parte do modelo OSI, que alimenta a Internet como a conhecemos. Cada camada do modelo tem uma finalidade diferente, com APIs de alto nível, como HTTP, bem no topo (a camada de aplicativo), até os fios físicos e as conexões que se conectam aos roteadores:

Mas existe um gargalo neste modelo e, apesar do novo nome, o próprio padrão HTTP não é o problema.

TCP (a camada de transporte) é o culpado aqui; foi projetado nos anos 70 e, como tal, não foi desenvolvido para lidar muito bem com a comunicação em tempo real. O HTTP sobre TCP atingiu seu limite. O Google e o restante do setor de tecnologia estão trabalhando na substituição do TCP.

Em 2012, o Google criou o SPDY, um protocolo que se baseia no TCP e corrige muitos problemas comuns. O próprio SPDY está obsoleto, mas partes dele chegaram ao HTTP / 2, que atualmente é usado por 40% da web.

QUIC é um novo padrão, muito parecido com o SPDY, mas é construído sobre o UDP e não o TCP. O UDP é muito mais rápido que o TCP, mas geralmente é menos confiável, pois não possui a mesma verificação de erro e prevenção de perdas que o TCP. É comumente usado em aplicativos que não exigem que os pacotes estejam na ordem exata exata, mas se preocupam com a latência (como chamadas de vídeo ao vivo).

O QUIC ainda é confiável, mas implementa a verificação de erros e a confiabilidade no topo do UDP, para obter o melhor dos dois protocolos. Na primeira vez em que um usuário se conecta a um site habilitado para QUIC, ele o faz pelo TCP.

O principal problema com o TCP que o QUIC corrige é o bloqueio de linha de frente. Depois que uma conexão é estabelecida entre servidor e cliente, o servidor envia pacotes de dados para o cliente. Se a conexão estiver ruim e um pacote for perdido, o cliente reterá todos os pacotes recebidos depois até o servidor retransmitir o pacote perdido. O HTTP / 2 corrige esse problema de alguma maneira, permitindo várias transferências pela mesma conexão TCP, mas não é perfeito e pode ser realmente mais lento que o HTTP / 1 com conexões de alta perda.

O

QUIC corrige esse problema e lida com conexões de alta perda muito melhor. Testes anteriores do Google mostraram melhorias de cerca de 15% em cenários de alta latência e melhorias de até 30% no buffer de vídeo em conexões móveis. Como o QUIC reduz o número de apertos de mão que devem ser feitos, haverá melhorias na latência em todos os aspectos.

É difícil de implementar?

Embora o QUIC seja um novo padrão, ele é construído sobre o UDP, que já é suportado em quase todos os lugares. Ele não exigirá nenhuma nova atualização do kernel, o que pode ser problemático para os servidores. O QUIC deve funcionar imediatamente em qualquer sistema que suporte UDP

HTTP-over-QUIC deve ser um substituto para o HTTP-over-TCP, uma vez que esteja prontamente disponível. No momento da redação deste artigo, o Chrome suporta o QUIC, mas está desativado por padrão. Você pode habilitá-lo para teste acessando:

 chrome: // sinalizadores 

e ligando o “ protocolo QUIC experimental ” bandeira. O Firefox adicionará suporte no final deste outono e, com o Edge migrando para o Chromium, eles também receberão suporte.

No final do servidor, se você estiver usando o CloudFlare como CDN, poderá ativar a opção que já está no seu painel, embora você não tenha muitos clientes usando-o até os navegadores para dispositivos móveis o ativam por padrão. Fastly está trabalhando ativamente no suporte. Se você deseja habilitá-lo em seu servidor da web, terá que esperar um pouco para que o QUIC chegue durante o ciclo de desenvolvimento do nginx 1.17, mas o suporte ao Apache ainda não está à vista.

Depois que o nginx e o Apache são atualizados para suportá-lo, adicionar QUIC à sua página da web ou aplicativo da web será tão simples quanto atualizar o servidor da web e ativar a opção. Você não precisará fazer alterações no seu aplicativo ou no seu código, pois tudo é tratado no nível da infraestrutura. Ainda não está aqui, mas está chegando muito em breve, e você definitivamente desejará ativá-lo assim que for suportado por padrão.

Via: How to Geek

Nenhum comentário