CITS3002 Computer Networks  
next CITS3002 help3002 CITS3002 schedule  

Automated Development of Distributed Applications

The complications of layering in the OSI model come to a head in the Session Layer and a number of recent developments have 'bypassed' many of the OSI layers.

These include, and have been motivated by :

  • Speed,
  • Distributed and replicated file systems,
  • Remote process invocation and control,
  • Network-aware programming languages, such as Java, and
  • Increased need for distributed security.


The Remote Procedure Call (RPC) Paradigm

The remote procedure call (RPC) paradigm [BJ Nelson, 1981] and [AD Birrell and BJ Nelson, 1984] is based on the observation that procedure calls are a well understood mechanism for control transfer.

The proposal is that procedure calls may be consistently extended to access remote environments (other machines).

When a remote procedure call is invoked :

  • The calling environment is suspended,
  • Any parameters are passed (marshalled) across the network to the remote environment,
  • The required procedure is executed in the remote environment, and
  • Results are marshalled back to the caller and its execution resumes.

See: Implementing Remote Procedure Calls, Birrell, Andrew D. and Nelson, Bruce Jay, in ACM Trans. Comput. Systems, 2(1), pp39-59, February 1984.

CITS3002 Computer Networks, Lecture 10, Architecture independent applications, p1, 13th May 2020.