Você está na página 1de 41

INSTITUTO FEDERAL DE EDUCAO, CINCIA E TECNOLOGIADO RIO GRANDE DO NORTE IFRN

Disciplina: Arquitetura de redes de computadores e Tecnologia de Implementao de Redes


Professor: M. Sc. Rodrigo Ronner T. da Silva
E-mail: rodrigo.tertulino@ifrn.edu.br

Captulo 2
Camada de aplicao

slide 1

2014 Pearson. Todos os direitos reservados.

Sumrio
1. Princpios de aplicaes de rede
2. Arquiteturas de aplicao de rede
3. Comunicao entre processos
4. Servios de transporte disponveis para aplicaes
5. Protocolos de camada de aplicao
6. A Web e o HTTP
7. Conexes persistentes e no persistentes
8. Formato da mensagem HTTP
9. Interao usurio-servidor: cookies
10. Caches Web
11. GET condicional
12. Transferncia de arquivo: FTP
13. Correio eletrnico na Internet: SMTP
14. DNS: o servio de diretrio da Internet

slide 2

2014 Pearson. Todos os direitos reservados.

Princpios de aplicaes de rede

O ncleo do desenvolvimento de aplicao de rede escrever


programas que rodem em sistemas finais diferentes e se
comuniquem entre si.
Ao desenvolver sua nova aplicao, voc precisar escrever um
software que rode em vrios sistemas finais.
Esse software poderia ser criado, por exemplo, em C, Java ou
Python.

Voc no precisar escrever programas que executem nos


elementos do ncleo de rede, como roteadores e comutadores.
slide 3

2014 Pearson. Todos os direitos reservados.

Arquiteturas de aplicao de rede

A arquitetura de rede fixa e prov um conjunto especfico de


servios.
A arquitetura da aplicao projetada pelo programador e
determina como a aplicao organizada nos vrios sistemas
finais.
Em uma arquitetura cliente-servidor h um hospedeiro sempre
em funcionamento, denominado servidor, que atende a
requisies de muitos outros hospedeiros, denominados clientes.
slide 4

2014 Pearson. Todos os direitos reservados.

Arquiteturas de aplicao de rede

A comunicao de uma
aplicao de rede ocorre
entre sistemas finais na
camada de aplicao.

slide 5

2014 Pearson. Todos os direitos reservados.

Arquiteturas de aplicao de rede

A arquitetura P2P utiliza a comunicao direta entre duplas de


hospedeiros conectados alternadamente, denominados pares.
Uma das caractersticas mais fortes da arquitetura P2P sua
autoescalabilidade.
As futuras aplicaes P2P esto diante de trs principais desafios:
1. ISP Amigvel.
2. Segurana.
3. Incentivos.
slide 6

2014 Pearson. Todos os direitos reservados.

Arquiteturas de aplicao de rede

slide 7

2014 Pearson. Todos os direitos reservados.

Comunicao entre processos

Processos de aplicao, sockets e protocolo de transporte


subjacente.

slide 8

2014 Pearson. Todos os direitos reservados.

Comunicao entre processos

Uma aplicao de rede consiste em pares de processos que


enviam mensagens uns para os outros por meio de uma rede.
Um processo envia mensagens para a rede e recebe mensagens
dela atravs de uma interface de software denominada socket.
Para identificar o processo receptor, duas informaes devem ser
especificadas:
1. o endereo do hospedeiro e
2. um identificador que especifica o processo receptor no
hospedeiro de destino.
slide 9

2014 Pearson. Todos os direitos reservados.

Servios de transporte disponveis para


aplicaes
Transferncia confivel de dados
Vazo
Temporizao
Segurana
slide 10

2014 Pearson. Todos os direitos reservados.

Servios de transporte providos pela


Internet
A Internet disponibiliza dois protocolos de transporte para
aplicaes, o UDP e o TCP.
Requisitos de aplicaes de rede selecionadas:

slide 11

2014 Pearson. Todos os direitos reservados.

Servios de transporte providos pela


Internet
Aplicaes populares da Internet, seus protocolos de camada de
aplicao e seus protocolos de transporte subjacentes:

slide 12

2014 Pearson. Todos os direitos reservados.

Protocolos de camada de aplicao

Um protocolo de camada de aplicao define:


Os tipos de mensagens trocadas.
A sintaxe dos vrios tipos de mensagens, tais como os campos da
mensagem e como os campos so delineados.
A semntica dos campos, isto , o significado da informao nos
campos.

Regras para determinar quando e como um processo envia


mensagens e responde a mensagens.
slide 13

2014 Pearson. Todos os direitos reservados.

