encuentro de investigadores y docentes de...

13
Escritorio Remoto Orientado a Objetos para dispositivos móviles en redes de área amplia inalámbricas Rafael Asprilla Universidad de Panamá , Facultad de Informática, Electrónica y Comunicación [email protected] Introducción Hoy en día las redes inalámbricas y los dispositivos móviles son el principal interés de los usuarios, esto se debe a la movilidad que poseen. Pero hay algunas limitaciones que necesitan atención, una de ellas es la potencia de procesamiento que afecta directamente al rendimiento. Una forma de solucionar estos problemas es utilizando virtualización y tecnologías de escritorio remoto para descargar el procesamiento del dispositivo móvil a una nube de servidores. Tres métodos de abstracción de la pantalla remota pueden ser identificados a partir del trabajo de Baratto et al.,[1]: Escritorio Remoto a bajo nivel donde los datos se envían píxel por píxel del servidor al cliente ligero (Figura 1a). Escritorio Remoto utilizando primitivas de vídeo donde el servidor analiza cuales primitivas están contenidas en el vídeo y luego el cliente ligero reconstruye la pantalla (Figura 1b). Escritorio Remoto orientado a objetos donde el cliente ligero es capaz de administrar localmente todos los objetos gráficos. En esta investigación se pretende probar que la utilización del método de escritorio remoto orientado a objetos sobre una nube de virtualización en una WAN inalámbrica tiene un rendimiento similar al de una PC corriendo software localmente. Para esto utilizaremos los conceptos propuestos en Lau et al.,[2] y Satyanarayanan et al.,[3]. Solución Propuesta y Metodología La solución que proponemos (Figura 3) para resolver los problemas de rendimiento en tiempo de ejecución de aplicaciones complejas en dispositivos móviles es la implementación de una nube de servidores de virtualización distribuida través de una WAN inalámbrica; para trabajar escritorios remotos en dispositivos móviles. Dividiendo la complejidad del software en piezas de código para cada tarea, las cuales serán utilizadas bajo el concepto de código bajo demanda (Figura 2) podremos mejorar los tiempos de ejecución de las aplicaciones. También hemos pensado en la distribución de los clústeres de servidores a través de la nube, distribuyendo la carga de trabajo de todas las máquinas virtuales en la red. La solución propuesta es una investigación experimental y donde se creará una red de pruebas, se desarrollará software que permitirá realizar algunas pruebas sobre el rendimiento en tiempo de ejecución de las aplicaciones en la red de virtualización con dispositivos móviles como tabletas y teléfonos móviles de última generación. La variable que se estará estudiando será el tiempo de ejecución de las aplicaciones complejas en un ambiente de virtualización vs. la ejecución en un computador normal. REFERENCIAS [1] R. A. Baratto, J. Nieh, and L. Kim, “THINC : A Remote Display Architecture for Thin-Client Computing,” Technical Report, 2004. [2] F. C. M. Lau, N. Belaramani, V. W. M. Kwan, P. P. L. Siu, W. K. Wing, and C. L. Wang, “Code-on-demand and code adaptation for mobile computing,” pp. 2–21. [3] M. Satyanarayanan, N. Davies, P. Bahl, and R. Cáceres, “The Case for VM-Based Cloudlets in Mobile Computing,” Pervasive computing, pp. 14–23, 2009. Beneficios y Resultados Esperados El objetivo es obtener un rendimiento en tiempo de ejecución de los dispositivos móviles al utilizar aplicaciones complejas parecido al de una portátil o PC pero con la ventaja de una mayor movilidad. A partir del desarrollo de esta red esperamos obtener la base para un servicio de virtualización de aplicaciones en red de virtualización tipo nube distribuida para dispositivos móviles. Se espera crear una plataforma de desarrollo para aplicaciones de nube, para dispositivos móviles o fijos que permita que nuevo software pueda ser creado y así brindar mayor cantidad de servicios. Para realizar las mediciones de rendimiento se pretende crear una herramienta que mida los tiempos de ejecución de aplicaciones en la nube, al finalizar este proyecto esperamos poder exportar esta aplicación como herramienta para futuras investigaciones en el área. Figura1: (a) Escritorio Remoto a nivel de bits (framebuffer). (b) Escritorio Remoto usando primitivas de vídeo. (a) (b) Figura 2: Esquema de aplicaciones de Código bajo Demanda Figura 3: Nube de virtualización propuesta

Upload: others

Post on 20-Feb-2020

15 views

Category:

Documents


0 download

TRANSCRIPT

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

