SlideShare a Scribd company logo
1 of 9
REMOTE
PROCEDURE
CALL
REMOTE PROCEDURE
CALL (RPC)
 Is a protocol that one program can use to request a
service from a program located in another computer in
a network without having to understand network details.
 A procedure call is also sometimes known as a function
call or a subroutine call.
 The requesting program is a client and the service-
providing program is the server.
 When program statements that use RPC are compiled
into an executable program, a stub is included in the
compiled code that acts as the representative of the
remote procedure code.
 the server includes a runtime program and stub that
interface with the remote procedure itself.
RPC
STUBS
 When the calling process calls a procedure, the action
performed by that procedure will not be the actual
code as written, but code that begins network
communication.
 It has to connect to the remote machine, send all the
parameters down to it, wait for replies, do the right
thing to the stack and return. This is the client side stub.
 The server side stub has to wait for messages asking for
a procedure to run.
 It has to read the parameters, and present them in a
suitable form to execute the procedure locally. After
execution, it has to send the results back to the calling
process.
HOW RPC WORKS?
 An RPC is analogous to a function call. Like a function
call, when an RPC is made, the calling arguments are
passed to the remote procedure and the caller waits
for a response to be returned from the remote
procedure.
 The client makes a procedure call that sends a request
to the server and waits.
 When the request arrives, the server calls a dispatch
routine that performs the requested service, and sends
the reply to the client.
 After the RPC call is completed, the client program
continues. RPC specifically supports network
applications.
RPC APPLICATION
DEVELOPMENT
 To develop an RPC application the following steps are
needed:
• 1) Specify the protocol for client server
communication
• 2) Develop the client program
• 3) Develop the server program
 The programs will be compiled separately.
 The communication protocol is achieved by
generated stubs and these stubs and rpc (and other
libraries) will need to be linked in.
STUB
STUB
 The client calls the local stub procedure. The stub packages up
the parameters into a network message. This is called marshaling.
 Networking functions in the O/S kernel are called by the stub to
send the message.
 The kernel sends the message(s) to the remote system. This may
be connection-oriented or connectionless.
 A server stub unmarshals the arguments from the network
message.
 The server stub executes a local procedure call.
 The procedure completes, returning execution to the server stub.
 The server stub marshals the return values into a network
message.
 The return messages are sent back.
 The client stub reads the messages using the network functions.
 The message is unmarshalled. And the return values are set on
the stack for the local process.

More Related Content

What's hot

Computer Network - Network Layer
Computer Network - Network LayerComputer Network - Network Layer
Computer Network - Network LayerManoj Kumar
 
Introduction to Remote Procedure Call
Introduction to Remote Procedure CallIntroduction to Remote Procedure Call
Introduction to Remote Procedure CallAbdelrahman Al-Ogail
 
Chapter 4 data link layer
Chapter 4 data link layerChapter 4 data link layer
Chapter 4 data link layerNaiyan Noor
 
Application layer
Application layerApplication layer
Application layerreshmadayma
 
User datagram protocol (udp)
User datagram protocol (udp)User datagram protocol (udp)
User datagram protocol (udp)Ramola Dhande
 
Distributed Objects and Remote Invocation
Distributed Objects and Remote InvocationDistributed Objects and Remote Invocation
Distributed Objects and Remote InvocationMedicaps University
 
HDLC and Point to point protocol
HDLC and Point to point protocolHDLC and Point to point protocol
HDLC and Point to point protocolKinza Razzaq
 
Open shortest path first (ospf)
Open shortest path first (ospf)Open shortest path first (ospf)
Open shortest path first (ospf)Respa Peter
 
Sockets in unix
Sockets in unixSockets in unix
Sockets in unixswtjerin4u
 
Controlled Access Protocols
Controlled Access ProtocolsControlled Access Protocols
Controlled Access ProtocolsPruthviraj Konu
 
Architecture of Mobile Computing
Architecture of Mobile ComputingArchitecture of Mobile Computing
Architecture of Mobile ComputingJAINIK PATEL
 
Chapter 4 a interprocess communication
Chapter 4 a interprocess communicationChapter 4 a interprocess communication
Chapter 4 a interprocess communicationAbDul ThaYyal
 
Computer network switching
Computer network switchingComputer network switching
Computer network switchingShivani Godha
 

