File Transfer Protocol (FTP)
El File Transfer Protocol, por lo general llamado FTP es una utilería para manejar archivos a través de máquinas sin tener que establecer una sesión remota con Telnet. El FTP permite transferir archivos en uno y otro sentido, administrar directorios y tener acceso al correo electrónico.
El FTP no está diseñado para permitir el acceso a otra máquina para ejecutar programas, pero es la mejor utilería para transferencias de archivos.
El FTP usa dos canales TCP. El puerto 20 del TCP es el canal de datos y el puerto 21 es el canal de comandos. El FTP difiere de la mayor parte de los demás programas de aplicación TCP/IP donde usa dos canales, permitiendo la transferencia simultanea de comandos FTP y datos.
También difiere en otro aspecto importante: el FTP realiza todas las transferencias de archivo en primer plano, en lugar de hacerlo en el segundo plano. En otras palabras, el FTP no usa spoolers ni colas, de modo que se observa el proceso de transferencia en tiempo real.
Al usar el TCP, el FTP elimina la necesidad de preocuparse por la confiabilidad o la administración de la conexión, debido a que el FTP puede basarse en el TCP para ejecutar estas funciones en forma apropiada.
En lenguaje del FTP, los dos canales que existen entre las dos máquinas se llaman protocol interpreter(interprete del protocolo), o PI, y data transfer process (proceso de transferencia de datos), o DTP. El PI transfiere instrucciones entre las dos aplicaciones usando el canal 21 de comandos TCP y el DTP transfiere datos en el canal 20 de datos TCP.
El FTP se parece a Telnet porque usa un programa servidor que se ejecuta de manera continua y un programa separado que se ejecuta en el cliente. En sistemas UNIX estos programas se llaman ftpd y ftp, respectivamente (en forma parecida al telnetd y telnet).