menu_634642140194121250_cs8105 distributed systems tutorial.doc

Upload: md2829

Post on 14-Apr-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/27/2019 Menu_634642140194121250_CS8105 Distributed Systems Tutorial.doc

    1/3

    SEMESTER-VIII

    CS 8105 DISTRIBUTED SYSTEMS TUTORIAL SHEET

    DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING, B. I. T. MESRA

    Module I: Characterization of Distributed Systems and System Models

    1. What is a distributed system? Give a few examples of Distributed systems that are in practice.2. What is the motivation behind the development of distributed system?

    3. Enumerate and explain the benefits and challenges in a distributed system compared to its

    centralized counterpart. You may consider an example scenario to justify the differences.

    4. What additional challenges has the nomadic computing added to the existing distributed

    computing paradigm?

    5. What is a middleware? Give few examples of distributed middleware systems in practice.

    6. What is utility computing paradigm? How closely it is relevant to distributed computing paradigm

    and what additional challenges does it pose?7. What are the homogenous and heterogeneous systems? Give examples.

    8. Resource management issue has been talked about a lot in distributed computing paradigm. Whatare the issues and how those issues are addressed by different resource management systems?

    9. What is the Convolution process? How security to jobs executed remotely is provided through

    convolution process?

    10. What is the issue of Scalability? Discuss some of the guiding principles for designing a scalable

    distributed system.

    11. Taking an example middleware (say Globus), explain its functional components.12. Enumerate and explain in brief the important design issues for a distributed system.

    13. What are microkernel model and monolithic kernel models? Explore the suitability of these

    models in a distributed scenario and justify your answer.

    14. What are the two broad categories of operating systems meant for distributed computing systems?

    Compare them.

    15. In what respect are distributed computing systems better than parallel processing systems? Give

    examples of three applications for which distributed computing systems will be more suitable thanparallel processing systems.

    16. Enumerate and explain various models used for building distributed computing systems.

    17. What are the Synchronous and Asynchronous distributed systems? What are the issues?18. The Network Time Protocol service can be used to synchronize computer clocks. Explain why,

    even with this service, no guaranteed bound is given for the difference between two clocks.

    19. Define the integrity property of reliable communication and list all the possible threats to integrity

    from users and from system components. What measures can be taken to ensure the integrity

    property in the face of each of these sources of threats?

    20. Describe possible occurrences of each of the main types of security threats (threats to processes,

    threats to communication channels, denial of service) that might occur in the Internet.

    Module II: Networking and Internetworking

    21. What is the task of an Ethernet switch? What tables does it maintain?

    22. What are Layer 2/3 switches? List out the network components and the specifications needed to

    build a distributed computing fabric. You might need to consider a problem scenario.

    23. Compare connectionless and connection-oriented communication for the implementation of each

    of the following application-level or presentation-level protocols: 1. Telnet, 2. FTP, 3. user

    location, 4. information browsing, 5. RPC24. Write a note on any distributed FTP.

    25. Write note on ATM networks.

  • 7/27/2019 Menu_634642140194121250_CS8105 Distributed Systems Tutorial.doc

    2/3

    Module III: Interprocess Communication

    26. What are the various layers of a middleware? Draw the layered diagram of a distributed system.Explain the functionalities of and services offered at each layer.

    27. What are blocking and non-blocking communication primitives? Compare these from theirefficiency viewpoint for use in Distributed systems. Justify.

    28. With the help of architectural diagram explain CORBA.

    29. What is Group communication? When and where it is required? What are the open group and

    closed groups and how group communication is accomplished?

    30. Write the primitives and explain the 4.3BSD UNIX IPC mechanism?

    31. What are idempotent and non-idempotent operations? Suggest a mechanism to handle idempotentoperations.

    32. What is remote method invocation and how it is achieved?

    33. What is the main purpose of using an acknowledgment message in an IPC protocol? Are

    acknowledgment always needed for reliable communication? Give reasons for your answer.

    34. Write note on Remote Procedure Calls.

    35. Discuss the different types of call semantics used in RPC systems.

    Module IV: Time and Global States; Coordination and Agreement

    36. What is the clock synchronization problem? How this has a great bearing on execution ofdistributed applications?

    37. What are External and internal synchronization? State example situations where these might be

    necessary.

    38. Discuss the Christian and Berkley algorithms for clock synchronization.

    39. What is the concept of logical and physical clocks? Enumerate the different issues involved in

    these two approaches.

    40. Discuss how it is possible to compensate for clock drift between synchronization points by

    observing the drift rate over time. Discuss any limitations to your method.41. Consider the behavior of two machines in a distributed system. Both have clocks that are

    supposed to tick 1000 times per ms. One of them actually does, but the other ticks only 990 times

    per ms. If UTC updates come in once a minute, what is the maximum clock skew that will occur?42. Why mutual exclusion is required in distributed systems? Discuss how it can be achieved in a

    centralized and distributed setup?

    43. Explain the Bully algorithm.

    44. Suggest how to adapt the Bully algorithm to deal with temporary network partitions and slow

    processes.45. Explain why the algorithm for reliable multicast over IP multicast does not work for open groups.

    Given any algorithm for closed groups, how, simply, can we derive an algorithm for open groups?

    Module V: Transactions and Concurrency Control

    46. What are ACID properties?

    47. Describe the lost update problem.

    48. Describe the inconsistent retrieval problem.49. Explain the distributed deadlock problem. How the problem can be addressed?

    50. Describe the concurrency control mechanism.51. Describe how a non-recoverable situation could arise if write locks are released after the last

    operation of a transaction but before its commitment.

    52. What are the advantages and drawbacks of multiversion timestamp ordering in comparison with

    ordinary timestamp ordering?

    Module VI: Distributed Transactions

  • 7/27/2019 Menu_634642140194121250_CS8105 Distributed Systems Tutorial.doc

    3/3

    53. What are Flat and Nested transactions?

    54. What are one-phase and two-phase atomic commit protocols?

    55. How the two-phase commit protocol works for nested transactions?

    56. What are the Flat and Hierarchic two-phase commit protocols?

    57. Discuss the recovery of the two-phase commit protocol.58. Give an example of the interleavings of two transactions that is serially equivalent at each server

    but is not serially equivalent globally.59. Extend the definition of two-phase locking to apply to distributed transactions. Explain how this is

    ensured by distributed transactions using strict two-phase locking locally.

    60. Explain how the two-phase commit protocol for nested transactions ensures that if the top-level

    transaction commits, all the right descendants are committed or aborted.

    Module VII: Replication

    61. What is active and passive replication? Discuss their role in fault tolerance.

    62. What are faults in distributed scenario and how replication helps in dealing with such situations?

    63. Discuss the gossip architecture in detail.

    64. What do you mean by a highly available service?

    65. Discuss the Bayou system.

    66. Discuss the Coda file system architecture.

    67. What are the different replication protocols? Explain.68. What is a network partition problem? How a replication scheme deals with such situations?

    69. Explain the Quorum based protocol.70. What are the different consistency models?

    ********