ASSIGNMENT AND CAT QUESTIONS
a) Give four examples of resources that may be shared in a distributed system.( 4marks)
Possible examples are: hardware resources (disk space, printers, memory, CPU power, etc) and data/software resources (distributed objects, web-pages, Databases,).
b) What is the role of middleware in a distributed system?
To enhance the distribution transparency that is missing in network operating systems. In other words, middleware aims at improving the single-system view that a distributed system should have (4marks)
c) Explain the role of the data level in three-tired client/server architecture. (6marks)
Many client-server applications can be constructed from roughly three different pieces: a user interface, a part that operates on a database or file system, and a middle part that generally contains the core functionality of an application. This middle part is logically placed at the processing level. For example, in an Internet search engine, the processing level program transforms user’s string of keywords into one or more database queries, ranks the results into a list and transforms the list into a series of HTML pages.
d) Classify the following protocols: IP, TCP, and HTTP according to the ISO OSI classiﬁcation. (3marks)
e) Why is it sometimes so hard to hide the occurrence and recovery from failures in a distributed system? (4marks)
f) Why are transport-level communication services often inappropriate for building distributed applications? (3marks)
a) Imagine a Web server that maintains a table in which client IP addresses are mapped to the most recently accessed Web pages. When a client connects to the server, the server looks up the client in its table, and if found, returns the registered page. In your opinion, is this server stateful or stateless? Present an argument to support your opinion. (4marks)
b) Is it possible to connect across a network two components of a distributed system written in different languages (e.g., COBOL and Java) using a distributed object-based system? Is it possible to connect such components by means of Java RMI? Give brief justiﬁcations for your answers. (4marks)
c) Describe the relative advantages and disadvantages of iterative and recursive name resolution in a distributed naming service. (4marks)
d) Can one name belong to more than one name space? If yes, give an example. (2 marks)
a) The distributed ﬁle system Coda allows a client to continue working with a shared ﬁle even if there is no network connection between the client and the server. Explain how this is made possible.
b) Can the model of triple modular redundancy handle Byzantine failures? (3marks)
c) Consider two communication services for use in asynchronous distributed systems. In service A, messages maybe lost, corrupted, duplicated or delayed. In service B, messages may be lost, delayed or delivered too fast but those that are delivered arrive ordered and with the correct contents.
A. Describe the classes of failure exhibited by each service (2 marks)
B. Can service B be described as a reliable communication service?
C. In service B, messages may be lost. delayed or delivered too fast for the recipient to handle them, but those that are delivered arrive order and with the correct ...
SOLUTIONS TO CHAPTER 1 PROBLEMS 1. Q: An alternative deﬁnition for a distributed system is that of a collection of independent computers providing the view of being a single system, that is, it is completely hidden from users that there even multiple computers. Give an example where this view would come in very handy. A: What immediately comes to mind is parallel...