Jorge García Delgado

1.- Funcionalidad del servicio de transferencia de archivos:

a. Características. Componentes y funcionamiento. b. Protocolo FTP. c. Tipos de usuarios y accesos al servicio: Acceso anónimo y acceso autorizado. d. Configuración del servicio de transferencia de archivos. Permisos y cuotas. e. Conexiones y modos: Conexión de control y conexión de datos. Modos activo y pasivo. f. Tipos de transferencia de archivos: ASCII y Binario. g. Clientes FTP: en línea de comandos, entornos “gráficos” y navegadores / exploradores. h. Monitorización y registro del servicio de transferencia de archivos. i. Seguridad en FTP. j. FTPS (FTP/SSL): FTPS Implícito. FTPS Explícito (FTPES) k. Protocolo FXP (File eXchange Protocol).

2.- Servicio TFTP (Trivial File Transfer Protocol).

3.- Servicios SFTP/SCP.

4.- Transferencia o distribución de archivos entre iguales (peer-to-peer).

a. Características. Protocolos. Software. Configuración. w Jorge García Delgado

a.- Características. Componentes y funcionamiento.

FTP (siglas en inglés de File Transfer Protocol, 'Protocolo de Transferencia de Archivos') en informática, es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP (Transmission Control Protocol), 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.

El servicio FTP es ofrecido por la capa de aplicación del modelo de capas de red TCP/IP al usuario, utilizando normalmente el puerto de red 20 y el 21. 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 puede capturar este tráfico, acceder al servidor y/o apropiarse de los archivos transferidos.

Funcionamiento

A diferencia de la mayoría de los protocolos utilizados en Internet, FTP requiere de múltiples puertos de red para funcionar correctamente. Cuando una aplicación cliente FTP inicia una conexión a un servidor FTP, abre el puerto 21 en el servidor — conocido como el puerto de comandos. Se utiliza este puerto para arrojar todos los comandos al servidor. Cualquier petición de datos desde el servidor se devuelve al cliente a través del puerto de datos. El número de puerto para las conexiones de datos y la forma en la que las conexiones son inicializadas varía dependiendo de si el cliente solicita los datos en modo activo o en modo pasivo.

Características

-. Respecto Diseño del Servicio:

 La conexión de un usuario remoto al servidor FTP puede hacerse como inicio de una sesión de un usuario que existe en el sistema o también como un usuario genérico que se llama anónimo.

 El acceso al sistema de archivos del servidor FTP está limitado, dependiendo del tipo de usuario que se conecta.

 Una vez se ha establecido la conexión con el servidor FTP, el usuario tiene disponible el conjunto de órdenes FTP que permiten realizar las operaciones básicas de descarga(get) o subida(put) de archivos, junto con otras órdenes.

-. Respecto a tipos de usuarios:

 Usuarios FTP - Son aquellos que disponen de una cuenta en la máquina que ofrece el servicio FTP. Se conectan vía FTP mediante su nombre de usuario y contraseña, y tienen acceso a aquellas partes del sistema de archivos para las que tienen permisos.

 Usuarios anónimos – Son usuarios cualesquiera que, al conectarse al servidor FTP, sólo deben introducir una contraseña simbólica que suele ser una dirección de correo electrónico, y sólo tienen acceso a una parte limitada del sistema de archivos

Jorge García Delgado

b.- Protocolo FTP.

El protocolo FTP (Protocolo de transferencia de archivos) es, como su nombre lo indica, un protocolo para transferir archivos. La implementación del FTP se remonta a 1971 cuando se desarrolló un sistema de transferencia de archivos (descrito en RFC141) entre equipos del Instituto Tecnológico de Massachusetts (MIT, Massachusetts Institute of Technology). Desde entonces, diversos documentos de RFC (petición de comentarios) han mejorado el protocolo básico, pero las innovaciones más importantes se llevaron a cabo en julio de 1973. Actualmente, el protocolo FTP está definido por RFC 959.

Función del protocolo FTP El protocolo FTP define la manera en que los datos deben ser transferidos a través de una red TCP/IP. El objetivo del protocolo FTP es:

 Permitir que equipos remotos puedan compartir archivos.  Permitir la independencia entre los sistemas de archivo del equipo del cliente y del equipo del servidor.  Permitir una transferencia de datos eficaz.

c.- Tipos de usuarios y accesos al servicio: Acceso anónimo y acceso autorizado.

Usuarios

Existen dos tipos de usuarios en FTP:

Usuarios FTP: aquellos que disponen de una cuenta en la máquina que ofrece el servicio FTP.

Usuarios Anónimos: usuarios cualesquiera que al conectarse al servicio FTP, solo deben introducir una contraseña simbólica. Solo tienen acceso a una parte del sistema de archivos.

Cuando se crean usuarios es necesario darle permisos para que puedan manejar los archivos y directorios como nosotros queramos, se le pueden dar permisos para subir o bajar archivos. La mayoría de los sistemas de archivos modernos permiten asignar permisos (o derechos de acceso) a los archivos para determinados usuarios y grupos de usuarios. De esta manera, se puede restringir o permitir el acceso de un determinado usuario a un archivo para su visualización de contenidos, modificación y/o ejecución (en caso de un archivo ejecutable).

Accesos

Acceso anónimo

Los servidores FTP anónimos ofrecen sus servicios libremente a todos los usuarios, permiten acceder a sus archivos sin necesidad de tener un 'USER ID' o una cuenta de usuario. Es la manera más cómoda fuera del servicio web de permitir que todo el mundo tenga acceso a cierta información sin que para ello el administrador de un sistema tenga que crear una cuenta para cada usuario.

Si un servidor posee servicio 'FTP anonymous' solamente con teclear la palabra «anonymous», cuando pregunte por tu usuario tendrás acceso a ese sistema. No se necesita ninguna contraseña preestablecida, aunque tendrás que introducir una sólo para ese momento, normalmente se suele utilizar la dirección de correo electrónico propia.

Jorge García Delgado

Solamente con eso se consigue acceso a los archivos del FTP, aunque con menos privilegios que un usuario normal. Normalmente solo podrás leer y copiar los archivos que sean públicos, así indicados por el administrador del servidor al que nos queramos conectar.

Normalmente, se utiliza un servidor FTP anónimo para depositar grandes archivos que no tienen utilidad si no son transferidos a la máquina del usuario, como por ejemplo programas, y se reservan los servidores de páginas web (HTTP) para almacenar información textual destinada a la lectura en línea.

Acceso de usuario

