Está en la página 1de 39

FTP (File PROTOCOLO DE

Transfer
TRANSFERENCIA DE
ARCHIVOS

Protocol)
 Es un protocolo de transferencia de archivos entre sistemas
conectados a una red TCP basado en la arquitectura cliente-servidor,
Desde un equipo cliente se puede conectar a un servidor para
descargar archivos desde él o para enviarle archivos,
independientemente del sistema operativo utilizado en cada equipo.

 Un problema básico de FTP es que está pensado para ofrecer la


máxima velocidad en la conexión, pero no la máxima seguridad, ya
que todo el intercambio de información, desde el login y password
del usuario en el servidor hasta la transferencia de cualquier archivo,
se realiza en texto plano sin ningún tipo de cifrado, con lo que un
posible atacante lo tiene muy fácil para capturar este tráfico,
acceder al servidor, o apropiarse de los archivos transferidos.
El protocolo FTP se empezó a utilizar en abril de
1971, publicado como el RFC 114, antes de
que existiera la pila TCP/IP. La estructura
general fue establecida en 1973. Fue
modificado varias veces, añadiendo nuevos
comandos y funcionalidades. Al final se
publicó el RFC 959 en octubre de 1985, que es
la que se utiliza actualmente. En el modelo, el intérprete de protocolo (PI) de
usuario inicia la conexión de control en el puerto 21.
Las órdenes FTP estándar las genera el PI de usuario
y se transmiten al proceso servidor a través de la
conexión de control. Las respuestas estándar se
envían desde la PI del servidor hasta la PI de usuario
por la conexión de control como respuesta a las
órdenes.

Estas órdenes FTP especifican parámetros para la


conexión de datos (puerto de datos, modo de
transferencia, tipo de representación y estructura) y
la naturaleza de la operación sobre el sistema de
archivos (almacenar, recuperar, añadir, borrar, etc.).
Servidor FTP
 Un servidor FTP es un programa especial que se ejecuta en un equipo servidor
normalmente conectado a Internet (aunque puede estar conectado a otros tipos
de redes, LAN, MAN, etc.). Su función es permitir el intercambio de datos entre
diferentes servidores/ordenadores.
 Por lo general, los programas servidores FTP no suelen encontrarse en los
ordenadores personales, por lo que un usuario normalmente utilizará el FTP para
conectarse remotamente a uno y así intercambiar información con él.
 Las aplicaciones más comunes de los servidores FTP suelen ser el alojamiento web,
en el que sus clientes utilizan el servicio para subir sus páginas web y sus archivos
correspondientes; o como servidor de backup (copia de seguridad) de los
archivos importantes que pueda tener una empresa. Para ello, existen protocolos
de comunicación FTP para que los datos se transmitan cifrados, como el SFTP
(Secure File Transfer Protocol).
Cliente FTP
 Cuando un navegador no está equipado con la función FTP, o si se quiere cargar
archivos en un ordenador remoto, se necesitará utilizar un programa cliente FTP. Un
cliente FTP es un programa que se instala en el ordenador del usuario, y que emplea el
protocolo FTP para conectarse a un servidor FTP y transferir archivos, ya sea para
descargarlos o para subirlos.
 Para utilizar un cliente FTP, se necesita conocer el nombre del archivo, el ordenador en
que reside (servidor, en el caso de descarga de archivos), el ordenador al que se quiere
transferir el archivo (en caso de querer subirlo nosotros al servidor), y la carpeta en la
que se encuentra.
 Algunos clientes de FTP básicos en modo consola vienen integrados en los sistemas
operativos, incluyendo Microsoft Windows, DOS, GNU/Linux y Unix. Sin embargo, hay
disponibles clientes con opciones añadidas e interfaz gráfica. Aunque muchos
navegadores tienen ya integrado FTP, es más confiable a la hora de conectarse con
servidores FTP no anónimos utilizar un programa cliente.
Ejemplos de Clientes FTPs
Entre los varios clientes FTP que existen, se pueden mencionar los
siguientes:2
 Free FTP Upload Manager
 F->IT
 net2ftp
 Web FTP.co.uk
 Web-Ftp
 Jambai FTP
 ftp4net
 PHP FTP Client
 Asuk PHP FTP
 Weeble File Manager
 FileZilla
