SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
Es un protocolo que permite a un
programa ejecutar código en otra máquina
remota sin tener que preocuparse por las
comunicaciones entre ambos.
Es un avance sobre los sockets. El
programador no tenía que estar pendiente
de las comunicaciones, estando éstas
encapsuladas dentro de las RPC.
Sirve para la comunicación entre procesos
en una o más computadoras conectadas a
una red.
COMUNICACIÓN EN RPC
CLIENTE
B
I
N
D
I
N
G
D
E
R
P
C
STUB
SKELETON
Estructura
ID_PARAMETE
RS
Procedimiento
(A)
FUNCION X()
Procedimiento
(B)
Procedimiento
(A)
SERVIDOR
 STUB es un pedazo de código que se usa para
convertir los parámetros pasados ​​durante una llamada
a procedimiento remoto.
 SKELETON representa un objeto de servidor que
participa en la comunicación de objetos distribuidos .
En el código del programa servidor básicamente
hay que seguir los siguientes pasos:
 Codificar las funciones que van a ser llamadas
siguiendo un determinado mecanismo.
 Informar al sistema operativo de un nombre, una
versión y funciones que publica.
 Meterse en un bucle infinito esperando que
alguien llame a alguna de sus funciones.
Mientras que el programa cliente debe:
 Establecer una conexión con el servidor.
 Llamar a las funciones.
 Cerrar la conexión con el servidor.
 Mensaje de petición: identifica al procedimiento
llamado, contiene parámetros de la llamada.
 Mensaje de respuesta: contiene valores
devueltos.
 Transporte: Se encarga de enviar/recibir mensajes
para comunicar ambas partes. Se encarga de
gestionar los contenidos de esos mensajes
(empaquetado y formateado de datos).
 El stub del cliente: se encarga de empaquetar los
parámetros y la solicitud, enviarlos al intermediario
en el servidor, y luego esperar la respuesta,
desempaquetarla y entregarla a la aplicación.
 El programa principal del servidor (que incluye el
stub y el dispatcher): se encarga de recibir
peticiones, desempaquetar los parámetros, invocar la
función solicitada, pasarle los parámetros, luego
obtener el resultado, empaquetarlo y enviarlo al cliente.
 Las rutinas de serialización de datos: Se debe tomar
en cuenta que las máquinas cliente y servidor puedan
ser de arquitectura diferente (y no compatible).
 Servicio de binding: Responsable de la transparencia
de localización, gestiona la asociación entre el nombre
del procedimiento remoto (y su versión) con su
localización en la maquina servidor
(dirección, puertos, skeleton, etc). Realiza la búsqueda
del skeleton de la implementación concreta del
procedimiento remoto llamado por un cliente.
 Procedimiento remoto puede ejecutarse una vez o
ninguna vez.
 El cliente puede recibir una respuesta o ninguna.
Funcionamiento
 El cliente envía una petición y se queda a la espera un
tiempo determinado.
 Si no llega la respuesta dentro del tiempo de
espera, continúa su ejecución.
 El cliente no tiene realimentación en caso de fallo (no
sabe que pasó).
 Sólo admisible en aplicaciones donde se tolere la
pérdida de peticiones y la recepción de respuestas con
retraso (fuera de orden).
 Procedimiento remoto se ejecuta una o más veces.
 El cliente puede recibir una o más respuestas.
Funcionamiento
 El cliente envía una petición y queda a la espera un tiempo.
 Si no llega respuesta o ACK dentro del tiempo de espera, repite la
petición.
 El servidor no filtra peticiones duplicadas (el procedimiento remoto
puede ejecutarse repetidas veces).
 El cliente puede recibir varias respuestas.
Sólo es aplicable cuando se usan exclusivamente operaciones
idempotentes (repetibles). Nota: Una operación es idempotente si se
puede ejecutar varias veces resultando el mismo efecto que si se
hubiera ejecutado sólo una. En ocasiones una operación no
idempotente puede implementarse como una secuencia de
operaciones idempotentes. Admisible en aplicaciones donde se tolere
que se puedan repetir invocaciones sin afectar a su funcionamiento.
 El procedimiento remoto se ejecuta exactamente una vez o no
