You are on page 1of 15

2.Conceptos Generales y Bases Tecnologicas de sistemas Ubicuos.

2.1 Definicin de computacin ubicua. Un sistema es un conjunto de elementos que interaccionan entre s para lograr un objetivo comn. Los elementos se relacionan y transforman entradas en salidas, juntos logran informacin que puede ser til para otro sistema o para un ente. El procesado de los datos es crtico para la supervivencia de los sistemas, este debe tener un medio que regule las interacciones entre los objetos para que se alcancen las metas. La regulacin es llevada a cabo por el planeamiento, control y realimentacin. Esta nueva concepcin de sistemas, que ms all de las salidas generadas se debe autocontrolar adaptndose a los cambios del entorno, encaja en el fin de la computacin ubicua que segn Mark Weisser en 1991 : La ms profunda tecnologa es aquella que es invisible . Esta ser capaz de usarse a s misma en las fbricas y en nuestra vida cotidiana hasta hacerse indistinguible de esta. La computacin ubicua es la integracin de la informtica en el entorno de la persona, de forma que las computadoras no se perciban como objetos diferenciados. Este modelo tiene como principal objetivo hacer desaparecer a los dispositivos computacionales, situndolos en un segundo plano. Bajo el computo ubicuo los usuarios deben poder acceder a los servicios de informacin que necesiten en cualquier situacin, donde sea y cuando sea. 2.2 Componentes y caractersticas de un sistema ubicuo. Un entorno ubicuo, como se puede apreciar en la Figura 1 est compuesto por: dispositivos, redes, middleware y aplicaciones. 1) Los dispositivos son los componentes caractersticos son los que interactan con el entorno fsico pueden ser de entrada tradicionales, mviles inalmbricos y dispositivos inteligentes. 2) En cuanto al soporte de red para el sistema, permite la integracin y comunicacin de los dispositivos, las tecnologas actuales deben adaptarse en cuanto a su prestacin de ancho de banda y la integracin de los dispositivos. 3) La computacin ubicua requiere de un intrprete middleware como interface entre el ncleo de red y las aplicaciones de los usuarios ejecutndose en los dispositivos ubicuos. El middleware se comporta como un elemento entre las aplicaciones de usuario y la red. Consistir en firmware y software ejecutndose bien en modo cliente-servidor o igual a igual (p2p). Las interfaces de usuario son otro aspecto del middleware. 4) Las aplicaciones ubicuas guiaran al middleware y a la red. Estas deben evolucionar en un nico objetivo desaparecer del entorno.

Para alcanzar los objetivos de la computacin ubicua un software ubicuo debe ser escalable, heterogneo, integral e invisible. Los entornos ubicuos generalmente presentan una proliferacin de usuarios, aplicaciones y dispositivos. Adems el desarrollo tradicional generara una aplicacin para cada tipo de dispositivo, luego la instalacin se hace de forma separada segn las caractersticas del entorno. Como el nmero de dispositivos crece, la instalacin y la distribucin explicita de las aplicaciones para cada clase y familia llega a ser inmanejable, especialmente en un rea geogrficamente grande. Es por esto que sera conveniente generar una independencia entre los dispositivos y las aplicaciones para garantizar la escalabilidad. La conversin de un dominio a otro es esencial para la computacin y la comunicacin. Asumiendo que las implementaciones uniformes y compatibles de entornos inteligentes son irrealizables, la computacin ubicua debe encontrar la manera de enmascarar esta heterogeneidad a los usuarios. El middleware es el encargado de enmascarar la heterogeneidad para que la computacin ubicua sea invisible a los usuarios y compensa dinmicamente a entornos menos inteligentes de forma que el cambio sea transparente para los usuarios. Con el incremento de la heterogeneidad el desarrollo de las aplicaciones que se ejecuten en todas las aplicaciones se hace cada vez ms complejo. Al crecer el nmero de dispositivos y aplicaciones la integracin se hace compleja. La integracin de los componentes tiene implicaciones en la fiabilidad, calidad de los servicios, invisibilidad y seguridad para la red ubicua. La necesidad de la coordinacin entre los distintos componentes es clara, esta puede llegar desde enrutamientos de mensajes o uso de pantallas arbitrarias. Un sistema que requiere la intervencin humana mnima ofrece una razonable aproximacin a la invisibilidad, los humanos pueden intervenir para ajustar entornos inteligentes cuando fallan, estas tambin pueden ser parte de un procedimiento de aprendizaje del continuo del entorno. Las tcnicas automatizadas para la

