rpc

4
RPC Revisión de Sockets Definición de protocolo, empieza a generar problemas de comunicación. Dependencia de Direccionamiento IP Protocolo petición-respuesta Se tienen varias interrogantes de por medio. Una de ellas es la del cliente que debe tratar de conocer si puede ser una función local. El cliente debe conocer la ubicación del servidor. Es decir su IP y el puerto Lo siguiente que debe conocer es el formato del mensaje a enviar, es decir el tipo de datos; que generalmente se definen en el protocolo. RPC: Remote Procedure Call Son tecnologías que aún se siguen utilizando en estos tiempos. Comunicación entre procesos. Un ejemplo es el de copiar-pegar realizados en las mismas computadoras. Buscan ocultar detalles técnicos de bajo nivel al programador convencional. ; c=suma(a, b); printf(“/ d”,c); La idea es que, cuando se usa RPC se trabaja de manera remota de la misma manera que se trabaja de manera local. Es evidente que en la parte de abajo existe un esquema importante para realizar una C S C S int suma (int a, int b){ return (a+b); }

Upload: santiago-ayala-velasco

Post on 31-Jul-2015

133 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Rpc

RPCRevisión de Sockets

Definición de protocolo, empieza a generar problemas de comunicación. Dependencia de Direccionamiento IPProtocolo petición-respuesta

Se tienen varias interrogantes de por medio. Una de ellas es la del cliente que debe tratar de conocer si puede ser una función local.El cliente debe conocer la ubicación del servidor. Es decir su IP y el puertoLo siguiente que debe conocer es el formato del mensaje a enviar, es decir el tipo de datos; que generalmente se definen en el protocolo.

RPC: Remote Procedure CallSon tecnologías que aún se siguen utilizando en estos tiempos.Comunicación entre procesos. Un ejemplo es el de copiar-pegar realizados en las mismas computadoras. Buscan ocultar detalles técnicos de bajo nivel al programador convencional.

;c=suma(a,b);printf(“/d”,c);

La idea es que, cuando se usa RPC se trabaja de manera remota de la misma manera que se trabaja de manera local. Es evidente que en la parte de abajo existe un esquema importante para realizar una función local a remota. Ejecutar funciones remotas de la misma manera que se ejecutan las funciones locales.

En 1985 se tienen:

NFS (Network File System). Fue la primera aproximación para compartición de recursos, se lo usa para UNIX.

NIS (Network Identification System). Con esto se logra tener un directorio centralizado de usuarios. Los cambios de contraseña afectan a varias computadoras.

C S

C S

int suma (int a, int b){return (a+b);

}

Page 2: Rpc

La arquitectura de RPC está basada en 3 capas: Módulos de Usuario: es aquí donde el usuario programa la función y, su respectiva

implementación. STUB: resguardos. Componentes de la arquitectura Módulo de comunicaciones: última capa del modelo OSI

XDR: External Data Representation Dispatcher: despachador, propio del procesador. Marshall: aplanamiento del mensaje

Cliente ServidorRetorno

LocalLlamada

Local Módulos de UsuarioFuncionesImplementadas

RetornoLocal

MarshallAplanamient

oSerializacion

Pasar a XDR

STUBRESGUARDOS

Dispatcher

Unmarshal

PasarLenguajeNativo

Recibir Enviar Módulos de Comunicación Recibir Enviar

Marshall: datos compuestos

Page 3: Rpc

XDR: es necesario Al programador le corresponden los 2 superiores

IDL (Lenguaje de Definición de Interfaz)(XDR).-Son diferentes al anterior XDR de los STUBSEs un archivo de texto que debe ser compilado por un compilador de RPC

S.SS.C

IDL(XDR) Compilador RPC Rutinas de SerializacionLibrerías de RPC

Vamos a usar un IDL=RPC, un compilador RPC= rpcgenEl compilador rpcgen puede utilizar:

-a Ej. ClienteEj. ServidorScript de Compilación

.obj -> no se puede ejecutar como .exe ya que necesita las referencias de las libreríasRPC de SUN recibe un parámetro por función

struct Dato{int a;int b;

};

program CALCULADORA{version VERSION=CALCULADORA{

int suma(Dato)=1;}=1 (versión)

}=99 (número)

El Portmapper registra nombre del programa, numero del programa y la versión del programa