1 / 15

Redes de Computadores 2 - Camada de Aplicação (HTTP) –

Redes de Computadores 2 - Camada de Aplicação (HTTP) –. Paulo Roberto Freire Cunha prfc@cin.ufpe.br. http request. http response. Browser. servidor web. Visão Geral. HTTP - HyperText Transfer Protocol protocolo da aplicação WEB documentos RFC 1945 (http 1.0) RFC 2616 (http 1.1).

ramona
Download Presentation

Redes de Computadores 2 - Camada de Aplicação (HTTP) –

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Redes de Computadores 2- Camada de Aplicação (HTTP) – Paulo Roberto Freire Cunha prfc@cin.ufpe.br

  2. http request http response Browser servidor web Visão Geral • HTTP - HyperText Transfer Protocol • protocolo da aplicação WEB • documentos • RFC 1945 (http 1.0) • RFC 2616 (http 1.1) aplicação transport rede enlace física aplicação transport rede enlace física Redes de Computadores 2  (baseado nos slides do Kurose)

  3. get http://www.cin.ufpe.br Aplicação Aplicação Aplicação Aplicação Transporte Transporte Transporte Transporte página html Transporte Transporte Transporte Transporte Enlace Enlace Enlace Enlace Rede Rede Rede Rede 80/TCP 80/TCP 80/TCP Visão Geral • o HTTP usa o protocolo TCP da camada de transporte • etapas de funcionamento • estabelece uma conexão TCP (cria um socket) com o servidor na porta 80 • envia request • recebe response • fecha a conexão TCP • http 1.0 (não persistente) • cada objeto é transferido fazendo-se • uma nova conexão • http 1.1 (persistente) • todos os objetos são transferidos • em uma única conexão TCP Redes de Computadores 2  (baseado nos slides do Kurose)

  4. Formato da Mensagem - request GET /somedir/page.html HTTP/1.0 User-agent: Mozilla/4.0 Accept: text/html, image/gif,image/jpeg Accept-language:fr \n • Mensagens HTTP • request • reply • tipo da mensagem • request|response • cabeçalho da mensagem • cabeçalho geral • cabeçalho de request • cabeçalho de response • cabeçalho da entidade • corpo da mensagem Redes de Computadores 2  (baseado nos slides do Kurose)

  5. método versão URL Formato da Mensagem - request sp sp cr lf cr lf campo:valor cr lf campo: valor campo: valor cr lf cr lf Corpo Redes de Computadores 2  (baseado nos slides do Kurose)

  6. http://... http 1.0 GET Formato da Mensagem - request GET (request) sp sp cr lf cr lf Host:www.cin.ufpe.br cr lf Connection: close Accept-language: fr cr lf cr lf Redes de Computadores 2  (baseado nos slides do Kurose)

  7. http://... http 1.0 POST Formato da Mensagem - request POST (request) sp sp cr lf cr lf Host:www.cin.ufpe.br cr lf Connection: close Accept-language: fr cr lf cr lf Infra-Comunicacao+http Redes de Computadores 2  (baseado nos slides do Kurose)

  8. http://... http 1.0 HEAD Formato da Mensagem - request HEAD (request) sp sp cr lf cr lf Host:www.cin.ufpe.br cr lf Connection: close Accept-language: fr cr lf cr lf • similar ao GET • desconsidera o objeto solicitado • usado para depuração Redes de Computadores 2  (baseado nos slides do Kurose)

  9. cod status versão mes. status Formato da Mensagem - response sp sp cr lf cr lf campo: valor cr lf campo: valor campo:valor cr lf cr lf Corpo da Mensagem Redes de Computadores 2  (baseado nos slides do Kurose)

  10. http://... http/1.1 http 1.0 GET 200 OK sp sp cr lf cr lf Host:www.cin.ufpe.br cr lf Connection: close Accept-language: fr cr lf cr lf Formato da Mensagem - response GET /somedir/page.html HTTP/1.0 Host:www.cin.ufpe.br Connection: close User-agent: Mozilla/4.0 Accept: text/html, image/gif,image/jpeg Accept-language:fr \n HTTP/1.1 200 OK Connection: close Date: Thu, 06 Aug 1998 12:00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun 1998 09:23:24 GMT Content-Length: 6821 Content-Type: text/html (Dado Dado Dado) sp sp cr lf cr lf Connection: close cr lf Date: Thu, 06 Aug 1998 12:00:15 GMT ... cr lf cr lf DADO Redes de Computadores 2  (baseado nos slides do Kurose)

  11. Formato da Mensagem - response Código Mensagem Significado telnet www.cin.ufpe.br 80 Redes de Computadores 2  (baseado nos slides do Kurose)

  12. Exemplo • interface com o protocolo • telnet www.cin.ufpe.br 80 • troca de mensagens com o protocolo • GET http://www.cin.ufpe.br/~prfc/aulas/index.html HTTP/1.1 Redes de Computadores 2  (baseado nos slides do Kurose)

  13. objetivo da autenticação: controle de acesso aos documentos do servidor stateless: o cliente deve apresentar a autorização a cada request autorização: nome + passwd authorization: linha do cabeçalho se a autorização não é apresentada o servidor recusa o acesso request normal + Authorization:valor request normal + Authorization:valor rsponse normal response normal tempo Interação com o servidor autenticada servidor cliente request normal 401: authorization req. WWW authenticate: Redes de Computadores 2  (baseado nos slides do Kurose)

  14. o servidor envia o cookie para o cliente Set-cookie: 1678453 o cliente apresenta o cookie em um acesso posterior cookie: 1678453 o servidor casa o cookie autenticação preferências request normal cookie: # request normal cookie: # response normal response normal Interação com o servidor com Cookies servidor cliente request normal response normal + Set-cookie: # ação específica para o cookie ação específica para o cookie Redes de Computadores 2  (baseado nos slides do Kurose)

  15. objetos não modificados não são enviados o cliente especifica a data If-modified-since: <data> o servidor responde sem um objeto caso a cópia não tenha sido atualizado HTTP/1.0 304 Not Modified response HTTP/1.0 304 Not Modified Interação com o servidor: GET condicional servidor cliente request If-modified-since: <date> objeto não modificado request If-modified-since: <date> objeto modificado response HTTP/1.1 200 OK … <data> Redes de Computadores 2  (baseado nos slides do Kurose)

More Related