SlideShare a Scribd company logo
1 of 31
REMOTE PROCEDURE
CALL
NAME:- MANOJ PARIHAR
SCHOOL:- SITAICS - M.TECH CS
RASHTRIYA RAKSHA UNIVERSITY
INTRODUCTION
● Remote Procedure Call (RPC) is a high-level model for
client-server communication.
● A remote procedure call is an interprocess
communication technique that is used for client-
server based applications. It is also known as a
subroutine call or a function call.
INTRODUCTION
● A client has a request message that the RPC
translates and sends to the server. This request may
be a procedure or a function call to a remote server.
When the server receives the request, it sends the
required response back to the client. The client is
blocked while the server is processing the call and
only resumed execution after the server is finished.
● Examples: File service, Authentication service.
INTRODUCTION
❖ Why we need Remote Procedure Call (RPC)?
● The client needs a easy way to call the procedures of
the server to get some services.
● RPC enables clients to communicate with servers by
calling procedures in a similar way to the
conventional use of procedure calls in high-level
languages.
● RPC is modeled on the local procedure call, but the
called procedure is executed in a different process
and usually a different computer.
INTRODUCTION
❖ How to operate RPC?
● When a process on machine A calls a procedure on
machine B, the calling process on A is suspended,
and the execution of the called procedure takes place
on B.
● Information can be transported from the caller to the
callee in the parameters and can come back in the
procedure result.
● No message passing or I/O at all is visible to the
programmer.
TYPES OF RPC
❖ Three types of RPC are:
➔ Callback RPC
➔ Broadcast RPC
➔ Batch-mode RPC
CALLBACK RPC
➔ This type of RPC enables a P2P paradigm
between participating processes. It helps a
process to be both client and server
services.
FUNCTIONS OF CALLBACK RPC:
★ Remotely processed interactive application
problems
★ Offers server with clients handle
★ Callback makes the client process wait
★ Manage callback deadlocks
★ It facilitates a peer-to-Peer paradigm among
participating processes.
BROADCAST RPC
➔ Broadcast RPC is a client’s request, that is
broadcast on the network, processed by all
servers which have the method for
processing that request.
FUNCTIONS OF BROADCAST RPC:
★ Allows you to specify that the client’s
request message has to be broadcasted.
★ You can declare broadcast ports.
★ It helps to reduce the load on the physical
network.
BATCH-MODE RPC
➔ Batch-mode RPC helps to queue, separate
RPC requests, in a transmission buffer, on
the client-side, and then send them on a
network in one batch to the server.
FUNCTIONS OF BATCH-MODE RPC:
★ It minimizes overhead involved in sending a
request as it sends them over the network in
one batch to the server.
★ This type of RPC protocol is only efficient for
the application that needs lower call rates.
★ It needs a reliable transmission protocol.
THE RPC MODEL
DESIGN ISSUES
★ Exception handling
➔ Necessary because of possibility of network
and nodes failures;
➔ RPC uses return value to indicate errors;
★ Transparency
➔ Syntactic - achievable, exactly the same
syntax as a local procedure call.
➔ Semantic - impossible because of RPC
limitation: failure (similar but not exactly the
same).
RPC MECHANISM
● Based on concepts of stubs
● Stub is a code used for converting parameter
used in procedure call
● RPC involves Client & Server Process
★ Mechanism involves following five elements:
❏ The Client
❏ The Client Stub
❏ The RPCRuntime
❏ The Server Stub
❏ The Server
RPC MECHANISM
Steps of a Remote Procedure Call
➢ Client procedure calls client stub in normal way
➢ Client stub builds message, calls local OS
➢ Client's OS sends message to remote OS
➢ Remote OS gives message to server stub
➢ Server stub unpacks parameters, calls server
➢ Server does work, returns result to the stub
➢ Server stub packs it in message, calls local OS
➢ Server's OS sends message to client's OS
➢ Client's OS gives message to client stub
➢ Stub unpacks result, returns to client
★ Client:
➢ Initiates RPC
➢ Makes a local call that invokes a
corresponding procedure in the client stub
★ Client Stub:
1. Receiving a call request from client:
➢ Packs the specification of the target
procedure & the arguments into a message
➢ Asks local RPCRuntime to send it to server
stub
1. Receiving result of procedure execution
➢ Unpacks the result & passes it to the client
RPCRuntime:
★ Client Machine
1. Receive call request message from Client
Stub & sends to server machine
2. Receives the message containing the result
of procedure execution from the server
machine & sends to client stub
★ Server Machine
1. Receives the message containing the result
of procedure execution from the server stub
& sends it to client machine
2. Receive call request message from the client
machine & sends it to server stub
★ Server Stub:
1. Receiving a call request from local
RPCRuntime:
● Unpacks & makes a normal call to
invoke the appropriate procedure in
Server
● Receiving result of procedure
execution
I. Packs the result into a message
II. Asks local RPCRuntime to send it to
client stub
★ Server:
1. Receiving a call request from the server
stub
● Executes the appropriate procedure
● Returns the result of execution to the
server stub
STUB GENERATION
★ Manually
1. The RPC implementor provides a set of
translation functions from which a user
can construct his/her own stubs
2. It is simple to implement and can
handle very complex parameter types
★ Automatically
1. Uses Interface Definition Language(IDL)
MARSHALING ARGUMENTS & RESULT
❏ The transfer of message data between
two computers requires encoding &
decoding of the message data
❏ This operation in RPCs is known as
Marshaling
➔ Actions involved in Marshaling
1. Taking the arguments
2. Encoding the message data on sender’s
computer
3. Decoding the message data on
receiver’s computer
CHARACTERISTICS
★ The called procedure is in another
process which may reside in another
machine.
★ The processes do not share address
space.
★ Parameters are passed by values.
CHARACTERISTICS
★ The called remote procedure executes
within the environment of the server
process.
1. The called procedure does not have
access to the calling procedure environment.
FEATURES
➔ Simple call syntax
➔ Familiar semantics
➔ Well defined interface
➔ Ease of use
➔ Efficient
Can communicate between processes on
the same machine or different machines
ADVANTAGE OF REMOTE PROCEDURE CALL
Some of the advantages of RPC are as
follows −
➔ Remote procedure calls support
process oriented and thread oriented
models.
➔ The internal message passing
mechanism of RPC is hidden from the
user.
➔ The effort to re-write and re-develop the
code is minimum in remote procedure
calls.
ADVANTAGE OF REMOTE PROCEDURE CALL
➔ Remote procedure calls can be used in
distributed environment as well as the
local environment.
➔ Many of the protocol layers are omitted
by RPC to improve performance.
DISADVANTAGE OF REMOTE PROCEDURE CALL
Some of the disadvantages of RPC are as follows
−
➔ The remote procedure call is a concept that
can be implemented in different ways. It is not
a standard.
➔ There is no flexibility in RPC for hardware
architecture. It is only interaction based.
➔ There is an increase in costs because of
remote procedure call.
● PROGRAMMING
● CLOUD
● DEVOPS
APPLICATION WHERE RPC IS USE
THANK YOU

