Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Pode referir-se tanto ao protocolo quanto ao programa que implementa este protocolo (Servidor FTP, neste caso,
tradicionalmente aparece em letras minúsculas, por influência do programa de transferência de arquivos do Unix).
A transferência de dados em redes de computadores envolve normalmente transferência de arquivos e acesso a sistemas
de arquivos remotos (com a mesma interface usada nos arquivos locais). O FTP (RFC 959) é baseado no TCP, mas é
anterior à pilha de protocolos TCP/IP, sendo posteriormente adaptado para o TCP/IP. É o padrão da pilha TCP/IP para
transferir arquivos, é um protocolo genérico independente de hardware.
Índice
Visão geral do protocolo
Como ocorre a transferência de arquivos
Acesso aos servidores FTP
Modos e interfaces
Comandos do cliente FTP
Tradução de nomes de arquivos
Mensagens FTP
Modo cliente-servidor do FTP
Lista de Comandos FTPs
Servidores FTP
Ligações externas
Referências
Um cliente realiza uma conexão TCP para a porta 21 do servidor. Essa conexão, chamada de conexão de controle,
permanece aberta ao longo da sessão enquanto uma segunda conexão, chamada conexão de dados, é estabelecida na porta
20 do servidor e em alguma porta do cliente (estabelecida no diálogo entre ambos) como requisitado para a transferência
de arquivo. A conexão de controle é utilizada para administração da sessão (comandos, identificação, senhas)[2] entre
cliente e servidor utilizando um protocolo semelhante ao Telnet. Por exemplo, "RETR filename" iria transferir o arquivo
especificado de um servidor para um cliente. Devido a essa estrutura de duas portas, FTP é considerado out-of-band, ao
contrário de protocolos in-band, tal como HTTP.[2]
O servidor responde na conexão de controle com três dígitos de código de estado em ASCII com uma mensagem de texto
opcional. Por exemplo, "200" ou "200 OK" significa que o último comando obteve sucesso. Os números representam o
número do código e o texto opcional representa as explicações ou parâmetros necessários.[3] Uma transferência de
https://pt.wikipedia.org/wiki/File_Transfer_Protocol 1/5
08/03/2018 File Transfer Protocol – Wikipédia, a enciclopédia livre
arquivo em progresso, sobre uma conexão de dados, pode ser abortada utilizando uma mensagem de interrupção enviada
sobre a conexão de controle.
FTP pode ser executado em modo ativo ou passivo, os quais determinam como a conexão de dados é estabelecida. No
modo ativo, o cliente envia para o servidor o endereço IP e o número da porta na qual ele irá ouvir e então o servidor inicia
a conexão TCP. Em situações onde o cliente está atrás de um firewall e inapto para aceitar entradas de conexões TCP, o
modo passivo pode ser utilizado. O cliente envia um comando PASV para o servidor e recebe um endereço IP e um número
de porta como resposta, os quais o cliente utiliza para abrir a conexão de dados com o servidor.[1] Ambos os modos foram
atualizados em Setembro de 1998 para adicionar suporte ao IPv6 e feitas algumas mudanças no modo passivo, tornando-o
modo passivo estendido.[4]
Durante a transferência de dados sobre a rede, quatro representações de dados podem ser utilizadas[5]:
Modo ASCII: usado para texto. Dado é convertido, se necessário, da representação de caracteres do host remetente
para 8-bit em ASCII antes da transmissão, e (novamente, se necessário) para a representação de caracteres do host
destinatário. Como consequência, esse modo é inapropriado para arquivos que contenham dados numéricos em
binário, ponto flutuante ou forma decima codificada em binário.
Modo imagem (normalmente chamada de modo binário): a máquina remetente envia cada arquivo byte a byte e
como tal, o destinatário armazena o fluxo de bytes conforme ele os recebe (o suporte ao modo imagem tem sido
recomendado para todas as implementações de FTP).
Modo EBCDIC: utilizado para texto simples entre hosts utilizando o conjunto de caracteres EBCDIC.
Modo local: permite que dois computadores com configurações idênticas enviem dados em um formato proprietário
sem a necessidade de convertê-los para ASCII.
Para arquivos texto, são fornecidas opções para diferentes controles de formato e estrutura de registros. Esses recursos
foram projetados para suporte à formatação Telnet ou ASA.
A transferência de dados pode ser feita em qualquer um dos três modos a seguir:[3]
Modo fluxo: dado é enviado como um fluxo contínuo, liberando FTP de fazer algum processamento. Ao invés disso,
todo processamento é deixado para o TCP. Nenhum indicador de fim de arquivo é necessário, a menos que o dado
esteja dividido dentro de registros.
Modo de bloqueio: FTP quebra o dado dentro de vários blocos( bloco de cabeçalho, contagem de byte e campo de
dado) e então passa-o para o TCP.[5]
Modo comprimido: dado é comprimido utilizando um algoritmo simples.
A partir de qualquer navegador credenciado (Internet Explorer, Firefox, ou mesmo no Windows Explorer), conforme a
norma RFC1738[6] também é possível aceder a um servidor FTP digitando na barra de endereço:
ftp://[username]:[password]@[servidor]
ou
https://pt.wikipedia.org/wiki/File_Transfer_Protocol 2/5
08/03/2018 File Transfer Protocol – Wikipédia, a enciclopédia livre
ftp://[username]:[password]@[servidor]:[porta]
Modos e interfaces
O protocolo subjacente ao FTP pode rodar nos modos interativo ou batch. O cliente FTP fornece uma interface interativa,
enquanto que o MIME e o HTTP usam-no diretamente. O protocolo permite a gravação e obtenção de arquivos, a listagem
da pasta e a alteração da pasta de trabalho.
A interface cliente do FTP do BSD UNIX é um padrão por si mesma, possuindo muitos comandos arcaicos como tenex ou
carriage control, que hoje não têm uso. Os comandos mais usados são o cd, dir, ls,get e put.
O FTP tem particularidades que são hoje pouco comuns. Depois da ativação do ftp, é estabelecida uma conexão ao host
remoto. Esta conexão envolve o uso da conta do usuário no host remoto, sendo que alguns servidores FTP disponibilizam
anonymous FTP.
Certos comandos são os que fazem a transferência bidirecional de arquivos, são eles:
get do servidor FTP para o host local (mget para mais que um arquivo)
put para o servidor FTP a partir do host local (mput para mais que um arquivo)
Nota: alguns comandos podem não funcionar com o usuário sendo anonymous, pois tal conta tem limitações de direitos a
nível do sistema operacional.
Mensagens FTP
O FTP permite dois modos de transferência de mensagens FTP: texto (com traduções apropriadas) ou binário (sem
tradução). Cada mensagem do servidor inclui um identificador decimal de 3 dígitos (exemplo: 226 Transfer complete).
Estas mensagens podem ser vistas ou não, usando para isso o modo verbose ou quiet, respectivamente.
O servidor cria uma conexão de dados para a transferência de dados, sendo criada uma conexão para cada arquivo
transferido. Estes dados são transferidos do servidor para o cliente e vice e versa.
Os comandos estão separados dos dados e o cliente pode enviar comandos durante a transferência de dados. O
encerramento da conexão indica o fim do arquivo.
Os comandos abaixo podem ser executados no FTP através da linha de comando. Os comandos do FTP podem ser
abreviados, desde que não formem expressões ambíguas.
Servidores FTP
Servidor FTP (Lista)
FileZilla Server (Windows)
Pure-FTPd (Unix)
VsFTPd (Unix)
ProFTPd (Unix)
Ligações externas
RFC 959 – File Transfer Protocol
RFC 1579 – Firewall Friendly FTP
RFC 2228 – FTP Security Extensions
RFC 2428 – FTP Extensions for IPv6 and NATs
RFC 2640 – Internationalization of the File Transfer Protocol
Protocolo
https://pt.wikipedia.org/wiki/File_Transfer_Protocol 4/5
08/03/2018 File Transfer Protocol – Wikipédia, a enciclopédia livre
Referências
1. Postel, J., & Reynolds. J. (October 1985). RFC 959. In The Internet Engineering Task Force. Retrieved from
http://www.ietf.org/rfc/rfc0959.txt
2. Kurose, J.F. & Ross, K.W. (2010). Computer Networking. 5th ed. Boston, MA: Pearson Education, Inc.
3. Forouzan, B.A. (2000). TCP/IP: Protocol Suite. 1st ed. New Delhi, India: Tata McGraw-Hill Publishing Company
Limited.
4. Allman, M. & Metz, C. & Ostermann, S. (September 1998). RFC 2428. In The Internet Engineering Task Force.
Retrieved from http://www.ietf.org/rfc/rfc2428.txt
5. Clark, M.P. (2003). Data Networks IP and the Internet. 1st ed. West Sussex, England: John Wiley & Sons Ltd.
6. «RFC 1738 Uniform Resource Locators (URL)» (http://www.ietf.org/rfc/rfc1738.txt)
Obtida de "https://pt.wikipedia.org/w/index.php?title=File_Transfer_Protocol&oldid=51324809"
Esta página foi editada pela última vez à(s) 18h29min de 20 de fevereiro de 2018.
Este texto é disponibilizado nos termos da licença Creative Commons - Atribuição - Compartilha Igual 3.0 Não Adaptada
(CC BY-SA 3.0); pode estar sujeito a condições adicionais. Para mais detalhes, consulte as condições de uso.
https://pt.wikipedia.org/wiki/File_Transfer_Protocol 5/5