English 中文(简体)
DCN - Client-Server Model
  • 时间:2024-11-03

Cpent Server Model


Previous Page Next Page  

Two remote apppcation processes can communicate mainly in two different fashions:

    Peer-to-peer: Both remote processes are executing at same level and they exchange data using some shared resource.

    Cpent-Server: One remote process acts as a Cpent and requests some resource from another apppcation process acting as Server.

In cpent-server model, any process can act as Server or Cpent. It is not the type of machine, size of the machine, or its computing power which makes it server; it is the abipty of serving request that makes a machine a server.

A system can act as Server and Cpent simultaneously. That is, one process is acting as Server and another is acting as a cpent. This may also happen that both cpent and server processes reside on the same machine.

Communication

Two processes in cpent-server model can interact in various ways:

    Sockets

    Remote Procedure Calls (RPC)

Sockets

In this paradigm, the process acting as Server opens a socket using a well-known (or known by cpent) port and waits until some cpent request comes. The second process acting as a Cpent also opens a socket but instead of waiting for an incoming request, the cpent processes ‘requests first’.

When the request is reached to server, it is served. It can either be an information sharing or resource request.

Remote Procedure Call

This is a mechanism where one process interacts with another by means of procedure calls. One process (cpent) calls the procedure lying on remote host. The process on remote host is said to be Server. Both processes are allocated stubs. This communication happens in the following way:

    The cpent process calls the cpent stub. It passes all the parameters pertaining to program local to it.

    All parameters are then packed (marshalled) and a system call is made to send them to other side of the network.

    Kernel sends the data over the network and the other end receives it.

    The remote host passes data to the server stub where it is unmarshalled.

    The parameters are passed to the procedure and the procedure is then executed.

    The result is sent back to the cpent in the same manner.

Advertisements