More Related Content

What's hot

Clock synchronization in distributed system
Clock synchronization in distributed systemClock synchronization in distributed system
Clock synchronization in distributed systemSunita Sahu
 
TCP over wireless slides
TCP over wireless slidesTCP over wireless slides
TCP over wireless slidesMahesh Rajawat
 
Inter Process Communication
Inter Process CommunicationInter Process Communication
Inter Process CommunicationAdeel Rasheed
 
Distributed Objects and Remote Invocation
Distributed Objects and Remote InvocationDistributed Objects and Remote Invocation
Distributed Objects and Remote InvocationMedicaps University
 
Chapter 4 a interprocess communication
Chapter 4 a interprocess communicationChapter 4 a interprocess communication
Chapter 4 a interprocess communicationAbDul ThaYyal
 
Distributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communicationDistributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communicationMNM Jain Engineering College
 
ALOHA Protocol (in detail)
ALOHA Protocol (in detail)ALOHA Protocol (in detail)
ALOHA Protocol (in detail)Hinal Lunagariya
 
Security services and mechanisms
Security services and mechanismsSecurity services and mechanisms
Security services and mechanismsRajapriya82
 
remote procedure calls
  remote procedure calls  remote procedure calls
remote procedure callsAshish Kumar
 
Remote invocation
Remote invocationRemote invocation
Remote invocationishapadhy
 
TCP - IP Presentation
TCP - IP PresentationTCP - IP Presentation
TCP - IP PresentationHarish Chand
 