Modos de conexión del cliente FTP
 FTP admite dos modos de conexión del cliente. Estos modos se denominan activo (o
Estándar, o PORT, debido a que el cliente envía comandos tipo PORT al servidor por el
canal de control al establecer la conexión) y pasivo (o PASV, porque en este caso envía
comandos tipo PASV). Tanto en el modo Activo como en el modo Pasivo, el cliente
establece una conexión con el servidor mediante el puerto 21, que establece el canal
de control.

Modo activo Modo pasivo


En modo Activo, el servidor siempre crea el canal Cuando el cliente envía un comando PASV
de datos en su puerto 20, mientras que en el lado sobre el canal de control, el servidor FTP le
del cliente el canal de datos se asocia a un puerto indica por el canal de control, el puerto (mayor
aleatorio mayor que el 1024. Para ello, el cliente a 1024 del servidor. Ejemplo:2040) al que debe
manda un comando PORT al servidor por el canal conectarse el cliente. El cliente inicia una
de control indicándole ese número de puerto, de conexión desde el puerto siguiente al puerto de
manera que el servidor pueda abrirle una control (Ejemplo: 1036) hacia el puerto del
conexión de datos por donde se transferirán los servidor especificado anteriormente (Ejemplo:
archivos y los listados, en el puerto especificado. 2040).
Tipos de transferencia de archivos
en FTP
 En el protocolo FTP existen 2 tipos Extensión de archivo Tipo de transferencia
txt (texto) ascii
de transferencia en ASCII y en
html (página WEB) ascii
binarios. Es importante conocer
doc (documento) binario
cómo debemos transportar un
ps (poscript) ascii
archivo a lo largo de la red, si no hqx (comprimido) ascii
utilizamos las opciones adecuadas Z (comprimido) binario
podemos destruir la información del ZIP (comprimido) binario
archivo. Por eso, al ejecutar la ZOO (comprimido) binario
aplicación FTP, debemos Sit (comprimido) binario
acordarnos de utilizar uno de estos pit (comprimido) binario
comandos (o poner la shar (comprimido) binario
correspondiente opción en un uu (comprimido) binario
programa con interfaz gráfica) ARC (comprimido) binario
tar (empaquetado) binario
Conexión a un servidor FTP
protegido desde navegador

Para iniciar sesión en un servidor FTP que requiere


una contraseña teclee la URL de esta forma:
ftp://<usuario>:<contraseña>@<servidor ftp>/<url-ruta>

Donde <usuario> es el nombre de usuario, <servidor ftp> es el servidor FTP, <contraseña> es


la contraseña de acceso, y <url-ruta> es el directorio donde iniciamos sesión.
Ejemplo: ftp://alumno:alumnopass@ftp.example.com/public
DHCP
(Dynamic
Host Protocolo de configuración dinámica de host

Configuration
Protocol)
 Es un servidor que usa protocolo de red de tipo cliente/servidor en el
que generalmente un servidor posee una lista de direcciones IP
dinámicas y las va asignando a los clientes conforme éstas van
quedando libres, sabiendo en todo momento quién ha estado en
posesión de esa IP, cuánto tiempo la ha tenido y a quién se la ha
asignado después. Así los clientes de una red IP pueden conseguir sus
parámetros de configuración automáticamente. Este protocolo se
publicó en octubre de 1993, y su implementación actual está en la RFC
2131. Para DHCPv6 se publica el RFC 3315.

 DHCP se definió por primera vez como un protocolo de seguimiento


estático de las normas en el RFC 1531 en octubre de 1993, como una
extensión del protocolo Bootstrap (BOOTP). La motivación para
extender BOOTP era porque BOOTP requería intervención manual para
completar la información de configuración en cada cliente, y no
proporciona un mecanismo para la recuperación de las direcciones IP
en desuso. Puede ser usado para entregar un amplio rango de
parámetros de configuración extra a los clientes IP, incluyendo
parámetros específicos a ciertas plataformas.1 Debido a algunos
errores en el proceso editorial, fue rápidamente reemitido como RFC
1541.
Asignación de direcciones IP
 Cada dirección IP debe configurarse manualmente en cada dispositivo y, si el