Escritorio Remoto Orientado a Objetos para dispositivos móviles en redes de área amplia

inalámbricasRafael Asprilla

Universidad de Panamá , Facultad de Informática, Electrónica y Comunicación

[email protected]

Introducción

Hoy en día las redes inalámbricas y los dispositivos móviles son el principal interés de los usuarios, esto se debe a la movilidad que poseen. Pero hay algunas limitaciones que necesitan atención, una de ellas es la potencia de procesamiento que afecta directamente al rendimiento. Una forma de solucionar estos problemas es utilizando virtualización y tecnologías de escritorio remoto para descargar el procesamiento del dispositivo móvil a una nube de servidores.

Tres métodos de abstracción de la pantalla remota pueden ser identificados a partir del trabajo de Baratto et al.,[1]:

Escritorio Remoto a bajo nivel donde los datos se envían píxel por píxel del servidor al cliente ligero (Figura 1a).Escritorio Remoto utilizando primitivas de vídeo donde el servidor

analiza cuales primitivas están contenidas en el vídeo y luego el cliente ligero reconstruye la pantalla (Figura 1b). Escritorio Remoto orientado a objetos donde el cliente ligero es

capaz de administrar localmente todos los objetos gráficos.

En esta investigación se pretende probar que la utilización del método de escritorio remoto orientado a objetos sobre una nube de virtualización en una WAN inalámbrica tiene un rendimiento similar al de una PC corriendo software localmente. Para esto utilizaremos los conceptos propuestos en Lau et al.,[2] y Satyanarayanan et al.,[3].

Solución Propuesta y Metodología

La solución que proponemos (Figura 3) para resolver los problemas de rendimiento en tiempo de ejecución de aplicaciones complejas en dispositivos móviles es la implementación de una nube de servidores de virtualización distribuida través de una WAN inalámbrica; para trabajar escritorios remotos en dispositivos móviles.

Dividiendo la complejidad del software en piezas de código para cada tarea, las cuales serán utilizadas bajo el concepto de código bajo demanda (Figura 2) podremos mejorar los tiempos de ejecución de las aplicaciones. También hemos pensado en la distribución de los clústeres de servidores a través de la nube, distribuyendo la carga de trabajo de todas las máquinas virtuales en la red.

La solución propuesta es una investigación experimental y donde se creará una red de pruebas, se desarrollará software que permitirá realizar algunas pruebas sobre el rendimiento en tiempo de ejecución de las aplicaciones en la red de virtualización con dispositivos móviles como tabletas y teléfonos móviles de última generación. La variable que se estará estudiando será el tiempo de ejecución de las aplicaciones complejas en un ambiente de virtualización vs. la ejecución en un computador normal.

REFERENCIAS

[1] R. A. Baratto, J. Nieh, and L. Kim, “THINC : A Remote Display Architecture for Thin-Client Computing,” Technical Report, 2004.

[2] F. C. M. Lau, N. Belaramani, V. W. M. Kwan, P. P. L. Siu, W. K. Wing, and C. L. Wang, “Code-on-demand and code adaptation for mobile computing,” pp. 2–21.

[3] M. Satyanarayanan, N. Davies, P. Bahl, and R. Cáceres, “The Case for VM-Based Cloudlets in Mobile Computing,” Pervasive computing, pp. 14–23, 2009.

Beneficios y Resultados Esperados

El objetivo es obtener un rendimiento en tiempo de ejecución de los dispositivos móviles al utilizar aplicaciones complejas parecido al de una portátil o PC pero con la ventaja de una mayor movilidad.

A partir del desarrollo de esta red esperamos obtener la base para un servicio de virtualización de aplicaciones en red de virtualización tipo nube distribuida para dispositivos móviles.

Se espera crear una plataforma de desarrollo para aplicaciones de nube, para dispositivos móviles o fijos que permita que nuevo software pueda ser creado y así brindar mayor cantidad de servicios.

Para realizar las mediciones de rendimiento se pretende crear una herramienta que mida los tiempos de ejecución de aplicaciones en la nube, al finalizar este proyecto esperamos poder exportar esta aplicación como herramienta para futuras investigaciones en el área.

Figura1: (a) Escritorio Remoto a nivel de bits (framebuffer). (b) Escritorio Remoto usando primitivas de vídeo.

(a) (b)

Figura 2: Esquema de aplicaciones de Código bajo Demanda

Figura 3: Nube de virtualización propuesta

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

Escritorio remoto orientado a objetos para dispositivos móviles en redes de área amplia inalámbricas

