Juliana Jenny Kolb
Home > Redes de Computadores > Modelos de Arquitetura de Redes > Modelo OSI
Protocolo FTP
FTP (Protocolo de transferência de arquivos) é um protocolo utilizado para transferência de dados da camada de aplicação, através de uma interface que o usuário se identifica, envia e recebe arquivos para um servidor FTP. Como o protocolo HTTP o FTP utiliza conexão TCP para se conectar com o servidor mas com uma diferença importante, o FTP utiliza duas conexões TCPs paralelas para transmitir um arquivo, uma conexão de controle e uma conexão de dados.
A conexão de controle é utilizada para trocar informações como as de usuário e senha, mudança de diretórios,inserir e apagar arquivos. A conexão de dados serve para enviar os arquivos solicitado pelo cliente. Por este motivo dizemos que o FTP possui informações de controle fora da banda, diferente do HTTP que possui informações de controle na banda, na mesma conexão TCP.
Características
- Conteúdos arbitrários de arquivo: pode transferir qualquer tipo de dados, incluindo documentos, imagens, músicas ou vídeos armazenados;
- Transferência bidirecional: pode ser usado para download de arquivos (transferir do servidor para o cliente) ou upload de arquivos (transferir do cliente para o servidor);
- Acomodação de heterogeneidade: esconde os detalhes dos sistemas operacionais dos computadores individuais e pode transferir uma cópia de um arquivo entre dois computadores quaisquer;
- O protocolo é geralmente invisível: costuma ser chamado automaticamente pelo navegador quando um usuário solicita uma transferência de arquivo.
Funcionamento
Ao iniciar uma sessão TFP o cliente inicia primeiramente uma conexão de controle com o servidor na porta 21, por onde envia informações de usuário e senha e comandos para mudar diretório. Com a verificação positiva do usuário o servidor mantem a conexão de controle aberta e aguarda as solicitações, quando o cliente solicita um arquivo o servidor abre uma conexão de dados com o cliente através da porta 20 que fechada logo após o envio do mesmo. Se durante a sessão o cliente solicitar outro arquivo o FTP abrirá outra conexão TCP, ou seja o FPT manter uma conexão não persistente na conexão de dados e uma conexão persistente na conexão de controle. Durante uma sessão FTP o servidor mantem informações de estado do cliente, monitorando seu tráfego na árvore de diretório e associa cada sessão TCP a um cliente especifico, por este motive é considerado uma protocolo de estado,diferente do protocolo HTTP que não monitora o cliente e por isso é considerado um protocolo sem estado.
Seque abaixo uma tabela com os comandos mais comuns de um cliente FPT:
Comando | Função |
User name: | Usado para envia r a identificação do usuário ao servidor |
PASS password | Usado para enviar a senha do usuário do servidor |
LIST: | Usado para solicitar a lista de arquivos do diretório atual, que é enviada pela conexão de dados (não persistente) |
RETR filename | Usado para extrair um arquivo do servidor |
STOR filename | Usado para inserir um arquivo no diretório atual do servidor |
Segue abaixo uma tabela com algumas mensagens de resposta do servidor FTP:
Código | Mensagem |
331 | Nome do usuário OK, senha requisitada. |
125 | Conexão de dados já aberta: Iniciando transferência |
425 | Não é possível abrir conexão de dados |
452 | Erro ao escrever o arquivo |
O fato do protocolo FTP ser um protocolo de estado limita sua capacidade máxima de sessões simultâneas no servidor. Já o protocolo HTTP por não ser uma aplicação de estado suporta muito mais sessões simultâneas.
Observação:
A partir de qualquer browser, conforme a norma RFC1738, é possível acessar um servidor FTP (File Transfer Protocol) digitando na barra de endereço:
ftp://[username]:[password]@[servidor]
Segurança
O protocolo FTP é um protocolo inseguro, uma vez que transmite todos os dados (
- FTP com TLS
Assegurar a segurança em transmissões FTP, por meio do TLS, não é tão óbvio assim, quanto em transmissões HTTP. Isso porque o TLS é utilizado durante as conexões FTP, não sendo como no último caso em que este protocolo é simplesmente encapsulado como parte do protocolo de aplicação do TLS.
O servidor escuta normalmente a porta padrão do FTP, e a sessão se inicia sem qualquer segurança. Uma vez que o cliente deseje assegurar a sessão, o comando AUTH do FTP deve ser passado e então o servidor deve habilitar a negociação TLS, através do handshake. Após a negociação TLS ser concluída, o FTP volta à cena, tendo seus demais comandos, assim como o AUTH implementados com o protocolo TLS. No entanto, apenas a parte de controle é assegurada pelo TLS, a transmissão de dados deve ser assegurada pelo próprio FTP, através dos comandos PBSZ e PROT.
Protocolo TFTP
Trivial File Transfer Protocol , ou TFTP, é um método leve para mover pequenos arquivos em redes. O protocolo não estabelece uma conexão e usa menos recursos do que o Protocolo de Transferência de Arquivo (FTP ), que é a opção mais conhecida para a transferência de arquivos . Porque, se a sua ausência de recursos, TFTP é mais adequado para a transferência de pequenos arquivos em uma rede local. Protocolo de transporte para programas de rede enviar dados em pacotes.
Um protocolo de transporte monta pacotes de dados. Esse protocolo de transporte pode ser o Transmission Control Protocol ( TCP) ou o User Datagram Protocol (UDP). O File Transfer Protocol , rival dos pesos pesados do TFTP, usa TCP , que estabelece uma conexão entre os dois pontos finais da transferência e verifica se os pacotes de dados que chegam fora de seqüência , ou se eles estão corrompidos ou faltando. UDP faz nenhuma dessas verificações e não estabelece uma conexão. Apesar do fato de que o TFTP precisa enviar dados em muitos pacotes , ele usa UDP , ao invés do TCP mais adequado , porque o seu objectivo é ser rápido, simples e leve.
Configuração
TFTP tem para compensar o fato de que ele usa um protocolo de transporte que está faltando a maioria dos recursos de conexão necessários para a propagação de transferência de arquivos ao longo de vários pacotes. Um programa servidor TFTP tem de ser instalado no computador de envio do arquivo e um programa cliente TFTP é executado no computador que recebe o arquivo . Os dois programas se comunicam uns com os outros em uma simples recreação dos procedimentos geralmente seguido por TCP.
Procedimentos
O arquivo viaja em pacotes de 512 bytes de comprimento . Um pacote menor do que 512 bytes sinaliza o último pacote na transmissão . TFTP é uma ” sintonia ” protocolo – o que significa que cada um dos lados só pode agir depois que o outro lado tenha concluído a sua ação. O servidor envia um pacote e que o cliente envia uma confirmação . Isto provoca que o servidor envie o pacote seguinte e assim por diante . Se o servidor não receber uma confirmação dentro de um determinado período, retransmite o último pacote enviado.
Uso relatório de erro rudimentar do TFTP , o seu tamanho de bloco de 512 bytes e a sua total ausência de quaisquer recursos de segurança tornam inadequado para a transferência de grandes arquivos pela Internet. O principal uso do protocolo é a transferência de um pequeno arquivo de inicialização ou arquivo de configuração para a inicialização de estações de trabalho sem disco , ou como parte do endereço IP rotinas de alocação do Dynamic Host Configuration Protocol (DHCP).
Artigos Relacionados
- Protocolo DHCP (+)
- Protocolo TCP (+)
- Protocolo UDP (+)
Sites de Referência
http://www.devmedia.com.br – jjaraujo@superig.com.br
http://ptcomputador.com/Networking