Grupo ARCO - Universidad de Castilla-La Mancha
Grupo ARCO - Universidad de Castilla-La Mancha
Grupo ARCO - Universidad de Castilla-La Mancha
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
2. ANTECEDENTES 11<br />
DDS es una especificación <strong>de</strong> un API y un protocolo <strong>de</strong> interoperabilidad que <strong>de</strong>fine una arquitectura<br />
basada en el mo<strong>de</strong>lo publicador-subscriptor para la comunicación <strong>de</strong> información<br />
anónima entre proveedores y consumidores. Un proveedor <strong>de</strong> datos (publicador) publica flujos<br />
<strong>de</strong> datos i<strong>de</strong>ntificados por nombres llamados topics (canales) a los que los consumidores<br />
pue<strong>de</strong>n suscribirse. A<strong>de</strong>más, una aplicación pue<strong>de</strong> <strong>de</strong>sempeñar al mismo tiempo el rol <strong>de</strong><br />
proveedor y el <strong>de</strong> consumidor.<br />
<strong>La</strong>s características <strong>de</strong> DDS son:<br />
Desacoplamiento: los publicadores y los suscriptores pue<strong>de</strong>n estar en diferentes lugares.<br />
In<strong>de</strong>pen<strong>de</strong>ncia <strong>de</strong> plataformas: los publicadores y suscriptores pue<strong>de</strong>n estar implementados<br />
en plataformas diferentes y escritos en diferentes lenguajes <strong>de</strong> programación.<br />
Multiplicidad: pue<strong>de</strong>n existir múltiples publicadores y suscriptores en el mismo canal.<br />
Tiempo real: la información se entrega en el lugar y tiempo correctos. No entregar una<br />
información necesaria en el momento preciso pue<strong>de</strong> llevar a situaciones que entren en<br />
conflicto con los objetivos <strong>de</strong>seados.<br />
Fiable: se asegura la fiabilidad, seguridad e integridad a pesar <strong>de</strong> fallos <strong>de</strong> hardware y<br />
software.<br />
Alto rendimiento: permite distribuir gran<strong>de</strong>s volúmenes <strong>de</strong> datos con una baja latencia.<br />
Actualmente, el estándar DDS <strong>de</strong> la OMG está compuesto por DDS v1.2 API y DDS Interoperability<br />
Wire Protocol (DDSI) v2.1 (figura 2.6). El estándar DDS API garantiza la portabilidad<br />
<strong>de</strong>l código fuente a pesar <strong>de</strong> que los proveedores tengan diferentes implementaciones,<br />
mientras que el estándar DDSI asegura la interoperabilidad a través <strong>de</strong> implementaciones<br />
DDS <strong>de</strong> diferentes proveedores.<br />
Data-Centric Publish-Subscribe (DCPS) es la capa <strong>de</strong> DDS que proporciona la funcionalidad<br />
requerida para que una aplicación pueda publicar y suscribirse a los datos específicos <strong>de</strong><br />
los objetos y consta <strong>de</strong> 5 módulos:<br />
Mo<strong>de</strong>lo <strong>de</strong> la infraestructura – <strong>de</strong>fine las clases abstractas y las interfaces que son refinadas<br />
en otros módulos.<br />
Mo<strong>de</strong>lo <strong>de</strong>l dominio – contiene la clase DomainParticipant que actúa como un contenedor<br />
para otros objetos que componen la aplicación.<br />
Mo<strong>de</strong>lo <strong>de</strong>l canal – contiene las clases Topic, ContentFilteredTopic y MultiTopic. Estas clases<br />
<strong>de</strong>finen los diferentes canales. <strong>La</strong> clase ContentFilteredTopic <strong>de</strong>fine un canal al que<br />
se le aplica un filtro y la clase MultiTopic se utiliza para suscribirse a múltiples canales<br />
y combinar y/o filtrar los datos recibidos obteniendo como resultado un tipo.