Projectos de Investigación
 

Proyectos Actuales

 

TIC2003

Los clusters de computadores personales (PCs) se han convertido en la plataforma más atractiva para funcionar como supercomputadores y como servidores de altas prestaciones. De ahí la necesidad de mejorar estas plataformas para ofrecer mayores prestaciones y escalabilidad, y mejores servicios, tales como disponibilidad, fiabilidad, calidad de servicio, bajo consumo, etc. También hace falta mejorar el acceso a los servidores a través de Internet.

En este proyecto nos proponemos la mejora de la mayoría de los componentes hardware que constituyen un cluster de PCs, así como del software de sistema asociado. En concreto, se aborda la mejora del rendimiento de los procesadores mediante el empleo de técnicas de supersegmentación y de reducción del consumo de energía, el sistema de entrada/salida mediante el uso de redes con enlaces punto a punto, la escalabilidad de los multiprocesadores simétricos mediante un nuevo sistema de coherencia de memoria, y la red de interconexión. En cuanto a ésta, se propone mejorar tanto las prestaciones (mediante encaminamiento adaptativo) como la escalabilidad (mediante técnicas de distribución de la carga), disponibilidad (mediante técnicas de tolerancia a fallos) y calidad de servicio (mediante la inclusión de soporte hardware en los circuitos de encaminamiento y en las interfaces de red) También se desarrollarán técnicas de planificación que tengan en cuenta el coste de las comunicaciones. En cuanto al acceso a través de Internet, se propone mejorar los routers IP, en los que se pretende mejorar su escalabilidad y ancho de banda mediante nuevos mecanismos de control de congestión y de eliminación del HOL blocking. También se abordará el estudio de las redes inalámbricas mediante el desarrollo de nuevos procedimientos de codificación robusta basados en técnicas UEP, aplicándose a la transmisión de vídeo MPEG-4. También se desarrollarán una serie de aplicaciones distribuidas, centrándonos en aquellas que pueden requerir un soporte hardware específico para su ejecución en tiempo real. La investigación incluirá el estudio de métodos de cuantificación y codificación, así como su implementación hardware mediante FPGA. Finalmente, se pretende mejorar el proceso de síntesis de circuitos en FPGAs a partir de especificaciones de alto nivel.

 

PIRÁMIDE

Desde la aparición del WWW pocas tecnologías han despertado tanto entusiasmo en un colectivo diverso de usuarios de la red como ha sucedido con la tecnología Grid. Esta tecnología que da soporte a un esquema de computación distribuida esta basada en tres pilares fundamentales:

  • Infraestructura de red basada en tecnologías IP
  • Un esquema de distribución de claves basado en el estándar X.509 para autenticación
  • Un soporte software para el desarrollo de aplicaciones distribuidas

Sobre dichos pilares se han desarrollado diversos proyectos para diseñar una arquitectura de servicios de fácil uso para los usuarios finales, entre los que destaca sobre todo Globus, como el estándar de facto existente en la actualidad.

Sin embargo a pesar de su desarrollo y aplicación en diversos ámbitos de la investigación, la tecnología Grid se enfrenta a nuevos retos debido principalmente a la evolución de las tecnologías de la información y las comunicaciones -TIC-. De entre estos retos existen dos de especial relieve y en los que debido a la propia experiencia del grupo de investigación que conforma este proyecto pueden ser abordados con plena garantía:

  • Adecuación de la infraestructura de red y de servicios de seguridad de los entornos de Grid a la evolución de IPv4 hacia IPv6, así como el consiguiente soporte de infraestructura de clave pública
  • Incorporación de servicios avanzados de computación distribuida basados en componentes y su integración como Servicios Web

Como puede observarse el planteamiento del presente proyecto contempla abordar aspectos de infraestructuras y servicios desde dos perspectivas, por un lado de protocolos y comunicación, y por otro de elementos de computación distribuida, de forma que se pueda extender una plataforma Grid como puede ser Globus para dar soporte a nuevos servicios.


Proyectos Pasados

 

PITÁGORAS

