Sei sulla pagina 1di 5

A Camada de Aplicao

Romildo Martins Bezerra


CEFET/BA
Redes de Computadores II

Afinal, o que faz a camada de aplicao? ....................................................... 2


Paradigma Cliente/Servidor [4] ................................................................ 2
Endereamento ................................................................................... 2
Tipo de Servio ................................................................................... 2
Servios da Camada de Transporte e seus protocolos ........................................ 2
HTTP - HyperText Transfer Protocol [4] ...................................................... 2
FTP - File Transfer Protocol .................................................................... 3
SMTP - Simple Mail Transfer Protocol ......................................................... 4
TELNET ............................................................................................. 4
NTP - Network Time Protocol .................................................................. 4
Pesquise .............................................................................................. 5
Temas para trabalhos .............................................................................. 5
Bibliografia ........................................................................................... 5

As notas de aulas so referncias para estudo. Portanto no devem ser adotadas como material didtico absoluto!
Verso 0.1 30/08/2008
Romildo Martins Bezerra

Afinal, o que faz a camada de aplicao?


Depois de aprendermos a finalidade da camada de enlace, rede e transporte e todos os seus
servios oferecidos, nos perguntamos o que faz a camada de aplicao?

Paradigma Cliente/Servidor [4]


um modelo computacional que separa clientes e servidores, sendo interligados entre si
geralmente utilizando-se uma rede de computadores. Cada instncia de um cliente pode enviar
requisies de dado para algum dos servidores conectados e esperar pela resposta. Por sua vez, algum dos
servidores disponveis pode aceitar tais requisies, process-las e retornar o resultado para o cliente.

Endereamento
Como visto nas camadas de enlace, rede e transporte, a comunicao entre hosts utiliza o
conceito de endereamento. O mecanismo de endereamento da camada de aplicao no utiliza
necessariamente uma representao numrica, podendo utilizar uma representao textual como
http://www.romildo.net
As aplicaes fazem uso deste endereo amigvel, pois esto diretamente em contato com o
usurio. Voc j imaginou decorar todos os IPs da internet? Ser que um endereo s est relacionado com
um IP?

Tipo de Servio
A camada de aplicao foi feita para oferecer servios diferentes aos usurios, permitindo uma
interface mais amigvel sem qualquer preocupao com as camadas inferiores. Exemplos de servios,
veremos a seguir.

Servios da Camada de Transporte e seus protocolos


O objetivo identificar e entender o funcionamento de alguns dos protocolos/servios da camada
de aplicao, como:

HTTP - HyperText Transfer Protocol [4]

O HyperText Transfer Protocol (HTTP) um protocolo de aplicao responsvel pelo tratamento


de pedidos/respostas entre cliente e servidor. Ele surgiu da necessidade de distribuir informaes pela
Internet e para que essa distribuio fosse possvel foi necessrio criar uma forma padronizada de
comunicao entre os clientes e os servidores da Web e entendida por todos os computadores ligados
Internet.
No HTTP/1.1, verso atual do protocolo descrito na RFC 2616, foi desenvolvido um conjunto de
implementaes adicionais ao HTTP/1.0, como por exemplo: o uso de conexes persistentes; o uso de
servidores proxy que permitem uma melhor organizao da cache; novos mtodos de requisies;
O HTTP utiliza o modelo cliente-servidor, como a maioria dos protocolos de rede, baseando-se no
paradigma de requisio e resposta. Um programa requisitante (cliente) estabelece uma conexo com um
outro programa receptor (servidor) e envia-lhe uma requisio, contendo a URL, a verso do protocolo,
uma mensagem MIME (padro utilizado para codificar dados em formato de textos ASCII para serem
transmitidos pela Internet) contendo os modificadores da requisio, informaes sobre o cliente e,
possivelmente, o contedo no corpo da mensagem.
O servidor responde com uma linha de status incluindo sua verso de protocolo e um cdigo de
operao bem sucedida ou um cdigo de erro, seguido pelas informaes do servidor, metainformaes da
entidade e possvel contedo no corpo da mensagem. Aps o envio da resposta pelo servidor, encerra-se a
conexo estabelecida.
O protocolo HTTP opera sobre o protocolo TCP/IP para estabelecer um mecanismo de servio com
estrutura requisio/resposta. Uma das caractersticas peculiares de HTTP a composio flexvel do
cabealho, composto por diversas linhas, o que permite sua utilizao como integrador de diversos
formatos e no apenas de documentos HTML.
Um cabealho HTTP composto por uma linha contendo a especificao do servio e recurso
associado, seguida por linhas contendo parmetros. Um exemplo de requisio gerada por um cliente
HTTP :