dispositivo se mueve a otra subred, se debe configurar otra dirección IP diferente.
El DHCP le permite al administrador supervisar y distribuir de forma centralizada las
direcciones IP necesarias y, automáticamente, asignar y enviar una nueva IP si
fuera el caso en que el dispositivo es conectado en un lugar diferente de la red.
 El protocolo DHCP incluye tres métodos de asignación de direcciones IP:

Asignación Asignación Asignación


Manual o Estática Automática Dinámica
Asignación manual o estática
Asigna una dirección IP a una máquina determinada. Se
suele utilizar cuando se quiere controlar la asignación de
dirección IP a cada cliente, y evitar, también, que se
conecten clientes no identificados.

Asignación automática
Asigna una dirección IP a una máquina cliente la
primera vez que hace la solicitud al servidor DHCP y
hasta que el cliente la libera. Se suele utilizar cuando
el número de clientes no varía demasiado.

Asignación dinámica
El único método que permite la reutilización dinámica de las
direcciones IP. El administrador de la red determina un rango
de direcciones IP y cada dispositivo conectado a la red está
configurado para solicitar su dirección IP al servidor cuando la
tarjeta de interfaz de red se inicializa. El procedimiento usa un
concepto muy simple en un intervalo de tiempo controlable.
Esto facilita la instalación de nuevas máquinas clientes.
Parámetros configurables
Un servidor DHCP puede proveer de una configuración opcional al dispositivo
cliente. Dichas opciones están definidas en el RFC 2132. Algunas de las opciones
configurables son:
 Dirección del servidor DNS
 Nombre DNS
 Puerta de enlace de la dirección IP
 Dirección de Publicación Masiva (broadcast address)
 Máscara de subred
 Tiempo máximo de espera del ARP (Protocolo de Resolución de Direcciones según siglas en
inglés)
 MTU (Unidad de Transferencia Máxima según siglas en inglés) para la interfaz
 Servidores NIS (Servicio de Información de Red según siglas en inglés)
 Dominios NIS
 Servidores NTP (Protocolo de Tiempo de Red según siglas en inglés)
 Servidor SMTP
 Servidor TFTP
 Nombre del servidor de nombres de Windows (WINS)
Anatomía del protocolo
 DHCP Discovery
DHCP Discovery es una solicitud DHCP realizada por un cliente de este protocolo
para que el servidor DHCP de dicha red de computadoras le asigne una dirección
IP y otros Parámetros DHCP como la máscara de red o el nombre DNS.
 DHCP Offer
DHCP Offer es el paquete de respuesta del Servidor DHCP a un cliente DHCP ante
su petición de la asignación de los Parámetros DHCP. Para ello involucra su
dirección MAC (Media Access Control).
 DHCP Request
El cliente selecciona la configuración de los paquetes recibidos de DHCP Offer.
Una vez más, el cliente solicita una dirección IP específica que indicó el servidor
 DHCP Acknowledge
El servidor reconoce la solicitud y la envía acuse de recibo al cliente del cliente, se
inicia la fase final del proceso de configuración. Esta fase implica el
reconocimiento con el envío de un paquete al cliente. Este paquete incluye la
duración de la concesión y cualquier otra información de configuración que el
cliente pueda tener solicitada.
UDP
(User Datagram
Protocol)
PROTOCOLO DE DATAGRAMA DE USUARIO
 Es un protocolo sin conexión que, como TCP, funciona
en redes IP

 Es un protocolo del nivel de transporte basado en el


intercambio de datagramas (Encapsulado de capa 4
o de Transporte del Modelo OSI)

 UDP/IP proporciona muy pocos servicios de


recuperación de errores, ofreciendo en su lugar una
manera directa de enviar y recibir datagramas a
través una red IP. Se utiliza sobre todo cuando la
velocidad es un factor importante en la transmisión
de la información, por ejemplo, RealAudio utiliza el
UDP.
 Permite el envío de datagramas a través de la red sin que se haya
