CONSULTORÍA ESTRATÉGICA EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIONES

CONSULTORIA EN REDES Y SERVICIOS DE TELECOMUNICACIONES




P2P en la empresa

Autor: Ramón Jesús Millán Tejedor

Publicado en Comunicaciones World nº 206, IDG Communications S.A, 2005

Descargar el artículo en PDF



IntroducciÓn

La conjunción de tecnologías de compresión de contenidos digitales, conexiones a Internet de banda ancha y programas P2P, hacen factible descargar en muy poco tiempo archivos grandes y de alta calidad. Esta mezcla tan atractiva para los usuarios de Internet, ha intensificado involuntariamente el dolor de cabeza provocado por la piratería para los estudios de cine y las compañías discográficas. Según estudios de la firma de tecnología CacheLogic, más del 60% del tráfico actual de Internet está generado por las redes P2P, constituyendo así la aplicación estrella (killer application) de la banda ancha.

Si bien los sistemas P2P, con Napster a la cabeza, empezaron a ser conocidos por los usuarios y desarrolladores por su utilización para el intercambio “ilegal” de contenidos protegidos por derechos de autor, la realidad es que esta tecnología ofrece una gran cantidad de beneficios para sus usuarios, tanto domésticos como empresariales. Entre las aplicaciones actuales y futuras de las redes P2P, cabe destacar: negocios de intercambio de todo tipo de contenidos digitales de forma legal, motores de búsqueda, protección contra virus, ayuda en la investigación, educación colaborativa a distancia, difusión de televisión y radio en tiempo real, telefonía IP, mensajería instantánea, chat, redes de almacenamiento, etc.

Concepto de P2P

Básicamente, una red informática P2P (Peer-to-Peer) se refiere a una red que no tiene clientes y servidores fijos, sino una serie de nodos que se comportan a la vez como clientes y como servidores de los demás nodos de la red. Este modelo de red contrasta con el modelo cliente-servidor tradicionalmente empleado en las aplicaciones de Internet. Así, todos los nodos se comportan igual y pueden realizar el mismo tipo de operaciones; pudiendo no obstante diferir en configuración local, velocidad de proceso, ancho de banda de su conexión a la red y capacidad de almacenamiento.

Típicamente, la computadora que realiza algunas tareas en beneficio de otras aplicaciones llamadas clientes (clients), es el denominado servidor (host). Algunos servidores habituales son los servidores de archivos, que permiten a los usuarios almacenar y acceder a los archivos de un ordenador, y los servidores de aplicaciones, que realizan tareas en beneficio directo del usuario final. El modelo cliente-servidor era muy apropiado cuando no existían los PC, sólo estaciones de trabajo, cuya potencia distaba mucho de los grandes y costosos ordenadores centrales (mainframes). Hoy en día, los PC empleados en hogares y empresas tienen unas prestaciones cada vez más parecidas a los servidores a un precio sensiblemente menor. Por ello, las redes P2P son la mejor alternativa para aprovechar toda la capacidad de proceso, almacenamiento y ancho de banda sobrante de los ordenadores interconectados.

CaracterÍsticas del P2P

Los programas P2P tienen una serie de características distintivas inherentes a su naturaleza descentralizada. Estas características son las que hacen realmente atractivas estos programas para los usuarios empresariales. Se pueden resumir en:

Aplicaciones

Algunas de las aplicaciones P2P más populares en estos momentos suponen cierto grado de centralización. El abanico es muy amplio, y va desde aplicaciones totalmente descentralizadas a aplicaciones totalmente centralizadas, siendo su punto en común que todas siguen un sistema de computación de red distribuida donde todos los nodos pueden actuar como clientes o servidores, es decir, se comunican de igual a igual.

Muchas de las aplicaciones de las arquitecturas P2P pueden ser cubiertas por las arquitecturas cliente-servidor. Sin embargo, las características del P2P traen consigo importantes mejoras respecto a las aplicaciones tradicionales. Las principales aplicaciones actuales del P2P en el mundo empresarial se pueden agrupar en: colaboración, mensajería instantánea y telefonía IP, compartición de ficheros, distribución de contenidos, sincronización de datos y compartición de capacidad de procesamiento.

