Fundamentos de Sistemas Distribuidos y Arquitectura Cliente-Servidor
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 3,22 KB
¿Qué es un Sistema Distribuido?
Un sistema distribuido es un sistema informático conformado por varios nodos o computadoras, diseñados para procesar e intercambiar datos, información y recursos entre ellos, contribuyendo a un fin superior. Este sistema se compone de aplicaciones informáticas y una red de comunicaciones.
Modelo Cliente-Servidor
El modelo Cliente-Servidor es la arquitectura que mejor se ajusta a los requerimientos de los sistemas distribuidos. En esta relación, existe al menos un proceso servidor esperando a que un proceso cliente le solicite un recurso o dato.
Dinámica de la conexión
- Solicitud: El proceso cliente debe conectarse al proceso servidor.
- Decisión: El servidor tiene la potestad de aceptar o rechazar al cliente.
- Interacción: Si es aceptado, ambos comienzan a transmitir datos.
- Finalización: Una vez resueltas las necesidades, ambos acuerdan cerrar la conexión.
Sockets: Comunicación de Red
El Socket es un componente del proceso que define la información y las acciones necesarias para manipular conexiones. Su objetivo es liberar al programador de gestionar detalles técnicos como el manejo de la placa de red o protocolos de bajo nivel (ARP, IP, TCP y UDP).
- Cliente: Almacena IP local, puerto local, IP remota y puerto remoto. Realiza la conexión, transmisión de datos y cierre.
- Servidor: Almacena el protocolo de capa de transporte y el número de puerto. Realiza las funciones de escucha, aceptación, transmisión y cierre.
Gestión de Procesos
Bloque de Control de Proceso (BCP)
Es la estructura que representa al proceso en el Sistema Operativo. Almacena:
- Estado del proceso (preparado, en ejecución, nuevo).
- Registros de CPU (propósito general).
- Información de memoria.
- Contador de programa (siguiente instrucción).
Multiprogramación
Es la capacidad del sistema operativo para cargar varios programas simultáneamente. Un proceso incluye: código, datos, pila, registros de CPU y contador de programa.
Planificación de Procesos
- Corto plazo: Selecciona procesos preparados para ser ejecutados.
- Largo plazo: Selecciona procesos y los carga en memoria para su ejecución.
Serialización y Protocolos
Serialización de Objetos
Representa un objeto como una secuencia de bytes. Es indispensable cuando los objetos deben enviarse a través de una red. Estructura: DLH | NH | TH | SH | PH | AH | DATOS OBJETO | IDEM | CRC.
Protocolo de Capa de Transporte
Permite la multiplexación de servicios mediante puertos de origen y destino.
Diferencias entre TCP y UDP
- TCP: Ofrece confiabilidad, control de flujo (ventana deslizante) y mayor sobrecarga (más lento).
- UDP: No es confiable (posible pérdida o desorden de datos), no posee control de flujo y tiene poca sobrecarga (más rápido).