reconfiguracin de la red dinmicamente cuando sea necesario son cruciales para llevar a cabo la visin de la computacin ubicua. La computacin ubicua requiere sistemas y dispositivos que perciban el contexto, la mayora de los dispositivos actuales no pueden sentir su entorno ni tomar decisiones oportunas sensitivas al contexto. La computacin mvil trata de temas de movilidad y localizacin pero en un contexto reactivo, respondiendo a eventos discretos. La computacin ubicua es pre activa. Para ello utiliza la monitorizacin, procesamiento de informacin en tiempo real que proviene de mltiples dispositivos (sensores, redes, etc.). El paradigma de la computacin ubicua aglutina a los modelos de la computacin mvil, distribuida y ubicua. Tal y como se muestra en la Figura 2 la computacin ubicua se configura a partir de sistemas mviles que funcionan de forma distribuida y con capacidad de integrarse en los entornos de forma autnoma gracias al uso de los dispositivos ubicuos que perciben al entorno.

Figura 2: Arquitectura del modelo ubicuo.

3.Dispositivos de sistemas ubicuos.


3.1 Clasificacin de los dispositivos que componen un sistema ubicuo. Cada uno de los dispositivos que forman parte de una red ubicua tiene una tarea concreta y muy determinada. El usuario a lo que aspira es a que las nuevas tecnologas permitan configurar esas tareas, adaptndolas a sus propias necesidades y que su interaccin con ellas sea ms fcil y transparente. Segn la tarea y el tipo de integracin que existe en los sistemas ubicuos se puede clasificar a los dispositivos de la siguiente manera: Dispositivos personales Se engloba en esta categora a los nuevos dispositivos personales, como telfonos mviles y agendas electrnicas, que, aunque en principio fueron diseados para proporcionar un servicio concreto, telefona inalmbrica o agenda, la realidad es que estos dispositivos cada vez proporcionan una mayor funcionalidad al usuario y adems lo acompaan en todo momento. En estos ltimos aos existe una clara tendencia a incorporar a estos dispositivos capacidad de comunicacin inalmbrica, no slo sistemas de telefona como GSM o GPRS para conectarse a Internet y obtener servicios tradicionales como navegacin Web o correo electrnico, sino tambin de corto alcance como IrDA, Bluetooth o IEEE 802.11 para que puedan colaborar con los dispositivos ms prximos, formando redes ad-hoc1. El uso de protocolos inalmbricos facilita tambin la movilidad de estos dispositivos. La caracterstica ms importante que tienen estos dispositivos es que son personales, de hecho todos ellos ofrecen un conjunto de aplicaciones denominadas Personal Information Management (PIM) y por lo tanto, las aplicaciones que se ejecutan en ellos deben estar personalizadas a las propias preferencias del usuario. Para ello los servicios se configurarn basndose en ellas, emplendose perfiles obtenidos de forma dinmica y transparente(o no) a partir de la interaccin que tenga el usuario con el dispositivo y con las aplicaciones que en l residen. Dispositivos de funcin especfica En general, estos dispositivos son estticos y con conexin a la red mediante protocolos inalmbricos o cableados, empleando la red elctrica, la red telefnica o cableados especficos. Sus caractersticas hardware varan de unos a otros y los sistemas operativos son propietarios y diseados a medida, para que se realice correcta y eficientemente la funcin especfica para la que se han construido. El desarrollo de aplicaciones est bastante cerrado, sobre todo porque no se ha tenido en cuenta la posibilidad que plantea el hecho de que estos dispositivos interaccionen con otros para realizar mejor su tarea, por ejemplo, la lavadora con los identificadores del tipo de ropa, el frigorfico con los identificadores de los productos, etc. Una caracterstica comn a casi todos ellos, es que su interfaz para interaccionar con el usuario est realizada a medida, con displays reducidos y teclas con funciones especficas. Sensores y actuadores

