SYSC 5800: Network
Computing
Sample Final
Exam
Answer all questions on this
exam paper. Each explanation should be as brief as possible; you may also want
to use diagrams where appropriate.
Question 1. Computer Networks (10
marks)
Most protocol implementations are based on a layered architecture. Explain the reason behind this design and describe an example protocol stack that is based on this layered architecture.
Question 2. RPC (10 marks)
What is the basic idea behind RPC? What are some of the challenges in implementing RPCs?
Question 3. Coordination Languages (10
marks)
JMS (Java Message Service) provides persistent subscriptions in a publish-subscribe system: once a client makes a persistent subscription, the message broker will deliver events/messages to clients if they are connected. When a client is not connected, the message broker will buffer events until the client reconnects. Discuss how JMS is similar to and also differs from:
1. TIB/Rendezvous
2. Tuplespaces
Question
4. WWW Programming (10
marks)
Imagine we have a website with a form that allows a user to fill in a single textfield with name “input”. Once the user clicks on submit, the client uses the GET method to retrieve the following HTML webpage:
<html>
<head><title>Sample
Output</title></head>
<body>
You typed in: <i>blabla</i>
</body>
</html>
where “blabla” is the text entered by the user. Provide implementations of the server side using
1. CGI
2. Java Servlets
3. JSP
Note: for the Java Servlets solution, only provide the implementation of
public doPost(HttpServletRequest req, HttpServletResponse
response)
{ …
}
Question
5. Grid Computing
(10 marks)
Describe the generic Layered Grid Architecture as presented
in class. Discuss how this layered architecture is similar to and different
from a layered protocol architecture.