llega a ejecutarse ninguna.
 El cliente recibe una respuesta o una indicación de que no se
ha ejecutado el procedimiento remoto.
 Funcionamiento
 El cliente envía la petición y queda a la espera un tiempo.
 Si no llega respuesta o ACK dentro del tiempo de
espera, repite la petición.
 El servidor filtra las peticiones duplicadas y guarda historial
con las respuestas enviadas (servidor con memoria). El
procedimiento remoto sólo se ejecuta una vez.
 El cliente sólo recibe una respuesta si la petición llegó y se
ejecutó el procedimiento, si no recibe informe del error.
 La interfaz que proporciona el servidor se refiere a la “forma”
de las llamadas exportadas por el servidor.
 Una interface es el principal acuerdo entre el componente de
software y el cliente.
 El lenguaje de definición de interfaces (IDL) fue desarrollado
para que los objetos en lenguajes diferentes puedan
invocarse entre sí.
 Corba usa CORBA IDL, Sun propone XDR para su RPC,
DCE usa su IDL para RPC, Microsoft usa DCOM IDL.
 Para la comunicación entre el servidor y el cliente, se
trabaja con interfaces, que deben ser implementadas por el
servidor y/o cliente, para que los STUBs puedan realizar la
transparencia para ambos. Además esto evita que deba
existir una definición local real de la clase remota, es
decir, en el cliente solo debe estar definida la interface, no
la clase remota.
 Proporcionar un middelware que simplifique el desarrollo de
aplicaciones distribuidas .
 Evitar que programador tenga que interactuar directamente con los
Sockets.
 Abstraer (ocultar) los detalles relativos a la red.
 El Servidor ofrece procedimientos que el cliente llama como si fueran
procedimientos locales.
 Se busca ofrecer un entorno de programación lo mas similar posible a
un entorno no distribuido.
 El sistema RPC oculta los detalles de implementación de esas llamadas
remotas.
 Implementa la llamada remota mediante un dialogo petición respuesta.
 Sun-RPC (ONC-RPC: Open Network Computing-
RPC): RPC muy extendido en entornos
Unix, infraestructrua sobre la que se ejecuta NFS
(servicio de sistema de ficheros en red), NIS (servicio
de directorio).
 DCE/RPC (Distributed Computing Environmen RPC):
RPC definido por la Open Software Foundation
 Java-RMI : invocación de métodos remotos en Java
 CORBA (Common Object Requesting Broker
Architecture): soporta la invocación de métodos
remotos bajo un paradigma orientado a objetos en
diversos lenguajes
SOAP (Simple Object Access Protocol):
protocolo RPC basado en el intercambio
de datos (parámetos+resultados) en
formato XML
DCOM (Distributed Component Object
Model): Modelo de Objetos de
Componentes Distribuidos de Microsoft,
con elementos de DCE/RPC
.NET Remoting: Infraestructura de
invocación remota de .NET
Hay distintos tipos de RPC, muchos de ellos
estandarizados como pueden ser:
 RPC de Sun denominado ONC RPC (RFC 1057)
 RPC de OSF denominado DCE/RPC
 Modelo de Objetos de Componentes Distribuidos
de Microsoft DCOM
Aunque ninguno de estos es compatible entre sí. La
mayoría de ellos utilizan un lenguaje de descripción
de interfaz (IDL) que define los métodos exportados
por el servidor.
Hoy en día se está utilizando el XML como lenguaje
para definir el IDL y el HTTP como protocolo de red,
dando lugar a lo que se conoce como servicios web.
http://www.ecured.cu/index.php/Llamada_
a_Procedimiento_Remoto
http://www.tamps.cinvestav.mx/~vjsosa/cla
ses/sd/RPC_ppt.pdf
http://www.cs.cf.ac.uk/Dave/C/node33.html
www.chuidiang.com/clinux/rpc/rpc.php

