Please enable JavaScript.
Coggle requires JavaScript to display documents.
Sockets - Coggle Diagram
Sockets
Remote Procedure Call (RPCs)
El cliente solamente debe realizar llamadas a procedimientos de tal forma que dependiendo de cada caso, la ejecución del servicio solicitado se realice en la máquina local o en una máquina remota
Propuesto por Birrel y Nelson en 1984
Fundamento para servicios
Network File System (NFS)
Network Information Service (NIS)
Culminó su desarrollo en 1990
Evolucionaron hacia OOP
Corba
RMI
Elementos necesarios
Definición de interfaz
"Sintaxis" de los procedimientos a ejecutar.
Código del servidor
Implementación de los procedimientos definidos en la interfaz
Código del cliente
Llamadas a los procedimientos en el contexto de la ejecución de un proceso.
Formato de representación
Mecanismos que permiten el intercambio de información entre clientes y servidores ubicados en máquinas diferentes.
Localización del servidor
Mecanismo que asigna el servidor apropiado para el servicio requerido
Portmapper
Semánticas de fallo
Mecanismos para procesar los diferentes escenarios de fallo que se pueden presentar.
Funcionamiento
Cliente
Usuario
Llamada local
Stub del cliente
Aplanar
Paso a XDR
Comm. S. O.
Enviar
Servidor
Rutinas del servicio
Stub del Servidor
Dispatcher
Paso a formato nativo
Comm. S. O
Recibir
Inconvenientes protocolo petición respuesta
El cliente debe saber si el servicio es local o remoto antes de solicitarlo
Si el servicio es remoto, el cliente debe conocer la dirección del servidor.
El cliente debe saber la disposición exacta de los parámetros que se debenenviar al servidor, así como el formato de los mensajes de respuesta
Consecuencia
¿Existe transparencia para el desarrollador de las aplicaciones distribuidas?
Tratamiento de errores
Errores de comunicación
No se puede localizar el servidor
Se pierden los mensajes de petición
Se pierden los mensajes de respuesta
Fallos en el servidor
Parámetros incorrectos
Caída del servidor
Fallos en el cliente
Caída del cliente
Busca transparencia
Si se "Esconde" el mecanismo de comunicación del proceso de implementación se conseguiría.
Beneficios
El programador se concentrará en escribirprogramas que solicitan servicios independientemente de su ubicación
Ni el cliente ni el programador deben conocer la dirección de la máquina donde reside el servidor
Ni el cliente ni el programador deben conocer el sistema operativo o la arquitectura del servidor para ubicar correctamente los parámetros del mensaje