Categorias
Tutoriais

Em 2020, migre seu site para o protocolo HTTP/3

Neste artigo, iremos o que o protocolo HTTP/3 faz e explicaremos por que você deve atualizar se ainda não o fez. Porém, o que é HTTP? Simplificando, HTTP é o protocolo que permite acessar informações e arquivos de outro servidor web.

HTTP significa protocolo de transferência de hipertexto , que é o conjunto de regras que define como as páginas da web são entregues do servidor para os navegadores. É o mesmo protocolo que facilita a criptografia. O HTTP utilizada o protocolo TCP para realizar a comunicação.

Uma breve história do HTTP

Protocolo HTTP / 3

Se você estiver familiarizado com a especificação OSI (Open Systems Interconex) , o HTTP é um protocolo da camada de aplicativo, o que significa que pode ser atualizado e melhorado com o aumento da largura de banda, etc. Isso deu origem a várias versões do protocolo.

 

HTTP/1

Está versão foi a primeira implementação do HTTP e apresenta as seguintes características :

  • Protocolo amigável ao navegador
  • Campos de cabeçalho que incluem metadados avançados sobre solicitação e resposta (número da versão HTTP, código de status, tipo de conteúdo)
  • A resposta não se limita ao hipertexto; o cabeçalho habilitou a transmissão de arquivos em formatos diferentes de HTML simples (por exemplo, scripts, folhas de estilo, mídia, etc.)Content-Type
  • Suporte para GET, HEADe POSTmétodos
  • A conexão foi encerrada imediatamente após a resposta
  • A principal causa de latência no protocolo HTTP / 1 é o problema de bloqueio de ponta de linha . As páginas da Web exigem vários recursos: CSS, JavaScript, fontes, imagens, AJAX / XMR, etc., o que exige que o navegador faça várias solicitações ao servidor. No entanto, nem todos esses recursos são necessários o tempo todo, portanto, todo o carregamento extra pode ser uma perda de tempo.

Com HTTP / 1.0, era necessário que os navegadores concluíssem uma solicitação, incluindo o recebimento total da resposta, antes de iniciar a próxima solicitação. Isso também resulta em maior tempo de carregamento porque tudo tinha que ser feito em sucessão. O HTTP / 1.1 resolveu esse problema introduzindo o pipelining, que permitia que os navegadores da web iniciassem novas solicitações sem precisar esperar pela conclusão das solicitações anteriores. Isso ajudou a acelerar os tempos de carregamento em ambientes de baixa latência.

 HTTP/2

O padrão agora é HTTP 2, que usa TCP como seu protocolo principal de comunicação.

Com HTTP / 2, várias solicitações e respostas podem ser transmitidas pela mesma conexão simultaneamente. A desvantagem é que todas as solicitações e respostas podem ser afetadas pela perda de pacotes devido ao congestionamento da rede.

O TCP entrega todo o fluxo de bytes de um ponto de extremidade para outro na ordem correta. Ocasionalmente, problemas de rede ou conexão podem resultar em pacotes de bytes perdidos ou corrompidos. O TCP tentará preencher um pacote perdido reenviando a solicitação. Esta única ação pode causar atrasos desnecessários no processo, o que naturalmente afeta a velocidade e o desempenho da comunicação. Este é, em essência, o problema do bloqueio frontal.

HTTP/3

O HTTP / 3 visa eliminar o problema de bloqueio de ponta de linha de uma vez por todas. Em vez de usar o TCP como a camada de transporte para a comunicação, ele introduz uma nova camada de transporte chamada Quick UDP Internet Connections (QUIC) .

O QUIC, que é criptografado por padrão, foi projetado para acelerar e proteger o tráfego HTTP. Tem como objetivo substituir o TCP e o TLS.

O Cloudflare lista algumas vantagens de usar QUIC sobre TCP e UDP tradicionais, incluindo:

  • Segurança integrada
  • Sem bloqueio frontal
  • QPACK, um novo esquema de compressão de cabeçalho
  • Reflexo defletido
  • Desempenho UDP

A combinação de QUIC e HTTP 3 promete resolver o problema de bloqueio de ponta de linha e abordar muitas outras deficiências associadas aos padrões anteriores, inaugurando uma nova era de desempenho na web.

Por que você deve atualizar para HTTP/3

Os benefícios de mudar de TCP para QUIC incluem:

  • Latência mais baixa. Um estudo do Google descobriu que o uso do QUIC acelerou os resultados da pesquisa em 3,6 por cento e o tempo de carregamento do YouTube em 15 por cento
  • Alternar entre redes tem pouco ou nenhum efeito na velocidade; com o QUIC, esse processo de transferência ou renegociação não é mais necessário.
  • Otimização do handshake. O QUIC suporta um único handshake em uma conexão em vez de dois ou mais, o que aumenta o tempo de conexão para a comunicaçãoMultiplexação. O QUIC aborda o problema de bloqueio de ponta de linhaCorreção de erros antecipada (FEC)
  • Melhor controle de congestionamento. Não está claro qual será a opção final, mas parece que será baseada no TCP NewReno

Agora que você entende os fundamentos do HTTP, a história das versões do protocolo e o potencial do protocolo QUIC para melhorar o desempenho, deve ter o conhecimento fundamental e a motivação para mudar para o HTTP / 3.

 

Por Adriano Frare

Especialista em segurança. Certificado CISSP e Certicate Ethical Hacking. Gerente de projetos experiente com um histórico comprovado de trabalho no setor de administração governamental. Hábil em Planejamento Estratégico, ITIL, Project Management Office (PMO), Gerenciamento de Serviços de TI e Project Management Body of Knowledge (PMBOK), Certificado Digital (PKI), Segurança (CEH), CISSP, vendas usando métodos Soluction Selling (IBM).

Sair da versão mobile