Esta categora engloba a un gran nmero de dispositivos que agrupamos en dos tipos, por una parte los sensores, que nos permiten realizar medidas y obtener datos del medio fsico que nos rodea, ejemplos de este tipo de dispositivos son un sensor de temperatura o de presin, o una smart la bel que nos proporciona la identificacin de un objeto. El otro tipo es lo que denominamos actuadores, que nos permiten realizar una accin concreta sobre el medio fsico, ejemplos de este tipo son un sistema de apertura de puertas, una bombilla, una alarma acstica, etc. Estos dispositivos son los ms limitados en cuanto a capacidad de almacenamiento y procesamiento, pero son imprescindibles para proporcionarle a los usuarios servicios que tengan en cuenta el espacio fsico que le rodea y que le permitan actuar directamente sobre l. Suelen ser dispositivos estticos. En cuanto a los sensores, la tendencia actual es interconectarlos con protocolos inalmbricos, que faciliten colocarlos en cualquier lugar sin necesidad de cableado. Por este ltimo motivo estos dispositivos suelen funcionar gracias a bateras, la optimizacin de su uso es ms crtico en este caso debido a que cambiarlas o recargarlas no puede estar realizndose continuamente, por lo que el objetivo es conseguir que duren aos. Algunos sensores tambin emplean mecanismos inductivos para su funcionamiento, por ejemplo las smart labels transmiten la identificacin cuando un sistema lector se aproxima y le suministra la energa necesaria para transmitir esa informacin. En cuanto a los actuadores, es ms habitual que estn conectados a la red elctrica, y por lo tanto, a veces emplean sta como medio de transmisin para comunicarse con otros dispositivos. 3.2 Avances tecnolgicos para la computacin ubicua. El desarrollo en el campo de los materiales tambin es muy importante. Hay muchos desarrollos en nuevos materiales que ya son estables y usados actualmente, pero tambin hay otro tipo de materiales que est actualmente en pleno desarrollo y que pueden presentar grandes avances para la computacin ubicua: Displays flexibles: pantallas formadas por lminas de plstico muy planas, flexibles y plegables. Tinta electrnica y papel inteligente: que pretenden conseguir que el bolgrafo y el papel se conviertan en dispositivos verdaderamente mviles. Fibra ptica: ha aumentado la capacidad de las lneas de comunicaciones hasta poder establecer transmisiones de hasta Gigabits por segundo. Tecnologa de redes inalmbrica. Redes de rea personal: ofrece la creacin de pequeas redes alrededor de los usuarios. Sensores: El campo de los sensores tambin se ha desarrollado bastante en los ltimos tiempos, tanto tecnolgicamente como fsicamente por el reducido tamao que se ha conseguido en estos sensores. Algunos de estos avances son: Cmaras y micrfonos de muy reducido tamao acompaado de reconocimientos de patrones y de tcnicas de reconocimiento de voz ,detectores de huellas digitales en objetos mviles y sensores de localizacin Dispositivos RFID: dispositivos para identificacin por radiofrecuencia sin necesidad de contacto con el lector.

1. Escenarios ubicuos
3.1 Integracin de los dispositivos en nuevos escenarios Luego de haber clasificado y descripto los tipos de dispositivos, en el captulo 2, que comnmente forman parte de una red ubicua, se describirn algunos escenarios de ejemplo que se basan en la capacidad de movilidad de los dispositivos y en su ubicuidad. El segundo ejemplo, quizs un poco futurista, pero los retos tecnolgicos son abordables en poco tiempo. Seguimiento de personas Situamos el escenario en una guardera que ofrece un servicio especial a los padres de los nios que entran en una guardera. El servicio ofrecido, es que en todo momento los padres podrn ver a sus hijos mediante una pgina web, independientemente de donde se encuentren los pequeos. Cuando un cliente quiere comenzar a recibir vdeo, se realiza una conexin entre el cliente y el servidor de vdeo, que es el ordenador de la sala en la que se encuentra el nio en ese momento. Cuando el nio cambia de habitacin, hay que cambiar de servidor de la transmisin, para esto utilizamos el protocolo de Movilidad Mobile IP, teniendo en cuenta que en todo momento el servidor que enva el vdeo es el nodo mvil, aunque en este caso lo que se mueve no es el ordenador, pero podemos hacer una aplicacin para simular ese movimiento y hacer que la conexin entre el correspondiente nodo (cliente de la transmisin de vdeo) y el nodo mvil sea continua en todo momento. En realidad, en esta situacin, lo que se mueve realmente es una persona, y necesitamos alguna forma de localizar en todo momento a esa persona (el nio) para poder utilizar el ordenador de la sala actual como nodo mvil de la comunicacin mediante Mobile IP. Para localizar a esta persona se pueden utilizar varias tcnicas, una de ellas puede ser que la persona lleve consigo un dispositivo RFID, que transmite seales inalmbricas por radiofrecuencia y tener receptores en las salas para recibir estas seales y saber en cada momento donde se encuentra el nio. De este modo tenemos en todo momento localizado al nio y se puede utilizar el dispositivo de grabacin de la sala en la que se encuentre para envirsela a los padres. Hogar Se aproxima la fecha del viaje de Mara, y el trabajo no le deja ningn tiempo libre. Pero su PDA sabe que es necesario informar a algunos dispositivos de la casa de que Mara va a pasar fuera unas cuantas semanas, as que lo anuncia al entorno. La heladera al recibir este anuncio realiza un chequeo de la comida que contiene, todos los

