0% encontró este documento útil (0 votos)
84 vistas13 páginas

Introducción al Protocolo RPC

Este documento explica el protocolo RPC (Remote Procedure Call) el cual permite ejecutar tareas y procedimientos remotos a través de una red. El documento describe cómo funciona RPC mediante el envío de peticiones de un cliente a un servidor, la ejecución de la tarea por el servidor y el envío de la respuesta. También explica el rol del Stub que permite la comunicación entre cliente y servidor a pesar de posibles diferencias entre sus ambientes.

Cargado por

Ferrus Castro
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)
84 vistas13 páginas

Introducción al Protocolo RPC

Este documento explica el protocolo RPC (Remote Procedure Call) el cual permite ejecutar tareas y procedimientos remotos a través de una red. El documento describe cómo funciona RPC mediante el envío de peticiones de un cliente a un servidor, la ejecución de la tarea por el servidor y el envío de la respuesta. También explica el rol del Stub que permite la comunicación entre cliente y servidor a pesar de posibles diferencias entre sus ambientes.

Cargado por

Ferrus Castro
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

INSTITUTO POLITECNICO NACIONAL

ESIME ZACATENCO
INGIENERIA EN COMUNICACIONES Y ELECTRONICA

Protocolo RPC “for dummies”


por Fernando Castro
enero 2021
RPC
• Remote Procedure Call es
una técnica que utiliza el
modelo Cliente-Servidor para
ejecutar tareas en un proceso
diferente como podría ser en No
una computadora remota. A RCP!!
veces solamente se le llama
como llamada a una función o
subrutina remota.
• Como un entrenador Pokémon!! Quien solicita la una orden y espera
a un:

• Pokémon, quien recibe y ejecuta


la orden
¿Cómo funciona la llamada a procedimiento
Remoto?
• El cliente hace la llamada al
procedimiento remoto mediante un
mensaje a través de la red. Este se
detiene ya que es un proceso
síncrono, es decir, necesita una
respuesta del servidor para poder
continuar su ejecución. En esta
llamada se incluye un Stub (también
llamado Proxy o “Dealer”) el cual se
encarga de ajustar parámetros y
direcciones de memoria de un
ambiente al otro (ósea de un cliente
al servidor)
¿Como funciona la llamada a procedimiento
remoto?
• El servidor recibe la petición y desempaqueta el mensaje para extraer
la información necesaria para realizar la tarea. El stub ayuda a que el
servidor sea capaz de convertir parámetros de una representación a
otra (de ser necesario), para traducir direcciones de memoria de
cliente a servidor, etc.
¿Como funciona la llamada a procedimiento
remoto? • El servidor ejecuta la tarea
• El servidor crea un mensaje de
respuesta para el cliente en el
que incluye el resultado de la
tarea que este le pidió a realizar.
• El cliente recibe y desempaqueta
el mensaje de respuesta del
servidor o en dado contrario
continua con su ejecución
normal.
El Stub
• El Stub es la pieza del código que le permite al servidor ejecutar la
tarea que se le asigno. Se encarga de proveer la información
necesaria para que el servidor convierta las direcciones de los
parámetros que el cliente envió en direcciones de memoria validos
dentro del ambiente del servidor. La representación de datos en
cliente y servidor.
• La representación de datos en cliente y servidor podría discrepar, el
stub también provee la información necesaria para solucionar esta
situación. De forma general es la pieza de código que se encarga de
enmascarar toda la discrepancia entre el cliente y servidor. Es
necesario que las bibliotecas de stubs estén instaladas tanto en el
cliente como en el servidor.
STUB = POKEBOLA = DEALER

• Quien se encarga de
establecer un vinculo
entre el entrenador y
el Pokémon
Problemas con RPC
• RPC es dependiente del lenguaje de programación que se utilice. Si
quisiéramos utilizarlo para ofrecer algún servicio web, por ejemplo, es
probable que necesitemos utilizar mas de un lenguaje de
programación del lado del cliente y del servidor, en ese momento RPC
deja de ser una alternativa. Sin embargo, si todos los módulos del
servicio que vamos a ofrecer a los clientes están basados en el mismo
lenguaje de programación RPC es una muy buena opción.
• El protocolo por si solo es Vulnerable a virus que ejecuten acciones de
subida y descarga de archivos no deseados. (para solventar este
problema se implemento el FIREWALL para proteger al Proxy o
Dealer)
Ejemplo de aplicación:
• rpcping /?
• Este comando despliega todos los parámetros y opciones para poder realizar una
prueba RPC desde un equipo a un dominio particular.
• Ejemplo de invocación:
• rpcping /t ncacn_http /s exchange_server /o RpcProxy=front_end_proxy /P
username,domain,* /H Basic /u NTLM /a connect /F 3
¿De que parte del modelo OSI es el RPC?
• Principalmente en la Capa 5: SESION y toma recursos de la Capa 4:
Transporte
• Se encuentra RPC junto a SQL, NFS, NetBIOS, ASP, SCP
• El RPC se considera basado en socket, que es trabajando en el nivel se
sesión.
• Este Protocolo toma algunos protocolos de la capa 4 de transporte,
como el TCP o UDP.
• RPC facilita el desarrollo de aplicaciones que incluye multi programas
gracias a la red.
En resumen…
Conclusiones
• SIN ESTE PROTOCOLO, ALGORITMO NO PODRIAN ABRIR NINGUNA
PAGINA DE NINGUN EXPLORADORO NAVEGADOR, ES IMPORTANTE
• DEBIDO A QUE SON LAS QUE NOS DESPLIEGAN LAS PANTALLAS DE
CUALQUIER APLICACION QUE CONVIVE EN INTERNET
• NO TIENE TRAMA COMO TAL PERO SI TIENE APLICACION PARA
MOSTRARLAS PAGINAS EN LA PANTALLA

También podría gustarte