Colaboración

La informática colaborativa (groupware) consiste en varias tecnologías y procesos para eliminar el aislamiento de los empleados individuales y construir un nuevo modelo empresarial cooperativo. En un grupo de trabajo, colaboración implica compartir ideas y recursos a través de comunicaciones interactivas. Por ejemplo, para colaborar en un proyecto, los miembros del equipo es probable que necesiten intercambiar mensajes y documentos entre sí, y disponer de un calendario de actividades y tareas conjuntas continuamente sincronizado. El intercambio de mensajes puede ser realizado por aplicaciones como: correo electrónico, teléfono, chat, mensajería instantánea o videoconferencia. Durante las reuniones, puede ser de ayuda tener una pizarra electrónica virtual compartida para facilitar la comunicación entre distintos colaboradores. Los documentos son desarrollados tanto individualmente y compartidos, como elaborados conjuntamente. Otro ejemplo sería que desarrolladores de software pudiesen trabajar al mismo tiempo sobre los mismos ficheros de código.

Una de las grandes ventajas de emplear la tecnología P2P para colaboración es que una aplicación puede ser totalmente desarrollada sin depender de servidores u otros sistemas administrados de forma centralizada. De este modo, los programas P2P se encargan de descubrir los otros nodos y de encaminar de forma segura los mensajes entre los distintos usuarios. Entre las aplicaciones más completas para la colaboración en LAN e Internet empleando arquitectura P2P, tipo al famoso Lotus Notes en arquitectura cliente-servidor, está Groove. Groove integra mensajería instantánea, chat, intercambio de archivos, agenda de contactos y calendario común, y la posibilidad de trabajar en grupo directamente sobre el mismo archivo de Word, todo ello con total seguridad. Típicamente, Groove centraliza una serie de servicios (en un una sola plataforma servidor o en varias) con el fin de hacer la comunicación más eficiente y transparente a los usuarios: presencia, retransmisión, correo electrónico y DNS.

Colaboracion con Groove

Figura 1: Groove.

Mensajería instantánea y telefonía IP

La telefonía basada en Internet o VoIP (Voz sobre IP) ha estado disponible desde hace muchos años, pero no ha sido capaz de captar al mercado dominante. Las principales razones han sido que la baja calidad de las llamadas, el bajo porcentaje de concreción de llamadas debido a la presencia de cortafuegos y de NAT, y las complejas y poco intuitivas interfaces de usuario.

La centralización empleada por los sistemas tradicionales, como AOL Instant Messenger o MSN Messenger, pueden superar algunas de estas dificultades encaminando las llamadas a través de cortafuegos o dispositivos NAT. No obstante, el costo del funcionamiento de la red se eleva demasiado como para ofrecer el servicio a bajo costo. Además, aumenta en proporción al número de usuarios. El resultado de esto es que las compañías que ofrecen tales servicios, destinan muy pocos recursos a los servidores por usuario, y esto perjudica la calidad de las llamadas.

Por ello, el siguiente paso lógico en la revolución originada por el intercambio de ficheros a través de la tecnología P2P, fue la telefonía IP; y Skype fue el primer programa en desarrollar una red de telefonía de este tipo. Skype aprovecha eficientemente todos los recursos disponibles en una red; elevando así el porcentaje de concreción de llamadas y la calidad de éstas, a niveles ligeramente inferiores al sistema telefónico básico. Además de telefonía IP, Skype permite establecer sesiones de mensajería instantánea y transferencia de ficheros directa entre usuarios.

Popular Telephony ofrece PeerioBiz, una solución P2P empresarial que permite crear redes de telefonía IP sin disponer de una centralita IP y compatible con las centralitas analógicas tradicionales y con Skype, lo cual supone un gran ahorro en llamadas y un enorme coste de inversión y mantenimiento enorme para las empresas.

Mensajeria instantanea y telefonia IP con Skype

Figura 2: Skype.

Comparitición de ficheros