Rafael Asprilla,

Universidad de Panamá , Facultad de Informática, Electrónica y Comunicación, Campus Octavio Méndez Pereira, Bella Vista, Panamá

[email protected]

Resumen. Los dispositivos móviles, como las computadoras tipo tableta y los teléfonos inteligentes son cada vez más populares en estos días. Las aplicaciones que se ejecutan en ellos son muy limitadas debido a que las interfaces de usuario demandan muchos recursos y además existen muchas limitaciones de procesamiento. Las aplicaciones de estos dispositivos suelen ser muy simples con una única tarea y la mayoría del tiempo de procesamiento se utiliza para la interfaz hombre-máquina y procesamiento de señales digitales. Aplicaciones más complejas experimentan algunos retrasos en el rendimiento debido a las limitaciones de recursos de los dispositivos móviles. También la pérdida de datos debido a dispositivos móviles perdidos reduce la fiabilidad de estos aparatos. Un enfoque para aumentar el rendimiento en el procesamiento y la seguridad de los datos es el uso de la virtualización y las tecnologías de escritorio remoto. En este documento se propone un proyecto de investigación para desarrollar un esquema de pantalla remota utilizando orientación a objetos para dispositivos móviles utilizando una nube de servidores de virtualización con acceso a través de una red de área amplia inalámbrica.

Abstract. Mobile devices like tablets and smart phones are becoming increasingly popular these days, applications running on them are extremely limited due to very resource demanding user interfaces and processing constraints. Applications on these devices are usually very simple with a single task and most of the processing power is used for human interface and digital signal processing. More complex applications experience some performance lags due to the resource limitations of mobile devices. Also data loss because of misplaced mobile devices reduces the reliability of these gadgets. An approach to increase processing performance and security of data is to use virtualization and remote display technologies. In this document is proposed a research project to develop an object-oriented remote display on mobile devices and virtualization over a cloud virtualization server accessed through a wireless wide area network.

Palabras Clave: virtualización, computación ubicua, dispositivos móviles, WAN inalámbricas.

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

1 Introducción

Las tecnologías de visualización remota permiten a un usuario de una red virtualización tener acceso a una instancia de su máquina virtual (VM) que se encuentra en un servidor dentro de una LAN. Existen diferentes protocolos de visualización remota que ya están trabajando en redes de virtualización alrededor del mundo, por lo general estas redes de virtualización utilizan un servidor con un sistema operativo anfitrión y una capa de abstracción de software para la virtualización.

Los sistemas operativos huéspedes trabajan sin una pantalla local y la única manera de controlar su entorno gráfico es a través de la red. Las redes de área local tienen una gran cantidad de recursos disponibles para una cantidad muy limitada de usuarios. Generalmente el ancho de banda disponible en una LAN cableada es alta, las conexiones van de 100Mbps a 1Gbps y latencia de la red es realmente baja, ya que hay pocos saltos entre el servidor y el cliente ligero.

Hoy en día las redes inalámbricas y los dispositivos móviles son el principal interés de los usuarios, esto se debe a la capacidad de moverse sin cables conectados al equipo. Pero hay algunas limitaciones que necesitan atención, uno de ellos es la potencia de procesamiento que afecta directamente al rendimiento en tiempo de ejecución de los dispositivos móviles. El ahorro de energía es más importante que potencia computacional en los dispositivos móviles, además la mayoría del poder de procesamiento y el tiempo de ejecución son utilizados para manejar interfaces hombre-máquina (HMI).

Estas razones sugieren que necesitamos distribuir todas las tareas de una sola aplicación en varios equipos y procesarlas paralelamente con el fin de obtener los resultados en menor tiempo. Las redes de virtualización son muy utilizadas en la actualidad en las empresas, así que es fácil llegar a la conclusión de que podemos utilizar la virtualización para apoyar a las tareas de procesamiento de los dispositivos móviles.

Aún así algunos problemas deben resolverse antes de que esto se convierta en una realidad; en primer lugar está el hecho de que las conexiones inalámbricas no son estables, en segundo se encuentra el hecho de que el ancho de banda en las redes inalámbricas no es constante en todo el área de cobertura y en tercer lugar la información gráfica de los elementos visuales es demasiado grande para los recursos de red disponibles. Este artículo propone un esquema de red para abordar los problemas de rendimiento que los usuarios de dispositivos móviles pueden sufrir debido a limitaciones de diseño en los sistemas móviles.

Esta investigación se enfoca en reducir la cantidad de información requerida para el control de aplicaciones virtualizadas cuyo entorno gráfico se ejecuta en un dispositivo

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

