• No results found

En los centros de datos donde se despliegan infraestructuras Cloud existen una serie de recursos hardware fijos que hay que utilizar para alojar los recursos virtuales que se ofrecen a los usuarios. La forma en que los recursos físicos se asignan para cubrir la demanda de los virtuales es clave e influye de forma directa tanto en la eficiencia de los servicios ofrecidos como en los costes asociados a los despliegues. Esto resulta fundamental para los modelos de negocio de los proveedores de servicios Cloud. Existen por lo tanto muchos estudios sobre mecanismos para mejorar la eficiencia de dichas asignaciones.

En estas condiciones, uno de los factores clave a tener en cuenta es el tiempo de asignación. Este tiempo es el que transcurre desde el momento en que un cliente solicita un recurso virtual hasta el momento en que éste está listo. En caso de que haya más de un centro de datos donde alojar este recurso, la decisión de en cuál de ellos hacerlo puede ser crítica.

[Jung 2011] propone un modelo de asignación adaptativo que toma las decisiones basándose en dos factores: 1) la distancia geográfica entre el consumidor y los centros de datos y 2) la carga de trabajo de cada centro de datos. Según su investigación son estos dos parámetros los que influyen de manera más directa en el tiempo de asignación.

Cálculo de la distancia geográfica: para calcular la distancia geográfica existente entre un consumidor y un centro de datos dado, los autores dividen las localizaciones en zonas y comprueban la latencia de red entre ellas.

Cálculo de la carga de trabajo: para realizar el cálculo de la carga de trabajo de un centro de datos cuentan el número de CPUs virtuales que un nodo está atendiendo en un momento determinado. Entonces, dado el número de CPUs virtuales que una nueva petición require, para decidir donde asignarla, se comprueba cuál de los centros de datos tiene espacio suficiente para atenderla. Los nodos que no tienen suficiente espacio son descartados de forma automática.

La forma de calcular la carga de las MCUs a la hora de asignar peticiones es una de las contribuciones principales de esta tesis. Como veremos en el Capítulo 4, no se trata de un cálculo

2.3. SISTEMAS DISTRIBUIDOS

trivial y es necesario diseñar una nueva métrica adecuada a los requisitos de los sistemas de videoconferencia distribuidos.

Capítulo 3

Videoconferencia escalable en infraestructuras Cloud

En los últimos años se han producido una serie de circunstancias tecnológicas y sociales que han hecho que el uso de aplicaciones y servicios de videoconferencia sea cada vez más frecuente. La heterogeneidad en los dispositivos que son compatibles con este tipo de servicios ha hecho que el acceso sea mas ubicuo que en el pasado y además que se utilice en ámbitos muy diferentes. Tradicionalmente se utilizaba en escenarios muy concretos y casi siempre profesionales pero hoy en día cualquier persona dispone de aplicaciones de videoconferencia en sus ordenadores personales, teléfonos móviles y tabletas.

Como adelantaba en la introducción, este crecimiento en el número de usuarios hace que los sistemas tradicionales de videoconferencia no se adapten a los requisitos actuales, o en caso de que sí lo hagan, que la forma en que se han venido desplegando no sea adecuada para las variaciones dinámicas en la demanda causadas por las nuevas condiciones de uso.

En este capítulo realizo un análisis de las ventajas que supone un despliegue basado en el Cloud para los sistemas de videoconferencia multiusuario y teniendo en cuenta estas nuevas condiciones. En concreto el despliegue de MCUs, componente que recibe la carga mayoritaria en cuanto a uso de recursos en estos sistemas. Pero una vez claras estas oportunidades, hay una serie de retos a tener en cuenta de cara al diseño de las nuevas arquitecturas necesarias. Teniendo en cuenta este análisis, me centro en resolver alguno de los retos planteados.

En concreto propongo un modelo de arquitectura diseñado para escalar MCUs de manera dinámica a las variaciones en la demanda de usuarios. Como veremos, a la hora de escalar frente a disminuciones de la demanda, la movilidad de flujos multimedia entre MCUs es fundamental para asegurar el uso eficiente de recursos. Propongo también por tanto un nuevo mecanismo que permitirá realizar esta movilidad de manera transparente para los usuarios y sin afectar a la calidad de las comunicaciones.

3.1 Objetivos

Teniendo en cuenta esta pequeña introducción, los objetivos planteados en este capítulo son:

Identificar las ventajas y los retos que supone desplegar un sistema de videoconferencia en el Cloud. El primer paso consiste en hacer un análisis de las ventajas que nos aporta el despliegue de MCUs en infraestructuras Cloud. De esta manera tendré claro qué aspectos debo explotar a la hora de diseñar mis modelos. Pero también es importante tener en cuenta los retos con los que voy a encontrarme. Tendremos por tanto una caracterización global del escenario.

Proponer e implementar un modelo de arquitectura que permita escalar un sistema de videoconferencia Cloud de forma dinámica y acorde a la demanda. Este modelo debe permitir que el sistema escale hacia arriba y hacia abajo. Es decir, debe permitir añadir y quitar MCUs al sistema según la demanda de usuarios en cada momento. Para ello es fundamental explorar las mejores vías para realizar movilidad de flujos multimedia entre estos servidores.