Mais conteúdo relacionado

Mais procurados

Redes Avanzadas; Protocolos de enrutamientos
Redes  Avanzadas; Protocolos de enrutamientos Redes  Avanzadas; Protocolos de enrutamientos
Redes Avanzadas; Protocolos de enrutamientos Victor Ramirez Pulido
 
Comunicacion entre procesos SSDD
Comunicacion entre procesos SSDDComunicacion entre procesos SSDD
Comunicacion entre procesos SSDDJorge Guerra
 
Funciones de la capa de enlace
Funciones de la capa de enlaceFunciones de la capa de enlace
Funciones de la capa de enlacecleiver_antonio
 
PROTOCOLOS SIMPLES PARA GESTIÓN DE REDES
PROTOCOLOS SIMPLES PARA GESTIÓN DE REDESPROTOCOLOS SIMPLES PARA GESTIÓN DE REDES
PROTOCOLOS SIMPLES PARA GESTIÓN DE REDESEquipoSCADA
 
Enrutamiento IPv6 OSPFv3
Enrutamiento IPv6 OSPFv3Enrutamiento IPv6 OSPFv3
Enrutamiento IPv6 OSPFv3Jhoni Guerrero
 
4.5.3 operacion y seguridad seguridad en capas
4.5.3 operacion y seguridad   seguridad en capas4.5.3 operacion y seguridad   seguridad en capas
4.5.3 operacion y seguridad seguridad en capasJose Hernandez Landa
 
Modelo osi, capas protocolos y componentes de red
Modelo osi, capas protocolos y componentes de redModelo osi, capas protocolos y componentes de red
Modelo osi, capas protocolos y componentes de redJohandri Marcano
 
Origen del Modelo OSI y su impacto en als estructuras de redes
Origen del Modelo OSI y su impacto en als estructuras de redesOrigen del Modelo OSI y su impacto en als estructuras de redes
Origen del Modelo OSI y su impacto en als estructuras de redesKim Sorel Rush
 
Comandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos ciscoComandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos ciscoCISCO NETWORKING
 
MODELO OSI.: CAPA DE SESION Y CAPA DE PRESENTACION; RENDIMIENTO DE REDES
MODELO OSI.: CAPA DE SESION Y CAPA DE PRESENTACION; RENDIMIENTO DE REDESMODELO OSI.: CAPA DE SESION Y CAPA DE PRESENTACION; RENDIMIENTO DE REDES
MODELO OSI.: CAPA DE SESION Y CAPA DE PRESENTACION; RENDIMIENTO DE REDESANYELISTOVAR
 
La familia de protocolos TCP/IP
La familia de protocolos TCP/IPLa familia de protocolos TCP/IP
La familia de protocolos TCP/IPaamancera
 
Capa de transporte
Capa de transporteCapa de transporte
Capa de transportelaura1352
 
Interconexión de redes adrian
Interconexión de redes adrianInterconexión de redes adrian
Interconexión de redes adrianadriansax
 
X.25 y frame relay
X.25 y frame relayX.25 y frame relay
X.25 y frame relayJLC1988
 
Lecture 9 10 .mobile ad-hoc routing protocols
Lecture 9 10 .mobile ad-hoc routing protocolsLecture 9 10 .mobile ad-hoc routing protocols
Lecture 9 10 .mobile ad-hoc routing protocolsChandra Meena
 
Protocolos de red
Protocolos de redProtocolos de red
Protocolos de redlupeziitha
 
Mobile transportlayer
Mobile transportlayerMobile transportlayer
Mobile transportlayerRahul Hada
 

Mais procurados (20)

Redes Avanzadas; Protocolos de enrutamientos
Redes  Avanzadas; Protocolos de enrutamientos Redes  Avanzadas; Protocolos de enrutamientos
Redes Avanzadas; Protocolos de enrutamientos
 
