SlideShare uma empresa Scribd logo
1 de 7
Baixar para ler offline
Introdução


                                                                             Redes de Computadores                                                                                                         ! Serviço world wide web
     Instituto de Informática - UFRGS




                                                                                                                                                                                                                 ! Aplicação cliente-servidor
                                                                                                                                                                                                                 ! Permite a publicação de documentos (servidor) e a recuperação e
                                                                                           HyperText Transfer Protocol                                                                                             visualização de documentos (cliente)
                                                                                                                                                                                                           ! Protocolo específico para interação cliente-servidor:
                                                                                                                                                                                                                 ! HTTP (Hyper Text Transfer Protocol)




                                                                                                                                              Instituto de Informática - UFRGS
                                                                                                                                                                                                                    ! Protocolo textual para transferir documentos em formato HTML (Hyper
                                                                                                                                                                                                                      Text Markup Language)
                                                                                                                                                                                                           ! O cliente se encarrega de interpretar o documento HTML (página) e




                                                                                                                                                                                 A. Carissimi -9-déc.-09
                                                                                                                                                                                                             exibir para o usuário


                                                                                                                                Aula 29
                                                                                                                                                                                                           Redes de Computadores                                                            2




                                       Componentes do serviço web                                                                                                                    Página web

                                                                                                                                                                                                           ! Documento web
                                                                                                                                                                                                           ! Composta por uma série de objetos: arquivo base HTML, imagens,
                                                                                 Cliente                     Servidor                                                                                        applets, clipes de vídeo, etc)
                                                                                  Web           HTTP           Web                                                                                               ! Èxemplo: página com texto e cinco imagens possui seis objetos
                                                                                                                                                                                                           ! Acessível através de um URL (Uniforme Resource Locator)
Instituto de Informática - UFRGS




                                                                                                                                              Instituto de Informática - UFRGS




                                                                                                                                                                                                                 ! Nome de um hospedeiro
                                                                               Cache                           Documentos
                                                                                                                  Web                                                                                            ! Caminho para um recurso no sistema de arquivos do hospedeiro
                                   A. Carissimi -9-déc.-09




                                                                                                                                                                                 A. Carissimi -9-déc.-09




                                                                                                                                                                                                                                   http://www.in.ufrgs.br/~asc/redes

                                                                                                           Páginas web (HTML)



                                                             Redes de Computadores                                                        3                                                                Redes de Computadores                                                            4
Cliente Web                                                                                                                                        Servidor web

                                                             ! Para o usuário, a web é conjunto de páginas                                                                                                      ! Cada site web possui um daemon (servidor web)
                                                             ! Páginas são visualizadas por programas específicos:                                                                                              ! Espera requisições de clientes (conexões TCP)
                                                                   ! Browsers (Netscape, Mozilla, MS Internet Explorer, etc)                                                                                          ! Cliente envia uma requisição ao servidor
                                                                                                                                                                                                                      ! Servidor atende requisição e envia resposta
                                                             ! Browser normalmente possui internamente vários interpretadores                                                                                         ! Conexão é desfeita*
                                                               permitindo a carga e a execução de páginas de diferentes tipos
                                                                                                                                                                                                                ! Servidor faz o armazenamento dos objetos
Instituto de Informática - UFRGS




                                                                                                                                                   Instituto de Informática - UFRGS
                                                                                                                                                                                                                      ! Exemplos: apache, Microsoft Internet Information Server, Netscape Enterprise
                                                                                                                                                                                                                        server
                                                                               Protocolo://nome_máquina:porta/recurso                                                                                           ! Interação baseada em dois elementos:
                                                                                                                                                                                                                      ! URL: Uniform Resource Locator
                                   A. Carissimi -9-déc.-09




                                                                                                                                                                                      A. Carissimi -9-déc.-09
                                                                                      http, htpps, ftp, mailto, news, telnet, ldap, file                                                                              ! HTTP: HyperText Transfer Protocol




                                                             Redes de Computadores                                                             5                                                                Redes de Computadores                                                                  6




                                       Hyper Text Transfer Protocol (HTTP)                                                                                                                Conexões não-persistentes

                                                             ! Protocolo de aplicação da web                                                                                                                    ! Usada nas versões 0.9, 1.0 e 1.1
                                                             ! Define forma como clientes solicitam páginas web aos servidores e                                                                                ! Uma conexão para cada objeto
                                                               como esses as transferem para os clientes                                                                                                              ! Cada conexão transporta exatamente uma requisição/resposta
                                                                                                                                                                                                                         ! Cliente abre a conexão, envia a requisição, o servidor envia a resposta e
                                                                   ! Determina apenas como os dados são transferidos: não indica, nem impõem
                                                                                                                                                                                                                           fecha a conexão (ex: uma página com 5 figuras envolve seis conexões,
                                                                     tipos de dados e determina nenhum tipo de processamento                                                                                               uma para página e uma para cada figura)
                                                                       ! Browser é que determina como os dados são processados                                                                                        ! Conexões podem ser feitas em paralelo para páginas com mais de um objeto
