HTTP e HTML na Internet
Eu sou Jasmim e sou gerente de programas da equipe de engenharia da XBOX One
Um de nossos maiores recursos é conhecido como XBOX Live. Trata-se de um serviço online que conecta
jogadores de todo o mundo, e dependemos da internet para o sistema funcionar.
Não é uma tarefa fácil e há muitas coisas acontecendo nos bastidores. A internet esta mudando
completamente a forma como as pessoas interagem e se conectam. Mas como ela funciona? Como os
computadores em todo o mundo se comunicam de fato uns com os outros? Vamos avaliar a navegação na internet.
Primeiro, você abtre um navegador. É o aplicativo que você usa para acessar as páginas da internet. Em seguida, você
digita um endereço de internet, ou uma URL, que significa Uniform Resource Locator do site que
você quer visitar, como tumblr.com. Oi, eu sou David Karp, fundador do Tumblr, e estamos
aqui hoje para falar sobre como os navegadores que utilizamos todos os dias funcionam de fato. Você
provavelmente já imaginou o que realmente acontece quando você digita um endereço no seu navegador e
tecla Enter. E é realmente uma loucura, como você pode imaginar. Nesse momento, o seu computador
começa a conversar com outro computador, conhecido como servidor, que costuma estar a milhares
de quilômetros de você. E em milé-simos de segundos, seu computador pede ao servidor acesso a um site, e
o servidor começa a conversar com o seu computador em um idioma chamado HTTP. HTTP significa Hyper
Text Transfer Protocol. Pode-se dizer que é uma língua utilizada pelos computadores
para solicitar documentos de outro computador. Na verdade, tudo é muito ágil.
Se você interceptar uma conversa entre o seu computador e um servidor
de internet, verá principalmente algo que chamamos de solicitações “GET”. São simples comandos para OBTER
seguido do nome do documento que você está solicitando. Assim, se você tentar acessar o Tumblr e
entrar na página de log-in, tudo o que estará fazendo é enviar uma solicitação de OBTER ao servidor do
Tumblr que diz OBTENHA/log-in. Isso diz ao servidor do Tumblr que você quer todos os códigos HTML da
página de log-in do Tumblr. HTML é uma linguagem de interpretação de hipertexto e você pode
considerá-la uma língua utilizada para dizer ao navegador que aparência a página deve ter.
Se você pensar em algo como a Wikipedia, que é na verdade apenas um grande documento simples
e que o HTML é a linguagem que você vê exibindo o texto grande em negrito, para que a fonte
seja adequada, links para determinados textos de outras páginas, para destacar algum tema, alguns trechos
em itálico, imagens inseridas no centro da página, alinhamento de imagens à direita ou à esquerda.
O texto de uma página na internet é incluído diretamente no HTML,
mas outros elementos, como imagens ou vídeos, são arquivos separados, com sua própria URL, que precisam
ser solicitados. O navegador envia solicitações HTTP separadas para cada um e os exibe da forma que
são recebidos. Se uma página na internet tiver muitas imagens diferentes, cada uma faz uma solicitação HTTP
separada e o carregamento da página é mais lento. Às vezes, quando você navega pela internet, você não
está apenas solicitado páginas com pedidos de OBTER. Às vezes você envia informações, como quando você
preenche um formulário ou digita um texto a ser pesquisado. Seu navegador envia essas informações em formato
de texto simples ao servidor de internet, utilizando uma solicitação HTTP POST. Digamos que você acesse
o Tumblr. A primeira coisa que você faz é uma solicitação POST, que é um POST para a página de acesso do
Tumblir, que contém alguns dados anexados a ele. Ele contém seu endereço de e-mail, sua senha, que são
enviados para o servidor do Tumblr. O servidor do tumblr decobre que, tudo bem, você é o David. Ele envia uma
página da internet de volta ao seu navegador que diz, Sucesso! Acesso concedido a David. Mas junto com essa
página da internet, ele também anexa alguns cookies invisíveis com dados que o seu navegador vê e salva.
E são realmente importantes, porque são o único meio que o site tem para se lembrar de quem você é.
Tudo que esses dados de cookies são, na verdade, é uma identidade para o Tumblr. É um número que
identifica você como David. E seu navegador guarda esse número, e da próxima vez que
você atualizar o Tumblr, da próxima vez você acessar o Tumblr.com, seu navegador automaticamente
associará esse número à solicitação que enviar over para os servidores do Tumblr. Agora os servidores
do Tumblr verão a solicitação vindo do seu navegador, o número de identificação, e saberão
que “esta é uma solicitação do David”. Agora, a internet é inteiramente aberta. Todas as conexões são
compartilhadas e as informações são enviadas em formato de texto simples. Isto permite que hackers
bisbilhotem quaisquer dados pessoais que você enviar pela internet. Mas os
sites seguros evitam isto, solicitando ao seu navegador que se comunique em um canal seguro, utilizando
o que chamamos de Secure Sockets Layer e sua sucessora, a Transport Layer Security.
Você pode imaginar a SSL e a TLS como uma camada de segurança que envolve suas comunicações
para protegê-las contra a bisbilhotagem ou a manipulação. SSL e TLS se ativam quando você vê um pequeno
cadeado na barra de endereços do navegador, ao lado do HTTPS. O protocolo HTTPS
garantem e segurança e a proteção das suas solicitações HTTP. Quando um site pede ao seu navegador
para se envolver em uma conexão segura, primeiro ele fornece um certificado digital. Que é como
uma carteira de identidade oficial comprovando que é o site que diz ser. Os certificados digitais
são publicados por autoridades certificadoras, que são entidades confiáveis que verificam a
identidade dos sites e emite certificados para eles. Assim como um governo pode emitir
Identidades ou passaportes. Agora, se um site tentar iniciar uma conexão segura sem um certificado
digital válido, seu navegador avisará você. Estes são os fundamentos da navegação na internet!
A parte da internet que vemos todos os dias. Para resumir, HTTP e DNS gerenciam o envio e
o recebimento de HTML, arquivos de mídia ou qualquer coisa na internet. O que torna isto possível no
mecanismo são redes TCP/IP e roteadores que desmembram e transferem informações em pequenos
pacotes. Esses pacotes são feitos de sequências binárias, de uns e zeros,
que são fisicamente enviadas por fios elétricos, cabos de fibra óptica e redes sem fio.
Felizmente, quando você aprende como funciona um camada da internet, você pode confiar nela
mesmo que não se lembre de todos os o detalhes. E nós podemos acreditar que todas essas camadas vão funcionar
juntas para entregar informações com êxito, em escala e de forma confiável.