Las aplicaciones de compartición de ficheros son las más famosas y a la vez las más controvertidas de todas las posibles aplicaciones de las tecnologías P2P. Una característica de P2P es que la información es distribuida de forma totalmente flexible, segura y dinámica, haciendo que su control sea realmente complicado, por lo que ha sido empleado tradicionalmente para la difusión “ilegal” de material con copyright.

Programas tales como Kazaa o eDonkey2000, son utilizados habitualmente para compartir contenidos protegidos por derechos de autor, lo cual ha generado una auténtica batalla legal entre los desarrolladores y usuarios de estos programas y las productoras cinematográficas y discográficas. La controversia en torno este tipo de programas corre el riesgo de eclipsar sus auténticas contribuciones y el mundo empresarial cometería un grave error si cierra los ojos ante esta potente tecnología. Las redes P2P a través de Internet suponen ciertas ventajas para la industria discográfica y cinematográfica, que deberán adaptarse a las nuevas fórmulas de distribución y promoción que ofrece la Red. En un futuro no muy lejano, la música, las películas y el software serán vendidos casi de forma exclusiva por Internet, ofreciendo mejores precios al usuario y mejores ganancias al intérprete y permitiendo la distribución instantánea del contenido. Es más, la capacidad de crear se verá más impulsada gracias a la posibilidad de distribuir de forma sencilla y barata la nueva obra. Consideremos por ejemplo el caso de un grupo musical modesto, que como mecanismo de marketing de sus conciertos, pone a disposición de sus seguidores un vídeo musical de un concierto en directo. La forma que tiene de hacerlo llegar ahora al gran público es poner el contenido en un servidor Web, ya sea mantenido por ellos mismos o por una empresa ajena, lo cual puede suponer una inversión económica importante. En cambio, mediante un programa como SoulSeek, basta con poner una copia del fichero a publicar en un directorio compartido de cualquier ordenador personal.

La gestión de derechos digitales o DRM (Digital Rights Management) permite que la distribución de los contenidos cumpla en todo momento el copyright establecido. Las técnicas de DRM se basan en encriptación, la cual permite a los dueños del contenido controlar cómo podrá ser accedido por los distintos usuarios, incluyendo la cuestión de licencias y desencriptación en el dispositivo cliente. Están ya disponibles servicios, como Snocap o Audible Magic, que permiten controlar la legalidad de los contenidos compartidos a través de una red P2P. Por otro lado, existen también redes P2P destinados al intercambio legal de contenidos digitales, como PeerImpact. La descarga de contenidos digitales en este tipo de redes tiene grandes ventajas para los usuarios respecto a las descargas en las redes P2P convencionales, como Kazaa: los clientes para interactuar con la red P2P no contienen ningún tipo de código malicioso, los ficheros descargados no son en ningún caso falsos (fake) o de baja calidad (spoof), los usuarios recibirán información más amplia del fichero descargado (artistas, contenidos, letras, recomendaciones, enlaces, etc.), no se fomentará la piratería que tanto perjudica a los autores y creadores, se podrá actuar como redistribuidor de contenidos siendo compensado económicamente por ello, etc. Las redes P2P están llamadas así a convertirse en las redes de distribución de contenidos, también conocidas como CDN (Content Delivery Networks), del futuro.

Comparticion de ficheros con Bearshare

Figura 3: Bearshare.

Distribución de contenidos

La distribución de contenidos se diferencia de la compartición de ficheros, en cuanto a que dichos ficheros son en este caso replicados entre todos los distintos iguales. Las redes P2P serán de gran utilidad para la distribución de contenidos, como por ejemplo: vídeo bajo demanda (películas a la carta) o aplicaciones de streaming vídeo o audio (como televisión o radio).

El contenido es así distribuido desde una entidad, como por ejemplo un periódico electrónico, a los pares. El principal beneficio de la solución P2P es que sólo unos pocos pares necesitan acceder al servidor del periódico para bajarse el artículo. Después de esto, los pares replican el artículo entre ellos. De esta forma, el periódico que distribuye los datos siguiendo esta solución, no necesita un servidor muy potente y de alto costo, sino algo mucho más modesto. Existe también un nivel de ahorro adicional dentro de las propias organizaciones. Cuando el artículo es enviado a un par dentro de una red corporativa, puede emplearse un broadcast IP para distribuir inmediatamente el artículo a todos los pares de esa organización. De este modo, el enlace entre la organización e Internet no requiere la capacidad que supondría que todos los pares se descargasen el artículo a través de un navegador Web.