Instituto de Informática - UFRGS




                                                                                                                                                   Instituto de Informática - UFRGS




                                                             ! Emprega conexões TCP na porta 80 (default)                                                                                                                ! Número máximo de conexões é uma configuração do cliente
                                                             ! Protocolo stateless (sem estado) e orientado a mensagens                                                                                         ! Desvantagens:
                                                                   ! Servidor não mantém nenhuma informação sobre o cliente                                                                                           ! Tempo para estabelecimento
                                   A. Carissimi -9-déc.-09




                                                                                                                                                                                      A. Carissimi -9-déc.-09




                                                                                                                                                                                                                      ! Consumo de recursos do sistema (memória e descritores)
                                                             ! Possuem três versões: HTTP 0.9, HTTP 1.0 e HTTP 1.1
                                                                                                                                                                                                                      ! Cada conexão sofre o processo de partida lenta (slow start) do TCP



                                                             Redes de Computadores                                                             7                                                                Redes de Computadores                                                                  8
Conexões persistentes                                                                                                                                  Métodos HTTP

                                                             ! Disponível na versão HTTP/1.1                                                                                                                        ! HTTP foi criado para ser genérico
                                                             ! Uma conexão pode atender várias requisições/respostas                                                                                                      ! Tratamento de objetos e definições de métodos para manipulá-los
                                                                   ! A conexão é fechada pelo servidor em resposta a uma requisição de                                                                              ! Métodos suportados na versão 1.1 (visão do cliente)
                                                                     encerramento feita pelo cliente ou por time-out                                                                                                      ! GET: usado para solicitar a recuperação de um objeto
                                                                      ! Configurado no servidor                                                                                                                           ! POST: similar ao GET, mas envia informações obtidas por formulários
                                                             ! Duas versões:                                                                                                                                              ! PUT: solicita gravação de um objeto no servidor
Instituto de Informática - UFRGS




                                                                                                                                                       Instituto de Informática - UFRGS
                                                                   ! Sem paralelismo: cliente envia requisição i após ter recebido respostas da                                                                           ! PATCH: envia lista de modificações a serem feitas em um objeto
                                                                     requisição i-1                                                                                                                                       ! HEAD: solicita leitura apenas do cabeçalho da página
                                                                   ! Com paralelismo: envio de várias requisições sem esperar pela resposta                                                                               ! MOVE, COPY, DELETE, LINK e UNLIK: similares aos comandos de
                                   A. Carissimi -9-déc.-09




                                                                                                                                                                                          A. Carissimi -9-déc.-09
                                                                                                                                                                                                                            movimentação, cópia, remoção, criação e remoção de aliases em um sistema
                                                                                                                                                                                                                            de arquivos
                                                                                                                                                                                                                          ! OPTION: consulta propriedades do servidor ou de um objeto


                                                             Redes de Computadores                                                                9                                                                 Redes de Computadores                                                                     10




                                       Formatos da mensagem HTTP                                                                                                                              Mensagem de requisição

                                                             ! Dois formatos básicos:                                                                                                                               ! Linha de requisição possui três campos:
                                                                   ! Requisição e resposta                                                                                                                                ! Tipo da requisição (métodos)
                                                                   ! Mensagem em ASC II (exceto o corpo da mensagem em alguns casos)                                                                                         ! GET, HEAD, POST, PUT, PATCH, COPY, MOVE, DELETE, LINK,
                                                             ! Genericamente possuem três seções:                                                                                                                               UPLINK, OPTION
                                                                                                                                                                                                                          ! Uniform Resource Locator (URL): [protocolo] :// [máquina] : [porta] / [recurso]
                                                                   ! Linha de requisição/status
                                                                                                                                                                                                                          ! Versão HTTP
                                                                   ! Linhas de cabeçalho
Instituto de Informática - UFRGS




                                                                                                                                                       Instituto de Informática - UFRGS




                                                                   ! Corpo de entidade                                                                                                                              ! Linha(s) de cabeçalho
                                                                                                                                                                                                                          ! Conjunto de pares {nome de campo; valor}
                                                                                                                                                                                                                    ! Corpo da entidade
                                   A. Carissimi -9-déc.-09




                                                                                                                                                                                          A. Carissimi -9-déc.-09




                                                                                                                                                                                                                          ! Para métodos como POST que envia parâmetros para um formulário




                                                             Redes de Computadores                                                                11                                                                Redes de Computadores                                                                     12
