exercises meetings

11
Exercises Meetings INF5040 (Open Distributed Systems) Lucas Provensi ([email protected] ) Swati Sharma ([email protected] ) Department of Informatics University of Oslo September 4, 2014

Upload: elsie

Post on 05-Jan-2016

58 views

Category:

Documents


1 download

DESCRIPTION

Exercises Meetings. INF5040 (Open Distributed Systems). Lucas Provensi ( [email protected] ) Swati Sharma ( [email protected] ) Department of Informatics University of Oslo September 4, 2014. Initial Meeting Plan. Exercises. Theoretical exercises - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Exercises Meetings

Exercises MeetingsINF5040 (Open Distributed

Systems)

Lucas Provensi ([email protected])Swati Sharma ([email protected])

Department of InformaticsUniversity of Oslo

September 4, 2014

Page 2: Exercises Meetings

INF5040 - Group Meetings 2

Initial Meeting PlanDate Topic

04.09.14 Overview and theoretical exercises

11.09.14 Theoretical exercises

18.09.14 First programming assignment (introduction and specification)

25.09.14 TAs will be available for helping you with the 1st assignment

02.10.14 No meeting

09.10.14 Theoretical exercises and submission of 1st assignment

16.10.14 Second programming assignment (introduction and specification)

23.10.14 TAs will be available for helping you with the 2nd assignment

30.10.14 Theoretical exercises

06.11.14 Third programming assignment (introduction and specification) and submission of 2nd assignment

14.11.14 TAs will be available for helping you with the 3rd assignment

20.11.14 Theoretical exercises

27.11.14 Theoretical exercises and submission of the 3rd assignment

Page 3: Exercises Meetings

INF5040 - Group Meetings 3

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!

Exercises

Page 4: Exercises Meetings

INF5040 - Group Meetings 4

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: [email protected] and [email protected]

Deliveries:◦ https://devilry.ifi.uio.no/

Regarding all assignments

Page 5: Exercises Meetings

INF5040 - Group Meetings 5

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

Assignment 1

Page 6: Exercises Meetings

INF5040 - Group Meetings 6

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

Assignment 2

Page 7: Exercises Meetings

INF5040 - Group Meetings 7

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

Assignment 3

Page 8: Exercises Meetings

INF5040 - Group Meetings 8

Introduction to Distributed Systems◦ Coulouris ch. 1 and TvS ch. 1

Distributed systems: components located in a network that communicates and coordinates their actions exclusively by sending messages.

Consequences of distributed systems Distribution transparency

Previous Lectures

Page 9: Exercises Meetings

INF5040 - Group Meetings 9

1. 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? (Coulouris ch. 1 ex. 1.1)

2. Explain what is meant by (distribution) transparency, and give examples of different types of transparency. (Tanenbaum ch. 1 ex. 4)

3. Why is not always a good idea to aim at implementing the highest degree of transparency possible? (Tanenbaum ch. 1 ex. 6)

4. Describe precisely what is meant by scalable system. (Tanenbaum ch. 1 ex. 8)5. 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? (Coulouris ch. 1 ex. 1.3)

6. 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. (Coulouris ch. 1 ex. 1.10)

Exercises

Page 10: Exercises Meetings

INF5040 - Group Meetings 10

System Models for Distributed Systems◦ Coulouris ch. 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

Previous Lectures

Page 11: Exercises Meetings

INF5040 - Group Meetings 11

1. How is caching useful in placement strategies? What are its disadvantages? (Coulouris ch. 2 ex. 2.7)

2. What are the two variants of the interaction model in distributed systems? On what point do they differ? (Coulouris ch. 2 ex. 2.13)

3. 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? (Coulouris ch. 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.

Exercises