Si se desea tener privilegios de acceso a cualquier parte del sistema de archivos del servidor FTP, de modificación de archivos existentes, y de posibilidad de subir nuestros propios archivos, generalmente se suele realizar mediante una cuenta de usuario. En el servidor se guarda la información de las distintas cuentas de usuario que pueden acceder a él, de manera que para iniciar una sesión FTP debemos introducir una autentificación (en inglés: login) y una contraseña (en inglés: password) que nos identifica unívocamente.

Cliente FTP basado en Web

Un «cliente FTP basado en Web» no es más que un cliente FTP al cual podemos acceder a través de nuestro navegador web sin necesidad de tener otra aplicación para ello. El usuario accede a un servidor web (HTTP) que lista los contenidos de un servidor FTP. El usuario se conecta mediante HTTP a un servidor web, y el servidor web se conecta mediante FTP al servidor FTP. El servidor web actúa de intermediario haciendo pasar la información desde el servidor FTP en los puertos 20 y 21 hacia el puerto 80 HTTP que ve el usuario.

Siempre hay momentos en que nos encontramos fuera de casa, no llevamos el ordenador portátil encima y necesitamos realizar alguna tarea urgente desde un ordenador de acceso público, de un amigo, del trabajo, la universidad, etc. Lo más común es que no estén instaladas las aplicaciones que necesitamos y en muchos casos hasta carecemos de los permisos necesarios para realizar su instalación. Otras veces estamos detrás de un proxy o cortafuegos que no nos permite acceder a servidores FTP externos.

Al disponer de un cliente FTP basado en Web podemos acceder al servidor FTP remoto como si estuviéramos realizando cualquier otro tipo de navegación web. A través de un cliente FTP basado en Web podrás, crear, copiar, renombrar y eliminar archivos y directorios. Cambiar permisos, editar, ver, subir y descargar archivos, así como cualquier otra función del protocolo FTP que el servidor FTP remoto permita.

Acceso de invitado

El acceso sin restricciones al servidor que proporcionan las cuentas de usuario implica problemas de seguridad, lo que ha dado lugar a un tercer tipo de acceso FTP denominado invitado (guest), que se puede contemplar como una mezcla de los dos anteriores.

La idea de este mecanismo es la siguiente: se trata de permitir que cada usuario conecte a la máquina mediante su login y su password, pero evitando que tenga acceso a partes del sistema de archivos que no necesita para realizar su trabajo, de esta forma accederá a un entorno restringido, algo muy similar a lo que sucede en los accesos anónimos, pero con más privilegios.

Jorge García Delgado

d.- Configuración del servicio de transferencia de archivos. Permisos y cuotas.

Configuración Básica FTP:

1. Instalación de FTP, por ejemplo ISS FTP en Windows y el paquete VSFTPD en distribuciones . 2. Configurar gráficamente en Windows o en /etc/vsftpd.conf en GNU/Linux lo siguiente:

 Creamos los directorios FTP, y se indica en la configuración.  Creamos los usuarios del sistema y usuario anónimo.  Acceso único puertos  Acceso de solo lectura a usuarios anónimos.  Acceso de usuarios del sistema, atendiendo a tipo de usuario, lugar de acceso, grupos, no pueden acceder a carpetas privadas, …, o aislar usuarios en directorios propios.  El usuario anónimo no puede administrar, cambiar permisos o acceder a otras carpetas, al igual que usuarios del sistema. o Nota: Es una configuración básica que puede variar dependiendo de las preferencias del usuario, empresa, o entorno donde se implanta FTP.

 Configuramos el mensaje de Bienvenida.  Configuramos los permisos de acceso, lectura, modificación.  Configuramos las opciones de transferencias.  Configuramos los logs de errores y acceso.

Consejos:

 Aislar el usuario anónimo, y darle únicamente permiso de lectura.  Permitir solo el puerto 21.  Configurar bien los permisos de usuarios del sistema y comprobar el buen funcionamiento.  Habilitar Logs de error y acceso siempre.  Utilizar conexiones seguras por medio de SSL (SFTP, FTPS/SCP).  Permitir un número seguro de usuarios conectados, es decir, permitir un número de conexiones activas y pasivas al mismo tiempo.  Aplicar cuotas de disco para evitar que pocos usuarios consuman el 100% del espacio.  Por ultimo aplicar un tiempo de desconexión de 1min si una vez conectado no se realizan operaciones.

Jorge García Delgado

e.- Conexiones y modos: Conexión de control y conexión de datos. Modos activo y pasivo.

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.

En modo Activo, el servidor siempre crea el canal de datos en su puerto 20, mientras que en el lado del cliente el canal de datos se asocia a un puerto aleatorio mayor que el 1024. Para ello, el cliente manda un comando PORT al servidor por el canal de control indicándole ese número de puerto, de manera que el servidor pueda abrirle una conexión de datos por donde se transferirán los archivos y los listados, en el puerto especificado.

Lo anterior tiene un grave problema de seguridad, y es que la máquina cliente debe estar dispuesta a aceptar cualquier conexión de entrada en un puerto superior al 1024, con los problemas que ello implica si tenemos el equipo conectado a una red insegura como Internet. De hecho, los cortafuegos que se instalen en el equipo para evitar ataques seguramente rechazarán esas conexiones aleatorias. Para solucionar esto se desarrolló el modo pasivo.

Jorge García Delgado

Modo pasivo.

Cuando el cliente envía un comando PASV sobre el canal de control, el servidor FTP le indica por el canal de control, el puerto (mayor a 1023 del servidor. Ej:2040) al que debe conectarse el cliente. El cliente inicia una conexión desde el puerto siguiente al puerto de control (ej: 1036) hacia el puerto del servidor especificado anteriormente (ej: 2040).1

Antes de cada nueva transferencia tanto en el modo Activo como en el Pasivo, el cliente debe enviar otra vez un comando de control (PORT o PASV, según el modo en el que haya conectado), y el servidor recibirá esa conexión de datos en un nuevo puerto aleatorio (si está en modo pasivo) o por el puerto 20 (si está en modo activo). En el protocolo FTP existen 5 tipos de transferencia en ASCII y en binarios.

Jorge García Delgado

f.- Tipos de transferencia de archivos: ASCII y Binario.

Es importante conocer cómo debemos transportar un archivo a lo largo de la red. Si no utilizamos las opciones adecuadas podemos destruir la información del archivo. Por eso, al ejecutar la aplicación FTP, debemos acordarnos de utilizar uno de estos comandos (o poner la correspondiente opción en un programa con interfaz gráfica):

 Tipo ascii: Adecuado para transferir archivos que sólo contengan caracteres imprimibles (archivos ASCII, no archivos resultantes de un procesador de texto), por ejemplo páginas HTML, pero no las imágenes que puedan contener.

 Tipo binario: Este tipo es usado cuando se trata de archivos comprimidos, ejecutables para PC, imágenes, archivos de audio...

