O que você precisa saber sobre HTTP / 3

Conteúdo

Protocolo HTTP.

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 determinar uma conexão.

O que o torna melhor?

Si no puede saberlo por el acrónimoQUIC”, HTTP / 3 é muito mais rápido.

HTTP é apenas parte de 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 localizadas na parte superior (a camada de aplicação), até os cabos físicos e conexões que se conectam aos roteadores:

HTTP faz parte do modelo OSI

Mas há um gargalo neste modelo e, apesar do novo nome, o padrão HTTP em si não é o problema.

TCP (a camada de transporte) é o culpado aqui; foi desenhado nos anos 70 e, Como tal, não foi construído para lidar muito bem com a comunicação em tempo real. HTTP sobre TCP atingiu seu limite. O Google e o resto do espaço de tecnologia estão trabalhando em uma substituição para o TCP.

Sobre 2012, O Google criou SPDY, um protocolo que é baseado em TCP e resolve muitos problemas comuns. O próprio SPDY está obsoleto, mas partes dele fizeram o seu caminho para HTTP / 2, que neste momento usa 40% da web.

QUIC é um novo padrão, muito semelhante ao SPDY, mas é construído em cima de UDP em vez de TCP. UDP é muito mais rápido que TCP, mas em geral é menos confiável, pois não tem a mesma verificação de erros e prevenção de perdas que o TCP. É comumente usado em aplicativos que não requerem que os pacotes estejam no exatamente ordem correta, mas eles se preocupam com a latência (como vídeo chamadas ao vivo).

QUIC permanece confiável, mas implementa sua verificação de erros e confiabilidade ao mesmo tempo que UDP, para que você obtenha o melhor de ambos os protocolos. A primeira vez que um usuário se conecta a um site habilitado para QUIC, vai fazer isso via TCP.

O principal problema com o TCP que o QUIC corrige é o bloqueio de cabeçalho. Assim que uma conexão for estabelecida entre o servidor e o cliente, o servidor envia pacotes de dados para o cliente. Se a conexão estiver ruim e um pacote for perdido, o cliente retém todos os pacotes recebidos até que o servidor retransmita o pacote perdido. HTTP / 2 resolva esse problema de alguma forma, permitindo múltiplas transferências na mesma conexão TCP, mas não é perfeito e pode ser mais lento do que HTTP / 1 com conexões de alta perda.

O QUIC resolve este problema e lida muito melhor com conexões de alta perda. Os primeiros testes do Google mostraram melhorias em torno de 15% em cenários de alta latência e até 30% melhorias no buffer de vídeo em conexões móveis. Porque o QUIC reduz o número de apertos de mão que devem ser executados, Haverá melhorias de latência em toda a linha.

É difícil implementar?

Embora o QUIC seja um novo padrão, é baseado em UDP, que já é compatível em quase todos os lugares. Não exigirá novas atualizações de kernel, o que pode ser problemático para servidores. O QUIC deve funcionar imediatamente em qualquer sistema que suporte UDP

HTTP-over-QUIC deve ser um substituto direto para HTTP-over-TCP, uma vez que esteja disponível. No momento em que escrevo esta postagem, Chrome suporta QUIC, mas está desabilitado por padrão. Você pode habilitá-lo para teste acessando:

cromada://bandeiras

y activando la banderaProtocolo QUIC experimental”. O Firefox adicionará suporte mais tarde neste outono, e com o Edge mudando para o Chromium, eles também receberão suporte em breve.

Na extremidade do servidor, se você estiver usando CloudFlare como seu CDN, você pode habilitar a opção já em seu painel, mesmo que você não tenha muitos clientes usando-o até que os navegadores móveis o tenham ativado por padrão. Rapidamente é trabalhando ativamente no suporte. Apesar disto, se você quiser habilitá-lo em seu servidor web, vai ter que esperar um pouco; o suporte antecipado para o QUIC está programado para chegar ao longo do ciclo de desenvolvimento nginx 1.17, mas o suporte ao Apache ainda não está à vista.

Assim que o nginx e o Apache forem atualizados para suportá-lo, adicionar QUIC à sua página ou aplicativo da web será tão simples quanto atualizar seu servidor da web e habilitar a opção. Você não terá que fazer nenhuma alteração em seu aplicativo ou código, uma vez que tudo é tratado no nível de infraestrutura. Não aqui ainda, mas virá muito em breve, e você definitivamente vai querer habilitá-lo, uma vez que seja suportado por padrão.

Assine a nossa newsletter

Nós não enviaremos SPAM para você. Nós odiamos isso tanto quanto você.