2y
Romildo Martins Bezerra

GET http://www.romildo,net/
Accept: text/html, image/gif, image/jpeg
User-Agent: Mozilla/5.1

para a qual o cabealho da resposta pode ser:


HTTP/1.1 200 OK
Date: Wed, 25 Mar 2008 20:20:20 GMT
Server: Apache/2.0
Connection: close
Content-Type: text/html
Content-length: 648

FTP - File Transfer Protocol


Segundo a Wikipdia, FTP significa File Transfer Protocol (Protocolo de Transferncia de
Arquivos), e uma forma bastante rpida e verstil de transferir arquivos sendo uma das mais usadas na
internet. O FTP um protocolo simples e antigo, no sendo projetado para garantir segurana.
Diferentemente dos outros protocolos usados na Internet, o FTP usa no mnimo duas conexes
durante uma sesso: uma conexo half-duplex para controle e uma conexo full-duplex para transferncia
de dados. Para isso, utiliza as portas 20 e 21. A porta 21 utilizada para estabelecer e manter a
comunicao entre o cliente e o servidor (Control Channel). ela quem verifica se a conexo com o
servidor ainda existe. J a porta 20 utilizada para a transferncia dos dados (arquivos), propriamente
dita (Data Channel). nela que feito o controle do fluxo e integridade dos dados.
Para utilizar o FTP, a estao cliente realiza uma conexo com o servidor FTP na porta 21. Aps a
conexo estabelecida, para cada arquivo transferido estabelece-se uma nova conexo, chamada de
conexo de dados. Por padro, a porta TCP 21 usada no servidor para controlar a conexo, mas a
conexo de dados pode ser realizada de utilizando dois mtodos:

Modo ativo - O cliente envia um comando PORT ao servidor na conexo do controle e esse
comando solicita ao servidor que estabelea uma conexo de dados da porta TCP 20 no
servidor at o cliente com a porta TCP especificada pelo comando PORT.

Cliente 1543 21 Servidor Para estabelecer uma conexo, o cliente conecta ao


FTP FTP servidor na porta 21 atravs de sua porta 1543.
O cliente envia PORT 1549 (por exemplo)
O servidor conecta porta 1549 atravs de sua
1549 20
porta 20

Figura 02 Modo Ativo

Modo passivo O cliente envia um comando PASV e o servidor responde com uma de suas
portas temporrias usadas como a porta do servidor na conexo de dados. Depois que um
comando de conexo de dados emitido pelo cliente, o servidor se conecta ao cliente
usando a porta imediatamente acima da porta do cliente na conexo do controle.

Para estabelecer uma conexo, o cliente conecta ao


Cliente 1543 21 Servidor servidor na porta 21 atravs de sua porta 1543.
FTP FTP O cliente envia PASV eo servidor responde
1549 1729 indicando sua porta 1729 (por exemplo)
O clinete conexta porta 1729 atravs de sua
porta 1549 (Poe exemplo)

Figura 03 Modo Passivo

Recomendamos uma reflexo quanto segurana deste protocolo.

3y
Romildo Martins Bezerra

SMTP - Simple Mail Transfer Protocol