El proyecto PITAGORAS pretende desarrollar una infraestructura o plataforma software (middleware) para el desarrollo de aplicaciones distribuidas basadas en redes de PCs que ofrezca al programador servicios de metacomputación, como son la gestión homogénea de los recursos, la migración transparente de procesos y datos, la replicación de datos y proceso para soportar tolerancia a fallos, el balanceo inteligente de carga, QoS (calidad de servicio), seguridad, etc. Se hará especial hincapié en el diseño de un software compacto, eficiente (a trav´´es de una concienzuda evaluación de prestaciones del hardware subyacente), robusto y que ofrezca un interfaz completo, reutilizable y extensible. Además, el software debe ser fácil de instalar, basado en herramientas y protocolos estándar. La plataforma se basará en cierto middleware de base estándar como CORBA, DCOM o ILU. Utilizando CORBA, todo el software que se desarrolle para la plataforma puede hacer uso del importante número de desarrollos que ya se han realizado en torno a CORBA. Por otro lado, herramientas estándar como CORBA pueden acceder a los servicios ofrecidos por la plataforma de una forma también estándar a través de los interfaces definidos (la definición de los servicios y de su interfaz es también objeto del proyecto). Así mismo, se abordarán cuestiones relativas al soporte nativo de bases de datos por la plataforma (servicio de persistencia) y se estudiarán los requisitos en la construcción de servidores Web escalables y de alta disponibilidad. Se pretende también dar soporte run-time a la programación basada en agentes inteligentes móviles (con un modelo de seguridad asociado), lo cual nos permite abordar problemas intensivos en datos (como minería de datos) o desarrollar herramientas inteligentes de configuración para el sistema. La unión de Objetos Distribuidos con la metodología de Agentes Inteligentes supone una gran innovación, existiendo muy pocos productos que actualmente ofrecen esta posibilidad, como es Voyager, el cual lo soporta Java.

 

TIC2000

Las redes de estaciones de trabajo o clusters de computadores personales (PCs) se han convertido en la plataforma más atractiva para funcionar tanto como supercomputador, como servidor de altas prestaciones y como sistema distribuido. De ahí la necesidad de mejorar estas plataformas para ofrecer mayores prestaciones y mejores servicios, tales como disponibilidad, fiabilidad, calidad de servicio, bajo consumo, escalabilidad, etc.

En este proyecto nos proponemos la mejora de todos los componentes hardware que constituyen un cluster de PCs, así como del software de sistema asociado. En concreto, se aborda la mejora de los procesadores mediante la simplificación del hardware y el uso de técnicas de compilación dinámica de instrucciones, el sistema de entrada/salida mediante el uso de redes con enlaces punto a punto, la escalabilidad de
los multiprocesadores simétricos mediante el uso de directorios por exceso, y la red de interconexión. En cuanto a la red, se propone mejorar tanto las prestaciones (mediante encaminamiento adaptativo) como la escalabilidad (mediante técnicas de distribución de la carga), disponibilidad (mediante técnicas de reconfiguración dinámica) y calidad de servicio (mediante la inclusión de soporte hardware o software).
También se abordará el estudio de las redes inalámbricas para entornos distribuidos donde GSM resulte inadecuado, en especial, las redes de sensores de gran dimensión. Finalmente, se desarrollarán una serie de aplicaciones distribuidas, centrándonos en aquellas que pueden requerir un soporte hardware específico para su ejecución en tiempo real. En particular, se desarrollarán compresores/descompresores de vídeo basados en la transformada wavelet, junto a técnicas de percepción artificial en tiempo real aplicadas a diversos campos de ingeniería y teledetección. Para estas aplicaciones se desarrollarán aceleradores hardware basados en FPGAs.

 

TIC1997

El objetivo de este proyecto es el desarrollo de una red de estaciones de trabajo de altas prestaciones y bajo coste, desarrollando asimismo aplicaciones paralelas significativas que servirán, además, para evaluar las prestaciones de la máquina desarrollada. Se construirá un prototipo de red de estaciones de trabajo, utilizando computadores personales como procesadores y evaluando diversas alternativas para la red de interconexión, desde tarjetas Fast Ethernet hasta tarjetas de diseño propio basadas en FPGAs. Se desarrollarán y evaluarán nuevas técnicas de conmutación y encaminamiento de mensajes que consideren las características específicas de las redes de estaciones de trabajo, con especial énfasis en las prestaciones, la fiabilidad y el bajo coste. Se desarrollarán aplicaciones paralelas de visión y tratamiento de imágenes que, además de tener interés en sí mismas, servirán para evaluar las prestaciones de la red de estaciones de trabajo desarrollada y, en particular, de la red de interconexión propuesta. La red de estaciones de trabajo desarrollada tendrá un gran campo de aplicación, dado el creciente desarrollo del mercado de aplicaciones paralelas y, sobre todo, distribuidas (bases de datos distribuidas, aplicaciones multimedia con transmisión de vídeo en tiempo real, etc.) que requieren cada vez más potencia de cálculo y comunicaciones más eficientes.