Ejemplos de cómo transferir algunos tipos de archivo dependiendo de su extensión:

EXTENSIÓN DE ARCHIVO TIPO DE TRANSFERENCIA txt (texto) ASCII html (página WEB) doc (documento) BINARIO ps (poscript) ASCII hqx (comprimido) Z (comprimido) ZIP (comprimido) ZOO (comprimido) Sit (comprimido) pit (comprimido) BINARIO shar (comprimido) uu (comprimido) ARC (comprimido) tar (empaquetado)

En la red existen diversas soluciones de software que desarrolla este tipo de tecnología, los más conocidos, son Filezilla (software libre) y CuteFTP (shareware).

Jorge García Delgado

g.- Clientes FTP: en línea de comandos, entornos “gráficos” y navegadores / exploradores.

Cliente FTP basado en Web

Un «cliente FTP basado en Web» no es más que un cliente FTP al cual podemos acceder a través de nuestro navegador web sin necesidad de tener otra aplicación para ello. El usuario accede a un servidor web (HTTP) que lista los contenidos de un servidor FTP. El usuario se conecta mediante HTTP a un servidor web, y el servidor web se conecta mediante FTP al servidor FTP. El servidor web actúa de intermediario haciendo pasar la información desde el servidor FTP en los puertos 20 y 21 hacia el puerto 80 HTTP que ve el usuario.

Siempre hay momentos en que nos encontramos fuera de casa, no llevamos el ordenador portátil encima y necesitamos realizar alguna tarea urgente desde un ordenador de acceso público, de un amigo, del trabajo, la universidad, etc. Lo más común es que no estén instaladas las aplicaciones que necesitamos y en muchos casos hasta carecemos de los permisos necesarios para realizar su instalación. Otras veces estamos detrás de un proxy o cortafuegos que no nos permite acceder a servidores FTP externos.

Al disponer de un cliente FTP basado en Web podemos acceder al servidor FTP remoto como si estuviéramos realizando cualquier otro tipo de navegación web. A través de un cliente FTP basado en Web podrás, crear, copiar, renombrar y eliminar archivos y directorios. Cambiar permisos, editar, ver, subir y descargar archivos, así como cualquier otra función del protocolo FTP que el servidor FTP remoto permita.

Comandos FTP

COMANDO Y ACCIÓN QUE REALIZA ARGUMENTOS open servidor Inicia una conexión con un servidor FTP. close o Finaliza una conexión FTP sin cerrar el programa cliente. disconnect bye o quit Finaliza una conexión FTP y la sesión de trabajo con el programa cliente. cd directorio Cambia el directorio de trabajo en el servidor. delete archivo Borra un archivo en el servidor mdelete patrón Borra múltiples archivos basado en un patrón que se aplica al nombre. dir Muestra el contenido del directorio en el que estamos en el servidor. get archivo Obtiene un archivo noop No Se le comunica al servidor que el cliente está en modo de no Operation operación, el servidor usualmente responde con un «ZZZ» y refresca el contador de tiempo inactivo del usuario. mget archivos Obtiene múltiples archivos hash Activa la impresión de caracteres # a medida que se transfieren archivos, a modo de barra de progreso. lcd directorio Cambia el directorio de trabajo local. ls Muestra el contenido del directorio en el servidor. prompt Activa/desactiva la confirmación por parte del usuario de la ejecución de comandos. Por ejemplo al borrar múltiples archivos.

Jorge García Delgado

put archivo Envía un archivo al directorio activo del servidor. mput archivos Envía múltiples archivos. pwd Muestra el directorio activo en el servidor. rename archivo Cambia el nombre a un archivo en el servidor. rmdir directorio Elimina un directorio en el servidor si ese directorio está vacío. status Muestra el estado actual de la conexión. bin o binary Activa el modo de transferencia binario. ascii Activa el modo de transferencia en modo texto ASCII. ! Permite salir a línea de comandos temporalmente sin cortar la conexión. Para volver, teclear exit en la línea de comandos. ? nombre de Muestra la información relativa al comando. comando ? o help Muestra una lista de los comandos disponibles. append nombre Continua una descarga que se ha cortado previamente. del archivo bell Activa/desactiva la reproducción de un sonido cuando ha terminado cualquier proceso de transferencia de archivos. glob Activa/desactiva la visualización de nombres largos de nuestro PC. literal Con esta orden se pueden ejecutar comandos del servidor de forma remota. Para saber los disponibles se utiliza: literal help. mkdir Crea el directorio indicado de forma remota. quote Hace la misma función que literal. send nombre del Envía el archivo indicado al directorio activo del servidor. archivo user Para cambiar nuestro nombre de usuario y contraseña sin necesidad de salir de la sesión ftp. h.- Monitorización y registro del servicio de transferencia de archivos.

Debemos configurar Logs de:

 Errores: Errores del demonio FTP.  Acceso: Acceso de usuarios y su actividad.  Transferencia: Actividad de transferencia y subida de archivos.  Comunicaciones: Comunicación entre el servidor y el cliente.

Debes monitorizar FTP mostrando:

 Estado. Estado actual de la conexión FTP.  Nombre de usuario FTP. Nombre de usuario usado para acceder a la cuenta FTP.  Nombre de dominio. Dominio en el que el usuario FTP está conectado.  Ubicación actual. Directorio donde se encuentra el usuario FTP.  Nombre del Archivo. El nombre de archivo con el que se opera.  Velocidad. Velocidad de transferencias en kilo bites.  Progreso, %. Progreso de la operación de transferencia de archivo en porcentaje.  Dirección IP. Dirección IP desde la que se accede a la cuenta FTP.  Hora de acceso. Tiempo transcurrido desde que el usuario se conectó.  Tiempo de inactividad. Tiempo en que el usuario no estaba realizando ninguna acción en el panel de control aún y estando conectado.

Jorge García Delgado

i.- Seguridad en FTP.

FTP no está diseñado para ser un protocolo seguro, especialmente con los estándares de hoy en día, y tiene muchas debilidades de seguridad. En 1999 los autores del RFC listaron las vulnerabilidades de FTP derivados de los siguientes problemas:

 Ataques Spoofing  Ataques de fuerza bruta  Ataques Rebote (Bounce attacks)  Captura de paquetes (sniffing)  Robo de puertos (Port stealing)  Claves de usuario y datos no cifrados