productos poseen una smart label2 que los identifica y adems almacena la fecha de caducidad, algunos de ellos es preciso consumirlos antes de su viaje, as que emplea su conexin a Internet para ofrecerle a Mara unas posibles cenas que le permitan consumirlos, la heladera no tiene display pero sabe que Mara siempre enciende la tele de la cocina antes de ponerse a cocinar as que le manda un mensaje a travs de ella, y si Mara lo desea le enviar tambin algunos de sus sugerencias para la cena de hoy. La PDA3 tambin informa a la calefaccin los das que Mara no va a estar en casa, para que se desconecte siempre que la temperatura no baje de O grados. La calefaccin detecta que hay una serie de sensores de temperatura en las habitaciones y los configura para que le comuniquen cuando la temperatura baja de ese valor. Adems, para que Mara no encuentre su casa muy destemplada, dos das antes de su regreso se activar como habitualmente y de esta forma la casa estar a una temperatura adecuada sin realizar un gasto energtico excesivo. A Mara le preocupa mucho que alguien note su ausencia en casa, as que ha configurado la televisin para que se encienda un rato todas las noches, adems la televisin cuando se activa se pone en contacto con las luces para que estas se enciendan tambin y as parezca ms real que hay alguien en casa. Adems las persianas se suben y se bajan segn los horarios habituales de Mara, con lo que es ms difcil detectar su ausencia.

4. Tecnologas middleware de sistemas ubicuos.


4.1 Definicin y caractersticas de middleware. Middleware es un software de computadora que conecta componentes de software o aplicaciones para que puedan intercambiar datos entre stas. Es la interface entre el ncleo de red y las aplicaciones. Es la capa que se encuentra entre la red y las aplicaciones ubicuas, muestra un escenario uniforme para el desarrollo de aplicaciones ubicuas y permite integrar los distintos dispositivos y logra una la comunicacin con aplicaciones de forma espontnea y transparente. El middleware utiliza las infraestructuras de red para integrar los distintos sistemas, tomando en cuenta criterios tcnicos, estratgicos y econmicos, haciendo uso de la informacin del contexto y decidiendo que infraestructura usar, como usarla y cuando comunicar. Los aspectos tcnicos tienen que ver con la disponibilidad de las infraestructuras de comunicacin y sus capacidades. Los aspectos estratgicos tienen que ver con los distintos grados de prioridad de los datos producidos y el aspecto econmico con los costes de la comunicacin dependiendo que infraestructura se use El middleware proporciona informacin de contexto a las aplicaciones para la toma de decisiones de forma espontnea. De esta manera las aplicaciones realizan sus tareas en el sistema de forma transparente utilizando una interface uniforme. 4.2 Principales mdulos que componen las tecnologas middleware de los sistemas ubicuos. En el captulo 3 se detallaron posibles escenarios de un sistema ubicuo, en los dos ejemplos se poda apreciar la clara integracin que debe existir entre los dispositivos, los cuales deben operar de manera tal que el entorno se adapte al usuario final de forma transparente. El usuario no debe preocuparse como trabajan los sensores, inclusive ni siquiera necesita saber que existen tales componentes. La tecnologa debe centrarse en proporcionar servicios adaptados al usuario, y por lo tanto, el modelo de aplicaciones en computacin ubicua debe orientarse a proporcionar y componer servicios personalizados. Con esta nueva forma de abordar el problema del desarrollo de servicios y segn la clasificacin de los dispositivos realizado en el captulo 2 existen una serie de componentes software(mdulos) comunes a todos los tipos de dispositivos, el objetivo del middleware es que cada mdulo compartido debe funcionar del mismo modo en cada uno de ellos y por lo tanto, permitir la interoperabilidad, sin limitar la flexibilidad a la hora del desarrollo de nuevos servicios. As, estos mdulos comunes son:

Descubrimiento y/o anuncio de servicios.

Debido al dinamismo de los entornos y al mayor nmero y diversidad de dispositivos que aparecen y que pueden ofrecer y demandar servicios, existen varias