Cabeçalhos da requisição                                                                                                                                Mensagem de requisição: formato e exemplo

                                                             ! Pares nome e valor                                                                                                                                            Requisição
                                                             ! Indicam ao servidor como realizar a requisição                                                                                                        Cabeçalhos

                                                             ! Exemplos:                                                                                                                                                    [nome; valor]                   GET /somedir/page.html HTTP/1.1
                                                                                                                                                                                                                                                            Host: www.someschool.edu
                                                                   !   Host: nome do servidor onde o objeto se encontra                                                                                                           ....
                                                                                                                                                                                                                                                            Connection: close
                                                                   !   Connection: se servidor deve encerrar ou não a conexão após enviar objeto                                                                            [nome; valor]                   User-agent: Mozilla/4.0
Instituto de Informática - UFRGS




                                                                                                                                                        Instituto de Informática - UFRGS
                                                                   !   User-agent: tipo do cliente que está fazendo a requisição                                                                                                                            Accept-language: fr
                                                                                                                                                                                                                      Linha em branco (CR/LF)
                                                                   !   Accept-language: idioma de preferência do usuário
                                                                                                                                                                                                                               Corpo
                                                                                                                                                                                                                        (presente apenas em
                                   A. Carissimi -9-déc.-09




                                                                                                                                                                                           A. Carissimi -9-déc.-09
                                                                                                                                                                                                                        algumas mensagens)
                                                                                                                                                                                                                                                          - Método GET não possui corpo
                                                                                                                                                                                                                     Mensagem de requisição               - Método POST envia aqui as informações


                                                             Redes de Computadores                                                                 13                                                                Redes de Computadores                                                                        14




                                       Mensagem de resposta                                                                                                                                    Códigos de status e cabeçalho de resposta

                                                             ! Linha de status define:                                                                                                                               ! Códigos mais comuns                          ! Cabeçalhos mais comuns
                                                                   ! Versão HTTP                                                                                                                                           ! 200: requisição processada com              ! Connection: informa ao cliente se o
                                                                                                                                                                                                                             sucesso                                       servidor encerrará ou não a conexão
                                                                   ! Código de status
                                                                                                                                                                                                                           ! 301: objeto solicitado foi movido           ! Date: hora e data do envio do objeto
                                                                   ! Frase explicativa do código de status                                                                                                                 ! 400: erro genérico no                       ! Last-modified: data e hora de
                                                             ! Linhas de cabeçalho                                                                                                                                           processamento                                 criação ou modificação do objeto
                                                                   ! Conjunto de pares {nome, valor}                                                                                                                       ! 404: objeto solicitado não existe           ! Server: tipo do servidor:
Instituto de Informática - UFRGS




                                                                                                                                                        Instituto de Informática - UFRGS




                                                                                                                                                                                                                           ! 505: versão requisitada não é               ! Content-lenght: tamanho da
                                                             ! Corpo da entidade                                                                                                                                             suportada                                     mensagem em bytes
                                                                   ! Objeto solicitado                                                                                                                                                                                   ! Content-type: tipo do objeto que
                                                                                                                                                                                                                                                                           está sendo enviado
                                   A. Carissimi -9-déc.-09




                                                                                                                                                                                           A. Carissimi -9-déc.-09




                                                             Redes de Computadores                                                                 15                                                                Redes de Computadores                                                                        16
Interação usuário/servidor: autenticação
                                     Mensagens de resposta: formato e exemplo

                                                                         Status
                                                                                                                                                                                                            ! Mecanismo para identificar usuários
                                                             Cabeçalhos                                                                                                                                           ! Exige a definição de um nome de usuário e uma senha
                                                                     [nome; valor]                                                                                                                                ! Codificação de status e cabeçalhos específicos para tal
                                                                                             HTTP/1.1 200 OK
                                                                           ...               Connection: close
                                                                                             Date: Thu, 06 Aug 1998 12:00:15 GMT
                                                                                                                                                                                                                                             Requisição
                                                                     [Nome; valor]           Server: Apache/1.3.0 (Unix)