FTP no es capaz de cifrar el tráfico, todas las transmisiones están en texto plano, tanto nombres de usuario como contraseñas. Los comandos y los datos pueden ser fácilmente leídos por cualquier persona capaz captura los paquetes de la red (sniffing). Este problema es común a muchas de los protocolo de Internet (tales como SMTP, Telnet, POP e IMAP) que fueron diseñados antes de la creación de mecanismos de cifrado, como SSL o TLS.

Una solución común para este problema es utilizar en conjunto los protocolos en texto plano (FTP) con protocolos seguros (TLS). Este es el caso por el cual existen FTPS y SFTP/SCP:

SCP: Secure Copy o SCP es un medio de transferencia segura de archivos informáticos entre un host local y otro remoto o entre dos hosts remotos, usando el protocolo Secure Shell (SSH). El término SCP puede referir a dos conceptos relacionados, el protocolo SCP o el programa SCP.

SFTP (Secure FTP): SSH File Transfer Protocol (también conocido como SFTP o Secure File Transfer Protocol) es un protocolo del nivel de aplicación que proporciona la funcionalidad necesaria para la transferencia y manipulación de archivos sobre un flujo de datos fiable. Se utiliza comúnmente con SSH para proporcionar la seguridad a los datos, aunque permite ser usado con otros protocolos de seguridad. Por lo tanto, la seguridad no la provee directamente el protocolo SFTP, sino SSH o el protocolo que sea utilizado en su caso para este cometido. SFTP utiliza el puerto 22 de TCP.

j.- FTPS (FTP/SSL): FTPS Implícito. FTPS Explícito (FTPES) - Se incluye en el punto anterior (i. Seguridad FTP)

FTPS (FTP over SSH, not SFTP): FTPS (comúnmente referido como FTP/SSL) es un nombre usado para abarcar un número de formas en las cuales el software FTP puede realizar transferencias de ficheros seguras. Cada forma conlleva el uso de una capa SSL/TLS debajo del protocolo estándar FTP para cifrar los canales de control y/o datos. No debería confundirse con el protocolo de transferencia de ficheros SFTP, el cual suele ser usado con SSH.

El uso más común de FTP y SSL es:

 AUTH TLS o FTPS Explicito, La seguridad TLS es obligatoria. Es el método preferido de acuerdo al RFC que define FTP sobre TLS. El cliente se conecta al puerto 21 del servidor y comienza una sesión FTP sin cifrar de manera tradicional, pero pide que la seguridad TLS sea usada y realiza la negociación apropiada antes de enviar cualquier dato sensible.

Jorge García Delgado

 AUTH como está definido en RFC 2228.

 FTPS Implícito es un estilo antiguo, pero todavía ampliamente implementado en el cual el cliente se conecta a un puerto distinto (como por ejemplo 990), y se realiza una negociación SSL antes de que se envíe cualquier comando FTP.

k.- Protocolo FXP (File eXchange Protocol).

File eXchange Protocol (FXP) es un método de transferencia de datos, a través del cual los datos se envían de un servidor FTP a otro sin pasar por un cliente intermedio. La comunicación convencional FTP consiste en un solo servidor y un solo cliente. Toda la transferencia de datos se realiza entre los dos. Durante una sesión FXP, un cliente mantiene conexiones estándares con dos servidores, dirigiendo cualquiera de los dos servidores que se conecte al otro para iniciar una transferencia de datos. Este método permite a un cliente con poco ancho de banda intercambiar datos entre dos servidores con más ancho de banda sin el retraso asociado con la comunicación convencional FTP. A lo largo de este proceso, sólo el cliente es capaz de acceder a los recursos de los dos servidores.

Riesgos

Sin embargo, algunos de los servidores que soportan el FXP son vulnerables a un exploit conocido como el ataque FTP Bounce, por el cual un usuario malicioso puede superar algunos cortafuegos.1

FXP a través de SSL

Algunos servidores FTP como glFTPD, RaidenFTPd y wzdftpd soportan la negociación de un canal de dato seguro entre dos servidores mediante cualquiera de las dos órdenes de extensión del protocolo FTP: CPSV o SSCN. Normalmente, un cliente realiza esto enviando CPSV en lugar de la orden PASV (modo pasivo), o enviando SSCN antes de iniciar las transferencias pasivas. No obstante, ambos métodos aún son susceptibles a los ataques Man-in-the-middle, pues los dos servidores FTP no comprueban sus respectivos certificados SSL.

Técnica

Aunque el FXP se puede calificar de su propio protocolo, es meramente una extensión de FTP en cambio y se describe en RFC 959:

w Jorge García Delgado

TFTP son las siglas de Trivial File Transfer Protocol (Protocolo de transferencia de archivos trivial).

Es un protocolo de transferencia muy simple semejante a una versión básica de FTP. TFTP a menudo se utiliza para transferir pequeños archivos entre ordenadores en una red, como cuando un terminal X Window o cualquier otro cliente ligero arranca desde un servidor de red.

Características del TFTP:

 Utiliza UDP (en el puerto 69) como protocolo de transporte (a diferencia de FTP que utiliza el puerto 21 TCP).  No puede listar el contenido de los directorios.  No existen mecanismos de autenticación o cifrado.  Se utiliza para leer o escribir archivos de un servidor remoto.  Soporta tres modos diferentes de transferencia, "netascii", "octet" y "mail", de los que los dos primeros corresponden a los modos "ascii" e "imagen" (binario) del protocolo FTP.

Detalles de una sesión TFTP

Ya que TFTP utiliza UDP, no hay una definición formal de sesión, cliente y servidor, aunque se considera servidor a aquel que abre el puerto 69 en modo UDP, y cliente a quien se conecta. Sin embargo, cada archivo transferido vía TFTP constituye un intercambio independiente de paquetes, y existe una relación cliente-servidor informal entre la máquina que inicia la comunicación y la que responde.

 La máquina A, que inicia la comunicación, envía un paquete RRQ (read request/petición de lectura) o WRQ (write request/petición de escritura) a la máquina B, conteniendo el nombre del archivo y el modo de transferencia.

 B responde con un paquete ACK (acknowledgement/confirmación), que también sirve para informar a A del puerto de la máquina B al que tendrá que enviar los paquetes restantes.

 La máquina origen envía paquetes de datos numerados a la máquina destino, todos excepto el último conteniendo 512 bytes de datos. La máquina destino responde con paquetes ACK numerados para todos los paquetes de datos.

 El paquete de datos final debe contener menos de 512 bytes de datos para indicar que es el último. Si el tamaño del archivo transferido es un múltiplo exacto de 512 bytes, el origen envía un paquete final que contiene 0 bytes de datos.

w Jorge García Delgado

SCP

