• Nenhum resultado encontrado

REDES E SISTEMAS INTERNET

N/A
N/A
Protected

Academic year: 2018

Share "REDES E SISTEMAS INTERNET"

Copied!
50
0
0

Texto

(1)

REDES E SISTEMAS

INTERNET

Camada de Aplicação

(2)

Roteiro

Introdução

DNS

Web

Correio eletrônico

(3)

Introdução

Recapitulando:

Protocolo da camada 5

Protocolo da camada 4

Protocolo da camada 3

Protocolo da camada 2

(4)

Introdução

Layer 5

ou Camada de Aplicação:

• Fornece o uso realmente útil das redes  aplicações dos usuários

• Mesmo na camada de aplicação são necessários protocolos de suporte:

• Irá usar o serviço de entrega confiável da camada de transporte para oferecer utilidades para os usuários

(5)

DNS - Domain Name System

Imagine se você precisasse acessar um site

assim:

http://128.111.24.12

Ou enviar um e-mail assim

danilo@128.111.24.12

Quais os problemas com essa abordagem?

Solução: usar nomes ao invés de números!

Como é feito o mapeamento:

(6)

DNS - Domain Name System

RFCs 1034 e 1035

Essência do DNS:

• Esquema hierárquico de atribuição de nomes baseado no domínio

• Sistema de bancos de dados distribuído para implementar esse esquema de nomenclatura

Como funciona?

• Um programa aplicativo chama um procedimento de biblioteca (resolvedor – ex: gethostbyname) passando o nome como

parâmetro

• O resolvedor envia um pacote UDP ao servidor DNS local, que procura o nome e retorna o endereço IP ao resolvedor

(7)

DNS - Domain Name System

Problema: gerenciar um grande conjunto de

nomes é complexo

• Solução: uso de endereçamento hierárquico

• Semelhante à organização de endereços postais ou números de livros em uma biblioteca

• Estrutura:

Mais de 250 domínios de nível superior (coordenados pela

ICANN -

Internet Corporation for Assigned Names and

Numbers)

Domínios de nível superior particionados em subdomínios

(8)

DNS - Domain Name System

Uma parte do espaço de nomes de domínios da Internet.

(9)

DNS - Domain Name System

Um nome é definido pelo caminho ascendente

entre ele e a raiz

deinfo.ufrpe.br

eng.yale.edu

(10)

DNS - Registros

O que precisamos obter do servidor de DNS na

maioria das vezes é o IP, dado o domínio

Na prática uma entrada no servidor DNS é uma

tupla:

• Nome do domínio  nossa chave da tabela de pesquisa

• Time to live  indicação da estabilidade do registro, em segundos

• Class  pouco usado, no caso de domínios da Internet é IN

• Type  tipo de registro (Vide mais importantes na próxima tabela)

(11)

DNS - Registros

Tipos de registro e valores:

Exemplos de registros:

Tipo Significado Valor

A e AAAA

Endereço IP de um host (AAAA é para IPv6)

Inteiro 32 bits (ou 128 para AAAA)

MX Troca de mensagens de correio Prioridade, domínio disposto a aceitar correio eletrônico

NS Servidor de nomes Nome de um servidor para este domínio

CNAME Nome canônico Nome de domínio

www.ufrpe.br

35403 IN A 200.17.137.39

cs.mit.edu

1800 IN CNAME eecs.mit.edu

gmail.com

3153 IN MX 40 alt4.gmail-smtp-in.l.google.com.

(12)

DNS - Registros

Tipos de registro e valores 

saída do dig:

(13)

DNS - Servidores

Estrutura descentralizada/distribuída 

vários

servidores

Divisão em zonas

Espaço de nomes do DNS mostrando a divisão em zonas

(14)

DNS - Pesquisa

Origem

Servidor de nomes vu cs

Servidor de nomes edu

Servidor de nomes yale

Servidor de nomes yale cs

1 2 3

4

(15)

DNS - Pesquisa

Otimização

Caching

• Os resultados podem ser armazenados em cache  princípio da localidade de referência / temporal

• Campo time to live nas tabelas evitam cache desatualizada

Replicação

• Existem vários servidores raízes espalhados pelo mundo!

(16)

DNS - Prática

Use o aplicativo DIG para obter os registros DSN

de vários sites conhecidos:

• www.google.com, www.amazon.com, www.facebook.com,

www.ufrpe.br

Identifique:

• Quais os nomes são mais estáveis (usando o TTL)?

• Quais os nomes possuem mais de um registro?

• O que isso significa?

• Quais os nomes estão associados a servidores que já suportam IPv6?

(17)

Web

Definição:

A Web (WWW- World Wide Web) é uma estrutura

arquitetônica que permite o acesso a documentos

vinculados espalhados por uma infinidade de máquinas

na Internet

World Wide Web Consortium (W3C) 

Organização

voltada para:

O desenvolvimento da Web

A

padronização de protocolos

(18)

Web

Arquitetura

Servidor 1

Cliente

(19)

Web

Arquitetura

Cliente

• Navegadores  função original – interpretar HTML

• Passos que ocorrem quando um usuário escreve www.ufrpe.br: 1. O navegador pergunta ao DNS qual é o endereço IP da URL.

2. O DNS responde com 200.17.137.39.

3. O navegador estabelece uma conexão TCP com a porta 80 em

200.17.137.39.

4. O servidor www.ufrpe.br envia um arquivo index.html ou equivalente.

5. A conexão TCP é encerrada.

6. O navegador exibe todo o texto do HTML.

7. O navegador busca e exibe todas as imagens (e outros recursos) que

(20)

Web

Arquitetura

Cliente 

Plug-ins e programas auxiliares

(a) Um plug-in de navegador (b) Uma aplicação auxiliar

Interface plugin-browser

Estação do Cliente

Kernel do Browser

Plugin

Estação do Cliente

Browser Programa Auxiliar A execução ocorre em um mesmo processo! Processo 1 Processo 2

(21)

Web

Arquitetura

Servidor

essência

Aceitar uma conexão TCP de um cliente (um

navegador)

Obter o nome do arquivo solicitado

Obter o arquivo (do disco)

Retornar o arquivo ao cliente

Encerrar a conexão TCP

Otimizações “óbvias”:

Caching

(22)

Web

Arquitetura

Um servidor da Web multithreaded com um front end e módulos de

processamento.

Módulo de processamento (thread)

Front end

Requisição na entrada

(23)

Web

Arquitetura

URL (Uniform Resource Locator)

Identificação única de um recurso na Web

Composto de 3 partes:

http://www.cs.vu.nl/video/index-en.html

Protocolo Nome DNS da máquina em que a

página está

(24)

Web

Arquitetura

Solicitação-resposta não mantém estado 

Caso

clássico de

e-commerce

Cookies 

RFC 2109

• Informação enviada pelo servidor Web e gravada no cliente

(25)

Web

Tipos de Conteúdo

Função básica do servidor Web 

obter recursos

estático no servidor:

• HTML, XML

• Imagens, áudio

O que o Web server padrão não faz?

Gerar conteúdo dinâmico

Consultar e manipular dados em um SGBD

Tecnologias de extensão:

• Scripts CGI, ASP, PHP, Servlets,...

(26)

Web

HTTP

HTTP (HyperText Transfer Protocol) - RFC 2616

Protocolo de transferência utilizado em toda Web

Conexão TCP na porta 80

HTTP 1.0 

conexões encerradas por solicitação x

resposta

HTTP 1.1 

conexões persistentes

Mensagens de solicitação e resposta são texto

ASCII semelhante aos protocolos de e-mail

(27)

Web

HTTP

Formato básico de uma requisição:

MÉTODO URL VERSÃO_HTTP

Ex: GET http://www.ufrpe.br HTTP/1.1

Alguns métodos:

Método Descrição

GET Solicita a leitura de uma pagina da Web

HEAD Solicita a leitura de um cabeçalho de pagina da Web PUT Solicita o armazenamento de uma pagina da Web

(28)
(29)

Web

HTTP

Resposta:

Linha de status

Dados adicionais

Alguns status:

Códig o

Significado Exemplos

1xx Informação 100 = server agrees to handle client's request

(30)

Web

HTTP

Cabeçalhos:

A linha com o nome do método pode ser seguida de

informações adicionais

Semelhante aos parâmetros de um método de uma LP

(31)

Web

HTTP

Tipo Cabeçalho Conteúdo

REQ User-Agent Informações sobre o navegador e sua plataforma Accept-Charset Os conjuntos de caracteres aceitáveis para o cliente Accept-Encoding As codificações de paginas que o cliente pode manipular Host O nome DNS do servidor

Cookie Envia um cookie definido anteriormente de volta ao servidor Ambos Date Data e hora em que a mensagem foi enviada

RES Server Informações sobre o servidor

Content-Length O comprimento da pagina em bytes Content-Type O tipo MIME da pagina

Last-Modified Data e hora da ultima modificação na pagina

(32)

Web

HTTP

Exemplo: o clique em um link para exibição de

uma imagem invocará uma solicitação HTTP

usando GET

GET ...

(33)

Web

HTTP

Requisição GET

Linhas de Cabeçalho

O método HTTP

O caminho do recurso no Servidor

Usando GET,

parâmetros podem ser adicionados na URL

(34)

Web

HTTP

Resposta

Um texto que representa o status do retorno

Um código de status do retorno A versão do

protocolo do servidor

A linha de cabeçalho

Content-type também é conhecida como MIME type. Informa ao

browser que tipo de documento está sendo enviado!

HTML ou

outro conteúdo Linhas

de

(35)

Correio Eletrônico

Várias RFCs, com destaque para 822

Formato básico das mensagens da RFC 822:

Cabeçalho

Linha em branco

Corpo

From: araujo.danilo.r.b@gmail.com

To: abcd@gmail.com

Subject: Teste de e-mail Date: 2011-10-13

Caro abcd,

Olá, isso é um teste! Sds,

(36)

Correio Eletrônico - Formato

Algumas entradas no cabeçalho:

Extensões podem ser criadas usando

X-<novo_header>

Cabeçalho Significado

To: O(s) endereço(s) de correio eletrônico do(s) destinatário(s) principal(is) Cc: O(s) endereço(s) de correio eletrônico do(s) destinatário(s) secundário(s) Bcc: O(s) endereço(s) de correio eletrônico para cópias carbono cegas

From: Endereço do remetente

Date: Data em que a mensagem foi enviada Subject: Assunto da mensagem

(37)

Correio Eletrônico - MIME

Problemas com RFC 822 original:

• Texto ASCII apenas não atendem algumas categorias de mensagens

• Mensagens em idiomas com acentos (por exemplo, português e alemão)

• Mensagens em símbolos não latinos (hebraico, russo, japonês, árabe)

• Mensagens que não contem textos (por exemplo, áudio ou imagens)

MIME (Multipurpose Internet Mail Extensions)

• Continua usando a RFC 822 mas extende para situações que não usam ASCII

• Definido na RFC 1341 e melhorado nas RFCs 2045 a 2049

(38)

Correio Eletrônico - MIME

Cabeçalhos MIME:

Cabeçalho Significado

MIME-Version: Identifica a versão do MIME

Content-Description: String inteligível que identifica o conteúdo da mensagem

Content-ld: Identificador exclusivo

Content-Transfer-Encoding:

Como o corpo da mensagem é codificado para transmissão

(39)

Correio Eletrônico - MIME

Content-Transfer-Encoding:

• informa como o corpo da mensagem está codificado para

transmissão através de uma rede que possa fazer alguma objeção a caracteres que não sejam letras, números e outros sinais de

pontuação

• Como transferir os dados binários de uma imagem por uma rede que só aceita ASCII?

• Exemplo de mapeamento  BASE 64

• Agrupamentos de 24 bits em 4 unidades de 6 bits

• 000000  A, 000001  B, e assim por diante

• Se o último grupo contem 8 ou 16 bits, são usados = e ==, respectivamente

Content-Type: tipo e subtipo da mensagem, separados

por /

(40)

Correio Eletrônico - MIME

Tipos e subtipos MIME definidos na RFC 2045:

Tipo Subtipo Descricao

Text Plain Texto sem formatacao

Html Texto incluindo formatação HTML

