23.04.2015 Views

Grupo ARCO - Universidad de Castilla-La Mancha

Grupo ARCO - Universidad de Castilla-La Mancha

Grupo ARCO - Universidad de Castilla-La Mancha

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

A. CASOS DE ESTUDIO: OPENSPLICE Y RTI 62<br />

Arquitectura simétrica No hay servidor centralizado ni nodos privilegiados. <strong>La</strong>s suscripciones<br />

y las publicaciones pue<strong>de</strong> ser añadidas y eliminadas dinámicamente <strong>de</strong>l sistema<br />

en cualquier momento.<br />

Frameworks <strong>de</strong> transporte RTI DDS incluye la habilidad para <strong>de</strong>finir nuevas herramientas<br />

<strong>de</strong> transporte. RTI DDS especifica un plugin <strong>de</strong> transporte UDP/IP y transporte<br />

<strong>de</strong> memoria compartida. Pue<strong>de</strong> ser configurado para trabajar sobre gran variedad <strong>de</strong><br />

mecanismos, tecnologías <strong>de</strong> re<strong>de</strong>s, etc.<br />

Soporte multilenguaje Soporta APIs para los lenguajes C, C++, C++/CLI, C# y Java.<br />

Soporte multiplataforma Incluye soporte para UNIX, sistemas <strong>de</strong> tiempo-real (INTEGRITY,<br />

VxWorks, QNX y LynxOS) y Windows (2000, 2003, CE, Vista y XP).<br />

Cumplimiento <strong>de</strong> estándar <strong>La</strong> API cumple la capa DCPS <strong>de</strong> la especificación <strong>de</strong> DDS <strong>de</strong> la<br />

OMG. El formado <strong>de</strong> los paquetes <strong>de</strong> datos que envía RTI DDS cumple con la especificación<br />

<strong>de</strong>l protocolo RTPS.<br />

Un ejemplo básico para ver el funcionamiento <strong>de</strong> un publicador y un suscriptor utilizando<br />

RTI DDS se pue<strong>de</strong> encontrar en el cdrom adjunto en el directorio src/samples/RTI/HelloWorld<br />

y a<strong>de</strong>más la prueba <strong>de</strong> integración correspondiente en el directorio test/samples.<br />

Este ejemplo no se analiza ya que los ejemplos realizados con OpenSplice especificados<br />

en el próximo capítulo son más claros para conocer la dinámica <strong>de</strong> DDS.<br />

A.2.<br />

OpenSplice DDS<br />

A.2.1. Arquitecture OpenSplice DDS<br />

OpenSplice DDS compone una arquitectura que utiliza memoria compartida para conectar<br />

no sólo todas las aplicaciones que resi<strong>de</strong>n <strong>de</strong>ntro <strong>de</strong> un nodo computacional, sino también el<br />

conjunto <strong>de</strong> servicios que ofrecen diferentes hosts 1 . Esta arquitectura garantiza la escalabilidad,<br />

flexibilidad y extensibilidad.<br />

En la memoria compartida que utiliza esta arquitectura, los datos están físicamente una<br />

vez en cada máquina y la administración proporciona a cada suscriptor una vista privada <strong>de</strong><br />

esos datos. Esto permite que una caché <strong>de</strong> datos <strong>de</strong>l suscriptor será percibida como una base<br />

<strong>de</strong> datos individual que pue<strong>de</strong> estar filtrada, encolada, etc.<br />

OpenSplice DDS pue<strong>de</strong> ser fácilmente configurable especificando los servicios necesarios<br />

que se utilizarán, así como la configuración <strong>de</strong> los servicios que persigue un acoplamiento<br />

óptimo en el dominio <strong>de</strong> aplicación (los parámetros <strong>de</strong> red, la durabilidad, niveles, etc). <strong>La</strong><br />

figura A.1 muestra la arquitectura <strong>de</strong> un nodo en OpenSplice DDS.<br />

1 Nodo conectada a la red que proporciona servicios y solicita servicios <strong>de</strong> otros.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!