http 2.0
TRANSCRIPT
HTTP 2.0Daniel Cardoso da SilvaSeminário de Redes de Computadores - 30/11/2013Rede de Computadores - Turma 1656LSistemas para Internet
Introdução
HTTP 2.0 é a nova versão do protocolo HTTP que está sendo especificada pelo HTTPbis Working Group do IETF (Internet Engineering Task Force).
História
● HTTP 1.1 (RFC 2616) - 1999;● SPDY (White paper) - 11/2009;● Call for Proposals for HTTP 2.0 - 2012;
○ SPDY○ HTTP Speed+Mobility○ Network-Friendly HTTP Upgrade
● HTTP 2.0 (Draft 00) - 11/2012;● HTTP 2.0 (Draft 08, Editor's copy) - 11/2013;
Objetivos
● Permitir o uso mais eficiente dos recursos
de rede;
● Reduzir a latência;
● Implementar Server Push;
HTTP 1.1 HTTP 2.0
● O HTTP 2.0 é retrocompatível com o HTTP 1.1, mantendo toda a semântica das transações.
● A forma de formatação e transporte de dados entre cliente/servidor/cliente foi modificada.
● Aplicações atuais continuarão funcionando.
● Binary Framing Layer
HTTP 1.1 HTTP 2.0
● Streams, Messages, and Frames○ Stream: fluxo bidirecional de bytes dentro da
conexão estabelecida;○ Message: o mapeamento da sequência completa de
frames;○ Frame: a menor unidade de uma comunicação no
HTTP 2.0. Contém em seu cabeçalho um identificador do stream ao qual pertence.
HTTP 1.1 HTTP 2.0
● Streams, Messages, and Frames
HTTP 1.1 HTTP 2.0
● Multiplexing
HTTP 1.1 HTTP 2.0
● Multiplexing
HTTP 1.1 HTTP 2.0
● Multiplexing
HTTP 1.1 HTTP 2.0
● Header compression
HTTP 1.1 HTTP 2.0
● Server Push
HTTP 1.1 HTTP 2.0
● Upgrade
HTTP 1.1 HTTP 2.0
1. Requisição inicial, usando HTTP 1.1 com header de upgrade para HTTP 2.0;
2. Frame SETTINGS do HTTP 2.0;3. O servidor recusa o upgrade e
responde usando HTTP 1.1;4. O servidor aceita o upgrade, troca o
protocolo e responde já usando HTTP 2.0;
● Benefícios○ Elimina a necessidade de técnicas usadas
atualmente (minificação, concatenação, sprites, domain sharding, …);
○ Utiliza melhor recursos como CPU e memória (em ambos, cliente e servidor);
Benefícios? x Desvantagens?
● Desvantagens○ Em uma perda de pacotes, a janela deslizante
do TCP diminui e pode vir à bloquear a transmissão dos demais pacotes, aumentando a latência.
Benefícios? x Desvantagens?
Conclusão
O HTTP 2.0 contribuirá para o aumento de performance das aplicações, cuidando de otimizações que hoje somente são possíveis na camada de aplicação.
Bibliografia● WIKIPEDIA -- The Free Encyclopedia. HTTP 2.0. Disponível em <http://en.wikipedia.org/wiki/HTTP_2.0>.
Acesso em: 12 de Nov. 2013. ● WIKIPEDIA -- The Free Encyclopedia. SPDY. Disponível em <http://en.wikipedia.org/wiki/SPDY>. Acesso em:
12 de Nov. 2013. ● HTTPbis Working Group. Hypertext Transfer Protocol version 2.0. Disponível em <http://http2.github.io/http2-
spec/>. Acesso em: 16 Nov. 2013. ● GRIGORIK, I. High Performance Browser Networking. Sebastopol, CA: O’Reilly Media, Inc., 2013. O’Reilly
Atlas. Web. 22 Nov. 2013. <http://chimera.labs.oreilly.com/books/1230000000545/index.html>.