Streaming mediante redes peer-to-peer

Figura 4: Streaming de audio y vídeo mediante redes P2P.

Por otro lado, tenemos la distribución de contenidos en tiempo real. Mediante las recientes técnicas de streaming, es posible visualizar ficheros de vídeo o escuchar ficheros de audio en Internet sin necesidad de descargarlos previamente al disco duro. Esto ha favorecido la proliferación de cadenas de radio y emisoras de televisión en la Red, que si bien no tienen la calidad de las obtenidas mediante las radios y televisores tradicionales, los usuarios se ven favorecidos por poder visualizar o escuchar contenidos de cualquier lugar del mundo en su ordenador. Las arquitecturas de streaming actuales se basan en el modelo cliente-servidor. La más sencilla es la de un servidor para varios clientes, pero podemos encontrar entornos más complejos con varios servidores, con los mismos o diferentes contenidos, que dan servicio a los clientes más cercanos. En este segundo entorno, la replicación de contenidos entre servidores se realiza por FTP o por multicast IP, siendo este segundo caso el mejor, pues permite que todos los contenidos estén disponibles inmediatamente para todos los usuarios. En otros sistemas se distribuye bajo demanda, es decir, el cliente pide el contenido al servidor más cercano, y en el caso de que éste no lo tenga, se encargará de solicitarlo al servidor central para poder dárselo al cliente y guardarlo para siguientes peticiones.

De nuevo el P2P es un medio ideal para que dicha distribución de contenidos en tiempo real mejore su eficiencia y calidad a un menor costo. La BBC ha sido una de las primeras cadenas de televisión en hacer disponible en la Red toda su programación de radio y televisión mediante una tecnología que ha denominado Internet Media Player basada en P2P y que incorpora mecanismos de DRM, preservando así los derechos de autor de lo emitido por la cadena y pudiendo especificar el tiempo que se tiene para ver un programa. En principio sólo está disponible para ordenadores con Windows, pero la idea es permitir el acceso futuro a móviles y otros dispositivos. Mercora es otra famosa emisora de radio en Internet basada en P2P.

Emisora de radio con P2P Mercora

Figura 5: Mercora.

Sincronización de datos

La sincronización P2P es muy similar a la distribución de contenidos, con la diferencia de que es a un nivel más granular. Los usuarios domésticos y empresariales acostumbramos a sincronizar datos entre distintos dispositivos, como por ejemplo, la agenda de contactos entre el terminal móvil y el ordenador.

La sincronización podría emplearse por ejemplo para que los fabricantes de software distribuyesen los parches de aplicaciones entre sus clientes, o para que los teletrabajadores actualizasen documentos entre su ordenador doméstico y los servidores de almacenamiento de la empresa. Por ejemplo, Microsoft incorporará la tecnología P2P para la distribución de contenidos y la sincronización de datos a la próxima versión de Windows, conocida actualmente con el nombre en clave de Vista, y que será lanzada comercialmente alrededor de noviembre de 2006. Dicha tecnología, que la compañía de Bill Gates ha bautizado como Avalanche, está destinada a las descargas de material legal, como software comercial o emisiones de radio y televisión, ya que Microsoft está trabajando codo con codo con las empresas discográficas, productoras cinematográficas y otras compañías de desarrollo de software para proporcionar mecanismos de seguridad que aseguren el control de todo el tráfico de las redes P2P creadas con su sistema. Avalanche será también utilizado para la descarga de parches y actualizaciones de seguridad, tareas que actualmente son realizadas desde una serie de servidores centrales propiedad de Microsoft, y que crean cuellos de botella en dichos servidores. En cambio, descargando estas actualizaciones desde los ordenadores de otros usuarios que a su vez las hubiesen ya descargado, como hace actualmente Kazaa, ganaríamos en velocidad, a parte de no congestionar los servidores de la compañía fabricante del software, lo que redundaría en un mejor servicio por parte de esta. Esta tecnología, evidentemente, contará con mecanismos de seguridad que garanticen el anonimato de los participantes en la conexión, así como la verificación de la legitimidad del contenido intercambiado y su integridad, y establezcan reglas para que en la máquina destino no entre nada más que la información correspondiente al fichero intercambiado.