soluciones planteadas para el descubrimiento y anuncio de servicios, algunas de las propuestas estn ligadas a un protocolo de red, otras se definen sobre IP, y otras forman parte de la arquitectura de un framework4 de desarrollo de servicios en entornos dinmicos, por lo que su utilizacin est muy ligada a la forma en la que se desarrollan y se proporcionan estos servicios .El descubrimiento de servicios, permite que los diferentes dispositivos que ofrecen diversos servicios sepan qu servicios ofrecen los dems y de esta forma interaccionar para ofrecer nuevas aplicaciones al usuario. Configuracin. Los protocolos de descubrimiento de servicios estn muy relacionados con el intento de minimizar las configuraciones que debe realizar un usuario en un dispositivo para poder conectarse a una red y acceder a los servicios que en ella se ofrecen , para conseguir la transparencia de la tecnologa, uno de los retos bsicos que existen en computacin ubicua. Seguridad. Herramientas para proporcionar seguridad en la gestin de redes y proteger los objetos gestionados. La gestin de la seguridad incluye facilidades de proteccin de la informacin administrada y herramientas de control de acceso, como generar, distribuir o almacenar claves de cifrado. Tambin se ocupa de la monitorizacin y el acceso bajo control a la red y acceso a toda o parte de la informacin de administracin obtenida de los dispositivos. Adems de los mdulos genricos que deben prestar las tecnologas middleware, luego deben existir mdulos que dependen del tipo de dispositivo que estn manipulando, por ejemplo un componente software que tenga en cuenta la gestin de perfiles y preferencias, esto es intil para sensores pero si amplan las prestaciones de dispositivos mviles y especficos. Otro mdulo para este tipo de dispositivos son aquellos orientados a la personalizacin de servicios y sincronizacin. 4.2 Consideraciones para el desarrollo e implantacin de tecnologas middleware de un sistema ubicuo. Para definir esta serie de mdulos que sern tecnologas bsicas para la realizacin de un middleware que dar soporte al desarrollo de servicios en entornos de computacin ubicua, es necesario tener en cuenta las restricciones que impone el entorno, las caractersticas hardware/software que tienen los nuevos dispositivos y las caractersticas de los diferentes protocolos de red que se emplean. En cuanto a los entornos, la caracterstica fundamental es que son muy dinmicos y cambiantes. Por ejemplo en un hogar los electrodomsticos pueden estar interconectados a una red, probablemente cableada y adems los elementos que la forman son ms o menos estables. En cambio en un aeropuerto, los elementos con los que se pueden interaccionar un usuario dependern en buena medida de su posicin. Adems del entorno los dispositivos pueden estar embebidos, ser personales, servicios de terceros, etc. Es necesario que las tecnologas middleware aporten soluciones que se adapten a ambas situaciones, y puedan adaptarse tanto a entornos dinmicos como estticos. En cuanto a los dispositivos, la caracterstica fundamental es su heterogeneidad y las limitaciones de algunos de ellos. Existen los escenarios que se componen de dispositivos personales, como un PDA o telfono mvil, que poseen interfaces amigables para el usuario, que funcionan con bateras y emplean para comunicarse

protocolos inalmbricos; hasta dispositivos fijos, con conexin a red fija y sin interfaz como su nevera, hasta los ms limitados como son los sensores de temperatura. Por lo tanto, a la hora de definir tecnologas middleware que deben proporcionarse en todos ellos, debemos proponer soluciones simples y flexibles que sean factibles de implementar hasta en los ms limitados dispositivos. En cuanto a los protocolos de red, la caracterstica fundamental es su heterogeneidad y sus diferentes prestaciones en cuanto ancho de banda, calidad de la transmisin y conectividad. En un hogar, los electrodomsticos pueden estar conectados empleando una red fija de alta velocidad, pero un PDA, telfono mvil, y sensores situados emplean protocolos inalmbricos, que se caracterizan por: Calidad cambiante de las transmisiones, debido a los errores en la interfaz radio. Conectividad no transitiva, debido al corto alcance de algunos protocolos y a la dificultad de imponer soluciones de encaminamiento de mltiples saltos. Coste de comunicacin, debido fundamentalmente al coste de bateras que supone la transmisin. Por lo tanto, las soluciones deben intentar minimizar el nmero y cantidad de transmisiones a realizar, de manera que las soluciones propuestas sean eficientes tanto en redes fijas como en redes mviles. Los servicios proporcionados en entornos ubicuos deben estar orientados a realizar las tareas que desea el usuario, es necesario tambin que tengan las siguientes caractersticas: Autonoma propia para poder alcanzar los objetivos que quiere el usuario, pero sin necesidad de interaccionar continuamente con l. Capacidad de cooperar con otros sistemas para poder obtener informacin o ejecutar tareas que las limitaciones del dispositivo no les permiten realizar de forma local. Movilidad para poder ejecutarse en los sistemas que tengan la informacin localmente, de forma que se minimice el nmero de transmisiones, se compensen las limitaciones de los protocolos inalmbricos y no se dependa de protocolos de encaminamiento multisalto. 4.3 Descubrimiento y anuncio dinmico de servicios. Luego de haber detallado los mdulos y consideraciones que se deben tener en cuenta en el desarrollo de una solucin ubicua, profundizaremos sobre uno de los mdulos que es el: descubrimiento y anuncio dinmico de servicios y se dar un ejemplo sobre una tecnologa que presta tales servicios llamada PDP. En entornos de computacin ubicua es imprescindible proporcionar un mecanismo de descubrimiento y anuncio de servicios, debido al dinamismo de estos entornos y al mayor nmero y diversidad de dispositivos que aparecen y que pueden ofrecer y demandar servicios. Adems, la distancia en estos escenarios es importante, a medida que un dispositivo se aleja de una zona, las interacciones con sus vecinos deben decaer a su vez. Por ejemplo, no es deseable que sigamos intercambiando mensajes con un sensor de temperatura cuando hemos abandonado la sala en la que se encuentra. Los protocolos de descubrimiento de servicios que han aparecido en los ltimos aos, han tenido en cuenta la movilidad de los dispositivos que forman la red, pero la mayora