móvil y el resto de la aplicación en una nube de virtualización. Tres métodos de abstracción de la pantalla remota pueden ser identificados a partir del trabajo de Baratto et al.,[1]:

En primer lugar está el método a bajo nivel donde los datos se envían píxel por píxel del servidor al cliente ligero.

El segundo método utiliza primitivas de vídeo donde un software en el servidor analiza los diferentes comandos o primitivas contenidas en la información de vídeo y luego las envía al cliente ligero para que reconstruya la pantalla.

El tercer nivel de abstracción es un esquema orientado a objetos para escritorios remotos donde el cliente ligero es capaz de administrar localmente todos los objetos gráficos y sólo requiere transferir la información derivada de los cálculos computacionales de las tareas solicitadas por el usuario.

Este documento se centra en el tercer nivel de abstracción. La investigación propuesta en este documento se basa en la evolución reciente de los sistemas operativos para dispositivos móviles y el software de virtualización. Esto sugiere que podemos mejorar el rendimiento en tiempo de ejecución de un dispositivo móvil utilizando una instancia de una máquina virtual (VM) ejecutada en un servidor de virtualización que contendrá todas las aplicaciones del usuario.

Las aplicaciones de usuario serán construidas por bloques de software que se juntan como un rompecabezas para armar aplicaciones más complejas con la capacidad de correr en una arquitectura de clúster de forma paralela. El dispositivo móvil luego sólo controlará los eventos de los elementos visuales, los cambios de atributos y las acciones de entrada del usuario. Esto reducirá la tasa de transferencia de datos entre el servidor de virtualización y el cliente ligero móvil debido a que sólo se necesita intercambiar datos de sincronización y llamadas de métodos y eventos causados por el servidor, dejando tareas como efectos visuales para ser manipulados por el cliente ligero móvil.

2 Trabajo Relacionado

En Baratto et al. [1], se hace referencia a algunas tecnologías de escritorio remoto. Tecnologías de visualización a distancia como el Remote Desktop Protocol (RDP) de Microsoft , Virtual Network Computing (VNC) y Citrix ICA se analizan ampliamente en este reporte técnico. En 2009, la Video Electronics Standard Association (VESA) publica Net2Display v1.0 [2], el primer estándar para la fabricación de clientes ligeros. Esta norma busca unificar el modo de operación de las diferentes tecnologías de clientes ligeros en una sola plataforma de desarrollo. La mayor parte de la atención de este estándar se centra en la arquitectura de los clientes ligeros y los protocolos de comunicación que utilizan.

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

Algunos trabajos de investigación se centran en los dos primeros métodos de abstracción de escritorios (Figuras 1 y 2). No se han encontrado trabajos de investigación o desarrollo relacionados el tercer método de abstracción de escritorios, la razón es la necesidad de modificar o crear un nuevo conjunto de software que se ejecute en una red de virtualización. En el caso de los dispositivos móviles donde se están creando nuevos programas y sistemas operativos cada día, que se adaptan mejor al hardware y el rendimiento y las

restricciones, el utilizar el método orientado a objetos es posible.

El concepto de pantalla remota para dispositivos móviles es un tema bastante nuevo, Simoens et al., [3] muestra un estado del arte en esta tecnología. Habla sobre todos los desafíos que se encuentran en tecnologías de pantalla remota en los dispositivos móviles. Pero esta idea no es nueva en lo absoluto, un sistema llamado Mobidesk [4] fue propuesto el 2004 y desde entonces varios otros. Tecnologías como Virtual Network Computing (VNC [5]) con su protocolo Remote Frame Buffer (RFB [6]) se han actualizado para ser compatibles con los dispositivos móviles tales como teléfonos móviles y PDA. En [7], [8], [9] VNC es ampliamente utilizado, pero todavía utiliza este sistema de primitivas de vídeo para la transferencia de los datos de las aplicaciones al escritorio remoto que se encuentra en el dispositivo móvil.

Nuestra investigación se centrará en el método de abstracción de escritorios orientado a objetos que describe en Baratto et al., [1], utilizando algunos conceptos de Java RMI [10] y el código bajo demanda (COD) que se describen en [11]. La topología de la red de virtualización se basa en la topología de computación en la nube, utilizando clústeres de servidores distribuidos a través de la red según lo descrito por Satyanarayanan et al., [12] y que pueden ser configurados para trabajar con una red de virtualización inalámbrica móvil.

Figura 1: Pantalla Remota a nivel de bits (framebuffer)

