La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

RPC Versión 2 Remote Procedure Call.

Presentaciones similares


Presentación del tema: "RPC Versión 2 Remote Procedure Call."— Transcripción de la presentación:

1 RPC Versión 2 Remote Procedure Call

2 Objetivo Características Permitir la ejecución de programas remotos.
Estándar propuesto por Sun RFC 1057. Estructura cliente servidor. Basado en Loca procedure Call. Utiliza TCP o UDP. Permite un versionado de procedimientos.

3 Características Existen programas rpc que utilizan puertos bien conocidos. Provee autentificación. Utiliza XDR.

4 Funcionamiento Un programa ejecutado en el server escucha en un puerto. El cliente realiza una llamada solicitando ejecutar un procedimiento con ciertos parámetros en el server, y puerto que está escuchando el programa. El cliente queda esperando una respuesta del server.

5 Funcionamiento El server ejecuta el procedimiento con los parámetros enviados. El server responde con los parámetros que debe responder el procedimiento. El cliente recibe la respuesta del procedimiento remoto.

6 LPC Vs RPC LPC un usuario o programa ejecuta un procedimiento que esta por ejemplo en una librería de Windows. Transfiere el control al mismo, hasta que este le responde con resultados. En RPC existen 2 procesos: Cliente y Servidor. RPC debe controlar errores provocados por la conexión.

7 LPC Vs RPC Difiere el alcance de las variables. Las variables declaradas como globales en el programa cliente, no estarán disponibles en el server. Se debe tener en cuenta la performance, dado que el RPC requiere de más procesamiento, incluye una conexión, y respuesta de recursos que pueden estar comprometidos.

8 LPC Vs RPC El RPC debe proveer autentificación. De no ser así, cualquiera que quiera ejecutar un programa lo podría hacer…

9 Mensajes Todos los mensajes tienen un Xid Identificando un número para relacionar el llamado con la respuesta. Call Solicita la ejecución de un programa. Parámetros: RPCVERS (versión de RPC) 2 Remote program Number. De 0 a 1FFFFFF Reservados para Sun. 2 a 3 Definido por el usuario (para pruebas). 3 a 4 Transitorio. 6 a FFFFFFF Reservado Remote program Version Number. Remote Procedure Number.

10 Mensajes Call Authentification credentials. Authentification verifier.
Parámetros del procedimiento RPC invocado.

11 Protocolo de mensajes RPC
Success Dato opaco Resultados Prog_mismatch Versión menor Version mayor Prog_unavail Proc_unavil Basura Accepted Call Tipo Reply RPC_MISMATCH (Versión) Denied AUTH_ERROR AUTH_BADCRED AUTH_REJECTEDCRED AUTH_BADVERF AUTH_REJECTEDVERF AUTH_TOOWEAK

12 Otros Usos Batching Broadcast
Se envía un lote de procedimientos, el server envía una sola respuesta por todos. Broadcast Se puede hacer un llamado y pueden responder varios servers. Los servers solo responden de tener una respuesta positiva. Para poder implementarlo usan Portmapper.

13 Port Mapper Administra y brinda información sobre los números de programa, versiones, protocolo y los puertos en los que están escuchando el programa. Es un programa RPC. Escucha en el puerto 111.

14 Base de datos Port Mapper
Registros Nº de programa. Nº de versión del programa. Protocolo (6 TCP, 17 UDP). Puerto. Es alimentada por los diferentes programas RPC.

15 Operaciones PMAPPROC_NULL PMAPPROC_SET (registro)
PMAPPROC_UNSET (registro) PMAPPROC_GETPORT (registro) PMAPPROC_DUMP (registro) PMAPPROC_CALLIT ( N de programa. Versión N de procedimiento Argumentos

16 Características de CALLIT
EL Port Mapper solo envía respuestas positivas, cuando el procedimiento RPC fue ejecutado exitosamente. Sino no envía respuesta. El port mapper se comunica con los programas diferentes programas RPC vía UDP. El CALLIT responde con el Número de puerto del programa RPC y con la respuesta del Programa RPC invocado.


Descargar ppt "RPC Versión 2 Remote Procedure Call."

Presentaciones similares


Anuncios Google