O que é HTTP/3?

O HTTP/3 é a próxima grande revisão do protocolo de transferência de hipertexto (HTTP). Ele vai melhorar a velocidade, a segurança e a confiabilidade.

Objetivos de aprendizado

Após ler este artigo, você será capaz de:

  • Entender que melhorias são esperadas no HTTP/3
  • Reconhecer como o protocolo irá moldar a experiência do usuário
  • Descrever os benefícios previstos em termos de segurança

Copiar o link do artigo

O que é HTTP/3?

O HTTP é um backbone essencial da internet — ele determina como as plataformas e dispositivos de comunicação trocam informações e buscam recursos. Em suma, é o que permite aos usuários carregar sites.

O HTTP/3 é um novo padrão em desenvolvimento que afetará a forma como os navegadores e servidores web se comunicam, com atualizações significativas para a experiência do usuário, incluindo performance, confiabilidade e segurança.

Depois que o primeiro protocolo de transferência de hipertexto (HTTP) foi lançado em 1991, as iterações subsequentes tornaram os sites mais rápidos sem nenhuma alteração no código subjacente.

O que há de novo no HTTP/3?

O HTTP/3 será a primeira grande atualização para o protocolo de transferência de hipertexto desde que o HTTP/2 foi aprovado em 2015.

Uma diferença importante no HTTP/3 é que ele é executado no QUIC, um novo protocolo de transporte. O QUIC foi projetado para uso pesado da internet móvel, no qual as pessoas carregam smartphones que mudam constantemente de uma rede para outra à medida que se movemm durante dia. Este não era o caso quando os primeiros protocolos de internet foram desenvolvidos: os dispositivos eram menos portáteis e não trocavam de rede com muita frequência.

O uso do QUIC significa que o HTTP/3 depende do Protocolo UDP (UDP), não do Transmission Control Protocol (TCP). Mudar para UDP permitirá conexões mais rápidas e experiência de usuário mais rápida ao navegar on-line.

O protocolo QUIC foi desenvolvido pelo Google em 2012 e foi adotado pela Internet Engineering Task Force (IETF) — uma organização de padrões neutra em relação a fornecedores — quando começaram a criar o novo padrão HTTP/3. Após consultar especialistas de todo o mundo, a IETF fez uma série de mudanças para desenvolver sua própria versão do QUIC.

Por que uma nova versão do HTTP é necessária?

O QUIC ajudará a corrigir algumas das maiores falhas do HTTP/2:

  • Desenvolvendo uma solução alternativa para a performance lenta quando um smartphone muda de WiFi para dados de celular (como ao sair de casa ou do escritório)
  • Diminuindo os efeitos da perda de pacotes — quando um pacote de informações não chega ao seu destino, ele não bloqueia mais todos os fluxos de informações (um problema conhecido como “bloqueio de cabeça de linha”) criptográficas e de transporte

Outros benefícios incluem:

  • Estabelecimento de conexão mais rápido: o QUIC permite que a negociação de versões TLS aconteça ao mesmo tempo que os handshakes criptográficos e de transporte
  • Zero tempo de ida e volta (0-RTT): para servidores aos quais já se conectaram, os clientes podem pular o requisito de handshake (o processo de reconhecimento e verificação um do outro para determinar como eles se comunicarão)
  • Criptografia mais abrangente: a nova abordagem do QUIC para handshakes fornecerá criptografia por padrão — uma grande atualização do HTTP/2 — e ajudará a mitigar o risco de ataques

O que é criptografia por padrão?

A exigência de criptografia na camada de transporte, em vez de na camada de aplicação, tem implicações importantes para a segurança. Isso significa que a conexão será sempre criptografada. Anteriormente, no HTTPS, as conexões de criptografia e de camada de transporte ocorriam separadamente. As conexões TCP podiam transportar dados criptografados ou não criptografados e o handshake TCP e o handshake TLS eram eventos distintos. No entanto, o QUIC configura conexões criptografadas por padrão na camada de transporte — os dados da camada de aplicativo sempre serão criptografados.

O QUIC faz isso combinando os dois handshakes em uma ação, reduzindo a latência, pois os aplicativos devem aguardar a conclusão de apenas um handshake antes de enviar os dados. Ele também criptografa metadados sobre cada conexão, incluindo números de pacotes e algumas outras partes do cabeçalho, para ajudar a manter as informações sobre o comportamento do usuário fora das mãos dos invasores. Esse recurso não foi incluído no HTTP/2. A criptografia desses dados ajuda a manter as informações acionáveis sobre o comportamento do usuário fora das mãos dos invasores.

O uso tradicional do HTTP de texto não criptografado para solicitações e respostas tem consequências negativas para a segurança, pois qualquer pessoa que monitore as comunicações pode lê-las. A criptografia por padrão ajudará a manter todos mais seguros e a proteger dados sensíveis.

O HTTP/3 já está disponível?

Enquanto o padrão ainda está em desenvolvimento, proprietários e visitantes de sites podem começar a obter suporte para HTTP/3 por meio de navegadores, sistemas operacionais e outros clientes. Com certeza, há a possibilidade de mais mudanças pela frente para o padrão, que já passou por várias implementações.

Depois que o HTTP/3 for lançado, nem toda a web mudará de uma só vez. Muitos sites ainda não estão em HTTP/2.

Um possível obstáculo para o novo protocolo é que ele requer maior uso da CPU tanto para o servidor quanto para o cliente. Isso provavelmente diminuirá em impacto ao longo do tempo à medida que a tecnologia evolui.

Quem decide o que é incluído no HTTP/3?

A IETF montou o QUIC Working Group em 2016. Pessoas de muitas organizações e corporações estão envolvidas no processo de desenvolvimento — incluindo a Cloudflare.

Antes de obter seu nome atual de HTTP/3, o padrão anteriormente era "HTTP-over-QUIC" e "HTTP/2 Semantics Using The QUIC Transport Protocol".

Como os proprietários de sites podem acionar o HTTP/3 agora?

A Cloudflare permite que os proprietários de sites acionem a compatibilidade com o HTTP/3 sem nenhuma alteração em sua origem. Saiba como fazer a troca no seu domínio.