Figura 2: Pantalla Remota utilizando primitivas de vídeo.

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

3 Descripción del problema y Motivación

La percepción de ejecución en tiempo real y respuesta instantánea es una de las grandes preocupaciones de la industria informática, esto es fácil de realizar con la potencia de procesamiento que una computadora personal (PC) posee. Pero las PC consumen mucha energía, no se pueden mover mientras están operando y sus recursos no se utilizan de manera eficiente, han sido sustituidos en algunas redes corporativas por clientes ligeros, que permiten a los usuarios acceder una instancia de una máquina virtual desde cualquier terminal de la red local.

Las computadoras portátiles tampoco son eficientes con el consumo de energía, hasta hace poco cuando los procesadores para sistemas integrados reemplazan a los procesadores móviles y de escritorio dentro de ellos. Pero los procesadores para sistemas integrados tienen algunas limitaciones de rendimiento y la mayoría de ellos son de 32 bits que no funcionan muy bien con los nuevos sistemas operativos, pero su consumo de energía es muy bajo, permiten trabajar hasta 12 horas con baterías. Los dispositivos móviles construidos con tecnologías de sistemas integrados tienen un consumo de energía muy bajo, pero una capacidad de procesamiento limitada. Además la mayor parte del poder de procesamiento se utiliza para realizar las tareas de las HMI, reduciendo el tiempo de procesador y los recursos para manejar aplicaciones complejas. La computación ubicua es realmente importante en estos días, creando interfaces hombre-máquina de uso muy sencillo e intuitivo. Este tipo de interfaces requieren más recursos que los periféricos tradicionales. Hasta ahora los fabricantes han reducido los requerimientos de las aplicaciones para que su ejecución no sea un problema para los dispositivos móviles. Estas reducciones de requerimientos tienen como consecuencia la reducción de la complejidad de las aplicaciones comparadas con las que se encuentran en los equipos regulares.

Al igual que los clientes ligeros y las Netbooks que se construyen con sistemas integrados y su poder de procesamiento y recursos están limitados, los dispositivos móviles tienen restricciones similares. Los teléfonos celulares de última generación y las tabletas son los aparatos electrónicos de consumo más populares. Las aplicaciones para estos dispositivos son orientadas a tareas simples, utilizando pocos recursos a la vez, nuevas y más costosas versiones de dispositivos móviles vienen con más memoria y mejores procesadores, pero todavía no se comparan a una PC o una portátil y si lo hacen, el consumo de energía reduce la movilidad. El almacenamiento es muy limitado, se crea la necesidad de sincronizar todos los datos a menudo con una PC, portátil o mediante cualquier servicio de almacenamiento en línea. La seguridad y la integridad de los datos se ven comprometidos ya que si se pierde el dispositivo móvil se pierde la información de números de teléfono, libros electrónicos y otros archivos que no tienen copia de seguridad todavía. También las aplicaciones y los archivos comparten el mismo espacio de almacenamiento.

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

La virtualización parece resolver los problemas de rendimiento, seguridad y capacidad de almacenamiento en LAN. Esto reduce el consumo de energía debido al uso de clientes ligeros, aumenta la seguridad porque aun cuando una instancia de una VM se está ejecutando ningún otro usuario pueda acceder a ella porque no se está ejecutando localmente en el cliente ligero. El uso de Network Attached Storage (NAS) permite contar con espacio de almacenamiento ilimitado, ya que cualquier espacio de almacenamiento que tiene un usuario se puede aumentar en cualquier momento.

Teniendo todo esto en consideración y basados en los antecedentes podemos inferir que la virtualización puede ser una solución adecuada para los problemas de rendimiento de los dispositivos móviles. Este esquema proporciona múltiples ventajas para la computación móvil, ya que se convierte en una unión simbiótica de rendimiento y la movilidad no vista antes. La virtualización en las redes móviles es el objetivo final de esta tecnología, la computación ubicua en su máximo nivel. Pero hay algunos problemas que surgen cuando pensamos en el uso de esta tecnología de virtualización en redes inalámbricas.

Limitaciones que no están presentes en LAN cableadas son una realidad en las redes inalámbricas y móviles. En primer lugar el área de cobertura inalámbrica es mayor que el de una LAN, ya que los dispositivos móviles permiten al usuario moverse libremente sin cables. Las redes inalámbricas deben tener cobertura en una mayor cantidad de escenarios cafeterías, cajas de ascensores, estacionamientos, pasillos, etc.

