camadadeaplicação
TRANSCRIPT
-
5/28/2018 CamadadeAplica o
1/37
Captulo 2
Redes de computadores e a Internet
Camada
de
aplicao
-
5/28/2018 CamadadeAplica o
2/37
2
2005 by Pearson Education-
E-mail
Web
Mensagem instantnea
Login remoto
P2P file sharingJogos de rede multi-usurio
Telefonia via Internet
Videoconferncia em tempo real
Algumas aplicaes de rede
-
5/28/2018 CamadadeAplica o
3/37
2
2005 by Pearson Education-
Escrever programas queExecutem sobre diferentes sistemas
finais e
Se comuniquem atravs de uma rede.
Ex.: Web software de servidor Web
se comunicando com software dobrowser.
Nenhum software escrito paradispositivos no ncleo da rede
Dispositivos do ncleo da rede no
trabalham na camada de aplicaoEsta estrutura permite um rpido
desenvolvimento de aplicao
Criando uma nova aplicao de rede
-
5/28/2018 CamadadeAplica o
4/37
2
2005 by Pearson Education-
2.1 Princpios de aplicaes de rede
2.2 Web e HTTP
2.3 FTP
2.4 Correio electrnico SMTP, POP3, IMAP
2.5 DNS
2.6 Compartilhamento de arquivos P2P
2.7 Programao de socket com TCP
2.8 Programao de socket com UDP
2.9 Construindo um servidor Web
Camada de aplicao
-
5/28/2018 CamadadeAplica o
5/37
2
2005 by Pearson Education-
Cliente-servidor
Peer-to-peer(P2P)
Hbrida de cliente-servidor e P2P
Arquiteturas de aplicao
-
5/28/2018 CamadadeAplica o
6/37
2
2005 by Pearson Education-
Arquitetura cliente-servidor
Clientes:Comunicam-se com o servidorPode ser conectado
intermitentementePode ter endereo IP dinmicoNo se comunicam diretamente
uns com os outros
Servidor:Hospedeiro sempre ativoEndereo IP permanenteFornece servios
solicitados pelo cliente
-
5/28/2018 CamadadeAplica o
7/37
2
2005 by Pearson Education-
Nem sempre no servidor
Sistemas finais arbitrrioscomunicam-se diretamente
Pares so intermitentementeconectados e trocam endereos IP
Ex.: Gnutella
Altamente escalveis mas difceis
de gerenciar
Arquitetura P2P pura
-
5/28/2018 CamadadeAplica o
8/37
2
2005 by Pearson Education-
NapsterTransferncia de arquivo P2P
Busca centralizada de arquivos:
Contedo de registro dos pares no servidor central
Consulta de pares no mesmo servidor central para localizar o contedo
Instant messaging
Bate-papo entre dois usurios P2P
Deteco/localizao centralizada de presena:
Usurio registra seu endereo IP com o servidor central quando fica on-line
Usurio contata o servidor central para encontrar endereos IP dosvizinhos
Hbrida de cliente-servidor e P2P
-
5/28/2018 CamadadeAplica o
9/37
2
2005 by Pearson Education-
Um processo envia/recebemensagens para/de seu socket
O socket anlogo a umaporta
O processo de envio empurraa mensagem para
fora da porta
O processo de envio confiana infra-
estrutura de
transporte no outrolado da porta queleva a mensagem
para o socket noprocesso derecepo.
Sockets
-
5/28/2018 CamadadeAplica o
10/37
2
2005 by Pearson Education-
Para um processo receber mensagens, ele deve ter um identificadorUm hospedeiro possui um nico endereo IP de 32 bits
P.:O endereo IP do hospedeiro onde o processo est executando suficientepara identificar o processo?
R.:No, muitos processos podem estar em execuo no mesmo hospedeiro.
O identificador inclui o endereo IP e o nmero da portaassociada ao processono hospedeiro
Exemplos de nmeros de porta:Servidor HTTP: 80Servidor de Correio: 25
Processos de endereamento
-
5/28/2018 CamadadeAplica o
11/37
2
2005 by Pearson Education-
Tipo das mensagens trocadas, mensagens de requisio e respostaSintaxe dos tipos de mensagem: os campos nas mensagens e como so
delineados
Semntica dos campos, ou seja, significado da informao nos campos
Regras para quando e como os processos enviam e respondem s mensagens
Protocolos de domnio pblico:
Definidos nas RFCs
Recomendados para interoperabilidade
Ex.: HTTP, SMTP
O protocolo da camada de aplicao define
2
-
5/28/2018 CamadadeAplica o
12/37
2
2005 by Pearson Education-
Perda de dadosAlgumas aplicaes (ex.: udio) podem tolerar alguma perda
Outras aplicaes (ex.: transferncia de arquivos, telnet) exigemtransferncia de dados 100% confivel
Temporizao
Algumas aplicaes (ex.: telefonia Internet, jogos interativos) exigembaixos atrasos para serem efetivos
Banda passante
Algumas aplicaes (ex.: multimdia) exigem uma banda mnima paraserem efetivas
Outras aplicaes (aplicaes elsticas) melhoram quando a bandadisponvel aumenta
De qual servio de transporte uma aplicao necessita?
2
-
5/28/2018 CamadadeAplica o
13/37
2
2005 by Pearson Education-
Aplicao
file transfer
e-mail
Web documents
real-time udio/vdeo
stored udio/video
jogos interativos
e-business
Perdas
sem perdas
sem perdas
tolerante
tolerante
tolerante
tolerante
sem perda
Banda
elstica
elstica
elstica
adio: 5 Kb-1 Mbvdeo:10 Kb-5 Mb
igual anterior
kbps
elstica
Sensvel ao atraso
no
no
no
sim,
sim,
sim,
sim
Requisitos de transporte de aplicao comuns
2
-
5/28/2018 CamadadeAplica o
14/37
2
2005 by Pearson Education-
Servio TCP:Orientado conexo:conexo requerida entre processos cliente e servidor
Transporte confivelentre os processor de envio e recepoControle de fluxo:o transmissor no sobrecarrega o receptor
Controle de congestionamento:protege a rede do excesso de trfego
No oferece:garantias de temporizao e de banda mnimaServio UDP:
Transferncia de dados no confivel entre os processos transmissor e receptor
No oferece: estabelecimento de conexo, confiabilidade, controle de fluxo e
de congestionamento, garantia de temporizao e de banda mnima.
Servios dos protocolos de transporte da Internet
2
-
5/28/2018 CamadadeAplica o
15/37
2
2005 by Pearson Education-
Aplicao
e-mail
acesso de terminais remotos
Web
transferncia de arquivosstreaming multimdia
servidor de arquivos remoto
telefonia Internet
Protocolo deaplicao
smtp [RFC 821]
telnet [RFC 854]
http [RFC 2068]
ftp [RFC 959]RTP ou proprietrio
(ex.: RealNetworks)
NSF
RTP ou proprietrio
(ex.: Vocaltec)
Protocolo detransporte
TCP
TCP
TCP
TCPTCP ou UDP
TCP ou UDP
tipicamente UDP
Aplicao e protocolos de transporte da Internet
2
-
5/28/2018 CamadadeAplica o
16/37
2
2005 by Pearson Education-
2.1 Princpios de aplicaes de rede
2.2 Web e HTTP
2.3 FTP
2.4 Correio electrnico
SMTP, POP3, IMAP2.5 DNS
2.6 Compartilhamento de arquivos P2P
2.7 Programao de socket com TCP
2.8 Programao de socket com UDP
2.9 Construindo um servidor Web
Camada de aplicao
2
-
5/28/2018 CamadadeAplica o
17/37
2
2005 by Pearson Education-
Primeiro alguns jarges
Pgina Webconsiste de objetos
Objeto pode ser arquivo HTML, imagem JPEG, Java applet, arquivode udio,
A pgina Web consiste de arquivo-HTML baseque inclui vrios
objetos referenciadosCada objeto endereado por uma URL
Exemplo de URL:
www.someschool.edu/someDept/pic.gif
Nome do hospedeiro Nome do caminho
Web e HTTP
2
-
5/28/2018 CamadadeAplica o
18/37
2
2005 by Pearson Education-
HTTP: hypertext transfer protocol
Protocolo da camada de aplicaoda Web
Modelo cliente/servidorCliente:browser que solicita,recebe e apresenta objetos da Web
Servidor:envia objetos emresposta a pedidos
HTTP 1.0: RFC 1945
HTTP 1.1: RFC 2068
Viso geral do HTTP
2
-
5/28/2018 CamadadeAplica o
19/37
2
2005 by Pearson Education-
Utiliza TCP:Cliente inicia conexo TCP (cria socket) para o servidor na porta 80
Servidor aceita uma conexo TCP do cliente
mensagens HTTP (mensagens do protocolo de camada de aplicao) sotrocadas entre o browser (cliente HTTP) e o servidor Web (servidor HTTP)
A conexo TCP fechada
Viso geral do HTTP
2
-
5/28/2018 CamadadeAplica o
20/37
2
2005 by Pearson Education-
Usurio entra com a URL:www.someSchool.edu/someDepartment/home.index
1a.Cliente HTTP inicia conexoTCP ao servidor HTTP(processo) emwww.someSchool.edu. Porta80 a default para o servidor
HTTP.
2.Cliente HTTP envia HTTP request
message(contendo a URL) para
o socket da conexo TCP
1b.Servidor HTTP no hospedeiro
www.someSchool.edu esperando
pela conexo TCP na porta 80.
Aceita conexo, notificando ocliente
3.Servidor HTTP recebe mensagem
de pedido, forma response
messagecontendo o objeto
solicitado
(someDepartment/home.index),
envia mensagem para o socketTempo
(contm texto,referncias a 10 imagens jpeg
HTTP no persistente
2
-
5/28/2018 CamadadeAplica o
21/37
2
2005 by Pearson Education-
5.Cliente HTTP recebemensagem de respostacontendo o arquivo html,apresenta o contedo html.Analisando o arquivo html,
encontra 10 objetos jpegreferenciados
6.Passos 1-5 so repetidos para
cada um dos 10 objetos jpeg.
4.Servidor HTTP fecha conexoTCP.
Tempo
HTTP no persistente
2 FTP t l d t f i d i
-
5/28/2018 CamadadeAplica o
22/37
2
2005 by Pearson Education-
Transferncia de arquivos de e para o computador remoto
Modelo cliente servidorCliente:lado que inicia a transferncia (seja de ou para o lado remoto)Servidor:hospedeiro remoto
FTP: RFC 959
FTP servidor: porta 21
FTP: o protocolo de transferncia de arquivos
2
-
5/28/2018 CamadadeAplica o
23/37
2
2005 by Pearson Education-
Cliente FTP contata o servidor FTP na porta 21 especificando o TCP comoprotocolo de transporte
Cliente obtm autorizao pela conexo de controleCliente procura o diretrio remoto enviando comandos pela conexo de controle
Quando o servidor recebe um comando para uma transferncia de arquivo, eleabre uma conexo de dados TCP para o cliente
Aps a transferncia de um arquivo, o servidor fecha a conexo
Servidor abre uma segunda conexo de dados TCP para transferir outro arquivoConexo de controle: fora da banda
FTP: controle separado, conexes de dados
2 FTP d t
-
5/28/2018 CamadadeAplica o
24/37
2
2005 by Pearson Education-
Exemplos de comandos:
Envie um texto ASCII sobre canal de controleUSER username
PASSpassword
LISTretorna listagem do arquivo no diretrio atual
RETR filenamerecupera (obtm) o arquivo
STOR filenamearmazena o arquivo no hospedeiro remoto
Exemplos de cdigos de retornoCdigo de status e frase (como no HTTP)
331 Username OK, password required
125 data connection already open; transfer starting
425 Cant open data connection
452 Error writing file
FTP comandos, respostas
2 C i l t i
-
5/28/2018 CamadadeAplica o
25/37
2
2005 by Pearson Education-
Trs componentes principais:Agentes de usurioServidores de correioSimple mail transfer protocol: SMTP
Agente de usurioleitor de correioComposio, edio, leitura de
mensagens de correioEx.: Eudora, Outlook, elm, Netscape
MessengerMensagens de entrada e de sada so
armazenadas no servidor
Correio eletrnico
2 C i l t i id d i
-
5/28/2018 CamadadeAplica o
26/37
2
2005 by Pearson Education-
Servidores de correioCaixa postalcontm mensagens
que chegaram (ainda no lidas)para o usurio
Fila de mensagenscontm asmensagens de correio a seremenviadas
Protocolo SMTPpermite aosservidores de correio trocaremmensagens entre siCliente: servidor de correio
que enviaservidor: servidor de
correio que recebe
Correio eletrnico: servidores de correio
2 Correio eletrnico: SMTP [RFC 821]
-
5/28/2018 CamadadeAplica o
27/37
2
2005 by Pearson Education-
Correio eletrnico: SMTP [RFC 821]
Usa TCP para transferncia confivel de mensagens de correio docliente ao servidor, porta 25
Transferncia direta: servidor que envia para o servidor que recebe
Trs fases de transfernciaHandshaking (apresentao)
Transferncia de mensagensFechamento
Interao comando/respostaComandos:texto ASCIIResposta:cdigo de status e frase
Mensagens devem ser formatadas em cdigo ASCII de 7 bits
2 Cenrio: Alice envia mensagem para Bob
-
5/28/2018 CamadadeAplica o
28/37
2
2005 by Pearson Education-
1) Alice usa o agente de usurio (UA) para compor a mensagem e [email protected]
2) O agente de usurio dela envia a mensagem para o seu servidor de correio; amensagem colocada na fila de mensagens.
3) O lado cliente do SMTP abre uma conexo TCP com o servidor de correio do Bob.
4) O cliente SMTP envia a mensagem de Alice pela conexo TCP.
5) O servidor de correio de Bob coloca a mensagem na caixa de correio de Bob.
6) Bob invoca seu agente de usurio para ler a mensagem.
Cenrio: Alice envia mensagem para Bob
2 Protocolos de acesso ao correio
-
5/28/2018 CamadadeAplica o
29/37
2
2005 by Pearson Education-
SMTP: entrega e armazena no servidor do destinoProtocolo de acesso: recupera mensagens do servidorPOP: Post Office Protocol [RFC 1939]Autorizao (agente servidor) e download
IMAP: Internet Mail Access Protocol [RFC 1730]Maiores recursos (mais complexo)
Manipulao de mensagens armazenadas no servidorHTTP: Hotmail , Yahoo! Mail etc.
Protocolos de acesso ao correio
2 POP3 (mais) e IMAP
-
5/28/2018 CamadadeAplica o
30/37
2
2005 by Pearson Education-
Mais sobre POP3O exemplo anterior usa o modo download-and-delete
Bob no pode reler o e-mail se ele trocar o cliente
download-and-keep: cpias das mensagens em clientes diferentes
IMAP
Mantm todas as mensagens em um lugar: o servidor
Permite que o usurio organize as mensagens em pastas
IMAP mantm o estado do usurio atravs das sesses:
POP3 (mais) e IMAP
2 Camada de aplicao
-
5/28/2018 CamadadeAplica o
31/37
2
2005 by Pearson Education-
2.1 Princpios de aplicaes de rede2.2 Web e HTTP
2.3 FTP
2.4 Correio electrnico
SMTP, POP3, IMAP
2.5 DNS
2.6 Compartilhamento de arquivos P2P
2.7 Programao de socket com TCP
2.8 Programao de socket com UDP
2.9 Construindo um servidor Web
Camada de aplicao
2 DNS: Dominain Name System
-
5/28/2018 CamadadeAplica o
32/37
2
2005 by Pearson Education-
Pessoas:muitos identificadores:
RG, nome, passaporteInternet hospedeiros, roteadores:Endereos IP (32 bits) - usados para enderear datagramasnome, ex.: gaia.cs.umass.edu - usados por humanos
P.:Relacionar nomes com endereos IP?
Domain Name System:Base de dados distribudaimplementada numa hierarquia de muitos
servidores de nomes
Protocolo de camada de aplicaohospedeiro, roteadores se comunicamcom servidores de nomes para resolvernomes (translaonome/endereo)
Nota: funo interna da Internet, implementada como protocoloda camada de aplicaoComplexidade na borda da rede
DNS: Dominain Name System
2 DNS
-
5/28/2018 CamadadeAplica o
33/37
2
2005 by Pearson Education-
DNS
DNS servicesNome do hospedeiro para traduo de endereo IP Hospedeiro aliasingNomes cannicos e alias
mail server aliasingdistribuio de carga
Servidores Web replicados: estabelece o endereo IP para um nome cannico
Por que no centralizar o DNS?Ponto nico de falhaVolume de trfegoBase centralizada de dados distanteManuteno
No escalvel!
2 Base de dados distribuda hierrquica
-
5/28/2018 CamadadeAplica o
34/37
2
2005 by Pearson Education-
Cliente quer o IP para www.amazon.com; 1aaprox.:Cliente consulta um servidor de raiz para encontrar o servidor DNS com
Cliente consulta o servidor DNS com para obter o servidor DNS amazon.comCliente consulta o servidor DNS amazon.com para obter o endereo IP para
www.amazon.com
Base de dados distribuda, hierrquica
2 DNS: servidores de nomes raiz
-
5/28/2018 CamadadeAplica o
35/37
2
2005 by Pearson Education-
So contatados pelos servidores de nomes locais que no podem resolverum nome
Servidores de nomes raiz:Buscam servidores de nomes autorizados se o mapeamento do nome no
for conhecidoConseguem o mapeamentoRetornam o mapeamento para o servidor de nomes local
Existem 13 servidoresde nomes raiz no
mundo
DNS: servidores de nomes raiz
2 Servidor de nomes local
-
5/28/2018 CamadadeAplica o
36/37
2
2005 by Pearson Education-
No pertence estritamente a uma hierarquia
Cada ISP (ISP residencial, companhia, universidade) possui um
Tambm chamado de servidor de nomes default
Quando um hospedeiro faz uma pergunta a um DNS, a pergunta enviada para seu servidor DNS local
Age como um proxy, encaminhando as perguntas para dentro dahierarquia
Servidor de nomes local
2 Consultas recursivas
-
5/28/2018 CamadadeAplica o
37/37
2
2005 by Pearson Education-
Consulta recursiva:Transfere a tarefa de
resoluo do nome para oservidor de nomesconsultado
Consulta encadeada:Servidor contatado
responde com o nome deoutro servidor de nomespara contato
eu no sei isto, mas
pergunte a este servidor
Consultas recursivas
Microsoft 32. o o o o o 2 o o o 2. o 2. o o tri o o o o o 2. o o 6 o o 2. o o o o . o o o o o 2. Z o
uta.edu.ec “NDELPLANESTRATآ O O 00 o o o. CD o o o m —1 o m o m o CD CD o O O O o o O O m o o < o:
| Syvalorm x o o < o o o o o x o o < o m o o o o o o x m o o o o o 00 o o. o o CDs . o c c o c o o o
Universidad Pأ؛blica de Navarra N o O o o o 2- o o o o, o z. o O o o o o o o o o Z e e O o O o o o o
20 x 25 cm. (1) - ig.ufpa.br O o "'illiii o o o o o o o o o o o o o o o 1.0 o o m o o o o o O. o o o
0 o o o o E O .63 0 o oro _ o O o o o o o o E o o o 00 ct3 0 o 03 > o o . o o N o o o u o Q) o o 8 o