Remote Procedure Calls (RPC)

preview_player
Показать описание
Operating System: Remote Procedure Calls (RPC)
Topics discussed:
This lecture explains about Remote Procedure Calls and how they are executed.

Follow Neso Academy on Instagram: @nesoacademy

Music:
Axol x Alex Skrindo - You [NCS Release]

#OperatingSystemByNeso #os #OperatingSystem #RemoteProcedureCalls
Рекомендации по теме
Комментарии
Автор

Here is what I learned from the video:
RPC stands for Remote Procedure Call.
- It is a communication protocol that allows a program running on one computer to execute code on a different computer over a network.
- It is often used in distributed systems where different components of the system are running on other computers
- For example, in a web application, the server might use RPC to communicate with a database server to retrieve data or to execute complex queries.
- RPC abstracts away many of the low-level details of network communication, making it easier for developers to build distributed systems.
- A client makes a remote procedure call to a server (RPC daemon), specifying the name (identifier) of a function to execute and any parameters that the function requires.
- The server receives the request, executes the specified function, and sends the result back to the client.
- The client can then continue executing its own code, using the result returned by the server.

• STUB:
- A stub is a piece of code that acts as a proxy (representative) for a remote procedure on the client side.
- The stub serves as an interface between the client program and the RPC system.
- It provides a way for the client program to make remote procedure calls to the server as if the procedure was a local function call.
- The stub is responsible for marshaling (assembling and arranging in order) the input parameters of the procedure, making the remote procedure call over the network to the RPC server, and then unmarshalling the results returned by the server.

• DAEMON*:
- An RPC daemon (or RPC server) is a program that runs in the background on a server and receives incoming requests for remote procedure calls from clients.
- The daemon is responsible for managing the communication between clients and the server, and for executing the requested procedures on the server.

* The MIT programmers thought demon would be an appropriate name for a background process that worked tirelessly to perform system chores. But instead of using the term demon, they used daemon, which is an older form of the word.

Mehraj_IITKGP
Автор

RPC is a protocol that allows a program to request a service from a program in a different computer in a network. It is based on the message passing system as the processes are on separate computers. The message is composed of a function identifier and the corresponding parameters. This message is received by a RPC daemon listening on a specific port of the receiving computer. The result of the function call is passed back as a separate message to the requesting process.

samuelkhongthaw
Автор

RPC is for communication between processes that reside in different systems within a network. It abstract away the network details.
The client and server have an RPC daemon listening to each other port.
The client request to the server via a stub residing in the client side. It requests the server to do a service, in a form of a function. The server then sends back the result to the client.
The message is more complicated than packets of data.
The message contain the function identifier and the parameter of that function.
The parameters are marshaled to be transmitted over the network.
Messages are sent from the client stub to server stub by message passing.


RPC stands for remote procedure call. It abstracts away network details, so that make it easier for developers to work with. It is used for distributed systems. For example, a server want to request to the database server to get or modify data.

Stub acts as an interface between the client and the RPC system, so that the client can communicate with the server as is locally.
Stub is responsibile for parameter marshaling (assemble and arrange parameters) for client and unmarshaling for the server.

RPC daemon or RPC server is a program running in the background on the server. It receives incomming requests for RPC from the client and execute the request.

hoangminhchau
Автор

Good job...was not expecting this to be this well-explained!

dannymasri
Автор

Thank you so much
was looking for a comprehnsive explanation and this was it!

michellephoebe
Автор

Bro this complicated stuff is explained so well. My professor couldn't explained for shit

spyrex
Автор

Many thanks. This video is really helpful

youngchan
Автор

Simple and so clear great explanation.

narayanadhurti
Автор

It would be more interesting to watch if you use more animation and less text. We've got books. All theory is there but we want explanation with simple animation so that we don't have to read all those big paragraphs

nikky
Автор

So, RPC are remote procedural calls. RCS is used for processes to communicate when they're residing in different systems. Procedures are involved. Stubs are allocated to processed at each end.

quratraja
Автор

Thanks a lot . This is an amazing explanation♥♥

dinushachathuranga
Автор

very well explained very compliments tried so many times to find something that explains me so well but i didn't find it .


Thanks so much

enricosaccheggiani
Автор

As im from biology background ....so i felt very difficult to understand programing nd how the computer works i u made my path easy sir u sm ....feeling so happy 😊😊make more videos sir ....

jeevapriya
Автор

Impressive explanation, thanks a lot and greetings from argentina!

xellworth
Автор

Great working sir
Please upload videos on posix multithreading

amargandhi
Автор

Here is a summary of the video:

Remote Procedure Calls (RPC) is a protocol that allows a program to request a service from a program located on another computer on a network without having to understand the network's details. In simpler terms, RPC enables communication between processes residing in different systems connected over a network.

Here are the key differences between RPC and IPC:

Communication scheme: RPC uses message-based communication, whereas IPC can use either shared memory or message passing.
Messages: RPC messages are well-structured and contain an identifier of the function to execute and the parameters to pass to that function, while IPC messages are just packets of data.
Stubs: RPC uses stubs on both the client and server sides to hide the details of communication from the processes. IPC does not use stubs.
Here's how RPC works:

Client invokes a remote procedure: The client process calls a local stub, passing it the parameters for the remote procedure.
Stub marshals parameters: The stub marshals the parameters into a form that can be transmitted over the network.
Stub transmits message to server: The stub transmits a message to the server using message passing.
Server stub receives message: A similar stub on the server side receives the message and unmarshals the parameters.
Server stub invokes procedure: The server stub invokes the remote procedure on the server, passing it the unmarshaled parameters.
Procedure executes: The remote procedure executes on the server.
Server stub marshals return values: If necessary, the server stub marshals the return values into a form that can be transmitted over the network.
Server stub transmits message to client: The server stub transmits a message to the client using message passing.
Client stub receives message: The client stub receives the message and unmarshals the return values.
Client stub returns results: The client stub returns the results to the client process.

liotam
Автор

Man!! your explanation is awesome. Keep it up

mohamedbarrous
Автор

But we use Message passing system for communicating between 2 procesess on different devices connected to network?

HimanshuGupta-ebvp
Автор

Thank you, sir. I've been searching a lot for something like this.

MasterSergius
Автор

I love how he keeps repeating the statements, these lectures are not one of types of video you just take a peek on, you actually learn from it and shove it deep into your brain

HuyTran-wvtz