Una vez que la cobertura área está definida tenemos que hablar entonces del ancho de banda, los diferentes escenarios que las redes inalámbricas cubren tienen diferentes formas por lo tanto el ancho de banda no es igual en diferentes lugares dentro del área de cobertura. Más aún podemos experimentar la transmisión de velocidad variable al movernos dentro del área de cobertura, esto significa que tenemos un ancho de banda variable dependiendo de la ubicación y la velocidad a la que nos movemos. Ya que estamos experimentando velocidades de transmisión variables podemos esperar algunas retransmisiones y pérdidas de paquetes. El hecho de que algunos paquetes de datos se pierdan aumenta las latencias de red. Los retrasos en las redes de virtualización crean retardos en el rendimiento de las aplicaciones.

Una variable más que encontramos es la cantidad de datos de vídeo que se transmiten por la red. Cuando se utiliza un protocolo de visualización remota de bajo nivel se está obligado a enviar la información de vídeo píxel por píxel, que es prácticamente imposible sin compresión y análisis de la imagen. Se requiere mucha potencia de procesamiento en ambos extremos para de compresión y descompresión, aún cuando esta es el tecnología más simple de pantalla remota. En la LAN funciona bien, pero suelen aparecer algunos retardos que pueden ser percibidos durante la ejecución de múltiples aplicaciones. También requiere que el cliente ligero maneje todos los algoritmos de descompresión, que consumen muchos recursos, que no es bueno si se carece de exactamente eso. Además con los problemas de ancho de banda de las

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

redes móviles será muy difícil mantener las respuestas en tiempo real del servidor de virtualización.

Luego tenemos el segundo método de abstracción de escritorio remoto, primitivas de vídeo. Esto parece la mejor tecnología de pantalla remota La tecnología de virtualización LAN cableada e incluso una WAN cableada se puede trabajar con muy pocos inconvenientes. Pero tiene la mismos problemas que el método anterior, debido a que requiere que algún tiempo de ejecución del servidor de virtualización para analizar los datos de vídeo y identificar las primitivas que se necesitan para reconstruirla pantalla en el cliente ligero. Más aún se requieren más capas de software como un nuevo controlador de vídeo que funciona como una abstracción de la tarjeta de vídeo de los clientes ligeros y luego debe transmitir los datos a través de la red.

Como se muestra en la sección de trabajos relacionados, se está trabajando para resolver los problemas en esta materia. Pero aún así, consideramos que no es suficiente ya que los sistemas operativos ni las aplicaciones han cambiado para adaptarse a la topología de la nueva red. La motivación de esta investigación sobre el método de abstracción pantalla remota orientado a objetos surge de las siguientes razones:

1) No se ha hecho antes, sobre todo porque implica que nuevo software tiene que ser creado para este fin.

2) Las redes de virtualización inalámbricas requieren una perspectiva diferente de la que las redes de PC tienen sobre el manejo del software y los eventos.

3) La virtualización móvil requiere que transmitamos la menor cantidad de datos posible a través de la red con el fin de reducir la probabilidad de ser afectados por la latencia y las limitaciones de ancho de banda.

4 Solución Propuesta

La solución que proponemos para resolver los problemas de rendimiento de los dispositivos móviles es la implementación de una nube de servidores de virtualización través de una WAN inalámbrica, para trabajar con dispositivos móviles, utilizando la orientación a objetos para los objetos visuales y dividir la complejidad del software en piezas de código para cada tarea las cuales serán utilizadas bajo el concepto de código bajo demanda (CoD). También hemos pensado en la distribución de los clústeres de servidores a través de la nube, distribuyendo la carga de trabajo de todas las máquinas virtuales en la red.

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

Vamos a repasar la solución completa paso a paso, en primer lugar tenemos un enfoque diferente del servicio de virtualización de escritorio remoto. La programación orientada a objetos (POO) establece que cada pieza de software será independiente del resto del código ya que posee atributos, métodos y eventos propios. El lenguaje de programación Java de Sun viene desarrollando una gran cantidad de objetos desde que salió en 1992, un desarrollo que es de especial interés para esta investigación es el de Java Remote Method Invocation (RMI). El concepto de RMI establece un canal de comunicación a través de la arquitectura TCP / IP, donde un cliente puede acceder a los métodos de un servidor y recibir una respuesta sin tener una copia del objeto real en el cliente, evitando la replicación del software del servidor y así aumentar la seguridad. La interfaz del cliente se comunicará con el servidor, donde el método será ejecutado y los resultados serán enviados de vuelta al cliente para mostrar los resultados.