Image Gif Imagem no formato GIF

Jpeg Imagem no formato JPEG

Audio Basic Som audível

Video Mpeg Filme no formato MPEG

Multipart Mixed Recursos independentes na ordem especificada

(41)

Uma mensagem em várias partes contendo as alternativas de texto formatado e áudio.

Especifica um delimitador

(42)

Correio Eletrônico - Transferência

No baixo nível corresponde ao envio de pacotes usando

TCP.

Protocolos relacionados:

• SMTP (Simple Mail Transfer Protocol)

• POP (Post Office Protocol)

(43)

Correio Eletrônico - SMTP

SMTP (Simple Mail Transfer Protocol)

Daemon espera por conexões TCP na porta 25

(44)

Correio Eletrônico - SMTP

Usando SMTP duas máquinas poderiam trocar

e-mails

Isso funciona na prática?

Quando você envia e recebe um e-mail é usado

SMTP?

Elionor

Carolyn

SMTP (From: elinor@abcd.com; To: carolyn@xyz.com)

(45)

Correio Eletrônico

POP3

Porque só SMTP não funciona bem?

• O que acontece quando Elinor quer enviar a Carolyn uma mensagem

de correio eletrônico e Carolyn não está on-line no momento?

• Estações de usuários não podem ser usadas como servidores 24 x 7

• Uso do conceito de caixa postal  as mensagens são enviadas para

um servidor

• Deve existir um protocolo para obter a mensagem a partir do servidor

Elionor

Carolyn

SMTP

Servidor

(46)

Correio Eletrônico

POP3

POP3 (Post Office Protocol 3)

RFC 1939

Daemon espera por conexões TCP na porta 110

Estados:

Autorização

Transações

(47)

Correio Eletrônico

IMAP

IMAP (Internet Message Access Protocol)

RFC 2060, porta TCP 143

Padrão de uso de POP 

baixar e-mails para HD

Padrão IMAP 

supõe que o usuário quer ler os

e-mails on-line em computadores diferentes

(48)

Correio Eletrônico

Considerações...

Alguns recursos adicionais oferecidos:

• Daemon de férias

• Filtros (SPAM)

(49)

Correio Eletrônico

Considerações...

Pesquisas apontam que há uma tendência em troca de

mensagens de forma cada vez mais instantânea

Uso de cartas x e-mail x redes sociais x aplicativos de

mensagens instantâneas no smartphone

A análise é feita por gerações:

• O maior público de novos usuários do Facebook é entre 30 e 50 anos?!

• O público jovem usa mais recursos de mensagens instantâneas do que e-mail e redes sociais?!

Na década de 90 o número de e-mails trocados por dia

ultrapassou o número diário de cartas

(50)

REDES E SISTEMAS

INTERNET

Camada de Aplicação

Referências

Documentos relacionados

Os dados coletados da base foram submetidos a uma análise quantitativa que permitiu a elaboração de tabelas e gráficos, nos quais se observa que no período

1b pode ser usada como rectificador de comutação forçada para intercalar entre a rede de energia e um ondulador de tensão de um accionamento.. Requer pequenas auto-induções

Por último, temos o vídeo que está sendo exibido dentro do celular, que é segurado e comentado por alguém, e compartilhado e comentado no perfil de BolsoWoman no Twitter. No

A ferramenta metodológica utilizada nos estudos sobre uma possível ação capaz de diminuir os números do abandono e ampliar o tempo de permanência dos educandos

Para essa implementação deve-se observar que muitos sistemas têm sido construídos baseados exclusivamente em requisitos técnicos, deixando a arquitetura implícita

padrão de circulação em níveis médios da atmosfera apresenta uma confi guração similar a um bloqueio no oceano Atlântico, com um anticiclone intenso centrado aproximadamente sobre

O Plano Oficial de Contabilidade das Autarquias Locais (POCAL), apro- vado pelo Decreto-Lei n.º 54-A/99, de 22 de Fevereiro, consubstancia a re- forma da administração financeira e

Objetivo: O artigo tem por objetivo analisar incidências da violência perpetrada em crianças e adolescentes, segundo Conselhos Tutelares (CT) e Centro de Referência Especializada