Secure Copy o SCP es un medio de transferencia segura de archivos informáticos entre un host local y otro remoto o entre dos hosts remotos, usando el protocolo Secure Shell (SSH). El término SCP puede referir a dos conceptos relacionados, el protocolo SCP o el programa SCP.

Protocolo SCP

El protocolo SCP es básicamente idéntico al protocolo rcp de BSD (sistema operativo derivado del sistema Unix). A diferencia de rcp, los datos son cifrados durante su transferencia, para evitar que potenciales packet sniffers extraigan información útil de los paquetes de datos. Sin embargo, el protocolo mismo no provee autenticación y seguridad; sino que espera que el protocolo subyacente, SSH, lo asegure.

El modo SCP o simple , es un protocolo simple que deja al servidor y al cliente tener múltiples conversaciones sobre una TCP normal. Este protocolo está diseñado para ser simple de implementar.

El servicio principal de este protocolo es el control del dialogo entre el servidor y el cliente, administrando sus conversaciones y agilizadas en un alto porcentaje, este protocolo le permite a cualquiera de los dos establecer una sesión virtual sobre la normal.

Características del Protocolo SCP

 SCP puede solicitar de manera iterativa cualquier contraseña para establecer una conexión con un host remoto.

 El protocolo SCP implemente la transferencia de archivos únicamente. Para ello se conecta al host usando SSH y allí ejecuta un servidor SCP. Generalmente el programa SCP del servidor es el mismo que el del cliente.

 Para realizar la subida, el cliente le proporciona al servidor los archivos que desea subir y opcionalmente puede incluir otros atributos (permisos, fechas, etc.) Esto es una ventaja sobre el protocolo FTP.

 Para descargar, el cliente envía una solicitud por los archivos que desea descargar. El proceso de descarga está dirigido por el servidor y es el que se encarga de la seguridad del mismo. Frecuentemente, para los usos aquí detallados se utiliza el protocolo SFTP, también basado en SSH.

Jorge García Delgado

Programa SCP

El programa SCP es un cliente que implementa el protocolo SCP, es decir, es un programa que realiza copia segura.

El cliente SCP más ampliamente usado es el programa scp del Intérprete de comandos, que es incorporado en la mayoría de las implementaciones de SSH. El programa scp es el análogo seguro del comando rcp. El programa scp debe formar parte de todos los servidores SSH que quieran proveer el servicio SCP, así como scp funciona como servidor SCP también.

Algunas implementaciones de SSH proveen del programa scp2, el cual usa el protocolo SFTP en lugar de SCP, pero provee los mismas interfaz del Intérprete de comandos el scp. Este scp es normalmente un enlace simbólico a scp2.

Normalmente, la sintaxis del programa scp es similar a la sintaxis de la orden cp:

#scp usuario@host:directorio/ArchivoOrigen ArchivoDestino

#scp ArchivoOrigen usuario@host:directorio/ArchivoDestino

Como el protocolo SCP sólo implementa transferencia de ficheros, los clientes SCP con GUI son raros, estas implementaciones requieren de funcionalidades añadidas como son (directorio listado al menos). Los clientes SCP GUI, como WinSCP, no son normalmente clientes SCP puros, estos suelen contener muchas otras funcionalidades (como el comando ls). Esto provoca problemas de dependencia con las plataformas, esto no ocurre al utilizar el cliente tradicional del Intérprete de comandos.

FTPS

SSH File Transfer Protocol (también conocido como SFTP o Secure File Transfer Protocol) es un protocolo del nivel de aplicación que proporciona la funcionalidad necesaria para la transferencia y manipulación de archivos sobre un flujo de datos fiable. Se utiliza comúnmente con SSH para proporcionar la seguridad a los datos, aunque permite ser usado con otros protocolos de seguridad. Por lo tanto, la seguridad no la provee directamente el protocolo SFTP, sino SSH o el protocolo que sea utilizado en su caso para este cometido.

En comparación de capacidades con el anterior protocolo SCP, que únicamente permite la transferencia de archivos (copia), el protocolo SFTP permite una serie de operaciones sobre archivos remotos. SFTP intenta ser más independiente de la plataforma que SCP, por ejemplo, con el SCP encontramos la expansión de comodines especificados por el cliente hasta el servidor, mientras que el diseño SFTP evita este problema. Aunque SCP se aplica con más frecuencia en plataformas Unix, existen servidores SFTP en la mayoría de las plataformas.

El Secure Internet Live Conferencing (SILC) define el protocolo SFTP como su protocolo de transferencia de archivos por omisión. En el SILC, los datos del protocolo SFTP no están protegidos con SSH pero el protocolo de paquetes seguros de SILC se utiliza para encapsular los datos SFTP dentro de los paquetes de SILC para que se la llevara de igual a igual (peer to peer, P2P). Esto es posible ya que SFTP está diseñado para ser un protocolo independiente.

SFTP utiliza el puerto 22 de TCP.

Jorge García Delgado

Upload (subida de archivos)

Para la subida de archivos, los archivos transferidos pueden estar asociados con sus atributos básicos, como el de tiempo. Esta última es una ventaja sobre el protocolo FTP común, ya que no dispone de ningún crédito para incluir archivos en la fecha original.

Clientes de SFTP

Para los clientes que utilizan SFTP, los programas de SFTP ofrecen una interfaz interactiva similar a la de los tradicionales programas de FTP. Algunas implementaciones del programa SCP, en realidad usan el protocolo SFTP para realizar transferencias de archivos, sin embargo, algunas de estas implementaciones están todavía en condiciones de emergencia al protocolo SCP si el servidor SFTP no ofrece servicio.

SFTP en la actualidad

En cuanto a la utilización o normalización del protocolo no es aún un estándar de Internet. La última especificación es un caducado Proyecto de Internet, que define la versión 6 del protocolo. En la actualidad, la versión más utilizada es la versión 3, ejecutada por el popular servidor de SFTP OpenSSH. Muchos Windows basan sus implementaciones en servidores SFTP al utilizar la versión 4 del protocolo, que redujo sus vínculos con la plataforma Unix.

Algunas confusiones

Un error muy común que suele ocurrir cuando se nombra SFTP es pensar en que el protocolo SFTP se obtiene al ejecutar FTP sobre SSH, realmente estamos ante un nuevo protocolo diseñado por el grupo de trabajo IETF SECSH. Otro error generalizado es la confusión de las siglas SFTP ya que muchas veces es confundido con el Protocolo Simple de Transferencia de Archivos, un programa de línea de comando que el cliente ejecuta parte de este protocolo.