Instituto de Informática - UFRGS




                                                                                                                                               Instituto de Informática - UFRGS
                                                                                             Last-Modified: Mon,22 jun 199809:23:24 GMT                                                                                              401 Authorization Required
                                                               Linha em branco (CR/LF)                                                                                                                                                                                         Servidor
                                                                                             Content-Length: 6821                                                                                                       Cliente
                                                                                             Content-Type: text/html                                                                                                                     Authorization
                                                                         Corpo
                                                                  (presente apenas em
                                   A. Carissimi -9-déc.-09




                                                                                                                                                                                  A. Carissimi -9-déc.-09
                                                                  algumas mensagens)         (data data data .... Data data data data)


                                                              Mensagem de resposta

                                                             Redes de Computadores                                                        17                                                                Redes de Computadores                                                                 18




                                       Interação usuário/servidor: cookies                                                                                                            Proxy Web

                                                             ! Armazenam informações dos usuários                                                                                                           ! Melhorar o desempenho realizando caching das páginas acessadas
                                                             ! Usos de cookies                                                                                                                              ! Segurança
                                                                   ! Identificar usuários sem necessitar nome e senha                                                                                             ! Máquina cliente não é visível do exterior
                                                                   ! Lembrar preferências de um usuário                                                                                                           ! Possibilidade de monitorar sites, palavras chaves, etc
                                                                   ! Carrinhos de compras, etc.                                                                                                                                      Proxy
                                                             ! Problema: usuários nômades (armazenamento é local)
Instituto de Informática - UFRGS




                                                                                                                                               Instituto de Informática - UFRGS




                                                                                          Requisição
                                                                        Cliente                                         Servidor                                                                                      reponse
                                                                                     Set-cookie: 167843
                                                                                                                                                                                                                                                                                    servidor
                                                                                                ...                                                                                                         Cliente        request
                                   A. Carissimi -9-déc.-09




                                                                                                                                                                                  A. Carissimi -9-déc.-09




                                                                                                                                                                                                                                                    Proxy web mais comum é o squid (porta 3128)
                                                                                         Cookie: 1678453
                                                                                                                                                                                                                                                            http://www.squid-cache.org


                                                             Redes de Computadores                                                        19                                                                Redes de Computadores                                                                 20
Caches cooperativos                                                                                                                                   GET condicional

                                                             ! Vantagens do uso de caches:                                                                                                                         ! Funcionamento baseado na cache cliente
                                                                   ! Redução do tempo de resposta                                                                                                                  ! Cópia na cache pode estar desatualizada
                                                                   ! Redução do tráfego no enlace instituição-Internet (economia largura de banda)                                                                       ! Emprega cabeçalho If-modified-since
                                                                   ! Infra-estrutura para distribuição de conteúdo para servidores e organizações
                                                                     de “baixo-custo”
                                                             ! Idéia é ao invés de repassar a consulta para o servidor web “origem”                                                                                                                    GET
Instituto de Informática - UFRGS




                                                                                                                                                      Instituto de Informática - UFRGS
                                                                                                                                                                                                                               Cliente                                   Servidor
                                                               repassar a um outro cache                                                                                                                                                      Last-Modified: data

                                                                   ! Organização de forma hierárquica (normalmente em backbones)                                                                                                                        ...
                                                             ! Protocolo específico: ICP (Internet Caching Protocol)                                                                                                                       GET If-Modified-Since: data
                                   A. Carissimi -9-déc.-09




                                                                                                                                                                                         A. Carissimi -9-déc.-09
                                                                                                                                                                                                                                           HTTP/1.0 304 Not Modified




                                                             Redes de Computadores                                                               21                                                                Redes de Computadores                                            22




                                       Hyper Text Transfer Protocol over SSL (HTTPS)                                                                                                         Exemplos reais de http

                                                             !   Protocolo de aplicação da web que utiliza criptografia                                                                                            ! Uma sessão de consulta a uma página web composta por um
                                                             !   Garante privacidade (criptografia)                                                                                                                  conjunto de objetos (com paralelismo e não persistente)
                                                                                                                                                                                                                         ! Sessão exemplo 1 http ethereal
                                                             !   Garante a identidade das partes envolvidas em uma transferência
                                                             !   Porta 443/TCP                                                                                                                                     ! Uma sessão de consulta a uma página web com https
                                                                                                                                                                                                                         ! Sessão exemplo 2 https
Instituto de Informática - UFRGS




                                                                                                                                                      Instituto de Informática - UFRGS




                                                                                     https://nome_máquina/recurso
                                   A. Carissimi -9-déc.-09




                                                                                                                                                                                         A. Carissimi -9-déc.-09




                                                             Redes de Computadores                                                               23                                                                Redes de Computadores                                            24
Leituras complementares

                                                             ! Tanenbaum, A. Redes de Computadores (4a edição), Campus 2003.
                                                                   ! Capítulo 7, seção 7.3.4
                                                             ! Carissimi, A.; Rochol, J; Granville, L.Z; Redes de Computadores.
                                                               Série Livros Didáticos. Bookman 2009.
                                                                   ! Capítulo 7, seção 7.3
Instituto de Informática - UFRGS
                                   A. Carissimi -9-déc.-09




                                                             Redes de Computadores                                                25

Mais conteúdo relacionado

Semelhante a Aula29