También podría emplearse la sincronización para la realización de copias de seguridad automáticas de datos críticos de nuestros ordenadores, algo que ya están explotando comercialmente, por ejemplo, PeerStor y Popular Telephony. Popular Telephony ofrece PeerioData que permite crear redes de almacenamiento sin servidores dedicados, reduciendo así los costes en infraestructura y mantenimiento. PeerioData segmenta los archivos que han de ser almacenados y los distribuye comprimidos y encriptados entre el espacio libre de los discos de distintos ordenadores conectados a la red. Cuando el usuario quiere acceder a un fichero, PeerioData recupera y recompone las diversas piezas, si es posible a partir de varias copias, con el fin de balancear la carga y aumentar la velocidad. Para disponer de redundancia y disponibilidad, el software distribuye múltiples copias de cada pieza.

Compartición de ciclos de procesamiento

Los ordenadores personales mejoran continuamente en cuanto a velocidad, espacio de almacenamiento y precio. Los ordenadores de hoy son mucho más potentes que los servidores de hace un par de años. De hecho, la única diferencia entre un ordenador y un servidor es en muchos casos el mayor ancho de banda de entrada/salida que el servidor es capaz de procesar. Existen otras diferencias, pero tienen que ver más con la gestión, fiabilidad y escalabilidad; en cuanto a velocidad de procesamiento, capacidad de almacenamiento y memoria, las diferencias son cada vez menores.

Los programas demandan cada vez más velocidad de procesamiento y más espacio en disco. No obstante, la mayoría de las aplicaciones no utilizan el 100% de los recursos de los ordenadores, por lo que la capacidad sobrante es bastante importante. Las aplicaciones y protocolos P2P pueden utilizar el exceso de potencia de cálculo y almacenamiento para crear sistemas donde todo el procesamiento sea realizado por pares en vez de por servidores.

La idea es emplear esta capacidad de cálculo sobrante para resolver problemas complejos, dividiendo éstos en subproblemas que puedan ser resueltos de forma independiente por un gran número de ordenadores. Por lo general, un servidor central es requerido para controlar los recursos ofrecidos por cada ordenador, los ordenadores no operan como servidores, y no existe comunicación entre ordenadores. No obstante, una parte significativa del sistema se ejecuta en los ordenadores, con gran autonomía, por lo cual es considerado un sistema P2P. El servidor central es el encargado de dividir el problema a resolver y de distribuirlo entre los distintos ordenadores conectados. Cada uno de los ordenadores registrados está equipado con un software cliente, que es ejecutado en los períodos de inactividad. Una vez finalizado el trabajo, el resultado es enviado de vuelta al servidor, y se envía un nuevo trabajo al cliente.

Aunque esto es complicado de llevar a la práctica, existen ya programas P2P operando de este modo. El más popular es el software asociado al proyecto  SETI@home, cuyo objetivo es la búsqueda de vida extraterreste mediante la detección de su tecnología de comunicaciones, buscando patrones que demuestren inteligencia en las ondas de radio procedentes del espacio. Para ello, cualquier persona que quiera colaborar puede descargarse un salvapantallas gratuito que instalado en su ordenador analiza señales del espacio captadas con el radiotelescopio de Arecibo. Otro programa muy popular es Distributed.net, cuyo objetivo es crackear códigos de encriptación, con el fin de mejorarlos.

La idea es que estos programas acaben por cubrir todo tipo de áreas de interés para empresas y usuarios, como aplicaciones financieras y de biotecnología, y establecer modelos de negocio en los que se compre la potencia de cálculo de otros usuarios para poder resolver los distintos problemas, algo en lo que ya están trabajando compañías con United Devices.

Comparticion de ciclos de procesamiento en SETI@home

Figura 6: SETI@home.

Volver al listado de artículos