Upgrade ao protocolo HTTP promete uma internet mais leve e rápida

http

O protocolo HTTP é um componente chave para toda a internet. E agora vai ser melhorado pela primeira vez em 15 anos!

http

O HTTP, ou Hypertext Transfer Protocol, é a layer de comunicação que permite aos web browsers pedirem páginas aos servidore e pelo qual os servidores respondem com os conteúdos da página.

Tal como a maior parte da internet ele já existe à dácadas, mas o HTTP/2, o seu maior upgrade desde à 15 anos, está agora, finalmente, para chegar.

O protocolo original foi usado no CERN em 1991 e criado por Sir Tim Berners-Lee. O mesmo foi melhorado e finalizado em 1999 como o HTTP 1.1 que ainda hoje se usa.

No entanto, desde a sua concepção, a internet mudou bastante. Actualmente as imagens, folhas de estilo complexas, Flash e outros conteúdos embebidos apareceram. E o protocolo original basicamente não foi pensado para estes websites com conteúdos tão ricos.

Por exemplo, a Google, ao lidar com mais de 40 mil pesquisas por segundo, servindo biliões de utilizadores de internet, rapidamente se apercebeu que o protocolo tinha limites que não conseguiam servir os seus interesses. Daí que em 2009 lançou um projecto que denominou de SPDY (leia-se “speedy”) com o intuito de melhorar o HTTP.

Este projecto foi um sucesso, e apesar de originalmente pensado apenas para ser usado para uso interno, outros websites de tráfego intenso como o Twitter, Facebook, WordPress e o CloudFlare implementaram tambem o SPDY para melhoria das suas performances.

Ora o SPDY chamou a atenção da Internet Engineering Task Force (IETF), que desenvolve e promove os standards internet. E desta forma ele foi usado como base para o início da criação do HTTP/2 em 2012. E durante muito tempo ambos os protocolos iam avançando em paralelo.

Apesar de a Google ser quem encabeçava o desenvolvimento do protocolo, o trabalho foi continuado pelos grupos abertos do IETF e que tem vindo a criar outros protocolos à mais de 30 anos.

O restá prestes a aparecer com o HTTP/2 e a própria Google já anunciou que irá abandonar o SPDY para usar o mesmo.


Desvantagens do HTTP 1.1

As páginas actuais podem gerar vários pedidos por imagem, folhas de estilo CSS, video ou outros objectos embebidos, publicidades fora do website, etc. Podem cegar a uma centena por página, o que causa uma sobrecarga desnecessária no servidor e abranda os tempos de carregamento dado que o HTTP 1.1 apenas suporta um pedido por ligação.

O HTTP 1.1 é ainda sensível a conexões de elevada latência. Isto é um problema em aparelhos móveis onde mesmo grandes velocidades de conexão podem parecer lentas devido à latência. O HTTP pipelining permite oa browser fazer um outro pedido enquanto espera pela resposta ao anterior. E apesar de isto contornar um pouco a latência elevada, cria problemas próprios pelo que esta opção está normalmente desligada na maior parte dos browsers.

As benesses do HTTP/2

O HTTP/2 deixa de ser um protocolo que funciona usando texto, pasando a usar binário, o que é mais rápido a traduzir e mais compacto na transmissão. E quando o HTTP 1.1 possui quatro formas fdiferentes de lidar com uma mensagem, o HTTP/2 reduz isso para apenas uma. Para a questão dos multiplos pedidos, este novo protocolo continua a permitir apenas um pedido por conexão, mas usando stream multiplexing consegue colocar vários pedidos numa única conexão. Estes streams são bi-direccionais pelo que tanto o browser como o servidor transmitem numa única conexão. E cada stream pode ter uma prioridade, pelo que os browsers podem determinar que imagem é mais importante ou mudar as prioridades com a mudança da tab activa no browser.

Os pedidos neste protocolo podem ainda incluir dados relevantes sobre a conexão enviados como cabeçalhos HTTP. Ao contrário da versão anterior, agora os cabeçalhos são comprimidos, o que melhora a segurança e a velocidade da conexão.

A última novidade é o server push. Quando uma página é pedida, o servidor manta-a, mas necessita de esperar que o browser  interprete o HTML e faça novos pedidos para as coisas contidas no código, tal como as imagens. O server push permite que o servidor mande logo todos os recursos associados à página quando ela é pedida. Tal irá reduzir a latência nas conexões web.

Com o uso nos servidores e browser2 do HTTP/2 – algo que poderá começar a acontecer dentro de semanas – a experiência de navegação será mais rápida e responderá melhor. Mais ainda os programadores deixam de andar a precisar de ultrapassarem as limitaçõesdo HTTP 1.1.

Os Browsers mais populares como o Firefox v36, Chrome v40 e o Internet Explorer v11 já suportam o HTTP/2.

Publicidade

Posts Relacionados