Protocolo FTP
Este artigo explica o funcionamento do protocolo FTP
Oi pessoal vou falar um pouco sobre o 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.
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 tabala 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 |
OBS:
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.
Espero que tenham gostado.
Abraços
jjaraujo@superig.com.br


Estudo comparativo entre banco de dados IBM Informix e Microsoft SQL

0
0
Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!