TELNET and SSH by MUSTAFA SAKHAI
TELNET and SSH by MUSTAFA SAKHAITELNET and SSH by MUSTAFA SAKHAI
TELNET and SSH by MUSTAFA SAKHAIMUSTAFA SAKHAI
 
Distributed Transactions(flat and nested) and Atomic Commit Protocols
Distributed Transactions(flat and nested) and Atomic Commit ProtocolsDistributed Transactions(flat and nested) and Atomic Commit Protocols
Distributed Transactions(flat and nested) and Atomic Commit ProtocolsSachin Chauhan
 
User datagram protocol (udp)
User datagram protocol (udp)User datagram protocol (udp)
User datagram protocol (udp)Ramola Dhande
 
Mobile transport layer - traditional TCP
Mobile transport layer - traditional TCPMobile transport layer - traditional TCP
Mobile transport layer - traditional TCPVishal Tandel
 

What's hot (20)

Clock synchronization in distributed system
Clock synchronization in distributed systemClock synchronization in distributed system
Clock synchronization in distributed system
 
TCP over wireless slides
TCP over wireless slidesTCP over wireless slides
TCP over wireless slides
 
Inter Process Communication
Inter Process CommunicationInter Process Communication
Inter Process Communication
 
Distributed Objects and Remote Invocation
Distributed Objects and Remote InvocationDistributed Objects and Remote Invocation
Distributed Objects and Remote Invocation
 
Chapter 4 a interprocess communication
Chapter 4 a interprocess communicationChapter 4 a interprocess communication
Chapter 4 a interprocess communication
 
Distributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communicationDistributed System-Multicast & Indirect communication
Distributed System-Multicast & Indirect communication
 
Electronic mail security
Electronic mail securityElectronic mail security
Electronic mail security
 
ALOHA Protocol (in detail)
ALOHA Protocol (in detail)ALOHA Protocol (in detail)
ALOHA Protocol (in detail)
 
Mobile IP
Mobile IPMobile IP
Mobile IP
 
Security services and mechanisms
Security services and mechanismsSecurity services and mechanisms
Security services and mechanisms
 
remote procedure calls
  remote procedure calls  remote procedure calls
remote procedure calls
 
Remote invocation
Remote invocationRemote invocation
Remote invocation
 
Chapter 6 synchronization
Chapter 6 synchronizationChapter 6 synchronization
Chapter 6 synchronization
 
TCP - IP Presentation
TCP - IP PresentationTCP - IP Presentation
TCP - IP Presentation
 
TELNET and SSH by MUSTAFA SAKHAI
TELNET and SSH by MUSTAFA SAKHAITELNET and SSH by MUSTAFA SAKHAI
TELNET and SSH by MUSTAFA SAKHAI
 
Distributed Transactions(flat and nested) and Atomic Commit Protocols
Distributed Transactions(flat and nested) and Atomic Commit ProtocolsDistributed Transactions(flat and nested) and Atomic Commit Protocols
Distributed Transactions(flat and nested) and Atomic Commit Protocols
 
Distributed Coordination-Based Systems
Distributed Coordination-Based SystemsDistributed Coordination-Based Systems
Distributed Coordination-Based Systems
 
User datagram protocol (udp)
User datagram protocol (udp)User datagram protocol (udp)
User datagram protocol (udp)
 
Remote Procedure Call
Remote Procedure CallRemote Procedure Call
Remote Procedure Call
 
Mobile transport layer - traditional TCP
Mobile transport layer - traditional TCPMobile transport layer - traditional TCP
Mobile transport layer - traditional TCP
 

Similar to Remote procedure call

Similar to Remote procedure call (20)

Remote procedure calls
Remote procedure callsRemote procedure calls
Remote procedure calls
 
Remote Procedure Call
Remote Procedure CallRemote Procedure Call
Remote Procedure Call
 
Middleware in Distributed System-RPC,RMI
Middleware in Distributed System-RPC,RMIMiddleware in Distributed System-RPC,RMI
Middleware in Distributed System-RPC,RMI
 
Dos(rpc)avishek130650107020
Dos(rpc)avishek130650107020Dos(rpc)avishek130650107020
Dos(rpc)avishek130650107020
 
Remote procedure call on client server computing
Remote procedure call on client server computingRemote procedure call on client server computing
Remote procedure call on client server computing
 