El protocolo SFTP en sí no facilita la autenticación y la seguridad, sino que espera que el protocolo subyacente asegure a este. SFTP es utilizado frecuentemente como subsistema del protocolo SSH, al haber sido diseñadas por el mismo grupo. Sin embargo, es posible ejecutarlo a través de SSH (y algunas implementaciones que lo soporten) o de otros flujos de datos. Un cliente de protocolo SFTP dispuesto a conectarse a un servidor SSH necesita conocer la ruta de acceso al servidor SFTP binario en el lugar del servidor.

Jorge García Delgado

SFTP y FTPS

SFTP:

Sus siglas significan SSH File Transfer Protocol, es completamente diferente del protocolo FTP (File Transfer Protocol). SFTP fue construido desde cero y añade la característica de FTP a SSH. Sólo usa un canal de comunicación, envía y recibe los mensajes en binario (y no en formato texto como hace FTP).

FTPS:

Es una extensión de FTP mediante SSL para el cifrado de los datos, utiliza dos canales de, envía y recibe los mensajes en formato texto. FTPS normalmente es más conocido ya que usa los mismos comandos que FTP.

Ambos protocolos (FTPS y SFTP) utilizan un algoritmo asimétrico (RSA, DSA), un algoritmo simétrico (AES por ejemplo), y un algoritmo de intercambio de claves. Para la autenticación, FTPS utiliza certificados X.509, mientras que SFTP utiliza las claves SSH.

¿Cuál es más seguro?

Técnicamente SFTP es más avanzado que FTPS, sin embargo algunos dispositivos pueden no ser compatibles con SFTP (como los móviles, consolas etc.) y sin embargo con FTPS sí lo son, como hemos dicho antes, FTPS es una extensión de FTP.

Espero que os haya aclarado algo la diferencia entre ambos protocolos.

w Jorge García Delgado

Peer-to-peer

Una red peer-to-peer, red de pares, red entre iguales, red entre pares o red punto a punto (P2P, por sus siglas en inglés) es una red de computadoras en la que todos o algunos aspectos funcionan sin clientes ni servidores fijos, sino una serie de nodos que se comportan como iguales entre sí. Es decir, actúan simultáneamente como clientes y servidores respecto a los demás nodos de la red. Las redes P2P permiten el intercambio directo de información, en cualquier formato, entre los ordenadores interconectados.

Normalmente este tipo de redes se implementan como redes superpuestas construidas en la capa de aplicación de redes públicas como Internet.

El hecho de que sirvan para compartir e intercambiar información de forma directa entre dos o más usuarios ha propiciado que parte de los usuarios lo utilicen para intercambiar archivos cuyo contenido está sujeto a las leyes de copyright, lo que ha generado una gran polémica entre defensores y detractores de estos sistemas.

Las redes peer-to-peer aprovechan, administran y optimizan el uso del ancho de banda de los demás usuarios de la red por medio de la conectividad entre los mismos, y obtienen así más rendimiento en las conexiones y transferencias que con algunos métodos centralizados convencionales, donde una cantidad relativamente pequeña de servidores provee el total del ancho de banda y recursos compartidos para un servicio o aplicación.

Dichas redes son útiles para diversos propósitos. A menudo se usan para compartir ficheros de cualquier tipo (por ejemplo, audio, vídeo o software). Este tipo de red también suele usarse en telefonía VoIP para hacer más eficiente la transmisión de datos en tiempo real.

La eficacia de los nodos en el enlace y transmisión de datos puede variar según su configuración local (cortafuegos, NAT, ruteadores, etc.), velocidad de proceso, disponibilidad de ancho de banda de su conexión a la red y capacidad de almacenamiento en disco.

Jorge García Delgado

Características

Seis características deseables de las redes P2P:

 Escalabilidad. Las redes P2P tienen un alcance mundial con cientos de millones de usuarios potenciales. En general, lo deseable es que cuantos más nodos estén conectados a una red P2P, mejor será su funcionamiento. Así, cuando los nodos llegan y comparten sus propios recursos, los recursos totales del sistema aumentan. Esto es diferente en una arquitectura del modo servidor-cliente con un sistema fijo de servidores, en los cuales la adición de clientes podría significar una transferencia de datos más lenta para todos los usuarios. Algunos autores advierten que, si proliferan mucho este tipo de redes, cliente-servidor, podrían llegar a su fin, ya que a cada una de estas redes se conectarán muy pocos usuarios.

 Robustez. La naturaleza distribuida de las redes peer-to-peer también incrementa la robustez en caso de haber fallos en la réplica excesiva de los datos hacia múltiples destinos, y —-en sistemas P2P puros—- permitiendo a los peers encontrar la información sin hacer peticiones a ningún servidor centralizado de indexado. En el último caso, no hay ningún punto singular de falla en el sistema.

 Descentralización. Estas redes por definición son descentralizadas y todos los nodos son iguales. No existen nodos con funciones especiales, y por tanto ningún nodo es imprescindible para el funcionamiento de la red. En realidad, algunas redes comúnmente llamadas P2P no cumplen esta característica, como , eDonkey o .

 Distribución de costes entre los usuarios. Se comparten o donan recursos a cambio de recursos. Según la aplicación de la red, los recursos pueden ser archivos, ancho de banda, ciclos de proceso o almacenamiento de disco.

 Anonimato. Es deseable que en estas redes quede anónimo el autor de un contenido, el editor, el lector, el servidor que lo alberga y la petición para encontrarlo, siempre que así lo necesiten los usuarios. Muchas veces el derecho al anonimato y los derechos de autor son incompatibles entre sí, y la industria propone mecanismos como el DRM para limitar ambos.

 Seguridad. Es una de las características deseables de las redes P2P menos implementada. Los objetivos de un P2P seguro serían identificar y evitar los nodos maliciosos, evitar el contenido infectado, evitar el espionaje de las comunicaciones entre nodos, creación de grupos seguros de nodos dentro de la red, protección de los recursos de la red... La mayor parte de los nodos aún están bajo investigación, pero los mecanismos más prometedores son: cifrado multiclave, cajas de arena, gestión de derechos de autor (la industria define qué puede hacer el usuario; por ejemplo, la segunda vez que se oye la canción se apaga), reputación (permitir acceso sólo a los conocidos), comunicaciones seguras, comentarios sobre los ficheros, etc.

Jorge García Delgado

Clasificación

Una posible clasificación de las redes P2P pudiera ser acorde a su grado de centralización: Las tres topologías de red según los famosos grafos de Paul Baran que aplican también al diseño P2P.

Redes P2P centralizadas

Este tipo de red P2P se basa en una arquitectura monolítica en la que todas las transacciones se hacen a través de un único servidor que sirve de punto de enlace entre dos nodos y que, a la vez, almacena y distribuye los nodos donde se almacenan los contenidos.