What's hot (20)

Computer Network - Network Layer
Computer Network - Network LayerComputer Network - Network Layer
Computer Network - Network Layer
 
Introduction to Remote Procedure Call
Introduction to Remote Procedure CallIntroduction to Remote Procedure Call
Introduction to Remote Procedure Call
 
Stop and-wait protocol
Stop and-wait protocolStop and-wait protocol
Stop and-wait protocol
 
Dhcp ppt
Dhcp pptDhcp ppt
Dhcp ppt
 
Chapter 4 data link layer
Chapter 4 data link layerChapter 4 data link layer
Chapter 4 data link layer
 
Application layer
Application layerApplication layer
Application layer
 
User datagram protocol (udp)
User datagram protocol (udp)User datagram protocol (udp)
User datagram protocol (udp)
 
Routing
RoutingRouting
Routing
 
Distributed Objects and Remote Invocation
Distributed Objects and Remote InvocationDistributed Objects and Remote Invocation
Distributed Objects and Remote Invocation
 
HDLC and Point to point protocol
HDLC and Point to point protocolHDLC and Point to point protocol
HDLC and Point to point protocol
 
Data link layer
Data link layer Data link layer
Data link layer
 
Open shortest path first (ospf)
Open shortest path first (ospf)Open shortest path first (ospf)
Open shortest path first (ospf)
 
Sockets in unix
Sockets in unixSockets in unix
Sockets in unix
 
Message passing in Distributed Computing Systems
Message passing in Distributed Computing SystemsMessage passing in Distributed Computing Systems
Message passing in Distributed Computing Systems
 
Osi model
Osi modelOsi model
Osi model
 
Controlled Access Protocols
Controlled Access ProtocolsControlled Access Protocols
Controlled Access Protocols
 
Architecture of Mobile Computing
Architecture of Mobile ComputingArchitecture of Mobile Computing
Architecture of Mobile Computing
 
Distributed System ppt
Distributed System pptDistributed System ppt
Distributed System ppt
 
Chapter 4 a interprocess communication
Chapter 4 a interprocess communicationChapter 4 a interprocess communication
Chapter 4 a interprocess communication
 
Computer network switching
Computer network switchingComputer network switching
Computer network switching
 

Viewers also liked

Rpc (Distributed computing)
Rpc (Distributed computing)Rpc (Distributed computing)
Rpc (Distributed computing)Sri Prasanna
 
Sun RPC (Remote Procedure Call)
Sun RPC (Remote Procedure Call)Sun RPC (Remote Procedure Call)
Sun RPC (Remote Procedure Call)Peter R. Egli
 
remote procedure calls
  remote procedure calls  remote procedure calls
remote procedure callsAshish Kumar
 
Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]Ravindra Raju Kolahalam
 
Inter process communication
Inter process communicationInter process communication
Inter process communicationRJ Mehul Gadhiya
 

Viewers also liked (7)

Rpc (Distributed computing)
Rpc (Distributed computing)Rpc (Distributed computing)
Rpc (Distributed computing)
 
Sun RPC (Remote Procedure Call)
Sun RPC (Remote Procedure Call)Sun RPC (Remote Procedure Call)
Sun RPC (Remote Procedure Call)
 
RPC
RPCRPC
RPC
 
remote procedure calls
  remote procedure calls  remote procedure calls
remote procedure calls
 
Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]
 
Inter process communication
Inter process communicationInter process communication
Inter process communication
 
Inter Process Communication
Inter Process CommunicationInter Process Communication
Inter Process Communication
 

Similar to Remote procedure call on client server computing

Middleware in Distributed System-RPC,RMI
Middleware in Distributed System-RPC,RMIMiddleware in Distributed System-RPC,RMI
Middleware in Distributed System-RPC,RMIPrajakta Rane
 
Remote procedure calls
Remote procedure callsRemote procedure calls
Remote procedure callsimnomus
 
Dos(rpc)avishek130650107020
Dos(rpc)avishek130650107020Dos(rpc)avishek130650107020
Dos(rpc)avishek130650107020Avishek Sarkar
 
CHP-4.pptx
CHP-4.pptxCHP-4.pptx
CHP-4.pptxFamiDan
 
Task communication
Task communicationTask communication
Task communication1jayanti
 