O Simple Mail Transfer Protocol (SMTP) o protocolo Passos da conexo SMTP
padro da arquitetura TCP/IP para envio de e-mails. O SMTP
Utiliza a porta 25 e tem funcionamento muito simples, pois as S: 220 www.example.com ESMTP Postfix
mensagens e seus anexos so lidas como texto simples e os C: HELO mydomain.com
S: 250 Hello mydomain.com
arquivos anexos so remontados de acordo com as C: MAIL FROM: sender@mydomain.com
informaes lidas no cabealho. Vale ressaltar que o SMTP S: 250 Ok
um protocolo de envio apenas, ou seja, O SMTP no permite C: RCPT TO: friend@example.com
que um usurio descarregue as mensagens de um servidor. S: 250 Ok
C: DATA
Para isso, necessrio um cliente de email com suporte ao S: 354 End data with <CR><LF>.<CR><LF>
protocolo POP3 ou IMAP, que o caso da maioria dos clientes C: Subject: test message
atuais. C: From: sender@mydomain.com
C: To: friend@example.com
Aps o estabelecimento de uma conexo entre emissor C:
(cliente) e receptor (servidor), o exemplo seguinte ilustra uma C: Hello,
sesso SMTP. Na conversao seguinte, "C:" designa as C: This is a test.
mensagens do cliente, e "S:" as mensagens do servidor. Na C: Goodbye.
C: .
maioria dos computadores uma conexo pode ser estabelecida S: 250 Ok: queued as 12345
usando o comando telnet no emissor, por exemplo: C: quit
S: 221 Bye
telnet www.example.com 25

A partir da uma seqncia de comandos esperada para que a conexo SMTP tenha sucesso.

TELNET
Telnet um protocolo cliente-servidor baseado em TCP usado para permitir a comunicao entre
computadores ligados numa rede com o objetivo de efetuar login/acesso remoto. Por questes de
segurana, este protocolo substitudo pelo SSH, cujo contedo encriptado antes de ser enviado.
A preocupao com segurana o fator que est colocando o TELNET em desuso, uma vez que
todas as comunicaes entre o cliente e o servidor podem ser vistas, j que so em texto plano, incluindo
a senha, com um simples sniffer como o Wireshark. utilizando hoje apenas para teste de conexes em
servios (veja exemplo no SMTP).

NTP - Network Time Protocol


Infelizmente os relgios dos computadores so
imprecisos e no sincronizados. Aplicaes de tempo real,
banco de dados distrinudos e servios que utilizam
sincronizao de informaes devem ser capaz de garantir
as propriedades necessrias ao relgio do computador para
o bom funcionamento das aplicaes.
O NTP um protocolo para sincronizao dos
relgios dos computadores baseado no UDP, ou seja, ele
define um jeito para um grupo de hosts conversar e acertar
seus relgios, baseados numa fonte confivel de tempo.
Os servidores NTP formam uma topologia
hierrquica, dividida em camadas ou estratos (strata)
numerados de 0 a 16 . O estrato 0 representa a referncia
primria (relgio atmico) de tempo mas um host da rede
de servidores NTP. Assim estrato 0, fornece o tempo
correto para o estrato 1, que por sua vez fornece o tempo
para o estrato 2 e assim por diante. O NTP ento,
simultaneamente, servidor (fornece o tempo) e cliente Figura 04 Hierarquia do NTP
(consulta o tempo), formando uma topologia em rvore.
O funcionamento do NTP pode parecer simples, mas os algoritmos de sincronizao de relgio (ou
clculo de deslocamento de hora) e a troca de mensagens no so triviais.

Focaremos a camada de aplicao atravs de prticas no laboratrio e atividades em grupo.

4y
Romildo Martins Bezerra

Pesquise
1. Estude os mtodos de conexo e o formado da mensagem HTTP
2. Como funciona um servidor PROXY
3. Reflita sobre a segurana do protocolo FTP.
4. Compare o SSH com o TELNET.
5. O funcionamento do protocolo DNS.

Temas para trabalhos


1. Programao de Servidor Web [2]
2. Programao de Algoritmo de janelas deslizantes.
3. Implantao de servidores HTTP, FTP e DNS

Bibliografia
[1] FOROUZAN, B.A. Comunicao de Dados e Redes de Computadores. 3 Edio. Bookman. 2006.
[2] KUROSE, J. Redes de Computadores e a Internet. 3 Edio. Addison-Wesley, 2006.
[3] COMER, D. E. Redes de Computadores e a Internet. 4 Edio. Bookman. 2007.
[4] http://pt.wikipedia.org/wiki/HTTP - Wikipedia.

5y

Potrebbero piacerti anche