no han considerado las limitaciones tanto hardware como software de stos, ni la posibilidad de que la redes ad-hoc que se forman entre ellos de manera espontnea cuando se aproximan unos a otros, no incluyan ningn elemento fijo sin limitaciones, tipo PC. En general, estos protocolos se pueden aplicar tanto a mbitos locales como globales, algunos de ellos, tienen versiones adaptadas para cada caso. Para mbitos globales, por escalabilidad del protocolo, aparece un directorio de servicios en el que los que ofrecen servicios se registran y al que los que demandan servicios preguntan cuando quieren encontrar algn servicio determinado. En entornos de computacin ubicua, el problema de escalabilidad no es prioritario debido al mbito local de aplicacin, y adems no es posible que existan servidores centrales, ya que las redes son muy dinmicas y en algunos casos, los dispositivos que las forman tienen capacidades de almacenamiento limitadas, por lo que es muy costoso que uno de ellos afronte el papel de servidor. Los protocolos para mbitos locales, no emplean servicio de directorio, pero realizan un uso excesivo de transmisiones para permitir que los clientes, en busca de un servicio, lo busquen en la red o para que los que proporcionen servicios se anuncien peridicamente. Esto supone un gran coste de bateras, recurso muy crtico en la mayora de dispositivos limitados. El mecanismo ms empleado para minimizar transmisiones en soluciones distribuidas es el uso de cachs, en las que cada dispositivo de forma local almacena las descripciones de servicios escuchadas anteriormente en la red, de manera que cuando se busca un servicio, antes de transmitir el mensaje de bsqueda, se comprueba si existe en la cach y si es as, no se realiza ninguna transmisin. El problema que plantea el uso de cachs es que algunas de las entradas almacenadas se correspondan con servicios falsos, es decir, con servicios que ya no existen en la red. Este problema es mayor en entornos dinmicos, por lo que estos errores deben minimizarse introduciendo mecanismos de consistencia de cachs que no aumenten en exceso el trfico generado. 4.3.1 PDP: Pervasive Discovery Protocol. 4.3.1.1 Caractersticas generales de PDP. PDP (Pervasive Discovery Protocol) es una tecnologa que se diseo con el objetivo de definir un algoritmo de descubrimiento de servicios que se adapte a entornos de computacin ubicua, y su diseo se ha basado en alcanzar los siguientes objetivos: Minimizar el nmero de transmisiones Para que se adapte a las restricciones de los protocolos inalmbricos y reduzca el consumo de batera de los dispositivos limitados. Funcionar sin infraestructura fija Para que pueda funcionar en redes ad-hoc en la que los dispositivos entran y salen de forma espontnea, y en las que el funcionamiento de la red no depende de ningn elemento central que precise administracin. Adaptarse tanto a entornos dinmicos como estticos Para que pueda obtener las mejores prestaciones adaptndose al entorno en el que se encuentra y a las caractersticas de los dispositivos que lo forman, por ejemplo, si existen dispositivos con menores limitaciones, tipo PC, que el funcionamiento del protocolo se apoye ms en ellos. Adaptarse a las caractersticas de las aplicaciones Para que se puedan obtener mejores prestaciones teniendo en cuenta las

necesidades de las aplicaciones que realizan las bsquedas de servicios en la red, y que son, en ltima instancia, las que hacen uso del protocolo. Maximizar la cooperacin entre los dispositivos Para que puedan obtener un mayor beneficio reduciendo el coste, ya que si cada uno comparte con los dems la informacin sobre los servicios que ha descubierto o avisa de los que ya no estn disponibles en la red, la visin del entorno que tiene cada uno de ellos ser ms acertada. Simple y poco costoso computacionalmente 4.3.1.2 Detalles sobre el funcionamiento de PDP. PDP es un protocolo de descubrimiento de servicios de mbito local, totalmente distribuido, cuyo funcionamiento no depende de directorios. Los servicios se descubren bajo demanda, es decir, hasta que algn dispositivo lo solicite no se transmite por la red un mensaje indicando la localizacin del servicio. Todos los mensajes, incluidos los de respuesta, se transmiten por difusin de tal forma que los dems dispositivos aunque no hayan solicitado el servicio, pueden conocer la existencia de ste. Cada dispositivo almacena en una cach local los servicios que va escuchando. La informacin almacenada en esta cach se consulta cada vez que una aplicacin de usuario solicita un servicio, con el objetivo de minimizar el nmero de transmisiones necesarias para satisfacer la bsqueda. La base fundamental del protocolo es que, la informacin que almacena cada dispositivo en su cach se comparte entre todos los dispositivos que forman la red, para que de esta forma todos tengan una visin acertada de los servicios que se ofrecen en el entorno con un mnimo coste. Esta idea se basa en el hecho de que la unin de la informacin almacenada en cada una de esas cachs, contiene la misma informacin que tendra un directorio de servicios, pero en este caso est distribuida entre todos los dispositivos de la red. Adems, cuando se transmiten peticiones de bsqueda, los dispositivos incluyen los servicios ya conocidos y almacenados en sus cachs, de tal forma que slo responden los dispositivos que conocen nuevos servicios. Para minimizar el nmero de mensajes de respuesta transmitidos, se prioriza que responda primero el dispositivo que conoce ms servicios nuevos. El protocolo distingue tres tipos de aplicaciones segn el tipo de bsquedas que realizan: Aplicaciones que quieren localizar algn dispositivo que ofrece un determinado servicio, pero sin importar cul es el dispositivo que lo ofrece. Por ejemplo, si queremos conocer la temperatura de un sala y en ella existen varios sensores de temperatura, nos da igual cul de ellos nos proporciona esta informacin. Aplicaciones que quieren localizar todos los dispositivos que ofrecen un determinado servicio en el entorno, para elegir cul es el que mejor se adapta a sus necesidades. Por ejemplo, si queremos imprimir un documento, nos gustar saber qu impresoras existen en nuestro entorno para seleccionar una de ellas, por ejemplo, la que imprime en color y a doble cara. Aplicaciones tipo buscador, que quieren localizar todos los servicios que se ofrecen en la red.

