0% encontró este documento útil (0 votos)
86 vistas6 páginas

Investigacion RPC

Este documento describe las llamadas a procedimientos remotos (RPC), una tecnología que permite el desarrollo de sistemas distribuidos al ocultar los detalles de la comunicación a través de la red. RPC usa "stubs" en el cliente y servidor para empaquetar los argumentos y resultados de una llamada remota de modo que parezca una llamada local. Esto facilita el desarrollo de aplicaciones distribuidas al ocultar los detalles de la red.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
86 vistas6 páginas

Investigacion RPC

Este documento describe las llamadas a procedimientos remotos (RPC), una tecnología que permite el desarrollo de sistemas distribuidos al ocultar los detalles de la comunicación a través de la red. RPC usa "stubs" en el cliente y servidor para empaquetar los argumentos y resultados de una llamada remota de modo que parezca una llamada local. Esto facilita el desarrollo de aplicaciones distribuidas al ocultar los detalles de la red.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Introducción

Un sistema distribuido es un conjunto de computadoras conectadas en red que le


dan la sensación al usuario de ser una sola computadora. Este tipo de sistema
brinda una serie de bondades tales como: compartición de recursos, la
concurrencia, alta escalabilidad, y tolerancia a fallos. A pesar de agregar
complejidad al software y disminuir los niveles de seguridad, los sistemas de
procesamiento distribuidos brindan una buena relación precio-desempeño y pueden
aumentar su tamaño de manera gradual al aumentar la carga de trabajo.

RPC es una tecnología, tradicionalmente empleada en ambiente UNIX, que permite


el desarrollo de sistemas de procesamiento distribuido basados en el paradigma
procedimental. Con el advenimiento de implementaciones para plataformas
Windows, así como para JAVA, es posible pensar en RPC como un mecanismo de
integración de Software.

Objetivo

Presentar las características técnicas mas importantes del mecanismo de Llamadas


a Procedimientos Remotos (RPC, Remote Procedure Calls).
Desarrollo

Una llamada a un procedimiento (función o subrutina) es un método bien conocido


para transferir el control de una parte del programa a otra, con un retorno del control
a la primera. Asociado con la llamada a un procedimiento están el pase de
argumentos y el retorno de uno o varios resultados. Cuando el código que invoca a
un procedimiento y dicho procedimiento están en un mismo proceso en un
computador dado, se dice que ha ocurrido una llamada a un procedimiento local.

Por el contrario, en una llamada a un procedimiento remoto (RPC) el sistema local


invoca, a través de la red, a una función alojada en otro sistema. Lo que se pretende
es hacerle parecer al programador que está ocurriendo una simple llamada local.
Se utiliza el término solicitud para referirse a la llamada que realiza el cliente al
procedimiento remoto (servidor) y, el término respuesta, para describir el resultado
devuelto por este último.

Modelo RPC
La figura anterior ilustra el proceso de una llamada aun procedimiento remoto:

1. El cliente llama a un procedimiento local llamado “stub” del cliente, el cual aparenta ser el
procedimiento servidor que el cliente desea llamar. El propósito del “stub” del cliente es
empaquetar los argumentos del procedimiento remoto, adecuarlos a algún formato estándar
y construir uno o varios mensajes de red. El empaquetamiento de los argumentos del
procedimiento remoto en mensajes de red se conoce como “marshaling”.

2. Estos mensajes son enviados por el “stub” del cliente al sistema remoto, lo cual requiere
una llamada del sistema.

3. Los mensajes son transferidos al sistema remoto empleando protocolos con o sin conexión.

4. Un procedimiento “stub” del servidor espera en el sistema remoto la solicitud del cliente.
Desempaqueta los argumentos de los mensajes de red y si es necesario realiza alguna
conversión.

5. El “stub” del servidor realiza la llamada al procedimiento local que realmente invoca la
función del servidor y le pasa los argumentos transferidos a través de la red desde el “stub”
del cliente.

6. Cuando el procedimiento del servidor termina, éste le regresa el control al “stub” del servidor
devolviendo los resultados obtenidos.

7. El “stub” del servidor adecua el formato de tales resultados, si es necesario, y los


empaqueta en mensajes de red para ser devueltos al “stub” del cliente.

8. Los mensajes son transmitidos al “stub” del cliente.

9. El “stub” del cliente lee los mensajes recibidos.


10. Luego de posiblemente convertir los valores de retorno, el “stub” del cliente retorna
finalmente dichos resultados a la función del cliente haciendo parecer un retorno normal de
función.

El concepto de llamada a procedimiento remoto permite ocultar en los “stubs” todos


los detalles del código correspondiente a la comunicación a través de la red. Esto
permite que los desarrolladores de programas de aplicación no se preocupen por
detalles tales como “sockets” y ordenamiento de bytes. Uno de los objetivos de RPC
es facilitar el desarrollo de aplicaciones distribuidas.

Según el modelo OSI, RPC cae en algún lado entre la capa de transporte y
aplicación. Típicamente se considera parte de la capa de presentación. Debido a
que RPC le “oculta” a la capa de aplicación los detalles de la red, usualmente incluye
una especificación de algún formato estándar para el intercambio de argumentos y
resultados entre el cliente y el servidor.

Las implementaciones de RPC más populares son:

• La desarrollada por Sun Microsystem denominada ONC-RCP (Open Network


Computing, ONC-RCP), distribuida con casi todos los sistemas UNIX.

• La desarrollada por Microsoft en línea con el Ambiente de Computación


Distribuida (DCE, Distributed Computing Enviroment) definido por la
Fundación de Software Abierto (OSF, Open Software Foundation). Incluida
en los sistemas operativos Windows.
Conclusión

Se presentó las características técnicas más importantes del mecanismo de


Llamadas a Procedimientos Remotos (RPC, Remoto Produce Calls), que es una
tecnología, tradicionalmente empleada en ambiente UNIX, que permite el desarrollo
de sistemas de procesamiento distribuido basados en el paradigma procedimental.
Con el advenimiento de implementaciones para plataforma Windows, así como para
Java, se concibe a RPC como una tecnología entre plataformas disimiles de
hardware y software.
Fuentes Información

• Remote Procedure Call: comunicación en sistemas cliente-servidor. (2020,


24 marzo). IONOS Digitalguide.
https://www.ionos.mx/digitalguide/servidores/know-how/que-es-rpc/

• colaboradores de Wikipedia. (2020, 7 diciembre). Llamada a procedimiento


remoto. Wikipedia, la enciclopedia libre.
https://es.wikipedia.org/wiki/Llamada_a_procedimiento_remoto

• ¿Qué es RPC (llamada a procedimiento remoto)? - Wilber Ccori huaman.


(2018, 28 agosto). Medium.
https://medium.com/@maniakhitoccori/qu%C3%A9-es-rpc-llamada-a-
procedimiento-remoto-7cbcbe45d8e

También podría gustarte