Qual é a diferença entre HTTP 1.1 e HTTP 2.0? [fechadas]

223

O HTTP / 1.1 atende bem à Web há mais de quinze anos, mas sua idade está começando a aparecer.

Alguém pode explicar qual é a principal diferença entre HTTP 1.1 e 2.0?

Existe alguma alteração no protocolo de transporte?

ivanleoncz
fonte
1
daniel.haxx.se/http2/http2-v1.9.pdf Veja por si mesmo o que há de novo no HTTP2
TylerH
1
este vídeo parece ser bom para falar sobre esses tópicos youtube.com/watch?v=0L5Q_897fwk
Gujarat Santana
Seção de 'Introdução' tools.ietf.org/html/rfc7540 é a mais pura e melhor fonte de diferença entre HTTP 1.1 e HTTP 2.0
bayCoder

Respostas:

190

O HTTP / 2 suporta multiplexação de consultas, compactação de cabeçalhos, prioridade e gerenciamento de fluxo de pacotes mais inteligente. Isso resulta em latência reduzida e acelera o download de conteúdo em páginas da web modernas.

Mais detalhes aqui.

84RR1573R
fonte
6
Apenas para adicionar mais um, o http / 2 também especifica o envio do servidor. Leia mais sobre isso aqui: en.wikipedia.org/wiki/HTTP/2_Server_Push
Nitin Bansal
87

HTTP 2.0 é um binário protocolo que multiplexa vários fluxos em uma única conexão TCP (normalmente criptografada por TLS).

O conteúdo de cada fluxo é solicitações e respostas HTTP 1.1, apenas codificadas e compactadas de maneira diferente. O HTTP2 adiciona vários recursos para gerenciar os fluxos, mas deixa a semântica antiga intocada.

phihag
fonte
41
A criptografia TLS não é opcional. Pode ser opcional pelo protocolo, mas não no mundo real. O Chrome e outros navegadores não aceitarão o http2 sem https. Portanto, no mundo real, se você habilitar o http2 sem instalar um certificado em seu servidor, os navegadores se conectarão apenas ao http1.
Patrick Collins
@PatrickCollins Na verdade, os navegadores se conectam ao HTTP2, mas apenas iniciam o download do fluxo de pacotes binários. Eles simplesmente não sabem como exibir o conteúdo HTTP2 sem SSL.
Avamander
3
Esta resposta é enganosa na afirmação de que o http / 2 apenas compacta e codifica solicitações http / 1.1. Existem diferenças específicas. Por exemplo, os cabeçalhos são enviados separadamente do corpo / carga útil. Além disso, o formato do cabeçalho mudou um pouco - onde no http / 1.x o método, a URI, os códigos de resposta e as versões do protocolo são passados ​​na primeira linha, chamada linha de solicitação. O Http / 2 apresenta o conceito de psuedoheaders, colocado antes de todos os outros cabeçalhos e prefixado com a :para lidar com esses aspectos, exceto a versão do protocolo, que não tem equivalente em http / 2.
Erikest
2
Além disso, enquanto os cabeçalhos não diferenciam maiúsculas de minúsculas, o protocolo requer transmissão em minúsculas.
Erikest