4.3.1.3 Escenario de aplicacin de un sistema ubicuo con PDP. Consideramos que en un entorno de computacin ubicua, existen D dispositivos formando una red, cada uno de ellos ofrece S servicios, que mantiene almacenados de forma local, y espera estar disponible en el entorno durante T segundos. Este tiempo T, denominado tiempo de disponibilidad, est previamente configurado en el dispositivo y depende de sus caractersticas de movilidad. Cada dispositivo tiene un Agente de Usuario PDP, denominado PDPUA (PDP User Agent) y un Agente de Servicio, denominado PDPSA (PDP Service Agent). El PDPUA es un proceso que emplean las aplicaciones de usuario para buscar los servicios ofrecidos en la red. El PDPSA es un proceso que da a conocer los servicios ofrecidos por un dispositivo. El PDP_SA siempre incluye el tiempo de disponibilidad del dispositivo en sus anuncios. Cada dispositivo tiene una cach, que contiene una lista de los servicios que han sido anunciados en la red. Cada elemento de esta cach tiene dos campos: Descripcin del servicio y tiempo de expiracin. El tiempo de expiracin es el tiempo estimado que el servicio permanecer disponible en la red y se calcula como el mnimo entre el tiempo de disponibilidad local (del dispositivo donde se almacena), y el tiempo de disponibilidad del dispositivo que lo anuncia. Cuando finaliza su tiempo de expiracin las entradas se borran de la cach.Si un dispositivo tiene varias interfaces de red, por ejemplo, IEEE 802,llb y Bluetooth, tendr una cach asociada a cada interfaz de manera independiente, de manera que en esa cach slo se almacenan servicios que han sido anunciados en esa interfaz de red. PDP tiene dos mensajes obligatorios: PDPService_Request, que se emplea para enviar peticiones de bsqueda de servicios, y PDP_ServiceReply, que se utiliza para responder a PDP_ServiceRequest y permite anunciar los servicios disponibles en la red. En PDP se define el mensaje opcional PDPServiceJeregister, que permite informar a los dispositivos de la red que un servicio ya no est disponible. Cuando una aplicacin o el usuario final de un dispositivo necesita un servicio de un tipo determinado, se lo solicita a su PDPUA. Los PDP_UAs en todos los dispositivos estn continuamente escuchando todos los mensajes PDP transmitidos por la red, tanto de peticiones como de respuesta, para actualizar sus cachs con los servicios incluidos en ellos. Un PDPSA es el encargado de anunciar los servicios disponibles en un dispositivo, debe procesar mensajes PDP_Service_Request y generar el correspondiente PDPService_Reply cuando proceda. Un PDPSA para responder a una peticin de servicio, consulta la lista de servicios locales y los servicios almacenados en la cach asociada al mismo interfaz de red por el que ha recibido el correspondiente PDP_Servi ce_Request. Para minimizar el nmero de transmisiones, el PDPSA tiene en cuenta el tipo de bsqueda que le ha solicitado el PDP.UA remoto. Cuando un PDPSA recibe un PDPServiceRequest ,comprueba si el servicio solicitado es uno de sus servicios locales. Si es as, genera un PDP_Service_Reply y retarda su envo un tiempo aleatorio inversamente proporcional al tiempo de disponibilidad del dispositivo. Durante este tiempo, si escucha que otro dispositivo responde a esa misma bsqueda, descarta su mensaje de respuesta, porque la aplicacin remota slo va a tener en cuenta la primera respuesta recibida. Si el temporizador expira sin que se hayan producido respuestas en la red, el PDPSA enva su PDPServiceReply. De esta forma, el algoritmo permite que respondan primero los dispositivos que van a permanecer ms tiempo en la red.

