Protocolos da camada de aplicação: HTTP, SMTP, SNMP, FTP, NFS, NTP, BOOTP, DHCP, RMON, POP3, IMAP, TELNET, DNS, LDAP, SSL
FTP file transfer protocol
Os objetivos do FTP são: promover o compartilhamento de arquivos, programas de computadores e/ou dados; promover o acesso a computadores remotos; blindar o usuário da variação dos tipos de sistema de armazenamento de arquivos entre os diversos hosts e finalmente, transferir dados de forma confiável e eficiente. Apesar do FTP poder ser usado diretamente pelo usuário em um terminal, ele foi projetado para ser usado por programas principalmente.
É um dos protocolos mais usados para se transferir arquivos na Internet. Envolve tanto transferência de arquivos quanto acesso a sistemas de arquivos remotos. Independe do hardware ou do sistema operacional e utiliza conexão TCP para estabelecimento da conexão entre cliente e servidor. Faz uso de duas conexões paralelas para transferir um arquivo: uma conexão de controle (informações de usuário e senha, comandos como GET ou PUT etc.) e uma conexão de dados (usada para enviar, efetivamente, o arquivo). Devido a essa característica, dizemos que este protocolo possui controle fora da Banda. A conexão de controle é dita persistente, ou seja, uma vez estabelecida a sessão, ela permanece ativa durante toda a conexão. Já a conexão de dados é dita não persistente, ou seja, a cada nova transferência, estabelece-se uma conexão, que é fechada após o término da tarefa.
Comandos FTP
No RFC 959 são definidos 33 comandos, que podem ser utilizados por um usuário em um terminal, embora seja mais comum que as aplicações tenham interfaces que blindem o usuário destas linhas de comando. As instruções são no formato ASCII, de 7 bits, em caracaters maiúsculos, com ou sem argumentos. Alguns dos comandos mais comuns são USER username, PASS password, RETR filename etc. Os nomes são auto-explicativos. USER é usado para o usuário especificado no argumento se conectar ao servidor FTP. RETR é usado para recuperar um arquivo, especificado pelo argumento filename, e assim sucessivamente. Outros comandos são mostrados na tabela abaixo:
https://pt.wikibooks.org/wiki/Redes_de_computadores/FTP
https://pt.wikipedia.org/wiki/Modelo_OSI