Comunicacion entre procesos SSDD
Comunicacion entre procesos SSDDComunicacion entre procesos SSDD
Comunicacion entre procesos SSDD
 
Funciones de la capa de enlace
Funciones de la capa de enlaceFunciones de la capa de enlace
Funciones de la capa de enlace
 
PROTOCOLOS SIMPLES PARA GESTIÓN DE REDES
PROTOCOLOS SIMPLES PARA GESTIÓN DE REDESPROTOCOLOS SIMPLES PARA GESTIÓN DE REDES
PROTOCOLOS SIMPLES PARA GESTIÓN DE REDES
 
Modelo osi - Introducción
Modelo osi - IntroducciónModelo osi - Introducción
Modelo osi - Introducción
 
Enrutamiento IPv6 OSPFv3
Enrutamiento IPv6 OSPFv3Enrutamiento IPv6 OSPFv3
Enrutamiento IPv6 OSPFv3
 
Diapositivas REDES LAN
Diapositivas REDES LANDiapositivas REDES LAN
Diapositivas REDES LAN
 
Stp
StpStp
Stp
 
4.5.3 operacion y seguridad seguridad en capas
4.5.3 operacion y seguridad   seguridad en capas4.5.3 operacion y seguridad   seguridad en capas
4.5.3 operacion y seguridad seguridad en capas
 
Modelo osi, capas protocolos y componentes de red
Modelo osi, capas protocolos y componentes de redModelo osi, capas protocolos y componentes de red
Modelo osi, capas protocolos y componentes de red
 
Origen del Modelo OSI y su impacto en als estructuras de redes
Origen del Modelo OSI y su impacto en als estructuras de redesOrigen del Modelo OSI y su impacto en als estructuras de redes
Origen del Modelo OSI y su impacto en als estructuras de redes
 
Comandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos ciscoComandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos cisco
 
MODELO OSI.: CAPA DE SESION Y CAPA DE PRESENTACION; RENDIMIENTO DE REDES
MODELO OSI.: CAPA DE SESION Y CAPA DE PRESENTACION; RENDIMIENTO DE REDESMODELO OSI.: CAPA DE SESION Y CAPA DE PRESENTACION; RENDIMIENTO DE REDES
MODELO OSI.: CAPA DE SESION Y CAPA DE PRESENTACION; RENDIMIENTO DE REDES
 
La familia de protocolos TCP/IP
La familia de protocolos TCP/IPLa familia de protocolos TCP/IP
La familia de protocolos TCP/IP
 
Capa de transporte
Capa de transporteCapa de transporte
Capa de transporte
 
Interconexión de redes adrian
Interconexión de redes adrianInterconexión de redes adrian
Interconexión de redes adrian
 
X.25 y frame relay
X.25 y frame relayX.25 y frame relay
X.25 y frame relay
 
Lecture 9 10 .mobile ad-hoc routing protocols
Lecture 9 10 .mobile ad-hoc routing protocolsLecture 9 10 .mobile ad-hoc routing protocols
Lecture 9 10 .mobile ad-hoc routing protocols
 
Protocolos de red
Protocolos de redProtocolos de red
Protocolos de red
 
Mobile transportlayer
Mobile transportlayerMobile transportlayer
Mobile transportlayer
 

Destaque

Introducción a las tecnologías de la información
Introducción a las tecnologías de la informaciónIntroducción a las tecnologías de la información
Introducción a las tecnologías de la informaciónTaty Millan
 
Seguridad en servidores
Seguridad en servidoresSeguridad en servidores
Seguridad en servidoresTaty Millan
 
5.1.3 seguridad de los servidores
5.1.3 seguridad de los servidores5.1.3 seguridad de los servidores
5.1.3 seguridad de los servidoreschavarl
 
Cuento Los Unicornios Mágicos
Cuento Los Unicornios Mágicos Cuento Los Unicornios Mágicos
Cuento Los Unicornios Mágicos ligia Ligia
 