Garantindo o sucesso da experiência do usuário por Carlos bertozzi
Garantindo o sucesso da experiência do usuário por Carlos bertozziGarantindo o sucesso da experiência do usuário por Carlos bertozzi
Garantindo o sucesso da experiência do usuário por Carlos bertozzi
Joao Galdino Mello de Souza
 
Web Services - Grupo F
Web Services - Grupo FWeb Services - Grupo F
Web Services - Grupo F
mdmansur
 
Aula 5 camada de aplicacao
Aula 5   camada de aplicacaoAula 5   camada de aplicacao
Aula 5 camada de aplicacao
wab030
 
Universidade rural de pernambuco
Universidade rural de pernambucoUniversidade rural de pernambuco
Universidade rural de pernambuco
Jéssica Melo
 

Semelhante a Aula29 (20)

Workshop its
Workshop itsWorkshop its
Workshop its
 
Workshop its
Workshop itsWorkshop its
Workshop its
 
Introdução a Web Services
Introdução a Web ServicesIntrodução a Web Services
Introdução a Web Services
 
Garantindo o sucesso da experiência do usuário por Carlos bertozzi
Garantindo o sucesso da experiência do usuário por Carlos bertozziGarantindo o sucesso da experiência do usuário por Carlos bertozzi
Garantindo o sucesso da experiência do usuário por Carlos bertozzi
 
RC - SL02 - Camada de Aplicacao
RC - SL02 - Camada de AplicacaoRC - SL02 - Camada de Aplicacao
RC - SL02 - Camada de Aplicacao
 
Web services
Web servicesWeb services
Web services
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de Sistemas
 
Web Services - Grupo F
Web Services - Grupo FWeb Services - Grupo F
Web Services - Grupo F
 
Apresentação sobre web 2.0
Apresentação sobre web 2.0Apresentação sobre web 2.0
Apresentação sobre web 2.0
 
http
httphttp
http
 
Sistema de Ponto Eletrônico Digital: projeto e implementação de hardware e so...
Sistema de Ponto Eletrônico Digital: projeto e implementação de hardware e so...Sistema de Ponto Eletrônico Digital: projeto e implementação de hardware e so...
Sistema de Ponto Eletrônico Digital: projeto e implementação de hardware e so...
 
Aula06
Aula06Aula06
Aula06
 
Aula 5 camada de aplicacao
Aula 5   camada de aplicacaoAula 5   camada de aplicacao
Aula 5 camada de aplicacao
 
Unidade 1 redes de comp
Unidade 1   redes de compUnidade 1   redes de comp
Unidade 1 redes de comp
 
Dream Report com InduSoft Web Studio
Dream Report com InduSoft Web StudioDream Report com InduSoft Web Studio
Dream Report com InduSoft Web Studio
 
Servidor web
Servidor webServidor web
Servidor web
 
Apache traffic server uma alternativa ao squid para web caches - fisl 14
Apache traffic server  uma alternativa ao squid para web caches - fisl 14Apache traffic server  uma alternativa ao squid para web caches - fisl 14
Apache traffic server uma alternativa ao squid para web caches - fisl 14
 
Universidade rural de pernambuco
Universidade rural de pernambucoUniversidade rural de pernambuco
Universidade rural de pernambuco
 
Aula17
Aula17Aula17
Aula17
 
Aula26
Aula26Aula26
Aula26
 

Mais de redesinforma (20)

Redes2
Redes2Redes2
Redes2
 
Redes3
Redes3Redes3
Redes3
 
Redes osi
Redes osiRedes osi
Redes osi
 
Questoes
QuestoesQuestoes
Questoes
 
Redes lista exercicios
Redes lista exerciciosRedes lista exercicios
Redes lista exercicios
 
Lista exerc conceitos-mod-ref
Lista exerc conceitos-mod-refLista exerc conceitos-mod-ref
Lista exerc conceitos-mod-ref
 
Exercícios para semestre
Exercícios para semestreExercícios para semestre
Exercícios para semestre
 
Exercicio parte1
Exercicio parte1Exercicio parte1
Exercicio parte1
 
Redes4
Redes4Redes4
Redes4
 
Redes5
Redes5Redes5
Redes5
 
Tcp transmission control protocol e ip internet protocol
Tcp  transmission control protocol e ip internet protocolTcp  transmission control protocol e ip internet protocol
Tcp transmission control protocol e ip internet protocol
 
Sincronas
SincronasSincronas
Sincronas
 
Semfio
SemfioSemfio
Semfio
 
Roteament
RoteamentRoteament
Roteament
 
Ri l5 052
Ri l5 052Ri l5 052
Ri l5 052
 
Ri a9
Ri a9Ri a9
Ri a9
 
Ri a8
Ri a8Ri a8
Ri a8
 
Ri a7
Ri a7Ri a7
Ri a7
 
Ri a6
Ri a6Ri a6
Ri a6
 
Ri a3
Ri a3Ri a3
Ri a3
 

Último

19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
marlene54545
 
QUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geralQUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geral
AntonioVieira539017
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
AntonioVieira539017
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
tatianehilda
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
azulassessoria9
 

Último (20)

Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de LedAula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
Aula 67 e 68 Robótica 8º ano Experimentando variações da matriz de Led
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
Camadas da terra -Litosfera conteúdo 6º ano
Camadas da terra -Litosfera  conteúdo 6º anoCamadas da terra -Litosfera  conteúdo 6º ano
Camadas da terra -Litosfera conteúdo 6º ano
 
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
 
O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.O que é arte. Definição de arte. História da arte.
O que é arte. Definição de arte. História da arte.
 
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
Apresentação | Dia da Europa 2024 - Celebremos a União Europeia!
 
classe gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptxclasse gramatical Substantivo apresentação..pptx
classe gramatical Substantivo apresentação..pptx
 
Conflitos entre: ISRAEL E PALESTINA.pdf
Conflitos entre:  ISRAEL E PALESTINA.pdfConflitos entre:  ISRAEL E PALESTINA.pdf
Conflitos entre: ISRAEL E PALESTINA.pdf
 
QUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geralQUIZ ensino fundamental 8º ano revisão geral
QUIZ ensino fundamental 8º ano revisão geral
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
 
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdf
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdfAula prática JOGO-Regencia-Verbal-e-Nominal.pdf
Aula prática JOGO-Regencia-Verbal-e-Nominal.pdf
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
 
Aula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .pptAula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .ppt
 
8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito8 Aula de predicado verbal e nominal - Predicativo do sujeito
8 Aula de predicado verbal e nominal - Predicativo do sujeito
 
Cópia de AULA 2- ENSINO FUNDAMENTAL ANOS INICIAIS - LÍNGUA PORTUGUESA.pptx
Cópia de AULA 2- ENSINO FUNDAMENTAL ANOS INICIAIS - LÍNGUA PORTUGUESA.pptxCópia de AULA 2- ENSINO FUNDAMENTAL ANOS INICIAIS - LÍNGUA PORTUGUESA.pptx
Cópia de AULA 2- ENSINO FUNDAMENTAL ANOS INICIAIS - LÍNGUA PORTUGUESA.pptx
 
Pesquisa Ação René Barbier Livro acadêmico
Pesquisa Ação René Barbier Livro  acadêmicoPesquisa Ação René Barbier Livro  acadêmico
Pesquisa Ação René Barbier Livro acadêmico
 
Sistema de Bibliotecas UCS - Cantos do fim do século
Sistema de Bibliotecas UCS  - Cantos do fim do séculoSistema de Bibliotecas UCS  - Cantos do fim do século
Sistema de Bibliotecas UCS - Cantos do fim do século
 
Texto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.pptTexto dramático com Estrutura e exemplos.ppt
Texto dramático com Estrutura e exemplos.ppt
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 