Cs556 section3
Cs556 section3Cs556 section3
Cs556 section3farshad33
 
Chapter 2B-Communication.ppt
Chapter 2B-Communication.pptChapter 2B-Communication.ppt
Chapter 2B-Communication.pptsirajmohammed35
 
Topic2 Understanding Middleware
Topic2 Understanding MiddlewareTopic2 Understanding Middleware
Topic2 Understanding Middlewaresanjoysanyal
 
Byte Ordering - Unit 2.pptx
Byte Ordering - Unit 2.pptxByte Ordering - Unit 2.pptx
Byte Ordering - Unit 2.pptxRockyBhai46825
 
Remote Procedure Call
Remote Procedure CallRemote Procedure Call
Remote Procedure CallNadia Nahar
 
remote method invocation
remote method invocationremote method invocation
remote method invocationRavi Theja
 
Chapter 4 communication2
Chapter 4 communication2Chapter 4 communication2
Chapter 4 communication2DBU
 
Remote invocation
Remote invocationRemote invocation
Remote invocationishapadhy
 
Rapyuta:Cloud robotics Platform - by shan
Rapyuta:Cloud robotics Platform - by shanRapyuta:Cloud robotics Platform - by shan
Rapyuta:Cloud robotics Platform - by shanshan km
 

Similar to Remote procedure call on client server computing (20)

Middleware in Distributed System-RPC,RMI
Middleware in Distributed System-RPC,RMIMiddleware in Distributed System-RPC,RMI
Middleware in Distributed System-RPC,RMI
 
Remote procedure calls
Remote procedure callsRemote procedure calls
Remote procedure calls
 
Dos(rpc)avishek130650107020
Dos(rpc)avishek130650107020Dos(rpc)avishek130650107020
Dos(rpc)avishek130650107020
 
Remote Procedure Call
Remote Procedure CallRemote Procedure Call
Remote Procedure Call
 
MSB-Remote procedure call
MSB-Remote procedure callMSB-Remote procedure call
MSB-Remote procedure call
 
Lecture9
Lecture9Lecture9
Lecture9
 
CHP-4.pptx
CHP-4.pptxCHP-4.pptx
CHP-4.pptx
 
Task communication
Task communicationTask communication
Task communication
 
Cs556 section3
Cs556 section3Cs556 section3
Cs556 section3
 
Cs556 section3
Cs556 section3Cs556 section3
Cs556 section3
 
Chapter 2B-Communication.ppt
Chapter 2B-Communication.pptChapter 2B-Communication.ppt
Chapter 2B-Communication.ppt
 
Topic2 Understanding Middleware
Topic2 Understanding MiddlewareTopic2 Understanding Middleware
Topic2 Understanding Middleware
 
Byte Ordering - Unit 2.pptx
Byte Ordering - Unit 2.pptxByte Ordering - Unit 2.pptx
Byte Ordering - Unit 2.pptx
 
Remote Procedure Call
Remote Procedure CallRemote Procedure Call
Remote Procedure Call
 
5. Distributed Operating Systems
5. Distributed Operating Systems5. Distributed Operating Systems
5. Distributed Operating Systems
 
remote method invocation
remote method invocationremote method invocation
remote method invocation
 
Unit_2_Midddleware_2.ppt
Unit_2_Midddleware_2.pptUnit_2_Midddleware_2.ppt
Unit_2_Midddleware_2.ppt
 
Chapter 4 communication2
Chapter 4 communication2Chapter 4 communication2
Chapter 4 communication2
 
Remote invocation
Remote invocationRemote invocation
Remote invocation
 
Rapyuta:Cloud robotics Platform - by shan
Rapyuta:Cloud robotics Platform - by shanRapyuta:Cloud robotics Platform - by shan
Rapyuta:Cloud robotics Platform - by shan
 

More from Satya P. Joshi

Intergroup Conflict Management.pptx
Intergroup Conflict Management.pptxIntergroup Conflict Management.pptx
Intergroup Conflict Management.pptxSatya P. Joshi
 
Training methods in human resource managment
Training methods in human resource managmentTraining methods in human resource managment
Training methods in human resource managmentSatya P. Joshi
 
Selection tests in human resource management
Selection tests in human resource managementSelection tests in human resource management
Selection tests in human resource managementSatya P. Joshi
 