establecido previamente una conexión, ya que el propio datagrama
incorpora suficiente información de direccionamiento en su
cabecera. Tampoco tiene confirmación ni control de flujo, por lo que
los paquetes pueden adelantarse unos a otros; y tampoco se sabe si
ha llegado correctamente, ya que no hay confirmación de entrega
o recepción.

 Su uso principal es para protocolos como DHCP, BOOTP, DNS y


demás protocolos en los que el intercambio de paquetes de la
conexión/desconexión son mayores, o no son rentables con respecto
a la información transmitida, así como para la transmisión de audio y
vídeo en real, donde no es posible realizar retransmisiones por los
estrictos requisitos de retardo que se tiene en estos casos.
Descripción técnica
 User Datagram Protocol (UDP) es un protocolo mínimo de nivel de
transporte orientado a mensajes documentado en el RFC 768 de la
IETF.
 En la familia de protocolos de Internet UDP proporciona una sencilla
interfaz entre la capa de red y la capa de aplicación. UDP no
otorga garantías para la entrega de sus mensajes (por lo que
realmente no se debería encontrar en la capa 4) y el origen UDP no
retiene estados de los mensajes UDP que han sido enviados a la
red. UDP sólo añade multiplexado de aplicación y suma de
verificación de la cabecera y la carga útil. Cualquier tipo de
garantías para la transmisión de la información deben ser
implementadas en capas superiores.
 La cabecera UDP consta de 4 campos de los cuales 2 son opcionales
(con fondo rojo en la tabla). Los campos de los puertos origen y destino
son campos de 16 bits que identifican el proceso de emisión y
recepción. Ya que UDP carece de un servidor de estado y el origen
UDP no solicita respuestas, el puerto origen es opcional. En caso de no
ser utilizado, el puerto origen debe ser puesto a cero. A los campos del
puerto destino le sigue un campo obligatorio que indica el tamaño en
bytes del datagrama UDP incluidos los datos. El valor mínimo es de 8
bytes. El campo de la cabecera restante es una suma de
comprobación de 16 bits que abarca una pseudo-cabecera IP (con
las IP origen y destino, el protocolo y la longitud del paquete UDP), la
cabecera UDP, los datos y 0's hasta completar un múltiplo de 16. El
checksum también es opcional en IPv4, aunque generalmente se
utiliza en la práctica (en IPv6 su uso es obligatorio).
Puertos
 UDP utiliza puertos para permitir la comunicación entre aplicaciones. El
campo de puerto tiene una longitud de 16 bits, por lo que el rango de
valores válidos va de 0 a 65.535. El puerto 0 está reservado, pero es un
valor permitido como puerto origen si el proceso emisor no espera
recibir mensajes como respuesta.
 Los puertos 1 a 1023 se llaman puertos "bien conocidos" y en sistemas
operativos tipo Unix enlazar con uno de estos puertos requiere acceso
como superusuario.
 Los puertos 1024 a 49.151 son puertos registrados.
 Los puertos 49.152 a 65.535 son puertos dinámicos y son utilizados como
puertos temporales, sobre todo por los clientes al comunicarse con los
servidores.
Uso en aplicaciones
 La mayoría de las aplicaciones claves de Internet utilizan el protocolo
UDP, incluyendo: el Sistema de Nombres de Dominio , donde las
consultas deben ser rápidas y solo contaran de una sola solicitud,
luego de un paquete único de respuesta, el Protocolo de
Administración de Red, el Protocolo de Información de Enrutamiento
(RIP) y el Protocolo de Configuración dinámica de host.

Principales características
Provoca
Trabaja
poca
Trabaja sin con
No es fiable carga
Conexión paquete
adicional a
enteros
la red
Comparativa entre UDP y TCP
(Transmission Control Protocol)
 UDP: proporciona un nivel de transporte no fiable de datagramas, ya que apenas
añade la información necesaria para la comunicación extremo a extremo al paquete
que envía al nivel inferior. Lo utilizan aplicaciones como NFS (Network File System) y RCP
(comando para copiar ficheros entre ordenadores remotos), pero sobre todo se emplea
en tareas de control y en la transmisión de audio y vídeo a través de una red.
 TCP: es el protocolo que proporciona un transporte fiable de flujo de bits entre