A Web e o HTTP
Talvez o que mais atraia a maioria dos usurios da Web que ela
funciona por demanda.
O HTTP Protocolo de Transferncia de Hipertexto (HyperText
Transfer Protocol) , o protocolo da camada de aplicao da
Web, est no corao da Web e definido no [RFC 1945] e no
[RFC 2616].
O HTTP executado em dois programas:

1. um cliente e
2. outro servidor.
slide 14

2014 Pearson. Todos os direitos reservados.

A Web e o HTTP

Uma pgina Web constituda de objetos.


Um objeto apenas um arquivo que se pode acessar com um
nico URL.

A maioria das pginas Web constituda de um arquivo-base


HTML e diversos objetos referenciados.
O HTTP usa o TCP como seu protocolo de transporte subjacente.
O HTTP denominado um protocolo sem estado.
slide 15

2014 Pearson. Todos os direitos reservados.

Conexes persistentes e no persistentes


Quando a interao cliente-servidor acontece por meio de conexo
TCP, o programador da aplicao precisa tomar uma importante
deciso:
Conexes no persistentes cada par de requisio/resposta
deve ser enviado por uma conexo TCP distinta.
Conexes persistentes todas as requisies e suas respostas
devem ser enviadas por uma mesma conexo TCP.

slide 16

2014 Pearson. Todos os direitos reservados.

Formato da mensagem HTTP

Mensagem de requisio HTTP


Apresentamos a seguir uma mensagem de requisio HTTP tpica:
GET /somedir/page.html HTTP/1.1
Host: www.someschool.edu
Connection: close
User-agent: Mozilla/5.0
Accept-language: fr

slide 17

2014 Pearson. Todos os direitos reservados.

Formato da mensagem HTTP

Formato geral de uma mensagem de requisio HTTP

slide 18

2014 Pearson. Todos os direitos reservados.

Formato da mensagem HTTP

Mensagem de resposta HTTP


Apresentamos a seguir uma mensagem de resposta HTTP tpica:
HTTP/1.1 200 OK
Connection: close
Date: Tue, 09 Aug 2011 15:44:04 GMT
Server: Apache/2.2.3 (CentOS)
Last-Modified: Tue, 09 Aug 2011 15:11:03 GMT
Content-Length: 6821
Content-Type: text/html
(dados dados dados dados dados ...)
slide 19

2014 Pearson. Todos os direitos reservados.

Formato da mensagem HTTP

Formato geral de uma mensagem de resposta HTTP

slide 20

2014 Pearson. Todos os direitos reservados.

Interao usurio-servidor: cookies

Cookies, definidos no [RFC 6265], permitem que sites monitorem


seus usurios.
A tecnologia dos cookies tem quatro componentes:
1. uma linha de cabealho de cookie na mensagem de resposta
HTTP;
2. uma linha de cabealho de cookie na mensagem de requisio
HTTP;
3. um arquivo de cookie mantido no sistema final do usurio e
gerenciado pelo navegador do usurio;
4. um banco de dados de apoio no site.
slide 21

2014 Pearson. Todos os direitos reservados.

Interao usurio-servidor: cookies

Mantendo o
estado
do
usurio com
cookies.

slide 22

2014 Pearson. Todos os direitos reservados.

Caches Web

Um cache Web tambm denominado servidor proxy uma


entidade da rede que atende requisies HTTP em nome de um
servidor Web de origem.
Clientes requisitando objetos
por meio de um cache Web:

slide 23

2014 Pearson. Todos os direitos reservados.

GET condicional

GET condicional mecanismo que permite que um cache


verifique se seus objetos esto atualizados.

Transferncia de arquivo: FTP


Em uma sesso FTP tpica, o usurio quer transferir arquivos de
ou para um hospedeiro remoto.

HTTP e FTP so protocolos de transferncia de arquivos e tm


muitas caractersticas em comum.
slide 24

2014 Pearson. Todos os direitos reservados.

Transferncia de arquivo: FTP

FTP transporta arquivos entre sistemas de arquivo local e remoto:

slide 25

2014 Pearson. Todos os direitos reservados.

Transferncia de arquivo: FTP

Conexes de controle e de dados:

slide 26

2014 Pearson. Todos os direitos reservados.

Camadas e respostas FTP

Alguns dos comandos mais comuns so descritos a seguir:


USER username: usado para enviar identificao do usurio ao
servidor.
PASS password: usado para enviar a senha do usurio ao servidor.
LIST: usado para pedir ao servidor que envie uma lista com todos
os arquivos existentes no atual diretrio remoto.

RETR filename: usado para extrair um arquivo do diretrio atual


do hospedeiro remoto.
slide 27

2014 Pearson. Todos os direitos reservados.

Camadas e respostas FTP

STOR filename: usado para armazenar um arquivo no diretrio


atual do hospedeiro remoto.
Algumas respostas tpicas, junto com suas possveis mensagens, so
as seguintes:
331 Nome de usurio OK, senha requisitada
125 Conexo de dados j aberta; iniciando transferncia