El plan es hacer lo mismo con los objetos visuales en los clientes ligeros móviles. Los elementos visuales deben ser enviados al iniciarse la aplicación, una vez que el código está en el extremo del cliente se maneja a nivel local para eventos de visualización, los eventos de entrada y los cambios de atributos. Toda la sincronización con otros objetos en el servidor o nuevos comandos que deben ser transmitidos del servidor de virtualización en un pequeño paquete de datos.

Figura 3: Nube de virtualización inalámbrica propuesta.

Figura 4: Concepto básico de Java RMI

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

La reducción de tamaño de los paquetes de datos pueden reducir la probabilidad de interferencia de ruido temporal. También reducirá la carga de la retransmisión de datos en el caso de que haya alguna interferencia. El utilizar algoritmos de recuperación de datos puede reducir la probabilidad de error, pero agrega datos no relacionados con el paquete y no es totalmente a prueba de fallos. Para ello, el plan es confiar en la pila TCP / IP para la detección y corrección de errores que brindan sus diferentes capas.

Otra cuestión sobre este plan que proponemos es el uso de software con código bajo demanda, según lo descrito por Lau et al., [11] el software se puede armar como un rompecabezas utilizando las diferentes piezas disponibles. Muchas aplicaciones complejas comparten una gran cantidad de funcionalidades, que se pueden programar individualmente y llamarlas cuando sea necesario por cualquier aplicación en cualquier momento que se necesita. Este concepto es de gran interés porque se puede adaptar fácilmente a un entorno de cloud computing, donde un grupo de servidores puede realizar tareas diferentes al mismo tiempo para la misma aplicación y reducir el tiempo de procesamiento.

Los componentes del código bajo demanda tienen un conjunto de entradas, una tarea para realizar con el conjunto de entradas y devuelve un conjunto de resultados obtenidos de la ejecución de la tarea. De esta forma se puede crear una aplicación, haciendo coincidir las entradas y salidas de los diferentes componentes. Componentes diferentes se pueden crear para diferentes

sistemas y hacer exactamente la misma tarea, más importante es que todas las piezas tienen que estar disponibles en todos los servidores de virtualización para dar servicio a múltiples plataformas.

Dado que varias aplicaciones pueden compartir las mismas tareas, es posible que algunas instancias de componentes CoD podrían ser ejecutadas al mismo tiempo. El otro propósito para el uso de CoD es trabajar en una arquitectura de nube, con el esquema orientado a tareas utilizando CoD podemos dividir la carga de trabajo a través de diferentes miembros de la nube. La división de la nube a través de la red como se describe en Satyanarayanan et al., [12]

Figura 5: Pieza básica de código bajo demanda (CoD).

Figura 6: Concepto de aplicaciones construidas con código

bajo demanda.

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

donde se distribuye la carga de trabajo a través de la red, permitiendo que los servidores de virtualización más cercanos al dispositivo móvil sean quienes le proporcionen el servicio y así reducir la latencia en la red.

5 Metodología

La solución propuesta es una investigación experimental y donde se creará una red de pruebas, se desarrollará software que permitirá realizar algunas pruebas sobre el rendimiento de la red de virtualización en dispositivos móviles como tablet PCs y teléfonos móviles de última generación.

La investigación se llevará a cabo en fases, comenzando con una fase de desarrollo de software en la estructura CoD y las tareas se pueden crear usando lenguajes de programación Java o C/C++. Java ofrece la mayoría de los objetos que puedan necesitar y con Google Android es totalmente compatible. C/C++ ofrece la eficiencia y el control sobre el hardware que se programa por lo que puede ser utilizado como un complemento dentro de la arquitectura de Android. Una aplicación de medición de rendimiento debe ser creada también para capturar los datos del tiempo de ejecución en la red de pruebas y en otros entornos. El resultado esperado es una herramienta útil que puede ayudar en otras investigaciones sobre virtualización con computación en la nube.

El siguiente paso es crear la infraestructura necesaria y adquirir los equipos necesarios para la implementación, Planificar los lugares correctos para el posicionamiento de los clústeres y los puntos de acceso inalámbrico, si es necesario. Más tarde, en un sistema operativo clúster instalado en los servidores de virtualización cargar todos los componentes necesarios para las aplicaciones desarrolladas para las pruebas. Realizar el cableado necesario para los equipos en los lugares designados también se llevará a cabo durante esta fase.

En la siguiente fase de las pruebas se iniciarán los experimentos que serán de dos tipos:

En primer lugar se realizarán pruebas de rendimiento en tiempo de ejecución donde se medirá el tiempo de ejecución y se comparará con el rendimiento en una de PC regular.

