Informe RPC
Informe RPC
Informe RPC
Resumen
En el presente informe se evalúa la invocación remota, utilizando uno de sus tres (3)
paradigmas, Llamada de Procedimiento Remoto (RPC), este permite que un programa de
ordenador ejecutar código en otra máquina remota sin tener que preocuparse por la
comunicaciones entre ambos. Usando la técnica de cliente-servidor, que facilita las llamadas
a servidores remotos.
RPC proporciona un middleware que simplifica el desarrollo de aplicaciones distribuidas,
evitando que el programador interactúe con la interfaz de los sockets. El servidor ofrece
procedimientos que el cliente llama como si fueran procedimientos locales, ofreciéndole al
usuario un entorno no distribuido.
Introducción
Las llamadas de procedimientos remotos, son muy utilizadas dentro del paradigma
cliente-servidor. Siendo el cliente el que inicia el proceso solicitando al servidor que ejecute
cierto procedimiento o función y enviando este de vuelta el resultado de dicha operación al
cliente. Los protocolos que utiliza RPC son solitud (que no espera respuesta),
solitud/respuesta (se pasa el protocolo solitud respuesta pero sin mensaje de confirmación) y
solicitud/respuesta/confirmación (no se bloquea el cliente, la confirmación contiene el id de
la solitud).
RPC es dependiente del lenguaje de programación que se utilice, siendo esta una de su
mayor desventaja, ya que, si se utilizara para ofrecer un servicio web, es probable que se
necesiten más de un lenguaje de programación del lado del cliente y del servidor.
La práctica a realizar se mostrara la funcionalidad de las llamadas de procedimientos
remotos.
Método experimental
Para realizar la práctica se utilizó el sistema operativo Ubuntu base Linux, se instalaron
los paquetes rpcgen y rpcbin. Los resultados generados se visualizaran en la terminal.
Resultado y Discusión
Practica
Elaborar una aplicación cliente-servidor basada en Llamada de procedimiento remoto
RPC, el cliente implementara una interfaz de usuario y el servidor el procesamiento.
Programar una calculadora básica con las siguientes funciones: suma, resta,
multiplicación, división, promedio, potencia y raíz cuadrada. El cliente implementara la
interface de usuario y el servidor las funciones de cálculo.
El cliente:
1. La aplicación cliente solicita y captura los datos del operador mediante interfaz de
usuario.
2. El cliente envía los datos y el tipo de operación aritmética a realizar.
3. El cliente espera el resultado.
4. El cliente visualiza el resultado.
El servidor:
1. El servidor espera los datos del cliente.
2. Realiza la operación indicada.
3. Devuelve la operación al cliente.
Resultado
En la siguiente imagen se muestran los archivos generados al compilar el archivo
calculadora.x, este archivo se le conoce como Interface Description Lenguaje (IDL), que es
la interfaz con la que se comunicaran cliente y servidor. Se compila el siguiente comando
que se muestra en la terminal (Imagen 1) para generar los archivos RPC automáticamente.
Conclusión
En la práctica se concluyó que RPC es síncrono, es decir, necesita una respuesta del
servidor para poder continuar su ejecución, usando “stub” que se encarga de ajustar
parámetros.
En RPC, el sistema local invoca, a través de la red, a una función alojada en otro sistema,
el protocolo que se utilizó para la invocación es el UDP, así el servidor queda a la espera por
la petición del cliente.
RPC permite el desarrollo de sistemas de procesamiento distribuido, dado a entender al
usuario que todo se maneja en un mismo sistema.