Referencias Bibliográficas: [Pacheco, 2011,Schmidt, 1995a]
Temas
- Fallos:
- Fallos basados en red (incluyendo particiones) y fallos basados en nodos
- Impacto en garantías a nivel de sistema (p.e., disponibilidad)
- Envío de mensajes distribuido:
- Conversión y transmisión de datos
- Sockets
- Secuenciamiento de mensajes
- Almacenando Buffering, renviando y desechando mensajes
- Compensaciones de diseño para Sistemas Distribuidos:
- Latencia versus rendimiento
- Consistencia, disponibilidad, tolerancia de particiones
- Diseño de Servicio Distribuido:
- Protocolos y servicios Stateful versus stateless
- Diseños de Sesión (basados en la conexión)
- Diseños reactivos (provocados por E/S) y diseños de múltiples hilos
- Algoritmos de Distribución de Núcleos:
- Elección, descubrimiento
Objetivos de Aprendizaje
- Distinguir las fallas de red de otros tipos de fallas [Familiarity]
- Explicar por qué estructuras de sincronización como cerraduras simples (locks) no son útiles en la presencia de fallas distribuidas [Familiarity]
- Escribir un programa que realiza cualquier proceso de marshalling requerido y la conversión en unidades de mensajes, tales como paquetes, para comunicar datos importantes entre dos hosts [Usage]
- Medir el rendimiento observado y la latencia de la respuesta a través de los hosts en una red dada [Usage]
- Explicar por qué un sistema distribuido no puede ser simultaneamente Consistente (Consistent), Disponible (Available) y Tolerante a fallas (Partition tolerant). [Familiarity]
Generado por Ernesto Cuadros-Vargas , Sociedad Peruana de Computación-Peru, basado en el modelo de la Computing Curricula de IEEE-CS/ACM