110 likes | 317 Vues
Exercises Meetings. INF5040 (Open Distributed Systems). Lucas Provensi ( provensi@ifi.uio.no ) Swati Sharma ( swatis@ifi.uio.no ) Department of Informatics University of Oslo September 4, 2014. Initial Meeting Plan. Exercises. Theoretical exercises
E N D
Exercises Meetings INF5040 (Open Distributed Systems) Lucas Provensi (provensi@ifi.uio.no) Swati Sharma (swatis@ifi.uio.no) Department of Informatics University of Oslo September 4, 2014
Initial Meeting Plan INF5040 - Group Meetings
Exercises • Theoretical exercises • Based on the lectures and taken form the text books; • Group of students; • Preparation time + discussion. • Programming assignments • Tutorial lectures; • Reserved days for assisting students; • All assignments are mandatory! • Topics covered during meeting may be part of final exam! INF5040 - Group Meetings
Regarding all assignments • Groups of 2 to 3 students • All assignments must be approved to be eligible to take the final exam • For those who took this subject last fall: • If you were eligible to take the exam then, i.e., you got the programming assignments approved, you do NOT have to do them again this semester. • Preferences regarding group composition (if any) should be sent to: • To: provensi@ifi.uio.no and swatis@ifi.uio.no • Deliveries: • https://devilry.ifi.uio.no/ INF5040 - Group Meetings
Assignment 1 • Development of a simple object-based distributed application • Will be described 18.09.14 • Related to the topic discussed on the Object-based Distributed Systems lecture (17.09.14) • Technologies and Tools: Java • CORBA and RMI APIs. • Preliminary Deadline: 09.10.14 INF5040 - Group Meetings
Assignment 2 • Development of a simple application based on group communication • Will be described 16.10.14 • Related to the topic discussed on the Replication in Distributed Systems lecture (15.10.14) • Technologies and Tools: Spread Toolkit • http://www.spread.org/ • Java API • Preliminary Deadline: 06.11.14 INF5040 - Group Meetings
Assignment 3 • Development of a simple peer-to-peer protocol • Will be described 06.11.14 • Related to the topic discussed on the Peer-to-peer Systems lecture (29.10.14) • Technologies and Tools: PeerSim Simulator • http://peersim.sourceforge.net/ • Preliminary Deadline: 27.11.14 INF5040 - Group Meetings
Previous Lectures • Introductionto Distributed Systems • Coulourisch. 1 and TvSch. 1 • Distributed systems:components located in a network that communicates and coordinates their actions exclusively by sending messages. • Consequences of distributed systems • Distribution transparency INF5040 - Group Meetings
Exercises • We defined a DS as one in which hardware and software components located at networked computers communicate and coordinate their actions only by passing messages. What are the consequences of defining a DS in this manner? (Coulourisch. 1 ex. 1.1) • Explain what is meant by (distribution) transparency, and give examples of different types of transparency. (Tanenbaumch. 1 ex. 4) • Why is not always a good idea to aim at implementing the highest degree of transparency possible? (Tanenbaumch. 1 ex. 6) • Describe precisely what is meant by scalable system. (Tanenbaumch. 1 ex. 8) • Consider the implementation strategies for massively multiplayer online games. In particular, what advantages do you see in adopting a single server approach for representing the state of the game? What problems can you identify and how might they be resolved? (Coulourisch. 1 ex. 1.3) • The INFO service manages a potentially very large set of resources, each of which can be accessed by users throughout the Internet by means of a key (a string name). Discuss an approach to the design of the names of the resources that achieves the minimum loss of performance as the number or resources in the service increases. Suggest how the service can be implemented so as to avoid performance bottlenecks when the number of users becomes very large. (Coulourisch. 1 ex. 1.10) INF5040 - Group Meetings
Previous Lectures • System Models for Distributed Systems • Coulourisch. 2 • Physical models: capture the hardware composition of a system in terms of computers and other devices and their interconnecting network; • Architecture models: defines the components of the system, the way they interact, and the way they are deployed in a network of computers • Fundamental models: formal description of the properties that are common to all architecture models • interaction models and failure models INF5040 - Group Meetings
Exercises • How is caching useful in placement strategies? What are its disadvantages? (Coulourisch. 2 ex. 2.7) • What are the two variants of the interaction model in distributed systems? On what point do they differ? (Coulourisch. 2 ex. 2.13) • Consider two communication services for use in asynchronous distributed systems. In service A, messages may be lost, duplicated or delayed and checksums apply only to headers. In service B, messages may be lost, delayed or delivered too fast for the recipient to handle them, but those that are delivered arrive with the correct contents. Describe the classes of failure exhibited by each service. Classify their failures according to their effects on the properties of validity and integrity. Can service B be described as a reliable communication service? (Coulourisch. 2 ex. 2.14) • Classes of failure: omission(fail-stop, crash, channel), arbitrary (byzantine), timing(clock, performance) • Validity: Any message in the outgoing message buffer is eventually delivered to the incoming message buffer • Integrity: The message received is identical to the one sent, and no messages are delivered twice. INF5040 - Group Meetings