Buscar

FTP e SMTP

Prévia do material em texto

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO
DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS
CURSO DE CIÊNCIA DA COMPUTAÇÃO
Redes de Computadores I
Nível de Aplicação (FTP & SMTP)
Prof. Helcio Wagner da Silva
. – p.1/27
Introdução
O FTP (File Transfer Protocol) é definido na RFC 959.
sistema de arquivos remotosistema de arquivos local
transferência de arquivosFTP
do usuário
Interface Cliente
FTP
Servidor 
FTP
Ele opera com dois tipos de conexão TCP:
uma conexão de controle, persistente durante toda a
sessão FTP.
uma conexão de dados, transiente, para cada
transferência de arquivo.
. – p.2/27
Modos de Operação
O FTP pode operar em dois modos distintos:
Modo ativo (padrão).
Modo passivo.
O modo de operação traduz o comportamento do
Servidor FTP na abertura da conexão de dados:
No modo ativo, o servidor FTP abre a conexão de
dados TCP com o cliente.
No modo passivo, o cliente abre a conexão de dados
com o servidor FTP.
O FTP é um protocolo statefull.
. – p.3/27
Modo Ativo
1
3
de conexão
abertura
TCP
Cliente
FTP
1026
Servidor
FTP
PORT 1027
1027 21
TCP
Cliente
FTP
1026
FTP
TCP
2 200 PORT
21
TCP
1027
Cliente
FTP
1026
Servidor
FTP
1027 2120
TCP
Servidor
TCP
. – p.4/27
Modo Passivo
1 PASV
2 PORT 1024
Cliente
FTP
1026
Servidor
FTP
TCP
21 1024
TCP
3
Cliente
FTP
1026
Servidor
FTP
TCP
1027 21 1024
TCP
abertura de conexão
TCP
Cliente
FTP
1026
Servidor
FTP
21
TCP
. – p.5/27
Modo ASCII x Modo Binário
No Modo ASCII, apenas os 7 bits de um Byte são
transferidos.
Supõe-se que o arquivo se trata de texto codificado
em ASCII (American Standard Code for Information
Interchange).
Conversão de caracteres para formato nativo:
Sistema Fim de linha Fim de arquivo
Windows [CR+LF] [ˆZ]
Linux, Unix [LF] [ˆD]
No modo Binário, todos os 8 bits são transferidos.
Uma cópia integral dos dados é transferida.
. – p.6/27
Comandos & Respostas
Comandos típicos:
USER username
PASS password
LIST
RETR filename
STOR filename
Respostas típicas:
331 Username ok, password required
125 Data connection already open;
transfer starting
425 Can’t open data connection
452 Error writing file
. – p.7/27
TFTP (Trivial FTP)
Primo pobre do FTP, definido na RFC 1350.
Diferentemente do FTP, usa o UDP.
Mais precisamente, a porta 69.
Utilizado apenas em redes locais:
UDP não provê controle de erros.
O TFTP é usado por dispositivos sem disco para
inicialização através da rede.
Possui funcionalidades limitadas se comparado ao FTP:
Não permite listar o conteúdo de um diretório, por
exemplo.
. – p.8/27
Operação do TFTP
69
X
S
69
X
S
Y
RRQ
69
X
S
YDAT 1
69
X
S
69
X
S
YDAT 1
69
X
S
Y
ACK 1
(a) escrita (b) leitura
C
C
C C
C
C
WRQ
ACK 0
. – p.9/27
Correio Eletrônico
UA
UA
MTA
UA
UAMTA
MTA
UA
UA
. – p.10/27
Componentes
O sistema de correio eletrônico contempla:
UAs (User Agents);
MTAs (Message Transfer Agents).
Exemplos de UAs com interface gráfica:
Eudora, Outlook, Messenger, etc.
Exemplos de UAs de modo texto:
mail, pine, elm, etc.
O MTA é o Servidor de Correio Eletrônico.
. – p.11/27
SMTP
Uma mensagem de Alice para Bob é confeccionada no
UA de Alice e entregue ao seu MTA.
Em seguida, o MTA de Alice encaminha, sem
intermediários, a mensagem ao MTA de Bob.
SMTP
SMTP
Alice
Bob
MTA MTAInternet
UA UA
Ambos procedimentos são realizados usando-se o SMTP
(Simple Mail Transfer Protocol).
. – p.12/27
Características do SMTP
Especificado na RFC 821 (protocolo antigo).
Utiliza o TCP como protocolo de transporte.
Mais especificamente a porta 25.
Restringe as mensagens ao formato ASCII, de 7 bits.
Trata-se de um protocolo para envio de informações.
No endereço fulano@toto.com.br:
fulano representa uma caixa de correio;
toto.com.br representa o computador onde a caixa
está localizada.
. – p.13/27
Características do SMTP
Múltiplos destinatários em um mesmo computador:
beltrano,
cicrano
fulano,
Servidor
SMTP conexão TCP
Servidor
SMTP (mesma)
conexão TCP
toto.com.br
Servidor
SMTP
Servidor
SMTP
toto.com.br
“Explodidor” de emails:
Servidor
SMTP
Servidor
SMTP
Servidor
SMTP
Servidor
SMTP
cdcfac@googlegroups.com
googlegroups.com
uol.com
globo.com
terra.com(mail relayer)
Servidor
SMTP
. – p.14/27
Formato das Mensagens
O formato básico das mensagens de correio é definido
pela RFC 822.
Exemplo:
From: alice@alpha.fr
To: bob@bravo.edu
Subject: Quadro de Monet.
Conteúdo era restrito inicialmente a mensagens
codificadas em ASCII.
. – p.15/27
Exemplo de Troca de Mensagens
telnet bravo.edu 25
S: 220 bravo.edu
C: HELO alpha.fr
S: 250 Hello alpha.fr, pleased to meet you
C: MAIL FROM: <alice@alpha.fr>
S: 250 alice@alpha.fr ... Sender ok
C: RCPT TO: <bob@bravo.edu>
S: 250 bob@bravo.edu ... Recipient ok
C: DATA
S: 354 Enter mail, end with "." on a line by itself
C: Bom dia, Bob. Tudo bem contigo?
C: Ate´ amanha˜.
C: .
S: 250 Message accepted for delivery
C: QUIT
S: 221 bravo.edu closing connection
. – p.16/27
MIME (Multi purpose Internet Mail Extensions)
Cabeçalhos definidos nas RFCs 2045 e 2046.
Usados em mensagens multimídia, ou texto não
codificado em ASCII. Exemplo:
From: alice@alpha.fr
To: bob@bravo.edu
Subject: Quadro de Monet.
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Type: image/jpeg
(dados codificados em base64....
................................
...(dados codificados em base64)
.
. – p.17/27
Valores Comuns para o Content-Type
text/plain; charset=us-ascii,
text/plain; charset="ISO-8859-1"
text/html
image/gif
image/jpeg
audio/basic
video/mpeg
video/quicktime
application/msword
multipart/mixed
. – p.18/27
Exemplo de Uso do multipart/mixed
From: alice@alpha.fr
To: bob@bravo.edu
Subject: Quadro de Monet.
MIME-Version: 1.0
Content-Type: multipart/mixed;
Boundary=StartOfNextPart
--StartOfNextPart
Bob, eis aqui o quadro de Monet.
--StartOfNextPart
Content-Transfer-Encoding: base64
Content-Type: image/jpeg
(dados codificados em base64....
................................
...(dados codificados em base64)
--StartOfNextPart
Espero que ajude em seu trabalho.
.
. – p.19/27
Cabeçalho Received
Colocado pelo servidor SMTP destinatário. Ex.:
Received from: alpha.fr by bravo.edu;
12 Oct 98 15:27:39 GMT
From: alice@alpha.fr
To: bob@bravo.edu
Subject: Quadro de Monet.
MIME-Version: 1.0
Content-Type: multipart/mixed;
Boundary=StartOfNextPart
--StartOfNextPart
Bob, eis aqui o quadro de Monet.
--StartOfNextPart
(dados codificados em base64....
................................
...(dados codificados em base64)
.
. – p.20/27
Cabeçalho Received (cont.)
Uma mensagem pode eventualmente sofrer um
encaminhamento adicional.
Exemplo:
Received from: bravo.edu by charlie.edu;
12 Oct 98 15:30:01 GMT
Received from: alpha.fr by bravo.edu;
12 Oct 98 15:27:39 GMT
. – p.21/27
Entrega Final de Mensagem
Leva em conta a conectividade sob demanda de
usuários.
SMTP
SMTP POP3/IMAP
Alice
UA
Servidor
SMTP
POP3/
IMAP
Servidor
Bob
UA
InternetServidor
SMTP
Os protocolos usados para entrega final são:
POP3 (Post Office Protocol version 3);
IMAP (Internet Message Access Protocol).
. – p.22/27
POP3
Definido na RFC 1939.
Usa o TCP como protocolo de transporte.
Mais precisamente, a porta 110 do TCP.
Possui três estados seqüenciais:
1. Autorização;
2. Transações;
3. Atualização.
Usualmente, os UAsdescarregam todas as mensagens e
esvaziam a caixa de correio.
. – p.23/27
Exemplo de Troca de Mensagens
telnet mailServer 110
+OK POP3 server ready
user alice
+OK
pass toto
+OK user successfully logged on
C: list
S: 1 498
S: 2 912 | C: retr 2
S: . | S: (bla bla ....
C: retr 1 | S: .................
S: (bla bla .... | S: ......... bla)
S: ................. | S: .
S: ......... bla) | C: dele 2
S: . | C: quit
C: dele 1 | S: +OK POP3 server signing off
. – p.24/27
IMAP
Definido na RFC 2060.
Usa o TCP como protocolo de transporte.
Mais precisamente, a porta 143 do TCP.
Pressupõe que as mensagens permanecerão
indefinidamente no servidor.
Fornece mecanismos para leitura de mensagens e
partes de mensagens.
É possível também criar, destruir e manipular várias
caixas de correio no servidor.
. – p.25/27
Comparação Entre POP3 e IMAP
Caracterı´stica POP3 IMAP
RFC em que é definido 1939 2060
Porta TCP usada 110 143
Onde as mensagens são armazenadas PC do usuário servidor
Onde as mensagens são lidas Off-line On-line
Tempo de conexão pequeno grande
Uso de recursos no servidor Mínima Intensa
Várias caixas de correio Não Sim
Quem guarda cópias das caixas Usuário Provedor
Bom para usuários em trânsito Não Sim
Controle do usuário sobre o download Pequeno Grande
Downloads de mensagens parciais Não Sim
Quotas de disco podem ser um problema após
algum tempo
Não Sim
Implementação simples Sim Não
Suporte difundido Sim Crescendo
. – p.26/27
Webmail
Exemplos de serviços Webmail comuns:
Hotmail, Yahoo! Mail, Gmail, etc.
O UA é o próprio navegador do cliente.
Mensagens são enviadas para os servidores de email e
retiradas deles usando o HTTP.
Os servidores, contudo, continuam a se comunicar
usando o SMTP.
É lento, pois os servidores estão longe dos usuários e a
interação com o servidor é feita usando scripts.
. – p.27/27
	
	{large Introdução}
	{large Modos de Operação}
	{large Modo Ativo}
	{large Modo Passivo}
	{large Modo ASCII x Modo Binário}
	{large Comandos & Respostas}
	{large TFTP (Trivial FTP)}
	{large Operação do TFTP}
	{large Correio Eletrônico}
	{large Componentes}
	{large SMTP}
	{large CaracterÃnullsticas do SMTP}
	{large CaracterÃnullsticas do SMTP}
	{large Formato das Mensagens}
	{large Exemplo de Troca de Mensagens}
	{large MIME (Multi purpose Internet Mail Extensions)}
	{large Valores Comuns para o Content-Type}
	{large Exemplo de Uso do multipart/mixed}
	{large Cabeçalho Received}
	{large Cabeçalho Received (cont.)}
	{large Entrega Final de Mensagem}
	{large POP3}
	{large Exemplo de Troca de Mensagens}
	{large IMAP}
	{large Comparação Entre POP3 e IMAP}
	{large Webmail}

Continue navegando