La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Sistemas Ubicuos (Parte I) 2. Arquitecturas para sistemas ubicuos

Presentaciones similares


Presentación del tema: "Sistemas Ubicuos (Parte I) 2. Arquitecturas para sistemas ubicuos"— Transcripción de la presentación:

1 Sistemas Ubicuos (Parte I) 2. Arquitecturas para sistemas ubicuos
Programa de Tercer Ciclo Departamento de Arquitectura y Tecnología de Computadores Universidad del País Vasco / Euskal Herriko Unibertsitatea Sistemas Ubicuos (Parte I) 2. Arquitecturas para sistemas ubicuos Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

2 Arquitecturas para sistemas ubicuos
Interfaces Tecnologías de red y dispositivos Infraestructuras Entornos inteligentes Arquitecturas Aplicaciones Seguridad e integridad Aspectos éticos y sociales Herramientas y plataformas Metodologías Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

3 Arquitecturas para sistemas ubicuos
Infraestructura soporte Modelo de entorno ubicuo Arquitectura de un sistema ubicuo Integración de servicios heterogéneos Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

4 Infraestructura soporte

5 Arquitecturas Middleware
Aplicación Aplicación Middleware ¿compatibilidad? ¿cómo se reparten las funciones? Sistema operativo Hardware Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

6 Reparto de funciones: SO vs Mw
Modificar el SO es laborioso y cuesta alcanzar versiones estables. Trasladar la funcionalidad al Mw es más sencillo pero ofrece peor rendimiento. Ejemplo: Gaia, Aura, Sistemas basados en Jini-Java. Micronúcleos: sólo el soporte básico (cambio de contexto, interrupciones...) en el espacio del núcleo; el resto de funciones, como cliente-servidor en espacio de usuario. Ejemplos: Plan 9 / Plan B. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

7 Compatibilidad Sistemas heterogéneos: Soluciones:
¿cómo conseguir que las aplicaciones puedan migrar entre plataformas (Hw o SO) diferentes? Soluciones: Disponer de versiones de las aplicaciones para cada plataforma. Utilizar una plataforma Mw común (ej: Java). Utilizar emuladores para homogeneizar plataformas. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

8 Compatibilidad: emulación
Emulación software Se interceptan los traps de las llamadas al sistema del SO emulado y se interpretan en el SO anfitrión. Ejemplo: Wine. Emulación hardware Se emula el entorno Hw completo. Ejemplo: BOCHS Virtualización Emulación Hw de lo estrictamente necesario: Llamadas al sistema Acceso a los dispositivos El resto de las IM se ejecutan nativamente Requiere análisis del código Ejemplos: VMware, VirtualPC, Win4Lin Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

9 Compatibilidad: micronúcleos
Sistema operativo (espacio del kernel) Aplicaciones de usuario) Espacio del kernel de usuario SO clásico Micronúcleo Emulador POSIX System V Otro Hw Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

10 Compatibilidad: emulación (cont)
Hw SO anfitrión emulado SO huesped Aplicación nativa emulada SO huesped Aplicación emulada Hw SO anfitrión emulado nativa Hw SO anfitrión Emulador API Aplicación emulada nativa Emulación Software Emulación Hardware Virtualización Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

11 Modelo de entorno

12 Modelo de entorno para sistemas ubicuos
Recursos o servicios Electrodomésticos, iluminación, proyector... Medio de acceso WiFi, Bluetooth, Infrarrojos, GPRS... Dispositivos de acceso Mando, PDA, teléfono... Servidores PC, dispositivos específicos... Infraestructura de comunicación Power line, ethernet... ¿Explícito o implícito? Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

13 Modelo de entorno para sistemas ubicuos: ejemplo
Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

14 Arquitectura de un sistema ubicuo

15 Arquitecturas Middleware para sistemas ubicuos
Aplicación Aplicación Middleware Sistema operativo Hardware Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

16 Arquitecturas Middleware para sistemas ubicuos. Ejemplos.
Gaia Active Spaces (Roman, 2002) Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

17 Arquitecturas Middleware para sistemas ubicuos. Ejemplos.
Aura (Garlan, 2002) Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

18 Arquitecturas Middleware para sistemas ubicuos. Ejemplos.
Applications JavaSpaces Other services Network services Lookup Jini Discovery/Join RMI Java Java Java Solaris Solaris Mac Solaris Windows SPARC PowerPC x86 Arquitectura Jini Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

19 Arquitectura de un sistema ubicuo
Los recursos son de naturaleza dinámica Pueden estar disponibles o no. Pueden estar en el radio de acción del usuario o no. El usuario cambia de entorno y las aplicaciones descubren nuevos dispositivos. La aplicación debe adaptarse en tiempo de ejecución (no se instalan drivers explícitamente). Se requieren mecanismos de Publicación o registro de recursos y servicios. Descubrimiento de esos servicios por las aplicaciones. Control de acceso, seguridad, privacidad... Se requieren estándares (Jini, UPnP, Salutation) Los recursos pueden ser heterogéneos  Integración Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

20 Arquitectura de un sistema ubicuo
Aspectos básicos a considerar en un entorno con recursos no heterogéneos: Cómo se gestiona el estado de los recursos Grado de persistencia Características de los dispositivos de acceso (determinan su funcionalidad) Tamaño Capacidad de cómputo y almacenamiento Capacidad de comunicación Consumo de energía Características de los usuarios Categorías, con diferentes derechos de acceso Autenticación Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