Interview and it’s types - human resource managmenet
Interview and it’s types - human resource managmenetInterview and it’s types - human resource managmenet
Interview and it’s types - human resource managmenetSatya P. Joshi
 
Motivation, achievement theory, goal setting theory
Motivation, achievement theory, goal setting theoryMotivation, achievement theory, goal setting theory
Motivation, achievement theory, goal setting theorySatya P. Joshi
 
Characteristics, objectives & challenges of human resource manager
Characteristics, objectives & challenges of human resource managerCharacteristics, objectives & challenges of human resource manager
Characteristics, objectives & challenges of human resource managerSatya P. Joshi
 
Human Resource Planning
Human Resource PlanningHuman Resource Planning
Human Resource PlanningSatya P. Joshi
 
Nested queries in database
Nested queries in databaseNested queries in database
Nested queries in databaseSatya P. Joshi
 
Technology and work design in Organizational Relation
Technology and work design in Organizational RelationTechnology and work design in Organizational Relation
Technology and work design in Organizational RelationSatya P. Joshi
 
Techniques of achieving google quality of service
Techniques of achieving google quality of serviceTechniques of achieving google quality of service
Techniques of achieving google quality of serviceSatya P. Joshi
 
Overview of digital communication in HSN and Multimedia
Overview of digital communication in HSN and MultimediaOverview of digital communication in HSN and Multimedia
Overview of digital communication in HSN and MultimediaSatya P. Joshi
 
Introduction to human resource management
Introduction to human resource managementIntroduction to human resource management
Introduction to human resource managementSatya P. Joshi
 
Security and control in Management Information System
Security and control in Management Information SystemSecurity and control in Management Information System
Security and control in Management Information SystemSatya P. Joshi
 
Designing the supply chain network
Designing the supply chain networkDesigning the supply chain network
Designing the supply chain networkSatya P. Joshi
 
Introduction to Organizational Behavior and Organizational Relation
Introduction to Organizational Behavior and Organizational RelationIntroduction to Organizational Behavior and Organizational Relation
Introduction to Organizational Behavior and Organizational RelationSatya P. Joshi
 
Selection tests and Reliability and Validity in HRM
Selection tests and Reliability and Validity in HRMSelection tests and Reliability and Validity in HRM
Selection tests and Reliability and Validity in HRMSatya P. Joshi
 
Analog and digital signal system : digital logic
Analog and digital signal system : digital logicAnalog and digital signal system : digital logic
Analog and digital signal system : digital logicSatya P. Joshi
 
Transmission media on Client server and high speed network
Transmission media on Client server and high speed networkTransmission media on Client server and high speed network
Transmission media on Client server and high speed networkSatya P. Joshi
 
Physical and logical topologies in computer network and client server
Physical  and logical topologies in computer network and client serverPhysical  and logical topologies in computer network and client server
Physical and logical topologies in computer network and client serverSatya P. Joshi
 
Performance tuning and optimization on client server
Performance tuning and optimization on client serverPerformance tuning and optimization on client server
Performance tuning and optimization on client serverSatya P. Joshi
 

More from Satya P. Joshi (20)

Intergroup Conflict Management.pptx
Intergroup Conflict Management.pptxIntergroup Conflict Management.pptx
Intergroup Conflict Management.pptx
 
Training methods in human resource managment
Training methods in human resource managmentTraining methods in human resource managment
Training methods in human resource managment
 
Selection tests in human resource management
Selection tests in human resource managementSelection tests in human resource management
Selection tests in human resource management
 
Interview and it’s types - human resource managmenet
Interview and it’s types - human resource managmenetInterview and it’s types - human resource managmenet
Interview and it’s types - human resource managmenet
 
Motivation, achievement theory, goal setting theory
Motivation, achievement theory, goal setting theoryMotivation, achievement theory, goal setting theory
Motivation, achievement theory, goal setting theory
 
Characteristics, objectives & challenges of human resource manager
Characteristics, objectives & challenges of human resource managerCharacteristics, objectives & challenges of human resource manager
Characteristics, objectives & challenges of human resource manager
 
Human Resource Planning
Human Resource PlanningHuman Resource Planning
Human Resource Planning
 
Nested queries in database
Nested queries in databaseNested queries in database
Nested queries in database
 
