Le risorse reperibili su internet e i connessi servizi di gestione non si limitano alle risorse ipertestuali e al protocollo http.
Lo scopo del servizio FTP è quello di gestire l'attività di trasferimento di uno o più file da un host ad un altro della rete internet; con ciò non si vuole affermare che il trasferimento dei file può avvenire solo tramite questo tipo di servizio, ma piuttosto che il servizio FTP nasce appositamente per rispondere a tale esigenza.
Quando non vi sono esigenze di navigazione, ma si ha solo la necessità di trasferire file di qualsiasi tipo da un punto ad un altro della rete, il servizio FTP può essere una risposta a questo bisogno.
Il servizio FTP è organizzato secondo la logica client - server, per cui di norma esiste un host su cui gira un server ftp ed esisto uno o più host su cui girano i client ftp che chiedono al server di trasferire determinati file.
I file sul host server sono organizzati gerarchicamente in directory a partire da una radice definita dal server; l'accesso a queste directory può essere anonimo, oppure può richiedere una autenticazione, cioè la fornitura di un nome utente e di una password.
Le operazioni di norma consentite sono il download, cioè il trasferimento dal server al client, o l'upload, cioè il trasferimento dal client al server; l'accesso può essere limitato sia in relazione al tipo di operazioni che possono essere eseguite, sia in relazione alle cartelle su cui si può operare.
La formazione degli URL collegati al protocollo ftp è molto simile alla formazione degli URL per il protocollo http, in quanto le risorse da acquisire sono file organizzati in modo gerarchico.
ftp://[utente[:parola d'ordine]@]nodo[:porta]/percorso
Le parentesi quadre indicano le parti facoltative.
L'unica differenza sostanziale è relativa alla parte
scheme dell'url: al posto del protocollo http, si
indica il protocollo ftp.
Nella parte autorità dello scheme_specific_part, come
già visto per il protocollo http, è necessario indicare
un nodo e possono essere indicati un utente, una parola
d'ordine e una porta intesa come canale di
comunicazione da utilizzare.
Il percorso non è altro che l'indicazione del percorso
da seguire partendo dalla directory radice fino ad
arrivare alla risorsa specifica da acquisire.