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).

Entradas relacionadas: