Ask Question, Ask an Expert


Ask Programming Language Expert

Implementing Dynamic Binding for RPC:

In this assignment you will use sockets to implement dynamic binding and a simplified form of RPC. You will have three programs: a client, a server and a name server. The client comprises of a test program which calls your remote procedure. This program is linked to a client stub which does the usual jobs: marshalling parameters, connecting to the server, sending a request, receiving the reply and returning the outcome to the test program. You must do the connection by using Internet domain stream sockets. The server must accept requests, unmarshall the parameters, call the remote procedure and return the result. The server is linked to the remote procedure. You must prepare a client stub which has the same name, number of parameters and return type as your remote procedure. In another words, you are implementing a limited form of RPC. The client and server programs must run on different Linux machines. Your implementation must use dynamic binding meaning that your client program does not know the address of the server. Rather it knows the IP address and port number of a third program - the name server. The name server accepts requests containing an identifier for the remote procedure and returns a handle containing the address of the server to be used in contacting the server or an error message if it does not know where the server is. The connection from the client to the name server must also be done by using stream sockets. The server will as well contact the name server to register (it notifies the name server of its identifier and its address). When the server shuts down it deregisters with the name server.

Your name server must be written in such a way that it could handle more than one remote procedure. Your client stub must signal to the client if it cannot find the server by raising a signal. Your test program should be written in such a manner that we can test the following:

a) Server registers;

b) Client gets handle;

c) Client calls remote procedure and gets result;

d) Server deregisters and moves then is successfully contacted by client which formerly held a handle;

e) Server deregisters, client stub which previously held a handle can’t contact server thus it raises a signal. describe the procedure to test each of these cases in your readme file.

Extra credit: Further implement RPC by automatically generating client and server stubs from the IDL file. Your generator (a stand-alone program) must work on general files (not just one specific file). The file (whose format you can decide on) must allow one remote procedure to be describeed. The file must give the name of the remote procedure, an identifier for the remote procedure, the names and types of parameters and the return type. Parameters can be integers, characters, or arrays of integers or characters.

Programming Language, Programming

  • Category:- Programming Language
  • Reference No.:- M9908

Have any Question? 

Related Questions in Programming Language

Assignmentaverage salary of major league baseball

Assignment Average Salary of Major League Baseball Players Create an application that calculates the average and highest salary of Major League Baseball players in 2011 and 2012. When the user clicks a button, the applic ...

In this programming assignment you are asked to simulate

In this programming assignment, you are asked to simulate the recursive factorial function given in the class. Your program is to be a nonrecursive version of the factorial function implemented using a stack. Your progra ...

Assignmentreference this assignment is an object oriented

Assignment Reference: This assignment is an object oriented version of the In-class assignment. The functionality supported for a single vehicle in ICA 01 would be extended to multiple vehicles using a single class Car, ...

1 design a class called complex the class enables

1) Design a class called Complex. The class enables operations on so called complex numbers. These are numbers of the form realPart + imaginary Part *i, where the i has the value 2) Design the class to have two private m ...

1 show how to transform a three-address code sequence into

1. Show how to transform a three-address code sequence into one in which each defined variable gets a unique variable name. 2. Determine the types and relative addresses for the identifiers in the following sequence of d ...

The car classdefine a class called car that implements the

The Car Class Define a class called "Car" that implements the parameterized Comparable interface. Each object of this class represents a type of car. Your class must provide all the methods in the public interface. Be su ...

Figure is code to count the number of primes from 2 to n

Figure is code to count the number of primes from 2 to n, using the sieve method on a suitably large array a. That is, a[i] is TRUE at the end only if there is no prime p i or less that evenly divides i. We initialize al ...

The air pollution level of a city on a given day is a

The air pollution level of a city on a given day is a function of the time of day (in hours). As an environmental specialist, you have collected carbon dioxide level readings at different times. An example of one day of ...

Assignmentafter informing the user what the program does

Assignment After informing the user what the program does, prompt the user for the number of darts to throw. Also, prompt for a number of simulations (why not have the program simulate this dart throwing more than once). ...

Handling exceptions in the guestbook applicationgeneral

Handling Exceptions in the Guestbook Application General guideline In this project, you will need to implement exception handling mechanism in the Guestbook application created in Lab. The code I provide to you does not ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Section onea in an atwood machine suppose two objects of

SECTION ONE (a) In an Atwood Machine, suppose two objects of unequal mass are hung vertically over a frictionless

Part 1you work in hr for a company that operates a factory

Part 1: You work in HR for a company that operates a factory manufacturing fiberglass. There are several hundred empl

Details on advanced accounting paperthis paper is intended

DETAILS ON ADVANCED ACCOUNTING PAPER This paper is intended for students to apply the theoretical knowledge around ac

Create a provider database and related reports and queries

Create a provider database and related reports and queries to capture contact information for potential PC component pro

Describe what you learned about the impact of economic

Describe what you learned about the impact of economic, social, and demographic trends affecting the US labor environmen