Technology and work design in Organizational Relation
Technology and work design in Organizational RelationTechnology and work design in Organizational Relation
Technology and work design in Organizational Relation
 
Techniques of achieving google quality of service
Techniques of achieving google quality of serviceTechniques of achieving google quality of service
Techniques of achieving google quality of service
 
Overview of digital communication in HSN and Multimedia
Overview of digital communication in HSN and MultimediaOverview of digital communication in HSN and Multimedia
Overview of digital communication in HSN and Multimedia
 
Introduction to human resource management
Introduction to human resource managementIntroduction to human resource management
Introduction to human resource management
 
Security and control in Management Information System
Security and control in Management Information SystemSecurity and control in Management Information System
Security and control in Management Information System
 
Designing the supply chain network
Designing the supply chain networkDesigning the supply chain network
Designing the supply chain network
 
Introduction to Organizational Behavior and Organizational Relation
Introduction to Organizational Behavior and Organizational RelationIntroduction to Organizational Behavior and Organizational Relation
Introduction to Organizational Behavior and Organizational Relation
 
Selection tests and Reliability and Validity in HRM
Selection tests and Reliability and Validity in HRMSelection tests and Reliability and Validity in HRM
Selection tests and Reliability and Validity in HRM
 
Analog and digital signal system : digital logic
Analog and digital signal system : digital logicAnalog and digital signal system : digital logic
Analog and digital signal system : digital logic
 
Transmission media on Client server and high speed network
Transmission media on Client server and high speed networkTransmission media on Client server and high speed network
Transmission media on Client server and high speed network
 
Physical and logical topologies in computer network and client server
Physical  and logical topologies in computer network and client serverPhysical  and logical topologies in computer network and client server
Physical and logical topologies in computer network and client server
 
Performance tuning and optimization on client server
Performance tuning and optimization on client serverPerformance tuning and optimization on client server
Performance tuning and optimization on client server
 

Recently uploaded

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 

Recently uploaded (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 

Remote procedure call on client server computing

  • 2. REMOTE PROCEDURE CALL (RPC)  Is a protocol that one program can use to request a service from a program located in another computer in a network without having to understand network details.  A procedure call is also sometimes known as a function call or a subroutine call.  The requesting program is a client and the service- providing program is the server.  When program statements that use RPC are compiled into an executable program, a stub is included in the compiled code that acts as the representative of the remote procedure code.  the server includes a runtime program and stub that interface with the remote procedure itself.
  • 3. RPC
  • 4. STUBS  When the calling process calls a procedure, the action performed by that procedure will not be the actual code as written, but code that begins network communication.  It has to connect to the remote machine, send all the parameters down to it, wait for replies, do the right thing to the stack and return. This is the client side stub.  The server side stub has to wait for messages asking for a procedure to run.  It has to read the parameters, and present them in a suitable form to execute the procedure locally. After execution, it has to send the results back to the calling process.
  • 5. HOW RPC WORKS?  An RPC is analogous to a function call. Like a function call, when an RPC is made, the calling arguments are passed to the remote procedure and the caller waits for a response to be returned from the remote procedure.  The client makes a procedure call that sends a request to the server and waits.  When the request arrives, the server calls a dispatch routine that performs the requested service, and sends the reply to the client.  After the RPC call is completed, the client program continues. RPC specifically supports network applications.
  • 6.
  • 7. RPC APPLICATION DEVELOPMENT  To develop an RPC application the following steps are needed: • 1) Specify the protocol for client server communication • 2) Develop the client program • 3) Develop the server program  The programs will be compiled separately.  The communication protocol is achieved by generated stubs and these stubs and rpc (and other libraries) will need to be linked in.
  • 9. STUB  The client calls the local stub procedure. The stub packages up the parameters into a network message. This is called marshaling.  Networking functions in the O/S kernel are called by the stub to send the message.  The kernel sends the message(s) to the remote system. This may be connection-oriented or connectionless.  A server stub unmarshals the arguments from the network message.  The server stub executes a local procedure call.  The procedure completes, returning execution to the server stub.  The server stub marshals the return values into a network message.  The return messages are sent back.  The client stub reads the messages using the network functions.  The message is unmarshalled. And the return values are set on the stack for the local process.