Poseen una administración muy dinámica y una disposición más permanente de contenido. Sin embargo, está muy limitada en la privacidad de los usuarios y en la falta de escalabilidad de un sólo servidor, además de ofrecer problemas en puntos únicos de fallo, situaciones legales y enormes costos en el mantenimiento, así como el consumo de ancho de banda.

Una red de este tipo reúne las siguientes características:

 Se rige bajo un único servidor, que sirve como punto de enlace entre nodos y como servidor de acceso al contenido, el cual distribuye a petición de los nodos.

 Todas las comunicaciones (como las peticiones y encaminamientos entre nodos) dependen exclusivamente de la existencia del servidor.

Algunos ejemplos de este tipo de redes son Napster y .

Redes P2P híbridas, semicentralizadas o mixtas

En este tipo de red, se puede observar la interacción entre un servidor central que sirve como hub y administra los recursos de banda ancha, enrutamientos y comunicación entre nodos pero sin saber la identidad de cada nodo y sin almacenar información alguna, por lo que el servidor no comparte archivos de ningún tipo a ningún nodo. Tiene la peculiaridad de funcionar (en algunos casos como en Torrent) de ambas maneras, es decir, puede incorporar más de un servidor que gestione los recursos compartidos, pero también, en caso de que el servidor o los servidores que gestionan todo caigan, el grupo de nodos puede seguir en contacto a través de una conexión directa entre ellos mismos, con lo que es posible seguir compartiendo y descargando más información en ausencia de los servidores. Este tipo de P2P presenta las siguientes características:

 Tiene un servidor central que guarda información en espera y responde a peticiones para esa información.

 Los nodos son responsables de hospedar la información (pues el servidor central no almacena la información) que permite al servidor central reconocer los recursos que se desean compartir, y para poder descargar esos recursos compartidos a los usuarios que lo solicitan.

 Las terminales de enrutamiento son direcciones usadas por el servidor, que son administradas por un sistema de índices para obtener una dirección absoluta.

Algunos ejemplos de una red P2P híbrida son BitTorrent, eDonkey y Direct Connect.

Jorge García Delgado

Redes P2P «puras» o totalmente descentralizadas

Las redes P2P de este tipo son las más comunes, siendo las más versátiles al no requerir de un gestionamiento central de ningún tipo, lo que permite una reducción de la necesidad de usar un servidor central, por lo que se opta por los mismos usuarios como nodos de esas conexiones y también como almacenadores de esa información. En otras palabras, todas las comunicaciones son directamente de usuario a usuario con ayuda de un nodo (que es otro usuario) quien permite enlazar esas comunicaciones. Las redes de este tipo tienen las siguientes características:

 Los nodos actúan como cliente y como servidor.  No existe un servidor central que maneje las conexiones de red.  No hay un enrutador central que sirva como nodo y administre direcciones.

Algunos ejemplos de una red P2P "pura" son: , , , y .

Otras categorías con base en la red P2P

Algunos prefieren clasificar las redes P2P según su estructuración:

 Redes P2P estructuradas, como CAN.  Redes P2P sin estructura, como Gnutella.

También se podría clasificar las redes P2P según su generación:

 Primera generación de P2P: son literalmente las primeras redes P2P, que eran centralizadas.  Segunda generación de P2P: en esta generación se implementó por primera vez la característica de la descentralización, y esta característica es la más frecuente en los actuales P2P.  Tercera generación de P2P: los más recientes, que implementan una comunicación no directa, cifrada y anónima.

Existe también la posibilidad de clasificar las redes P2P según sus características de anonimidad o exclusividad:

 Sin características de anonimidad  Pseudónimo  Red P2P Privada  Friend-to-friend (de amigo-a-amigo)

Una reciente generación de sistemas peer-to-peer son los llamados metacomputing o se clasifican como middleware. Por ejemplo, Legión y Globus.

Jorge García Delgado

Redes P2P estructuradas y no estructuradas

La red de sobrecapa del P2P consiste en todos los usuarios que participan como nodos de red. Hay enlaces entre dos nodos cualesquiera que se conozcan: es decir, si un usuario participante conoce la localización de otro usuario en la red del P2P, entonces hay un borde dirigido del nodo anterior al último nodo en la red de sobrecapa. Basándonos en cómo los nodos en la red de sobrecapa se enlazan el uno al otro, podemos clasificar las redes del P2P como no estructuradas o estructuradas.

Se forma una red P2P no estructurada cuando los enlaces de la sobrecapa se establecen arbitrariamente. Tales redes pueden construirse muy fácilmente cuando un usuario que desea unirse a la red puede copiar enlaces existentes de otro nodo y después formar sus propios enlaces en un plazo determinado.

En una red P2P no estructurada, si un usuario desea encontrar información específica en la red, la petición tiene que recorrer toda la red para encontrar tantos usuarios como sea posible, para conseguir a alguien que comparta los datos. La desventaja principal con estas redes es que las peticiones no siempre podrán resolverse. Es muy probable que un contenido popular esté disponible para varios usuarios, y es muy probable que cualquier usuario que lo busque lo encuentre; sin embargo, si un usuario está buscando datos no muy populares que comparten sólo unos cuantos usuarios, será altamente probable que la búsqueda no dé los resultados esperados. Dado que no hay correlación entre un usuario y el contenido compartido por él, entonces no hay garantía de que el usuario encuentre al que tiene la información deseada.

El flooding también incrementa el tráfico en la red y, por lo tanto, estas redes suelen tener una eficacia muy baja en los resultados de búsqueda. La mayor parte de las redes populares P2P (Napster, Gnutella y ) son redes P2P sin estructura.

Las redes P2P estructuradas superan las limitaciones de las redes no estructuradas, mantienen una tabla de hash distribuida (DHT) y permiten que cada usuario sea responsable de una parte específica del contenido en la red. Estas redes utilizan funciones de hash distribuido y asignan valores a cada contenido y a cada usuario en la red. Después siguen un protocolo global en la determinación de qué usuario es responsable de qué contenido. De esta manera, siempre que un usuario desee buscar ciertos datos, utilizará el protocolo global para determinar al usuario o usuarios que lo tiene(n) y después dirigirá la búsqueda hacia éstos. Algunas redes P2P estructuradas son:

 Chord  Pastry P2P Network  Tapestry P2P Network  Content Addressable Network  Tulip Overlay

Jorge García Delgado

Imagen de los tipos de redes P2P:

Redes, protocolos y aplicaciones

Redes y protocolos

