Slides Redes 3
Web e HTTP
Primeiro alguns jargões
– Página Web consiste de objetos
– Objeto pode ser arquivo HTML, imagem JPEG, Java applet, arquivo de áudio,…
– A página Web consiste de arquivo-HTML base, que inclui vários objetos referenciados
– Cada objeto é endereçado por uma URL
– Exemplo de URL:
• www.qualquercoisa.com.br/qualquerpasta/abc.png
Visão geral do HTTP
HTTP:
hypertext transfer protocol
– Protocolo da camada de aplicação da Web
– Modelo cliente/servidor
• Cliente: browser que solicita, recebe e apresenta objetos da
Web
• Servidor: envia objetos em resposta a pedidos
– HTTP 1.0: RFC 1945
– HTTP 1.1: RFC 2068.
Visão geral do HTTP
Utiliza TCP:
– Cliente inicia conexão TCP (cria socket) para o servidor na porta 80
– Servidor aceita uma conexão TCP do cliente
– mensagens HTTP (mensagens do protocolo de camada de aplicação) são trocadas entre o browser (cliente HTTP) e o servidor Web (servidor HTTP)
– A conexão TCP é fechada .
HTTP é “stateless”
– O servidor não mantém informação sobre os pedidos passados pelos clientes.
Protocolos que mantêm informações de “estado” são mais complexos!
– Histórico do passado (estado) deve ser mantido
– Se o servidor/cliente quebra, suas visões de “estado” podem ser inconsistentes, devendo ser reconciliadas
Conexões HTTP
HTTP não persistente
– No máximo, um objeto é enviado sobre uma conexão
TCP
– O HTTP/1.0 utiliza HTTP não persistente
HTTP persistente
– Múltiplos objetos podem ser enviados sobre uma conexão TCP entre o cliente e o servidor
– O HTTP/1.1 utiliza conexões persistentes em seu modo padrão .
HTTP não persistente
Usuário entra com URL:
– www.someSchool.edu/someDepartment/home.index
HTTP não persistente
Modelagem do tempo de resposta
Definição de RTT: tempo de ida e volta, para enviar um pequeno pacote que vai do cliente para o servidor e retorna.
Tempo de resposta:
– Um RTT para iniciar a conexão TCP
– Um RTT para requisição
HTTP e primeiros bytes da resposta HTTP