Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

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

Assignmentquestion onegiving the following code snippet

Assignment Question One Giving the following code snippet. What kind of errors you will get and how can you correct it. A. public class HelloJava { public static void main(String args[]) { int x=10; int y=2; System.out.p ...

Background informationthis assignment tests your

Background Information This assignment tests your understanding of and ability to apply the programming concepts we have covered throughout the unit. The concepts covered in the second half of the unit build upon the fun ...

Assignment task -q1 a the fibonacci numbers are the numbers

Assignment Task - Q1. (a) The Fibonacci numbers are the numbers in the following integer sequence, called the Fibonacci sequence, and are characterised by the fact that every number after the first two is the sum of the ...

Overviewthis tasks provides you an opportunity to get

Overview This tasks provides you an opportunity to get feedback on your Learning Summary Report. The Learning Summary Report outlines how the work you have completed demonstrates that you have met all of the unit's learn ...

Assignment - haskell program for regular expression

Assignment - Haskell Program for Regular Expression Matching Your assignment is to modify the slowgrep.hs Haskell program presented in class and the online notes, according to the instructions below. You may carry out th ...

1 write a function named check that has three parameters

1. Write a function named check () that has three parameters. The first parameter should accept an integer number, andthe second and third parameters should accept a double-precision number. The function body should just ...

Structs and enumsoverviewin this task you will create a

Structs and Enums Overview In this task you will create a knight database to help Camelot keep track of all of their knights. Instructions Lets get started. 1. What the topic 5 videos, these will guide you through buildi ...

Task silly name testeroverviewcontrol flow allows us to

Task: Silly Name Tester Overview Control flow allows us to alter the order in which our programs execute. Building on our knowledge of variables, we can now use control flow to create programs that perform more than just ...

Question 1 what is a computer program what is structured

Question: 1. What is a Computer program? What is structured programming? 2. What is modular programming? Why we use it? 3. Please evaluate Sin (x) by infinite series. Then write an algorithm to implement it with up to th ...

Extend the adworks applicationi add dialogs to allow the

Extend the AdWorks application I. Add Dialogs to allow the user to Add, Edit, Read and Delete a Customer and refresh the view accordingly. 1. The user should be able to select a specific customer from the DataGrid and cl ...

  • 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

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As