Aula29

  • 1. Introdução Redes de Computadores ! Serviço world wide web Instituto de Informática - UFRGS ! Aplicação cliente-servidor ! Permite a publicação de documentos (servidor) e a recuperação e HyperText Transfer Protocol visualização de documentos (cliente) ! Protocolo específico para interação cliente-servidor: ! HTTP (Hyper Text Transfer Protocol) Instituto de Informática - UFRGS ! Protocolo textual para transferir documentos em formato HTML (Hyper Text Markup Language) ! O cliente se encarrega de interpretar o documento HTML (página) e A. Carissimi -9-déc.-09 exibir para o usuário Aula 29 Redes de Computadores 2 Componentes do serviço web Página web ! Documento web ! Composta por uma série de objetos: arquivo base HTML, imagens, Cliente Servidor applets, clipes de vídeo, etc) Web HTTP Web ! Èxemplo: página com texto e cinco imagens possui seis objetos ! Acessível através de um URL (Uniforme Resource Locator) Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! Nome de um hospedeiro Cache Documentos Web ! Caminho para um recurso no sistema de arquivos do hospedeiro A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 http://www.in.ufrgs.br/~asc/redes Páginas web (HTML) Redes de Computadores 3 Redes de Computadores 4
  • 2. Cliente Web Servidor web ! Para o usuário, a web é conjunto de páginas ! Cada site web possui um daemon (servidor web) ! Páginas são visualizadas por programas específicos: ! Espera requisições de clientes (conexões TCP) ! Browsers (Netscape, Mozilla, MS Internet Explorer, etc) ! Cliente envia uma requisição ao servidor ! Servidor atende requisição e envia resposta ! Browser normalmente possui internamente vários interpretadores ! Conexão é desfeita* permitindo a carga e a execução de páginas de diferentes tipos ! Servidor faz o armazenamento dos objetos Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! Exemplos: apache, Microsoft Internet Information Server, Netscape Enterprise server Protocolo://nome_máquina:porta/recurso ! Interação baseada em dois elementos: ! URL: Uniform Resource Locator A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 http, htpps, ftp, mailto, news, telnet, ldap, file ! HTTP: HyperText Transfer Protocol Redes de Computadores 5 Redes de Computadores 6 Hyper Text Transfer Protocol (HTTP) Conexões não-persistentes ! Protocolo de aplicação da web ! Usada nas versões 0.9, 1.0 e 1.1 ! Define forma como clientes solicitam páginas web aos servidores e ! Uma conexão para cada objeto como esses as transferem para os clientes ! Cada conexão transporta exatamente uma requisição/resposta ! Cliente abre a conexão, envia a requisição, o servidor envia a resposta e ! Determina apenas como os dados são transferidos: não indica, nem impõem fecha a conexão (ex: uma página com 5 figuras envolve seis conexões, tipos de dados e determina nenhum tipo de processamento uma para página e uma para cada figura) ! Browser é que determina como os dados são processados ! Conexões podem ser feitas em paralelo para páginas com mais de um objeto Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! Emprega conexões TCP na porta 80 (default) ! Número máximo de conexões é uma configuração do cliente ! Protocolo stateless (sem estado) e orientado a mensagens ! Desvantagens: ! Servidor não mantém nenhuma informação sobre o cliente ! Tempo para estabelecimento A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 ! Consumo de recursos do sistema (memória e descritores) ! Possuem três versões: HTTP 0.9, HTTP 1.0 e HTTP 1.1 ! Cada conexão sofre o processo de partida lenta (slow start) do TCP Redes de Computadores 7 Redes de Computadores 8
  • 3. Conexões persistentes Métodos HTTP ! Disponível na versão HTTP/1.1 ! HTTP foi criado para ser genérico ! Uma conexão pode atender várias requisições/respostas ! Tratamento de objetos e definições de métodos para manipulá-los ! A conexão é fechada pelo servidor em resposta a uma requisição de ! Métodos suportados na versão 1.1 (visão do cliente) encerramento feita pelo cliente ou por time-out ! GET: usado para solicitar a recuperação de um objeto ! Configurado no servidor ! POST: similar ao GET, mas envia informações obtidas por formulários ! Duas versões: ! PUT: solicita gravação de um objeto no servidor Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! Sem paralelismo: cliente envia requisição i após ter recebido respostas da ! PATCH: envia lista de modificações a serem feitas em um objeto requisição i-1 ! HEAD: solicita leitura apenas do cabeçalho da página ! Com paralelismo: envio de várias requisições sem esperar pela resposta ! MOVE, COPY, DELETE, LINK e UNLIK: similares aos comandos de A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 movimentação, cópia, remoção, criação e remoção de aliases em um sistema de arquivos ! OPTION: consulta propriedades do servidor ou de um objeto Redes de Computadores 9 Redes de Computadores 10 Formatos da mensagem HTTP Mensagem de requisição ! Dois formatos básicos: ! Linha de requisição possui três campos: ! Requisição e resposta ! Tipo da requisição (métodos) ! Mensagem em ASC II (exceto o corpo da mensagem em alguns casos) ! GET, HEAD, POST, PUT, PATCH, COPY, MOVE, DELETE, LINK, ! Genericamente possuem três seções: UPLINK, OPTION ! Uniform Resource Locator (URL): [protocolo] :// [máquina] : [porta] / [recurso] ! Linha de requisição/status ! Versão HTTP ! Linhas de cabeçalho Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! Corpo de entidade ! Linha(s) de cabeçalho ! Conjunto de pares {nome de campo; valor} ! Corpo da entidade A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 ! Para métodos como POST que envia parâmetros para um formulário Redes de Computadores 11 Redes de Computadores 12
  • 4. Cabeçalhos da requisição Mensagem de requisição: formato e exemplo ! Pares nome e valor Requisição ! Indicam ao servidor como realizar a requisição Cabeçalhos ! Exemplos: [nome; valor] GET /somedir/page.html HTTP/1.1 Host: www.someschool.edu ! Host: nome do servidor onde o objeto se encontra .... Connection: close ! Connection: se servidor deve encerrar ou não a conexão após enviar objeto [nome; valor] User-agent: Mozilla/4.0 Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! User-agent: tipo do cliente que está fazendo a requisição Accept-language: fr Linha em branco (CR/LF) ! Accept-language: idioma de preferência do usuário Corpo (presente apenas em A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 algumas mensagens) - Método GET não possui corpo Mensagem de requisição - Método POST envia aqui as informações Redes de Computadores 13 Redes de Computadores 14 Mensagem de resposta Códigos de status e cabeçalho de resposta ! Linha de status define: ! Códigos mais comuns ! Cabeçalhos mais comuns ! Versão HTTP ! 200: requisição processada com ! Connection: informa ao cliente se o sucesso servidor encerrará ou não a conexão ! Código de status ! 301: objeto solicitado foi movido ! Date: hora e data do envio do objeto ! Frase explicativa do código de status ! 400: erro genérico no ! Last-modified: data e hora de ! Linhas de cabeçalho processamento criação ou modificação do objeto ! Conjunto de pares {nome, valor} ! 404: objeto solicitado não existe ! Server: tipo do servidor: Instituto de Informática - UFRGS Instituto de Informática - UFRGS ! 505: versão requisitada não é ! Content-lenght: tamanho da ! Corpo da entidade suportada mensagem em bytes ! Objeto solicitado ! Content-type: tipo do objeto que está sendo enviado A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 Redes de Computadores 15 Redes de Computadores 16
  • 5. Interação usuário/servidor: autenticação Mensagens de resposta: formato e exemplo Status ! Mecanismo para identificar usuários Cabeçalhos ! Exige a definição de um nome de usuário e uma senha [nome; valor] ! Codificação de status e cabeçalhos específicos para tal HTTP/1.1 200 OK ... Connection: close Date: Thu, 06 Aug 1998 12:00:15 GMT Requisição [Nome; valor] Server: Apache/1.3.0 (Unix) Instituto de Informática - UFRGS Instituto de Informática - UFRGS Last-Modified: Mon,22 jun 199809:23:24 GMT 401 Authorization Required Linha em branco (CR/LF) Servidor Content-Length: 6821 Cliente Content-Type: text/html Authorization Corpo (presente apenas em A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 algumas mensagens) (data data data .... Data data data data) Mensagem de resposta Redes de Computadores 17 Redes de Computadores 18 Interação usuário/servidor: cookies Proxy Web ! Armazenam informações dos usuários ! Melhorar o desempenho realizando caching das páginas acessadas ! Usos de cookies ! Segurança ! Identificar usuários sem necessitar nome e senha ! Máquina cliente não é visível do exterior ! Lembrar preferências de um usuário ! Possibilidade de monitorar sites, palavras chaves, etc ! Carrinhos de compras, etc. Proxy ! Problema: usuários nômades (armazenamento é local) Instituto de Informática - UFRGS Instituto de Informática - UFRGS Requisição Cliente Servidor reponse Set-cookie: 167843 servidor ... Cliente request A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 Proxy web mais comum é o squid (porta 3128) Cookie: 1678453 http://www.squid-cache.org Redes de Computadores 19 Redes de Computadores 20
  • 6. Caches cooperativos GET condicional ! Vantagens do uso de caches: ! Funcionamento baseado na cache cliente ! Redução do tempo de resposta ! Cópia na cache pode estar desatualizada ! Redução do tráfego no enlace instituição-Internet (economia largura de banda) ! Emprega cabeçalho If-modified-since ! Infra-estrutura para distribuição de conteúdo para servidores e organizações de “baixo-custo” ! Idéia é ao invés de repassar a consulta para o servidor web “origem” GET Instituto de Informática - UFRGS Instituto de Informática - UFRGS Cliente Servidor repassar a um outro cache Last-Modified: data ! Organização de forma hierárquica (normalmente em backbones) ... ! Protocolo específico: ICP (Internet Caching Protocol) GET If-Modified-Since: data A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 HTTP/1.0 304 Not Modified Redes de Computadores 21 Redes de Computadores 22 Hyper Text Transfer Protocol over SSL (HTTPS) Exemplos reais de http ! Protocolo de aplicação da web que utiliza criptografia ! Uma sessão de consulta a uma página web composta por um ! Garante privacidade (criptografia) conjunto de objetos (com paralelismo e não persistente) ! Sessão exemplo 1 http ethereal ! Garante a identidade das partes envolvidas em uma transferência ! Porta 443/TCP ! Uma sessão de consulta a uma página web com https ! Sessão exemplo 2 https Instituto de Informática - UFRGS Instituto de Informática - UFRGS https://nome_máquina/recurso A. Carissimi -9-déc.-09 A. Carissimi -9-déc.-09 Redes de Computadores 23 Redes de Computadores 24
  • 7. Leituras complementares ! Tanenbaum, A. Redes de Computadores (4a edição), Campus 2003. ! Capítulo 7, seção 7.3.4 ! Carissimi, A.; Rochol, J; Granville, L.Z; Redes de Computadores. Série Livros Didáticos. Bookman 2009. ! Capítulo 7, seção 7.3 Instituto de Informática - UFRGS A. Carissimi -9-déc.-09 Redes de Computadores 25