425 No possvel abrir a conexo de dados


452 Erro ao escrever o arquivo
slide 28

2014 Pearson. Todos os direitos reservados.

Correio eletrnico na Internet

Uma viso do
sistema de e-mail
da Internet.

slide 29

2014 Pearson. Todos os direitos reservados.

SMTP

O SMTP transfere mensagens de servidores de correio remetentes


para servidores de correio destinatrios.
Alice envia uma mensagem a Bob:

slide 30

2014 Pearson. Todos os direitos reservados.

Formatos de mensagem de correio

Um cabealho de mensagem tpico semelhante a:


From: alice@crepes.fr
To: bob@hamburger.edu
Subject: Searching for the meaning of life.
Aps o cabealho da mensagem, vem uma linha em branco e, em
seguida, o corpo da mensagem (em ASCII).
Voc pode usar o Telnet para enviar a um servidor de correio uma
mensagem que contenha algumas linhas de cabealho, inclusive
Subject:. Para tal, utilize o comando telnet serverName 25.
slide 31

2014 Pearson. Todos os direitos reservados.

Protocolos de acesso ao correio

Protocolos de e-mail e suas entidades comunicantes

slide 32

2014 Pearson. Todos os direitos reservados.

DNS: o servio de diretrio da Internet


H duas maneiras de identificar um hospedeiro por um nome
de hospedeiro e por um endereo IP.

Para conciliar isso, necessrio um servio de diretrio que


traduza nomes de hospedeiro para endereos IP.
Esta a tarefa principal do DNS da Internet.
O DNS (1) um banco de dados distribudo executado em uma
hierarquia de servidores de DNS, e (2) um protocolo de camada
de aplicao que permite que hospedeiros consultem o banco de
dados distribudo.

slide 33

2014 Pearson. Todos os direitos reservados.

DNS: o servio de diretrio da Internet

O DNS prov alguns outros servios importantes alm da traduo


de nomes de hospedeiro para endereos IP:
Apelidos (aliasing) de hospedeiro.
Apelidos de servidor de correio.
Distribuio de carga.

slide 34

2014 Pearson. Todos os direitos reservados.

DNS: o servio de diretrio da Internet

Nenhum servidor DNS isolado tem todos os mapeamentos para


todos os hospedeiros da Internet.
Em vez disso, os mapeamentos so distribudos pelos servidores
DNS.
Parte da hierarquia
de servidores
DNS

slide 35

2014 Pearson. Todos os direitos reservados.

DNS: o servio de diretrio da Internet

Servidores DNS raiz em 2012 (nome, organizao, localizao)

slide 36

2014 Pearson. Todos os direitos reservados.

DNS: o servio de diretrio da Internet

Interao dos diversos servidores


DNS:

slide 37

2014 Pearson. Todos os direitos reservados.

DNS: o servio de diretrio da Internet

O DNS explora extensivamente o cache


para melhorar o desempenho quanto ao
atraso e reduzir o nmero de mensagens
DNS que dispara pela Internet.
Consultas recursivas em DNS:

slide 38

2014 Pearson. Todos os direitos reservados.

Registros e mensagens DNS

Um registro de recurso uma tupla de quatro elementos que


contm os seguintes campos:
(Name, Value, Type, TTL)

Formato da mensagem DNS

slide 39

2014 Pearson. Todos os direitos reservados.

Aplicaes P2P
Distribuio de arquivos P2P
Na distribuio de arquivos P2P, cada par pode redistribuir
qualquer parte do arquivo recebido para outros pares, auxiliando,
assim, o servidor no processo de distribuio.

O tempo de distribuio o tempo necessrio para que todos os N


pares obtenham uma cpia do arquivo.
O BitTorrent um protocolo P2P popular para distribuio de
arquivos.

slide 40

2014 Pearson. Todos os direitos reservados.

Referncias Bibliogrficas
1. KUROSE, J. F.; ROSS, K. W.; Redes de computadores e a
internet: uma abordagem Top-down. 6. ed. So Paulo:
Pearson, 2013.
2. FOROUZAN, B. A.; MOSHARRAF, F.: Redes de
computadores: uma Abordagem Top-down. Porto Alegre:
Bookman, 2013.
3. TANENBAUM, ANDREW S.; Redes de Computadores - 5 Ed.
So Paulo: Pearson Education, 2011.
4. COMER, D. E.; Redes de computadores e internet. 4. Ed.
Porto Alegre: Bookman, 2007.

5. WHITE, M. C.; Redes de computadores e comunicao de


dados. So Paulo: Cengage, 2012.
6. MENDES, D. R.; Redes de computadores: teoria e prtica.
So Paulo: Novatec, 2007.