Tipos de servidores seguridad de redes
Tipos de servidores seguridad de redesTipos de servidores seguridad de redes
Tipos de servidores seguridad de redesestudents
 

Destaque (8)

Token Ring
Token RingToken Ring
Token Ring
 
Introducción a las tecnologías de la información
Introducción a las tecnologías de la informaciónIntroducción a las tecnologías de la información
Introducción a las tecnologías de la información
 
Seguridad en servidores
Seguridad en servidoresSeguridad en servidores
Seguridad en servidores
 
Ciberdelitos
CiberdelitosCiberdelitos
Ciberdelitos
 
5.1.3 seguridad de los servidores
5.1.3 seguridad de los servidores5.1.3 seguridad de los servidores
5.1.3 seguridad de los servidores
 
Cuento Los Unicornios Mágicos
Cuento Los Unicornios Mágicos Cuento Los Unicornios Mágicos
Cuento Los Unicornios Mágicos
 
Cocomo II
Cocomo IICocomo II
Cocomo II
 
Tipos de servidores seguridad de redes
Tipos de servidores seguridad de redesTipos de servidores seguridad de redes
Tipos de servidores seguridad de redes
 

Semelhante a RPC permite código remoto

Semelhante a RPC permite código remoto (20)

Conexion dinamica
Conexion dinamicaConexion dinamica
Conexion dinamica
 
Rpc te
Rpc teRpc te
Rpc te
 
Sesion 08 tel202 2010-1
Sesion 08   tel202 2010-1Sesion 08   tel202 2010-1
Sesion 08 tel202 2010-1
 
Comunicación entre procesos Sistemas distribuidos
Comunicación entre procesos Sistemas distribuidosComunicación entre procesos Sistemas distribuidos
Comunicación entre procesos Sistemas distribuidos
 
Networking
NetworkingNetworking
Networking
 
SEMANA 6.pptx
SEMANA 6.pptxSEMANA 6.pptx
SEMANA 6.pptx
 
COMUNICACIÓN DISTRIBUIDA
COMUNICACIÓN DISTRIBUIDACOMUNICACIÓN DISTRIBUIDA
COMUNICACIÓN DISTRIBUIDA
 
RPC - LLAMADAS REMOTAS
RPC - LLAMADAS REMOTASRPC - LLAMADAS REMOTAS
RPC - LLAMADAS REMOTAS
 
Unidad II
Unidad IIUnidad II
Unidad II
 
Preparando el entorno de Red de Oracle Database 11gZ052 06
Preparando el entorno de Red de Oracle Database 11gZ052 06Preparando el entorno de Red de Oracle Database 11gZ052 06
Preparando el entorno de Red de Oracle Database 11gZ052 06
 
Comunicación distribuida
Comunicación distribuidaComunicación distribuida
Comunicación distribuida
 
Comunicación distribuida
Comunicación distribuidaComunicación distribuida
Comunicación distribuida
 
Clases 30 05
Clases 30 05Clases 30 05
Clases 30 05
 
Dire u1 a2_roch
Dire u1 a2_rochDire u1 a2_roch
Dire u1 a2_roch
 
PROTOCOLOS DE RED
PROTOCOLOS DE REDPROTOCOLOS DE RED
PROTOCOLOS DE RED
 
Protocolos
ProtocolosProtocolos
Protocolos
 
Capitulo 2 comunicacion
Capitulo 2 comunicacionCapitulo 2 comunicacion
Capitulo 2 comunicacion
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
10 -capas_superiores
10  -capas_superiores10  -capas_superiores
10 -capas_superiores
 
Proyecto final teleprocesamiento
Proyecto final teleprocesamientoProyecto final teleprocesamiento
Proyecto final teleprocesamiento
 

Último

Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskbydaniela5
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nóminacuellosameidy
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaElizabethLpezSoto
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalEmanuelCastro64
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar24roberto21
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerenciacubillannoly
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888ElianaValencia28
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosAlbanyMartinez7
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024anasofiarodriguezcru
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docxobandopaula444
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1ivanapaterninar
 
PROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y masPROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y maslida630411
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointValerioIvanDePazLoja
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaYeimys Ch
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfJoseAlejandroPerezBa
 

Último (20)

Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nómina
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestría
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamental
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
Slideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan GerenciaSlideshare y Scribd - Noli Cubillan Gerencia
Slideshare y Scribd - Noli Cubillan Gerencia
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos Juridicos
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1
 
PROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y masPROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y mas
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power Point
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
 

RPC permite código remoto

  • 1.
  • 2. Es un protocolo que permite a un programa ejecutar código en otra máquina remota sin tener que preocuparse por las comunicaciones entre ambos. Es un avance sobre los sockets. El programador no tenía que estar pendiente de las comunicaciones, estando éstas encapsuladas dentro de las RPC.
  • 3. Sirve para la comunicación entre procesos en una o más computadoras conectadas a una red.
  • 5.  STUB es un pedazo de código que se usa para convertir los parámetros pasados ​​durante una llamada a procedimiento remoto.  SKELETON representa un objeto de servidor que participa en la comunicación de objetos distribuidos .
  • 6. En el código del programa servidor básicamente hay que seguir los siguientes pasos:  Codificar las funciones que van a ser llamadas siguiendo un determinado mecanismo.  Informar al sistema operativo de un nombre, una versión y funciones que publica.  Meterse en un bucle infinito esperando que alguien llame a alguna de sus funciones. Mientras que el programa cliente debe:  Establecer una conexión con el servidor.  Llamar a las funciones.  Cerrar la conexión con el servidor.
  • 7.
  • 8.  Mensaje de petición: identifica al procedimiento llamado, contiene parámetros de la llamada.  Mensaje de respuesta: contiene valores devueltos.  Transporte: Se encarga de enviar/recibir mensajes para comunicar ambas partes. Se encarga de gestionar los contenidos de esos mensajes (empaquetado y formateado de datos).  El stub del cliente: se encarga de empaquetar los parámetros y la solicitud, enviarlos al intermediario en el servidor, y luego esperar la respuesta, desempaquetarla y entregarla a la aplicación.
  • 9.  El programa principal del servidor (que incluye el stub y el dispatcher): se encarga de recibir peticiones, desempaquetar los parámetros, invocar la función solicitada, pasarle los parámetros, luego obtener el resultado, empaquetarlo y enviarlo al cliente.  Las rutinas de serialización de datos: Se debe tomar en cuenta que las máquinas cliente y servidor puedan ser de arquitectura diferente (y no compatible).  Servicio de binding: Responsable de la transparencia de localización, gestiona la asociación entre el nombre del procedimiento remoto (y su versión) con su localización en la maquina servidor (dirección, puertos, skeleton, etc). Realiza la búsqueda del skeleton de la implementación concreta del procedimiento remoto llamado por un cliente.
  • 10.
  • 11.
  • 12.  Procedimiento remoto puede ejecutarse una vez o ninguna vez.  El cliente puede recibir una respuesta o ninguna. Funcionamiento  El cliente envía una petición y se queda a la espera un tiempo determinado.  Si no llega la respuesta dentro del tiempo de espera, continúa su ejecución.  El cliente no tiene realimentación en caso de fallo (no sabe que pasó).  Sólo admisible en aplicaciones donde se tolere la pérdida de peticiones y la recepción de respuestas con retraso (fuera de orden).
  • 13.  Procedimiento remoto se ejecuta una o más veces.  El cliente puede recibir una o más respuestas. Funcionamiento  El cliente envía una petición y queda a la espera un tiempo.  Si no llega respuesta o ACK dentro del tiempo de espera, repite la petición.  El servidor no filtra peticiones duplicadas (el procedimiento remoto puede ejecutarse repetidas veces).  El cliente puede recibir varias respuestas. Sólo es aplicable cuando se usan exclusivamente operaciones idempotentes (repetibles). Nota: Una operación es idempotente si se puede ejecutar varias veces resultando el mismo efecto que si se hubiera ejecutado sólo una. En ocasiones una operación no idempotente puede implementarse como una secuencia de operaciones idempotentes. Admisible en aplicaciones donde se tolere que se puedan repetir invocaciones sin afectar a su funcionamiento.
  • 14.  El procedimiento remoto se ejecuta exactamente una vez o no llega a ejecutarse ninguna.  El cliente recibe una respuesta o una indicación de que no se ha ejecutado el procedimiento remoto.  Funcionamiento  El cliente envía la petición y queda a la espera un tiempo.  Si no llega respuesta o ACK dentro del tiempo de espera, repite la petición.  El servidor filtra las peticiones duplicadas y guarda historial con las respuestas enviadas (servidor con memoria). El procedimiento remoto sólo se ejecuta una vez.  El cliente sólo recibe una respuesta si la petición llegó y se ejecutó el procedimiento, si no recibe informe del error.
  • 15.  La interfaz que proporciona el servidor se refiere a la “forma” de las llamadas exportadas por el servidor.  Una interface es el principal acuerdo entre el componente de software y el cliente.  El lenguaje de definición de interfaces (IDL) fue desarrollado para que los objetos en lenguajes diferentes puedan invocarse entre sí.  Corba usa CORBA IDL, Sun propone XDR para su RPC, DCE usa su IDL para RPC, Microsoft usa DCOM IDL.
  • 16.  Para la comunicación entre el servidor y el cliente, se trabaja con interfaces, que deben ser implementadas por el servidor y/o cliente, para que los STUBs puedan realizar la transparencia para ambos. Además esto evita que deba existir una definición local real de la clase remota, es decir, en el cliente solo debe estar definida la interface, no la clase remota.
  • 17.  Proporcionar un middelware que simplifique el desarrollo de aplicaciones distribuidas .  Evitar que programador tenga que interactuar directamente con los Sockets.  Abstraer (ocultar) los detalles relativos a la red.  El Servidor ofrece procedimientos que el cliente llama como si fueran procedimientos locales.  Se busca ofrecer un entorno de programación lo mas similar posible a un entorno no distribuido.  El sistema RPC oculta los detalles de implementación de esas llamadas remotas.  Implementa la llamada remota mediante un dialogo petición respuesta.
  • 18.  Sun-RPC (ONC-RPC: Open Network Computing- RPC): RPC muy extendido en entornos Unix, infraestructrua sobre la que se ejecuta NFS (servicio de sistema de ficheros en red), NIS (servicio de directorio).  DCE/RPC (Distributed Computing Environmen RPC): RPC definido por la Open Software Foundation  Java-RMI : invocación de métodos remotos en Java  CORBA (Common Object Requesting Broker Architecture): soporta la invocación de métodos remotos bajo un paradigma orientado a objetos en diversos lenguajes
  • 19. SOAP (Simple Object Access Protocol): protocolo RPC basado en el intercambio de datos (parámetos+resultados) en formato XML DCOM (Distributed Component Object Model): Modelo de Objetos de Componentes Distribuidos de Microsoft, con elementos de DCE/RPC .NET Remoting: Infraestructura de invocación remota de .NET
  • 20. Hay distintos tipos de RPC, muchos de ellos estandarizados como pueden ser:  RPC de Sun denominado ONC RPC (RFC 1057)  RPC de OSF denominado DCE/RPC  Modelo de Objetos de Componentes Distribuidos de Microsoft DCOM Aunque ninguno de estos es compatible entre sí. La mayoría de ellos utilizan un lenguaje de descripción de interfaz (IDL) que define los métodos exportados por el servidor. Hoy en día se está utilizando el XML como lenguaje para definir el IDL y el HTTP como protocolo de red, dando lugar a lo que se conoce como servicios web.