En ciertos casos, es posible detectar cuando un dispositivo va a cambiar de red o apagarse. Si es as, el PDPSA del dispositivo tiene que borrar todas las entradas de la cach del dispositivo y enviar un PDPServiceiJeregister, listando todos sus servicios locales, de tal forma que los PDP_UA, que escuchen estos mensajes, deben eliminar de sus cachs estos servicios. Cuando una aplicacin intenta acceder a un servicio obtenido en una bsqueda y comprueba que no est disponible, debe borrarlo de la cach del dispositivo y comunicrselo a su PDPSA. 4.4 Investigaciones sobre prestaciones a cubrir por tecnologas middleware de sistemas ubicuos. Las tecnologas middleware que componen a un sistema ubicuo, deben facilitar el desarrollo de servicios y aplicaciones del entorno, en concreto deben cubrir mnimamente las siguientes prestaciones: Soporte para la ejecucin de aplicaciones en dispositivos limitados. Soporte para desarrollar servicios teniendo en cuenta el contexto y localizacin del usuario

Existen diversos proyectos e investigaciones sobre ambos soportes, a continuacin abordaremos sobre dos en particular, que han agregado valor al middleware de sistemas ubicuos desarrollando ambos soportes anteriormente nombrados. One.world : Este proyecto se centra en proporcionar una arquitectura para computacin ubicua. Esta arquitectura se basa en una serie de abstracciones para separar los datos de la funcionalidad. As una aplicacin almacena e intercambia datos utilizando tupias5 y est compuesta por componentes que implementan la funcionalidad asociada. Las aplicaciones tienen al menos un entorno en el que almacenan tupias y en el que sus componentes se instancian. La arquitectura adems de dar soporte para desarrollar aplicaciones segn este modelo, incluye una serie de servicios bsicos: operaciones que ayudan a la gestin de operaciones asncronas, migracin que permite mover o copiar un entorno de un dispositivo a otro, punto de chequeo que permite almacenar el estado de ejecucin de una tarea en una tupia para poder recuperarlo despus de una migracin, Remote Event Passing(REP) que permite enviar eventos a servicios remotos, que es el proceso de comunicacin bsico que se emplea en one.world y por ltimo, descubrimiento que permite encaminar eventos a servicios de los que no se conoce su localizacin. Aura: Este proyecto tiene como objetivo crear una arquitectura software de computacin ubicua que se adapte al contexto y a las necesidades del usuario de forma invisible, es decir, que su interaccin con la tecnologa embebida en el entorno sea mnima, de manera que no lo distraiga de sus tareas habituales. Aura se ha desarrollado para un entorno ubicuo en el que interaccionan dispositivos personales, dispositivos embebidos y dispositivos empleando protocolos de comunicacin inalmbricos. En Aura se trabaja con dos conceptos fundamentales: el primero se denomina proactivity (proactividad), que es la capacidad que tienen las capas del sistema para anticiparse a las peticiones realizadas a alto nivel, el segundo se denomina self-tuning (autoajuste), que consiste en que las capas adaptan su consumo de recursos y su rendimiento a las peticiones y uso que se estn haciendo de ellas. Teniendo como base

estos conceptos han definido un arquitectura para dispositivos limitados con las siguientes capas: Kernel basado en Linux. Odyssey, que permite controlar recursos y da soporte a la adaptacin de las aplicaciones al contexto. Coda, que proporciona acceso a archivos adaptados las diferentes condiciones de ancho de banda de la conexin inalmbrica, a la movilidad de los dispositivos y que permite operacin desconectada. Spectra, que proporciona un mecanismo de ejecucin remoto que emplea el contexto del usuario para decidir cul es la mejor forma de ejecutar la peticin remota realizada. Prism, que permite capturar y gestionar las intenciones de los usuarios y es una capa por encima de la de aplicacin. Tanto Odissey como Coda eran sistemas existentes desarrollados para entornos de computacin mvil, que se han modificado para operar bajo las restricciones que impone los entornos de computacin ubicua. La capa Prism es la capa en la que estn centrando sus ltimas investigaciones. En Aura para aumentar las capacidades de los dispositivos limitados se emplea lo que se denomina cyber foreigrt que son tpicamente PCs que se embeben en los entornos por los que se mueve el usuario y que los dispositivos limitados emplean para delegar ciertas tareas en ellos y a travs de los que se conectan a Internet. Dentro del proyecto Aura se han realizado tambin desarrollos orientados a lo que se denominan advisor devices (dispositivos consejeros) para proporcionar informacin de las condiciones de la red, y a lo que se denomina people locator (localizadores de personas) que permiten ofrecer servicios teniendo en cuenta la localizacin y el contexto del usuario. Ambos trabajos se han realizado para el protocolo inalmbrico IEEE 802.11.

You might also like