21 Arquitectura de un sistema ubicuo Dos enfoques
Estructura del mecanismo de descubrimiento Reparto de funciones entre los elementos del entorno Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

22 Arquitecturas para el descubrimiento de servicios (Dabrowski & Mills, 2002)
Componentes básicos: Cliente: Service User (SU) Servidor: Service Manager (SM) Esquemas de comunicación: Multicast Unicast Descripciones del servicio (SD): Identificación Tipo Atributos Interfaz del servicio Interfaz de usuario Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

23 Arquitecturas para el descubrimiento de servicios: Arquitectura en dos partes
SU SM Un SM se da a conocer mediante multicast. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

24 Arquitecturas para el descubrimiento de servicios: Arquitectura en dos partes
SU SM Un SU descubre servicios mediante multicast. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

25 Arquitecturas para el descubrimiento de servicios: Arquitectura en dos partes
SU SM El SU obtiene el SD. El SU accede al servicio. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

26 Arquitecturas para el descubrimiento de servicios: Arquitectura en tres partes
SU SM SU SM SU SM SU SM SCM SCM SCM SCM SCM: Service Cache Manager. Proporciona persistencia Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

27 Arquitecturas para el descubrimiento de servicios: Arquitectura en tres partes
SU SM SU SM SU SM SU SM SCM SCM SCM SCM Los servicios se registran en los SCMs. Los SU descubren los servicios registrados. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

28 Reparto de funciones Dónde ubicar... Alternativas: El SU El SCM
La gestión de usuarios Alternativas: Utilizar servidores específicos o no Centralizado vs distribuido Replicación de servicios Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

29 Arquitecturas para sistemas ubicuos Ejemplo 1
Un usuario utiliza su dispositivo de acceso que le autoidentifica para acceder a los servicios de un entorno ubicuo. El dispositivo es de uso personal (tipo tab: quien posee el dispositivo está autorizado para usarlo). El dispositivo descubre los servicios que ofrece el entorno. El usuario puede operar con los dispositivos descubiertos de acuerdo a sus derechos de acceso sobre ellos, codificados en su dispositivo de acceso. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

30 Arquitecturas para sistemas ubicuos Ejemplo 2
Un usuario utiliza un dispositivo de acceso para acceder a los servicios de un entorno ubicuo. El dispositivo es de uso común (tipo pad). Un servidor dedicado descubre los servicios que ofrece el entorno. El servidor autentica al usuario. El usuario puede operar con los dispositivos descubiertos de acuerdo a sus derechos de acceso sobre ellos, almacenados en el servidor. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

31 Arquitecturas para sistemas ubicuos (2 partes)
Dependiendo de dónde se ubique el SU y las funciones de gestión de usuario: en el dispositivo de acceso: personal-server architecture (ejemplo 1) en un servidor dedicado: dedicated-server architecture (ejemplo 2) Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

32 Arquitecturas para sistemas ubicuos (3 partes)
Dependiendo de dónde se ubique el SCM, varias combinaciones (Salvador et al, 2005): Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

33 Integración de servicios heterogéneos

34 Integración de servicios
Dispositivos heterogéneos Muchos protocolos ¿Cómo integrarlos? ¿Cómo ofrecer una interfaz común a las aplicaciones? Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

35 Integración de servicios Enfoques
Soluciones ad-hoc Pasarelas específicas entre protocolos. Hay que integrar específicamente cada dispositivo. Plataforma común Todos los servicios se representan bajo una interfaz específica lo suficientemente general (p. ej., JINI). Un marco estándar de especificación lo más universal posible OSGi Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

36 Integración de servicios Jini como plataforma base
X10 resource Power line Jini Service 1 Jini Service 2 UPnP Gateway 1 UPNP Gateway 2 X10 Gateway EIB Gateway EIB EIB bus UPnP resource 1 resource 2 Gateway 2 Jini Service 2 Service 1 LUS Client Gateway factory Other Gateway factories Control point Gateway creation UPnP commands Service invocation Discovery / Registry 1 Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

37 Integración de servicios OSGi
Open Services Gateway Initiative (1999). Orientado a entornos domésticos. Arquitectura centralizada. Proporciona soporte para instalar dinámicamente servicios Java (bundles) La implementación de los bundles compete a los desarrolladores del sistema Los desarrolladores de aplicaciones se limitan a especificar interfaces. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

38 Integración de servicios OSGi: registro y descubrimiento
Registro y descubrimiento de servicios en OSGi. Tomado de (Lee, 2003) Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

39 Integración de servicios OSGi: un ejemplo
Ejemplo “Hello World”, tomado de (Lee, 2003). Definición de la interfaz, (b) implementación del servicio Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

40 Integración de servicios OSGi: un ejemplo (cont)
Ejemplo “Hello World”, tomado de (Lee, 2003). (c) Registro del servicio. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores

41 Integración de servicios OSGi: un ejemplo (cont)
Ejemplo “Hello World”, tomado de (Lee, 2003). (d) Descubrimiento e invocación. Konputagailuen Arkitektura eta Teknologia Saila Departamento de Arquitectura y Tecnología de Computadores


Descargar ppt "Sistemas Ubicuos (Parte I) 2. Arquitecturas para sistemas ubicuos"

Presentaciones similares


Anuncios Google