Upload
anonymous-ba8wyhxtb5
View
257
Download
0
Embed Size (px)
DESCRIPTION
Aula
Citation preview
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 1/17
Redes de Computadores
Aula 5
Prof.: Thiago Queiroz de Oliveira
Tauá/2012
Instituto Federal de Educação, Ciênciae Tecnologia do Estado do Ceará
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 2/17
HTTP
• HTTP (HyperText Transfer Protocol)
– Protocolo da camada de aplicação da Web.
– Modelo cliente/servidor
• Cliente: navegador que requisita uma página web
• Servidor: servidor Web envia objetos em resposta arequisições.
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 3/17
HTTP
• Conexões Persistentes
– Múltiplos objetos podem ser enviados por umaconexão TCP entre cliente e servidor.
• Conexões Não Persistentes
– No máximo um objeto é enviado por uma conexãoTCP.
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 5/17
HTTP não persistente
• RTT (Round Trip Time):
– Tempo para um cliente ir em um servidor e voltar
– Qual o tempo total para obter uma URL?
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 6/17
HTTP persistente
• Desvantagens HTTP não persistente:
– Requer 2 RTTs por objeto
– Overhead do SO para cada conexão TCP
– Muitas conexões TCP abertas para uma requisição
• HTTP Persistente – Servidor deixa a conexão aberta depois de enviar a resposta.
– Mensagens HTTP seguintes utilizam a conexão aberta.
– No mínimo um RTT para todos objetos referenciados.
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 7/17
Formato Mensagem HTTP
• Dois tipos de mensagem: requisição, resposta
• Mensagem de requisição HTTP:
– ASCII (Formato de Texto Legível)
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 8/17
Mensagens Requisição HTTP
• HTTP/1.0
– GET
– POST
– HEAD• Não traz objeto
requisitado
• HTTP/1.1
– GET
– POST
– HEAD – PUT
• Envia arquivo para oservidor
–
DELETE• Exclui arquivo
especificado no campoURL.
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 10/17
Mensagens Resposta HTTP
• Código do estado de resposta: – 200 OK
• Requisição bem sucedida, responde com objeto solicitado.
–
301 Moved Permanently• Objeto requisitado movido, novo local específicado
(Location:)
– 400 Bad Request• Mensagem de requisição não pode ser interpretada
– 404 Not Found• Documento requisitado não localizado no servidor
– 505 HTTP Version Not Supported
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 11/17
Cookies
• Servidores HTTP não mantém estado.• Como um site identifica que é você que está acessando?• Através dos cookies um servidor consegue identificar um
usuário.
• Cookies são arquivos-texto que são criados no computadordos usuários para se armazenar/recuperar dados – Verificar se um usuário já se logou no site. – Armazena carrinho de compras em sites de e-commerce. – Exibe conteúdo de um site de acordo com as preferências do
usuário.• Geralmente possuem data de expiração.• É considerado invasão de privacidade por alguns usuários.
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 12/17
Cache Web
• Atende a requisição do cliente sem envolver oservidor. – O cliente estabelece uma conexão com o servidor cache e envia uma
requisição HTTP.
– Caso possua a requisição, o servidor cache responde a requisição. – Caso não possua, solicita ao servidor
de origem e armazena uma cópia da
requisição.
•
Vantagens – Reduz tempo de resposta para atender
a requisição de um cliente.
– Reduz tráfego no servidor de origem.
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 13/17
Exemplo Caching
• Exemplo:
– Objeto: 1Mb
– Taxa requisição média: 15/s
– Atraso do roteador a internet(Ida e volta): 2s
• Consequências: – Utilização da LAN: 15%
– Utilização do enlace de acesso: 100%
– Atraso total = atraso Internet + atraso
de acesso + atraso da LAN
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 14/17
Exemplo Caching
• Possível solução: – Aumentar largura de banda do enlace para 100Mbps.
• Consequência: – Utilização LAN : 15%
– Utilização Enlace acesso: 15%
–
Atraso total: atraso internet + atraso acesso + atraso LAN = 2s + x(ms) + y(ms)• Outra solução:
– Instalar servidor cache na LAN.
– Supondo índice de acerto de 40%.
• Consequência: – 40% das requisições são satisfeitas imediatamente
–
60% das requisições vão para os servidores de origem – Utilização do enlace reduzida para 60%, resultando
atrasos menores(supondo 10ms)
– Atraso total = atraso internet + atraso acesso + LAN
= 0,6*(2,01)s + 0,4 ms < 1,4 ms
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 15/17
GET Condicional• Atualizar servidor cache de forma otimizada.
• Servidor cache específica a data da cópia em uma requisição para o servidor de origem.
• Servidor não envia objeto se a cópia estiver atualizada.
• Exemplo: – 1° Requisição – Servidor origem
GET /esporte/saopaulo HTTP/1.1
Host: www.uol.com.br
– Resposta Servidor OrigemHTTP/1.1 200 Ok
Date: Sat. 7 Jul 2012 15:39:29
Server: Apache/1.3.0 (Unix)
Last-Modified: Wed. 4 Jul 2007 09:23:24
Content-Type: text/html
(Dados + dados + dados ...)
– 2° Requisição – Servidor origem
GET /esporte/saopaulo HTTP/1.1Host: www.uol.com.br
If-modified-since: Web. 4 Jul 2007 09:23:24
– Resposta Servidor origem
HTTP/1.1 304 Not Modified
Date: Sat. 14 Jul 2007 15:39:29
Server: Apache/1.3.0 (Unix)
(Corpo da mensagem vazio..)
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 16/17
FTP – File Transfer Protocol
• Transfere arquivos de uma máquina remota
• Modelo cliente/servidor – Cliente: lado que inicia a transferência
– Servidor: Hospedeiro remoto
• Utiliza conexões separadas para controle e dados. – Contacta servidor na porta 21
– Utiliza autentiação (usuário e senha)
– Utiliza TCP como protocolo de transporte.
–
Abre uma conexão TCP separada para envio de cada arquivo. – Após transferência, servidor fecha a conexão de dados.
7/21/2019 Aula5 - HTTP
http://slidepdf.com/reader/full/aula5-http 17/17
FTP – Comandos
• USER nome-usuario
• PASS senha
• LIST “retorna lista de
arquivos do diretorio” • RETR nome-arquivo
– Obtém um arquivoremoto
• STOR nome-arquivo – Armazena arquivo
remotamente
• 331 Username Ok,password required
• 125 Data Connectionalready open; transferstarting
• 425 Can’t open dataconnection
• 452 Error Writing File