RED O USO PROGRAMAS PROTOCOLO ANts P2P Intercambio de ANts P2P ficheros/Distribución de software/Distribución de multimedia Ares Intercambio de ficheros Ares Galaxy, Warez P2P, KCeasy, jAres P2P BitTorrent Intercambio de Comparativa de clientes BitTorrent para una lista ficheros/Distribución de detallada. software/Distribución de multimedia Direct Intercambio de ficheros, chat DC++, NeoModus Direct Connect, SababaDC, Connect BCDC++, RevConnect, fulDC, LDC++, CzDC, McDC++, DCDM++, DDC++, iDC++, IceDC++, Zion++, R2++, rmDC++, LinuxDC++, LanDC++, ApexDC++, StrongDC++ eDonkey Intercambio de ficheros aMule, eDonkey2000 (extinguido), eMule, eMule Plus, FlashGet, iMesh, Jubster, lMule, MLDonkey, , Pruna, , xMule

Jorge García Delgado

FastTrack Intercambio de ficheros giFT, , iMesh (y sus variantes como iMesh Light), Kazaa (y sus variantes como Kazaa Lite), KCeasy, Mammoth, MLDonkey, Poisoned Freenet Almacenamiento distribuido Freenet, Entropy (red separada de Freenet) GNUnet Intercambio de ficheros, chat GNUnet, (GNUnet-gtk) Gnutella Intercambio de ficheros BearShare, , FilesWire, FrostWire, Gnucleus, Grokster, gtk-gnutella, iMesh, Kiwi Alpha, LimeWire (extinguido), MLDonkey, Morpheus, MP3 Rocket, Poisoned, Shareaza, Swapper, XoloX, KCeasy Gnutella2 Intercambio de ficheros Adagio, Gnucleus, Kiwi Alpha, MLDonkey, Morpheus, Shareaza, TrustyFiles JXTA Aplicaciones distribuidas Collanos Workplace (Software colaborativo), Sixearch Kad Intercambio de ficheros aMule, eMule, MLDonkey Napster Intercambio de ficheros Napigator, Napster OpenNap Intercambio de ficheros WinMX, Utatane, XNap, Napster sps Creación de portales web Osiris (Serverless Portal System) anónimos P2PTV Streaming de video TVUPlayer, Joost, CoolStreaming, Cybersky-TV, TVants, PPLive, LiveStation,Sopcast PDTP Streaming e intercambio de PDTP ficheros Peercasting Streaming PeerCast, IceShare, FreeCast, Rawflow Pichat Chat e intercambio de Pichat, Pidgin, Moonchat, C4 información Intercambio de ficheros, charla, Instant Messenger, Grupos de noticias, Usenet Grupos de noticias WPNP Intercambio de ficheros WinMX Windows Desarrollo de aplicaciones Incluido en el Advanced Networking Pack para Peer-to-Peer distribuidas, colaboración. Windows XP,13 Windows XP SP2, Windows Vista.

 Otras redes: Applejuice, Audiogalaxy, , CAKE, Chord, The Circle, Coral, Dijjer, , Groove, Hamachi, iFolder, konspire2b, /Aimster, MUTE, NeoRouter, OpenFT, P-Grid, IRC, MojoNation, Mnet, Octoshape, Omemo, , Peersites, , Scour, SharingZone, Skype, Solipsis, , , SPIN, Swarmcast, WASTE, , Wippien.

Aplicaciones Multirred

APLICACIÓN RED O PROTOCOLO SISTEMA SOFTWARE OPERATIVO LIBRE aMule eDonkey, Kad Multiplataforma Sí aMule eDonkey, Kad Windows Sí FilesWire Gnutella, G3 Multiplataforma No giFT eDonkey, FastTrack, Gnutella Multiplataforma Sí Gnucleus Gnutella, Gnutella2 Windows Sí iMesh FastTrack, eDonkey, Gnutella, Gnutella2 Windows No (versiones anteriores a la 6.0)

Jorge García Delgado

KCeasy Ares Galaxy, FastTrack, Gnutella, OpenFT Windows Sí Kiwi Alpha Gnutella, Gnutella2 Windows No MLDonkey BitTorrent, Direct Connect, eDonkey, FastTrack, Multiplataforma Sí Kad, OpenNap, SoulSeek, HTTP/FTP Morpheus BitTorrent, Gnutella, Gnutella2 Windows No Shareaza Gnutella, Gnutella2, eDonkey, BitTorrent, Windows No HTTP/FTP Vagaa BitTorrent, eDonkey, Kad Windows No WinMX WPNP, OpenNap Windows No Zultrax Gnutella, ZEPP Windows No

Aplicaciones de las redes P2P

Actualmente, en Internet el ancho de banda o las capacidades de almacenamiento y cómputo son recursos caros. En aquellas aplicaciones y servicios que requieran una enorme cantidad de recursos pueden usarse las redes P2P.

Algunos ejemplos de aplicación de las redes P2P son los siguientes:

 Intercambio y búsqueda de ficheros. Quizás sea la aplicación más extendida de este tipo de redes. Algunos ejemplos son BitTorrent o la red eDonkey2000.  Sistemas de ficheros distribuidos, como CFS o Freenet.  Sistemas de telefonía por Internet, como Skype.  A partir del año 2006, cada vez más compañías europeas y norteamericanas, como Warner Bros o la BBC, empezaron a ver el P2P como una alternativa a la distribución convencional de películas y programas de televisión, y ofrecen parte de sus contenidos a través de tecnologías como la de BitTorrent.1  Cálculos científicos que procesen enormes bases de datos, como los procedimientos bioinformáticos.  Monedas virtuales para transacciones entre partes. BitCoin

Las redes P2P pueden usarse también para hacer funcionar grandes sistemas de software diseñados para realizar pruebas que identifiquen la presencia de posibles fármacos. El primer sistema diseñado con tal propósito se desarrolló en el 2001, en el Centro Computacional para el Descubrimiento de Medicamentos (Centre for Computational Drug Discovery) en la prestigiosa Universidad de Oxford y con la cooperación de la Fundación Nacional para la Investigación del Cáncer (National Foundation for Cancer Research) de los Estados Unidos.

Actualmente existen varios sistemas software similares que se desarrollan bajo el auspicio de proyectos como el proyecto de Dispositivos Unidos en la Investigación del Cáncer (United Devices Cancer Research Project). En una escala más pequeña, existen sistemas de administración autónoma para los biólogos computacionales, como el Chinook, que se unen para ejecutar y hacer comparaciones de datos bioinformáticos con los más de 25 diferentes servicios de análisis que ofrece. Uno de sus propósitos consiste en facilitar el intercambio de técnicas de análisis dentro de una comunidad local.

Las instituciones académicas también han comenzado la experimentación con compartición de archivos, como es el caso de LionShare.