aplicaciones. Está pensado para poder enviar grandes cantidades de información de
forma fiable, liberando al programador de la dificultad de gestionar la fiabilidad de la
conexión (retransmisiones, pérdida de paquetes, orden en el que llegan los paquetes,
duplicados de paquetes...) que gestiona el propio protocolo. Pero la complejidad de la
gestión de la fiabilidad tiene un coste en eficiencia, ya que para llevar a cabo las
gestiones anteriores se tiene que añadir bastante información a los paquetes que enviar.
IPX
(Internetwork
Packet
Exchange)
INTERCAMBIO DE PAQUETES INTERRED
 Es un antiguo protocolo de comunicaciones
de redes NetWare (del fabricante Novell)
utilizado para transferir datos de un nodo a
otro de la red mediante paquetes de datos
llamados datagramas.

 Los paquetes en IPX incluyen direcciones de


redes, permitiendo enviar datos de una red a
otra y, en consecuencia, interconectar
ordenadores de redes diferentes. Algún
paquete en IPX puede perderse cuando cruza
redes, por lo que IPX no garantiza la entrega
de un mensaje completo. La aplicación tiene
que proveer ese control o utilizar el protocolo
SPX de Novell. IPX provee servicios en los
estratos 3 y 4 del modelo OSI (capas de red y
de transporte respectivamente).
Características

 Es un protocolo de datagramas rápido orientado a comunicaciones sin


conexión.
 IPX es un protocolo de la Capa de red (nivel 3 del modelo OSI).
 Está orientado a paquetes y a comunicaciones sin conexión (no
requiere que se establezca una conexión antes de que los paquetes se
envíen a su destino).
 Es utilizado como mensajero del protocolo SPX, ya que por sí solo
carece de fiabilidad durante el transporte de paquetes.
 La cabecera de los paquetes de IPX se compone de 30 bytes, y los
datos que junto con la cabecera no pueden sobrepasar los 1518 bytes.
Sistema de direccionamiento IPX
Se utilizan tres componentes básicos para identificar un proceso en la red:
 Dirección de red, la cual identifica la red a la que pertenece.
 Número de nodo que indica el dispositivo conectado a la red.
 Número de socket que indica el proceso en el nodo.

Este protocolo tuvo mucha popularidad al inicio del


auge histórico de los videojuegos multijugador en
red en la década de 1990, por ser el primero que
permitía interconectar redes de diferentes usuarios
domésticos, siendo la única posibilidad de
comunicación por la que apostaron muchos
desarrolladores ya que las tarjetas de red fabricadas
por Novell eran las primeras al alcance del público
individual.
SPX
(Sequenced INTERCAMBIO DE
PAQUETES

Packet SECUENCIADOS)

Exchange)
Especificación

 Es un protocolo de la Capa de transporte responsable de actuar


sobre el protocolo IPX para asegurar la entrega de los paquetes.

 SPX es un antiguo protocolo de red de Novell perteneciente al


sistema operativo NetWare. Se utiliza para controlar la entrega de
datos a través de una red de área local mediante el protocolo IPX.
Su diseño está basado en un protocolo creado por Xerox
denominado SPP (Protocolo de Paquetes Secuenciados), surgiendo
como respuesta a la alta demanda que había en la década de
1980 de aplicaciones con servicios orientados a conexión.
Características
 SPX es un protocolo de la Capa de transporte.
 Está orientado a comunicaciones con conexión que se encarga de
verificar que un mensaje enviado a través de una red llega intacto a su
destino, garantizando la integridad de los paquetes enviados y de los
paquetes de confirmación recibidos.
 Utiliza como mensajero el protocolo IPX (que por sí solo carece de
fiabilidad durante el transporte de paquetes) permitiendo establecer y
mantener conexiones además de enviar datos.
 La cabecera de los paquetes de SPX se compone de 12 bytes
conectados sobre una cabecera IPX de 30 bytes.
 Realiza un control sobre el flujo de datos, regulando la velocidad a la
que se envían y reciben los paquetes y reduciendo el riesgo de
corrupción.
 Se utiliza principalmente para aplicaciones cliente/servidor.