En segundo lugar será medir la percepción de los usuarios del rendimiento de las aplicaciones comparadas con una PC regular.

Por lo tanto esta investigación se puede considerar tanto cuantitativa como cualitativa. El resultado esperado de esta investigación es un nuevo tipo de de red que podría implementarse en el campus de la Universidad de Panamá, con un clústeres de servidores de virtualización distribuidos a través de la nube para brindar apoyo a los dispositivos móviles en toda la red. También un conjunto de componentes CoD que se

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

convertirán en una plataforma de desarrollo para nuevas aplicaciones. Otro resultado esperado será toda la metodología para difundir el uso de este método y dar cobertura a los usuarios en una área amplia, con todas las mejores prácticas que se encuentran en esta investigación para mejorar el tiempo de ejecución.

6 Conclusiones

La propuesta de este documento es crear una red para soporte a la virtualización de dispositivos móviles en redes inalámbricas. Es necesario estudiar el comportamiento de las redes inalámbricas y encontrar cuál se adaptará mejor a una arquitectura basada en computación de nubes distribuido por todo el área de cobertura.

Esto requiere una configuración de red donde los datos pueden ser transportados de forma fiable y si se necesitan retransmisiones no se afecten las comunicaciones en tiempo real. El uso de escritorios remotos orientados a objetos reduce la cantidad de la información necesaria en el intercambio de datos con el servidor. Aun cuando una gran cantidad de datos necesitan ser transmitidos al inicio de la aplicación, más tarde la información necesaria no debe afectar la funcionalidad del servidor. Incluso los objetos más utilizados generalmente podrían permanecer en la memoria del cliente. La topología propuesta se puede convertir base para nuevas investigaciones proyectos que mejoren la funcionalidad de los dispositivos móviles y soluciones de computación en la nube.

REFERENCIAS

[1] R. A. Baratto, J. Nieh, and L. Kim, “THINC : A Remote Display Architecture for Thin-Client Computing,” Technical Report, 2004.

[2] Video Electronics Standard Association (VESA), “VESA Net2Display Remoting Standard,” Electronics, 2009.

[3] P. Simoens, F. De Turck, B. Dhoedt, and P. Demeester, “Remote display solutions for mobile cloud computing,” Computer, pp. 1–6, 2011.

[4] R. A. Baratto, S. Potter, G. Su, and J. Nieh, “MobiDesk : Mobile Virtual Desktop Computing Categories and Subject Descriptors,” Science, 2004.

[5] D. E. Konerding, “Virtual network computing: cross-platform remote display and collaboration software.,” Journal of molecular graphics & modelling, vol. 17, pp. 151–4, Apr. 1999.

[6] T. Richardson, “The RFB Protocol,” Network, 2009.[7] A. Genco, S. Sorce, R. Messineo, and P. Raccuglia, “PDA – Remote Display Interaction

Framework,” 2008 International Conference on Complex, Intelligent and Software Intensive Systems, pp. 763–768, 2008.

[8] T. Uemukai, T. Hara, M. Tsukamoto, and S. Nishio, “A remote display environment: an integration of mobile and ubiquitous computing environments,” 2002 IEEE Wireless Communications and Networking Conference Record. WCNC 2002 (Cat. No.02TH8609), vol. 00, no. c, pp. 618–624, 2002.

Primera Conferencia de Directores de Tecnología, TICAL 2011 Gestión de las TI en Ambientes Universitarios, Panamá,20 y 21 de Junio de 2011

[9] P. Simoens, P. Praet, B. Vankeirsbilck, J. De Wachter, L. Deboosere, F. De Turck, B. Dhoedt, and P. Demeester, “Design and implementation of a hybrid remote display protocol to optimize multimedia experience on thin client devices,” 2008 Australasian Telecommunication Networks and Applications Conference, pp. 391–396, Dec. 2008.

[10] E. Pitt and K. McNiff, Java.rmi: The Remote Method Invocation Guide. Boston, MA, USA: Addison-Wesley Longman Publishing Co., Inc., 2001.

[11] F. C. M. Lau, N. Belaramani, V. W. M. Kwan, P. P. L. Siu, W. K. Wing, and C. L. Wang, “Code-on-demand and code adaptation for mobile computing,” pp. 2–21.

[12] M. Satyanarayanan, N. Davies, P. Bahl, and R. C´aceres, “The Case for VM-Based Cloudlets in Mobile Computing,” Pervasive computing, pp. 14–23, 2009.