1. INTRODUCCIÓN
1.1. Motivación
1.2. Contribución
1.3. Alcance de la Tesis
1.4. Organización de la Tesis
2. TECNOLOGÍAS RELACIONADAS
2.1. Tecnologías de Virtualización
2.1.1. Virtualización de Hardware/Sistema
2.1.2. Paravirtualización
2.1.3. Virtualización basada en Sistema Operativo
2.1.4. Virtualización de Lenguaje/Proceso/Aplicación
2.1.5. Virtualización de Sistema Operativo
2.1.6. Emulación de Plataforma
2.1.7. Emulación de Sistema Operativo
2.1.8. Virtualización Reversa
2.1.9. Capacidades de las actuales Tecnologías de Virtualización
2.2. Otras Tecnologías Relacionadas
2.2.1. Sistemas Operativos Distribuidos con Imagen de Sistema Unico
2.2.2. Unikernel
2.2.3. Sistemas Operativos Multiservidor o de Microkernel
2.2.4. Comunicaciones de Grupo
2.2.5. Migración de Procesos, Máquinas Virtuales y Contenedores
2.2.6. Redundancia y Replicación
3. MODELO DE ARQUITECTURA PROPUESTO
3.1. Topología de un cluster DVS
3.2. Abstracciones
3.2.1. Relaciones entre las Abstracciones
3.2.2. Semántica del IPC
3.3. Modelo de Arquitectura de DVS
3.4. Descripción de los Componentes del DVS
3.4.1. Núcleo de Virtualización Distribuida (DVK)
3.4.2. Representante de Comunicaciones de Nodos Remotos (Proxies)
3.4.3. Contenedores
3.4.4. Contenedores Distribuidos
3.4.5. Sistema Operativo Virtual
3.4.6. Relaciones entre Procesos y Endpoints
3.5. Otros Componentes Requeridos
3.5.1. Replicación Primario-Respaldo
3.5.2. Replicación de Máquina de Estados
3.5.3. Migración de Procesos
3.5.4. Seguridad y Protección
3.5.5. Planificación Distribuida
4. PROTOTIPO DE DVS
4.1. Núcleo de Virtualización Distribuida (DVK)
4.1.1. Módulo para el Kernel de Linux
4.1.2. APIs de Gestión del DVS
4.1.3. Conformación del cluster del DVS (nodos unidos por proxies)
4.1.4. APIs de Gestión de Contenedores Distribuidos
4.1.5. APIs de Gestión de Procesos
4.1.6. APIs de Gestión de Privilegios
4.1.7. M3-IPC
4.1.8. APIs para Migración y de Replicación de Procesos
4.1.9. Directorio /proc/dvs
4.1.10. Sistema de Comunicaciones Grupales (GCS)
4.2. Módulo Webmin para Gestión del DVS
4.3. Contenedor Distribuido (DC)
4.4. Sistemas Operativos Virtuales (VOS)
4.4.1. VOS Multiservidor
4.4.2. VOS Unikernel (ukVOS)
4.4.3. Algoritmo de Asignación de Ranuras ( SLOTS)
4.4.4. Gestor de Discos Virtuales Replicados
4.4.5. Sincronización Dinámica de Réplicas
4.5. Misceláneos
4.5.1. Transferencia de Archivos entre MoL (Guest) y Linux (Host)
4.5.2. Servidor FTP y Cliente FTP utilizando M3-IPC
4.5.3. Servidor Web y Cliente Web utilizando M3-IPC
4.5.4. Proxy HTTP – M3-IPC
5. EVALUACION DEL PROTOTIPO
5.1. M3-IPC.
5.2. Algoritmo de Asignación de Ranuras
5.3. MOL-VDD
5.4. MOL-FS
5.5. MOL-NWEB
5.6. Resumen de la Evaluación del Prototipo
6. TRABAJOS FUTUROS
7. CONCLUSIONES
Glosario
Referencias