Grpc present
Grpc presentGrpc present
Grpc present
 
Lecture9
Lecture9Lecture9
Lecture9
 
Byte Ordering - Unit 2.pptx
Byte Ordering - Unit 2.pptxByte Ordering - Unit 2.pptx
Byte Ordering - Unit 2.pptx
 
Rpc
RpcRpc
Rpc
 
5. Distributed Operating Systems
5. Distributed Operating Systems5. Distributed Operating Systems
5. Distributed Operating Systems
 
Sun RPC (Remote Procedure Call)
Sun RPC (Remote Procedure Call)Sun RPC (Remote Procedure Call)
Sun RPC (Remote Procedure Call)
 
CHP-4.pptx
CHP-4.pptxCHP-4.pptx
CHP-4.pptx
 
MSB-Remote procedure call
MSB-Remote procedure callMSB-Remote procedure call
MSB-Remote procedure call
 
Rpc
RpcRpc
Rpc
 
Cs556 section3
Cs556 section3Cs556 section3
Cs556 section3
 
Cs556 section3
Cs556 section3Cs556 section3
Cs556 section3
 
Distributes objects and Rmi
Distributes objects and RmiDistributes objects and Rmi
Distributes objects and Rmi
 
Cs 704 d rpc
Cs 704 d rpcCs 704 d rpc
Cs 704 d rpc
 
Communication primitives
Communication primitivesCommunication primitives
Communication primitives
 
Rpc
RpcRpc
Rpc
 

Recently uploaded

Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 

Recently uploaded (20)

Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 