Funcionamiento

 SPX espera un mensaje de confirmación (para controlar el envío de


los paquetes).
 En caso de no recibir este mensaje, retransmite el paquete un
número determinado de veces. Si aún así no recibe respuesta,
asume que ha habido un fallo de conexión y cierra la misma.
 Todo este control es llevado a cabo en una lista de confirmación
en una ventana.
 Si se descubre un error en un paquete que se envía o recibe dentro
de esta ventana, los paquetes enviados o recibidos durante ese
tiempo se marcan como malos y se vuelven a retransmitir.
Ventajas
 Es utilizado en redes de área local, debido a su eficiencia para este
propósito (su rendimiento supera al de TCP/IP en una LAN).

Desventajas
En julio de 1991, Novell estableció un equipo de desarrolladores para crear una
versión mejorada de SPX, llamada SPX II, después de estudiar las desventajas que
habían determinado:
 Pobre rendimiento en la fiabilidad de transferencia de datos a través de una
red, comparado con IPX.
 Dado que tiene que garantizar los envíos y el mantenimiento de una conexión,
se torna más complejo que IPX.
 Envía otro paquete de datos antes de recibir un paquete de confirmación del
paquete previo enviado
 Si falla la conexión, se pueden perder datos ya que no proporciona un
mecanismo ordenado de liberación de conexión.
 Es propicio a provocar congestiones de red.
Estructura

La cabecera de los paquetes se compone de


12 bytes conectados sobre una cabecera IPX
de 30 bytes. Esos 12 bytes contienen todas las
estructuras que SPX utiliza para establecer y
mantener conexiones y para garantizar el
envío secuencial de datos.
ARP (Address
Resolution
PROTOCOLO DE
RESOLUCIÓN DE
DIRECCIONES

Protocol)
 Es un protocolo de comunicaciones de la capa de enlace,
responsable de encontrar la dirección de hardware (Ethernet
MAC) que corresponde a una determinada dirección IP. Para ello
se envía un paquete (ARP request) a la dirección de difusión de la
red (broadcast, MAC = FF FF FF FF FF FF) que contiene la dirección
IP por la que se pregunta, y se espera a que esa máquina (u otra)
responda (ARP reply) con la dirección Ethernet que le
corresponde.
 Cada máquina mantiene una caché con las direcciones
traducidas para reducir el retardo y la carga. ARP permite a la
dirección de Internet ser independiente de la dirección Ethernet,
pero esto solo funciona si todas las máquinas lo soportan.
 En Ethernet, la capa de
enlace trabaja con
direcciones físicas. El
protocolo ARP se encarga de
traducir las direcciones IP a
direcciones MAC (direcciones
físicas). Para realizar esta
conversión, el nivel de enlace
utiliza las tablas ARP, cada
interfaz tiene tanto una
dirección IP como una
dirección física MAC.
ARP se utiliza en cuatro casos referentes a la
comunicación entre dos hosts:
 Cuando dos hosts están en la misma red y
uno quiere enviar un paquete a otro.
 Cuando dos hosts están sobre redes
diferentes y deben usar un gateway o
router para alcanzar otro host.
 Cuando un router necesita enviar un
paquete a un host a través de otro router.
 Cuando un router necesita enviar un
paquete a un host de la misma red.
Tablas ARP
Ejemplificando, para localizar al señor "X" entre 150 personas: preguntar
por su nombre a todos, y el señor "X" debe responder.
 Cuando a A le llegue un mensaje con dirección origen IP y no tenga
esa dirección en su caché de la tabla ARP, enviará su trama ARP a la
dirección broadcast (física = FF:FF:FF:FF:FF:FF), con la IP de la que quiere
conocer su dirección física. Entonces, el equipo cuya dirección IP
coincida con la preguntada, responderá a A enviándole su dirección
física. En este momento, A ya puede agregar la entrada de esa IP a la
caché de su tabla ARP.
 Las entradas de la tabla se borran cada cierto tiempo, ya que las
direcciones físicas de la red pueden cambiar (por ejemplo: si se
estropea una tarjeta de red y hay que sustituirla, o simplemente algún
usuario de la red cambia de dirección IP).

También podría gustarte