La Red de Conocimientos Pedagógicos - Currículum vitae - ¿Qué es FTP?

¿Qué es FTP?

¿Qué es FTP? FTP es uno de los protocolos del grupo de protocolos TCP/IP y es la abreviatura del Protocolo de transferencia de archivos en inglés. Este protocolo es la base para la transferencia de archivos por Internet y consta de una serie de documentos de especificaciones. Sus objetivos son mejorar el intercambio de archivos, proporcionar computadoras remotas para uso indirecto y hacer que los medios de almacenamiento sean transparentes, confiables y eficientes para que los usuarios transfieran datos. En pocas palabras, FTP consiste en copiar archivos entre dos computadoras, desde una computadora remota a su propia computadora, que es el llamado archivo de "descarga". Si copia un archivo desde su propia computadora a una computadora remota, a esto se le llama "cargar" el archivo. En el protocolo TCP/IP, el número de puerto TCP del comando estándar FTP es 21 y el puerto de datos del modo de puerto es 20. La tarea del protocolo FTP es transferir archivos de un ordenador a otro, independientemente de dónde se encuentren los dos ordenadores, cómo estén conectados o incluso si utilizan el mismo sistema operativo. Suponiendo que dos computadoras se comunican a través del protocolo ftp y tienen acceso a Internet, puede usar el comando ftp para transferir archivos. Existen algunas diferencias sutiles en el uso de cada sistema operativo, pero la estructura de comando básica de cada protocolo es la misma.

La transmisión FTP tiene dos modos: modo de transmisión ASCII y modo de transmisión de datos binarios.

1. Modo de transferencia ASCII: suponiendo que el archivo que el usuario está copiando contiene texto de código ASCII simple, si la máquina remota no ejecuta UNIX, ftp generalmente ajustará automáticamente el contenido del archivo durante la transferencia del archivo. que el archivo se puede interpretar Formato para un archivo de texto almacenado en otra computadora.

Sin embargo, a menudo ocurre que el archivo que el usuario está transfiriendo no contiene un archivo de texto, sino que puede ser un programa, una base de datos, un archivo de procesamiento de textos o un archivo comprimido (aunque los archivos de procesamiento de textos contienen principalmente texto). , Incluye caracteres no imprimibles que indican el tamaño de página, fuente y otra información). Antes de copiar cualquier archivo que no sea de texto, use el comando binario para indicarle a ftp que copie palabra por palabra y no procese estos archivos. Esta es también la transferencia binaria que se analiza a continuación.

2. Modo de transmisión binaria: en la transmisión binaria, el orden de bits del archivo se guarda para que el archivo original y el archivo copiado correspondan uno a uno. Incluso los archivos que contienen secuencias de bits no tienen sentido en la máquina de destino. Por ejemplo, un Macintosh envía un archivo ejecutable a un sistema Windows en modo binario, pero este archivo no se puede ejecutar en otro sistema.

Si un archivo binario se transfiere en modo ASCII, la traducción se realizará incluso si no es necesaria. Esto ralentizará ligeramente la transferencia y también dañará los datos, haciendo que el archivo quede inutilizable. (En la mayoría de las computadoras, ASCII generalmente asume que el primer bit significativo de cada carácter no tiene sentido porque las combinaciones de caracteres ASCII no lo usan. Si transfiere un archivo binario, todos los bits son significativos. Si sabe si las dos máquinas son iguales , entonces el modo binario es válido tanto para archivos de texto como para archivos de datos.

5 Cómo funciona FTP

FTP admite dos modos, uno se llama estándar (es decir, modo de puerto y modo activo). ), uno se llama pasivo (PASV, modo pasivo). El cliente FTP en modo estándar envía el comando PORT al servidor FTP.

Así es como funcionan ambos métodos:

El modo de puerto. El cliente FTP primero establece una conexión con el puerto TCP 21 del servidor FTP y envía comandos a través de este canal. Cuando el cliente necesita recibir datos, envía comandos en este canal. El comando PORT contiene el puerto. utilizado por el cliente para recibir datos Al transmitir datos, el servidor debe conectarse al puerto designado del cliente a través de su propio puerto TCP 20 para enviar los datos.

El modo pasivo es similar al modo estándar. un canal de control, pero envía comandos Pasv en lugar de comandos de Puerto después de establecer la conexión.

Después de recibir el comando Pasv, el servidor FTP abre aleatoriamente un puerto de gama alta (número de puerto mayor que 1024) y notifica al cliente sobre la solicitud para transmitir datos en este puerto. El cliente se conecta a este puerto del servidor FTP y luego el servidor FTP transmite datos a través de este puerto. En este punto, el servidor FTP ya no necesita establecer una nueva conexión con el cliente.

Muchos firewalls no pueden aceptar conexiones externas cuando están configurados, por lo que muchos servidores FTP ubicados detrás del firewall o intranet no admiten el modo PASV porque el cliente no puede abrir el puerto de gama alta del FTP. servidor a través del firewall Sin embargo, muchos clientes en la intranet no pueden iniciar sesión en el servidor FTP en modo puerto porque TCP 20 del servidor no puede establecer una nueva conexión con el cliente de la intranet, lo que hace que no funcione.