Remote procedure call

  • 1. REMOTE PROCEDURE CALL NAME:- MANOJ PARIHAR SCHOOL:- SITAICS - M.TECH CS RASHTRIYA RAKSHA UNIVERSITY
  • 2. INTRODUCTION ● Remote Procedure Call (RPC) is a high-level model for client-server communication. ● A remote procedure call is an interprocess communication technique that is used for client- server based applications. It is also known as a subroutine call or a function call.
  • 3. INTRODUCTION ● A client has a request message that the RPC translates and sends to the server. This request may be a procedure or a function call to a remote server. When the server receives the request, it sends the required response back to the client. The client is blocked while the server is processing the call and only resumed execution after the server is finished. ● Examples: File service, Authentication service.
  • 4. INTRODUCTION ❖ Why we need Remote Procedure Call (RPC)? ● The client needs a easy way to call the procedures of the server to get some services. ● RPC enables clients to communicate with servers by calling procedures in a similar way to the conventional use of procedure calls in high-level languages. ● RPC is modeled on the local procedure call, but the called procedure is executed in a different process and usually a different computer.
  • 5. INTRODUCTION ❖ How to operate RPC? ● When a process on machine A calls a procedure on machine B, the calling process on A is suspended, and the execution of the called procedure takes place on B. ● Information can be transported from the caller to the callee in the parameters and can come back in the procedure result. ● No message passing or I/O at all is visible to the programmer.
  • 6. TYPES OF RPC ❖ Three types of RPC are: ➔ Callback RPC ➔ Broadcast RPC ➔ Batch-mode RPC
  • 7. CALLBACK RPC ➔ This type of RPC enables a P2P paradigm between participating processes. It helps a process to be both client and server services.
  • 8. FUNCTIONS OF CALLBACK RPC: ★ Remotely processed interactive application problems ★ Offers server with clients handle ★ Callback makes the client process wait ★ Manage callback deadlocks ★ It facilitates a peer-to-Peer paradigm among participating processes.
  • 9. BROADCAST RPC ➔ Broadcast RPC is a client’s request, that is broadcast on the network, processed by all servers which have the method for processing that request.
  • 10. FUNCTIONS OF BROADCAST RPC: ★ Allows you to specify that the client’s request message has to be broadcasted. ★ You can declare broadcast ports. ★ It helps to reduce the load on the physical network.
  • 11. BATCH-MODE RPC ➔ Batch-mode RPC helps to queue, separate RPC requests, in a transmission buffer, on the client-side, and then send them on a network in one batch to the server.
  • 12. FUNCTIONS OF BATCH-MODE RPC: ★ It minimizes overhead involved in sending a request as it sends them over the network in one batch to the server. ★ This type of RPC protocol is only efficient for the application that needs lower call rates. ★ It needs a reliable transmission protocol.
  • 14. DESIGN ISSUES ★ Exception handling ➔ Necessary because of possibility of network and nodes failures; ➔ RPC uses return value to indicate errors; ★ Transparency ➔ Syntactic - achievable, exactly the same syntax as a local procedure call. ➔ Semantic - impossible because of RPC limitation: failure (similar but not exactly the same).
  • 15. RPC MECHANISM ● Based on concepts of stubs ● Stub is a code used for converting parameter used in procedure call ● RPC involves Client & Server Process ★ Mechanism involves following five elements: ❏ The Client ❏ The Client Stub ❏ The RPCRuntime ❏ The Server Stub ❏ The Server
  • 17. Steps of a Remote Procedure Call ➢ Client procedure calls client stub in normal way ➢ Client stub builds message, calls local OS ➢ Client's OS sends message to remote OS ➢ Remote OS gives message to server stub ➢ Server stub unpacks parameters, calls server ➢ Server does work, returns result to the stub ➢ Server stub packs it in message, calls local OS ➢ Server's OS sends message to client's OS ➢ Client's OS gives message to client stub ➢ Stub unpacks result, returns to client
  • 18. ★ Client: ➢ Initiates RPC ➢ Makes a local call that invokes a corresponding procedure in the client stub ★ Client Stub: 1. Receiving a call request from client: ➢ Packs the specification of the target procedure & the arguments into a message ➢ Asks local RPCRuntime to send it to server stub 1. Receiving result of procedure execution ➢ Unpacks the result & passes it to the client
  • 19. RPCRuntime: ★ Client Machine 1. Receive call request message from Client Stub & sends to server machine 2. Receives the message containing the result of procedure execution from the server machine & sends to client stub ★ Server Machine 1. Receives the message containing the result of procedure execution from the server stub & sends it to client machine 2. Receive call request message from the client machine & sends it to server stub
  • 20. ★ Server Stub: 1. Receiving a call request from local RPCRuntime: ● Unpacks & makes a normal call to invoke the appropriate procedure in Server ● Receiving result of procedure execution I. Packs the result into a message II. Asks local RPCRuntime to send it to client stub
  • 21. ★ Server: 1. Receiving a call request from the server stub ● Executes the appropriate procedure ● Returns the result of execution to the server stub
  • 22. STUB GENERATION ★ Manually 1. The RPC implementor provides a set of translation functions from which a user can construct his/her own stubs 2. It is simple to implement and can handle very complex parameter types ★ Automatically 1. Uses Interface Definition Language(IDL)
  • 23. MARSHALING ARGUMENTS & RESULT ❏ The transfer of message data between two computers requires encoding & decoding of the message data ❏ This operation in RPCs is known as Marshaling ➔ Actions involved in Marshaling 1. Taking the arguments 2. Encoding the message data on sender’s computer 3. Decoding the message data on receiver’s computer
  • 24. CHARACTERISTICS ★ The called procedure is in another process which may reside in another machine. ★ The processes do not share address space. ★ Parameters are passed by values.
  • 25. CHARACTERISTICS ★ The called remote procedure executes within the environment of the server process. 1. The called procedure does not have access to the calling procedure environment.
  • 26. FEATURES ➔ Simple call syntax ➔ Familiar semantics ➔ Well defined interface ➔ Ease of use ➔ Efficient Can communicate between processes on the same machine or different machines
  • 27. ADVANTAGE OF REMOTE PROCEDURE CALL Some of the advantages of RPC are as follows − ➔ Remote procedure calls support process oriented and thread oriented models. ➔ The internal message passing mechanism of RPC is hidden from the user. ➔ The effort to re-write and re-develop the code is minimum in remote procedure calls.
  • 28. ADVANTAGE OF REMOTE PROCEDURE CALL ➔ Remote procedure calls can be used in distributed environment as well as the local environment. ➔ Many of the protocol layers are omitted by RPC to improve performance.
  • 29. DISADVANTAGE OF REMOTE PROCEDURE CALL Some of the disadvantages of RPC are as follows − ➔ The remote procedure call is a concept that can be implemented in different ways. It is not a standard. ➔ There is no flexibility in RPC for hardware architecture. It is only interaction based. ➔ There is an increase in costs because of remote procedure call.
  • 30. ● PROGRAMMING ● CLOUD ● DEVOPS APPLICATION WHERE RPC IS USE