CMPSCI 677: Homework 2
Due: Oct 29, 2009
Web posted: Oct 21, 2009
General Instructions:
- Your solutions will need to be subitted via the SPARK web
submission system (e.g., via uploading a pdf or text
file).
- The goal of the homework is to ensure that you keep up the
readings from the textbook. The use of Internet
to google for solutions or use of solutions manual for the textbook
is prohibited.
- Is a server that maintains a TCP/IP connection to a client stateful or
stateless? Explain.
- Strong mobility in UNIX systems could be supported by allowing a process to
fork a child in a remote system. Explain how this would work.
- Explain client-pull and server-push architectures with 2 examples each.
- Explain why epidemic algorithms are bad at spreading the deletion of a data
item.
- The root node in a hierarchical location service may become a potential
bottleneck. How can this problem be circumvented?
- What is the standard representation used to marshal data in TCP/IP? How do
you ensure that data is transmitted correctly between a 32-bit and a 64-bit
system.
- What is the main difference between RMI (Remote Method Invocation) and RPC.
- RMI cannot support local references (such as pointers), as they refer to
objects only locally accessible. Instead, global object references should be
used, if possible. Outline an implementation of such a
reference.
- Describe how connectionless communication between a server and a client
proceeds when using sockets.
- Use an example to show why clock synchronization is necessary for
many distributed applications.
Last modified: Wed Oct 21 11:50:49 EDT 2009