Redes de Computadoras y Sistemas Distribuidos: La Arquitectura Interconectada
Comprende el funcionamiento de los modelos OSI y TCP/IP, el consenso distribuido, el teorema CAP y la comunicación en redes modernas.
8/5/20263 min read
3. Introducción a los Sistemas Distribuidos
Un sistema distribuido consiste en múltiples computadoras autónomas que se comunican a través de una red compartida. Aunque introducen una capacidad masiva de cómputo y redundancia, también enfrentan desafíos inherentes: latencia variable, fallos parciales de red y la ausencia de un reloj global compartido.
Teorema CAP
Consistency (Consistencia)
Availability (Disponibilidad)
Partition Tolerance
Consenso Distribuido
Algoritmos Raft / Paxos
Detección de fallos
Elección de líder
Patrones de Comunicación
REST y gRPC (HTTP/2)
Message Queues (Kafka)
Pub/Sub Asíncrono
A. El Teorema CAP (Teorema de Brewer)
Formulado en el ámbito de los sistemas distribuidos, establece que un sistema de almacenamiento distribuido solo puede garantizar simultáneamente dos de las siguientes tres propiedades en presencia de una partición de red:
Consistencia (C): Todos los nodos ven exactamente los mismos datos al mismo tiempo.
Disponibilidad (A): Toda petición no fallida recibe una respuesta no errónea, sin garantía de que contenga el dato más reciente.
Tolerancia a Particiones (P): El sistema continúa funcionando a pesar de que la red pierda o retrase mensajes entre nodos.
Dado que en las redes reales las particiones (P) son inevitables, todo sistema distribuido debe elegir entre sacrificar consistencia (Sistemas AP) o sacrificar disponibilidad (Sistemas CP).
B. Método Indirecto (Enfoque Financiero)
En un entorno donde cualquier nodo puede fallar o aislarse, coordinar estados requiere algoritmos de consenso distribuido como Raft o Paxos. Estos algoritmos permiten que un conjunto de máquinas acuerden una secuencia uniforme de operaciones (como los registros de transacciones en una base de datos distribuida) garantizando la tolerancia a fallos por mayoría (Quórum).
Conclusión
La convergencia entre las redes de computadoras y los sistemas distribuidos constituye la espina dorsal de la infraestructura moderna de software. Dominar los protocolos de comunicación, la encapsulación de paquetes y las restricciones fundamentales de tolerancia a fallos permite a los ingenieros en sistemas diseñar arquitecturas capaces de procesar cargas de trabajo globales de manera continua y resiliente.
Referencias Bibliográficas
● Kurose, James F., & Ross, Keith W.: Computer Networking: A Top-Down Approach — Texto referente a nivel internacional para el aprendizaje de protocolos de red e infraestructura.
● Tanenbaum, Andrew S., & Van Steen, Maarten: Distributed Systems: Principles and Paradigms — Guía esencial sobre arquitecturas distribuidas, consenso y sincronización.
● Kleppmann, Martin: Designing Data-Intensive Applications — La obra cumbre sobre arquitectura de datos, consistencia, particionamiento y tolerancia a fallos en sistemas distribuidos.
Introducción
En la era actual del procesamiento en la nube, los microservicios y la computación al borde (Edge Computing), las aplicaciones monolíticas aisladas en un solo servidor son cada vez más inusuales. Las Redes de Computadoras proporcionan el sustrato físico y lógico de comunicación, mientras que los Sistemas Distribuidos abstraen una red de nodos independientes para que se comporten ante el usuario como un único sistema coherente, escalable y tolerante a fallos.
Comprender cómo se transmiten los datos a través de medios físicos y cómo se gestiona la consistencia entre computadoras separadas geográficamente es una de las competencias más críticas en la Ingeniería en Sistemas Computacionales.
1. Fundamentos de Redes: Los Modelos OSI y TCP/IP
Para que dos nodos intercambien información, los datos deben transitar por múltiples capas de abstracción. El modelo conceptual OSI (7 capas) y la arquitectura práctica TCP/IP (4 capas) estructuran este proceso mediante la encapsulación de datos.
Arquitectura de Redes
Modelo OSI (7 Capas)
7. Aplicación (HTTP, DNS, SSH)
6. Presentación (TLS, JSON, XML)
5. Sesión (Sockets, RPC)
4. Transporte (TCP, UDP)
3. Red (IP, ICMP, BGP)
2. Enlace (Ethernet, MAC)
1. Física (Fibra, Radio)
Modelo TCP/IP (4 Capas)
Aplicación.
Transporte.
Internet.
Acceso a la red.
Encapsulación de datos
A medida que la información desciende por las capas en el emisor, se le añaden encabezados (headers) específicos:
Capa de Transporte (TCP/UDP): Convierte los datos en Segmentos agregando puertos de origen y destino para la multiplexación de aplicaciones.
Capa de Red/Internet (IP): Envuelve el segmento en un Paquete, añadiendo direcciones IP de origen y destino para el enrutamiento interredes.
Capa de Enlace (Ethernet/Wi-Fi): Convierte el paquete en una Trama (Frame), incorporando las direcciones físicas MAC para el salto local.
2. Capa de Transporte: TCP vs. UDP
La elección del protocolo en la capa de transporte determina el equilibrio entre confiabilidad y velocidad en la entrega de datos:


