Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
didattica:magistrale:ds:ay_1819:main [2018/09/27 15:36]
luca [General Info]
didattica:magistrale:ds:ay_1819:main [2020/09/17 16:55] (current)
Line 3: Line 3:
 ===== News ===== ===== News =====
 <WRAP center round important 95%> <WRAP center round important 95%>
-  * <wrap em>**Insert the date here**</​wrap>:​ the course web site is now on-line+  * <wrap em>**6 April 2019**</​wrap>:​ the lectures of 10 of April will not take place. The lecture of 11 of April will be about RMI labs. Although this is an additional lecture which is not part of the final exams please try to come to the lecture thanks Leonardo
 </​WRAP>​ </​WRAP>​
  
Line 16: Line 16:
  
 **Lessons schedule**: **Lessons schedule**:
-  * Tuesday,  ​9am 11am (Room, D. E. Knuth+  * Wednesday,  ​16:00 18:00 (Room AB1
-  * Thursday, 9am - 11am (Room, D. E. Knuth)+  * Thursday, 9am - 11am (Room AB1)
  
 **Students Office hours**: **Students Office hours**:
Line 26: Line 26:
  
 <WRAP box round 95% center> <WRAP box round 95% center>
-The course intends blablabla....+D1 – KNOWLEDGE AND UNDERSTANDING 
 +At the completion of the module the students should be able to understand:​ 
 +1 the basic definitions and various types of distributed systems 
 +2 various architectural styles, different architecture and middleware 
 +3 processes and threads 
 +4 different types of communications:​ RPC, message oriented, stream oriented and multicast 
 +5 basic concepts of naming 
 +6 the problems of synchronisation of processes and possible solutions 
 +7 basic concepts related to consistency and replication 
 +8 basic concepts related to fault tolerance and security in distributed systems 
 +9 various types of distributed systems such as web based and coordination based. 
 + 
 +D2 – APPLYING KNOWLEDGE AND UNDERSTANDING 
 +At the completion of the module the students should be able to: 
 +1 design the architecture of a distributed system 
 +2 implement and use thread and processes 
 +3 apply processes and threads 
 +4 apply various types of communications  
 +5 use various types of naming systems 
 +6 apply various solutions for process synchronisation  
 +7 apply basic concepts for implementing fault tolerance and security in distributed systems 
 + 
 +D3 MAKING JUDGEMENTS  
 +At the completion of the module the students should be able to: 
 +1 critically evaluate the architecture of a distributed system  
 +2 critically appraise the use of thread and processes 
 +3 estimate the impact of using a type of communication  
 +4 criticise various types of naming systems 
 +5 criticise possible solutions for process synchronisation  
 +6 critically evaluate all various fault tolerance and security mechanisms that can be applied in distributed systems 
 + 
 +D4 - COMMUNICATION SKILLS 
 +Risultati attesi: 
 +At the completion of the module the students should be able to: 
 +1 communicate ideas, problems and solutions for building distributed systems;  
 +2 interact with other people and undertake workgroup activities 
 + 
 + 
 +D5 - LEARNING SKILLS  
 +Risultati attesi: 
 +At the completion of the module the students should be able to: 
 +1 read and understand new technologies available for building distributed systems
 </​WRAP>​ </​WRAP>​
  
Line 33: Line 74:
  
 <WRAP round 95% center box> <WRAP round 95% center box>
-....+Contents 
 + 
 +Title: INTRODUCTION 
 +Content: (i) Basic definitions;​ (ii) Goals when implementing a distributed system: Sharing, Transparency,​ Openness and Scalability;​ (iii) Scalability techniques. 
 + 
 +Title: TYPES OF DISTRIBUTED SYSTEMS 
 +Content: (i) Types of distributed systems; (ii) Distributed computing systems; (iii) Distributed information systems; (iv) Distributed pervasive systems 
 + 
 +Title:​ARCHITECTURES 
 +Content: (i) Architectural styles; (ii) System architectures;​ (iii) Peer-to-peer;​ (iv) Hybrid architectures 
 + 
 +Title:​ARCHITECTURES 
 +Content: (i) Peer-to-peer;​ (ii) Hybrid architectures  
 + 
 +Title: Processes 
 +Content: (i) Processes; (ii) Threads; (iii) Multithreaded clients; (iv) Multithreaded servers; (v) Virtualisation 
 + 
 +Title: Client/​Server anatomy 
 +Content: (i) Client anatomy; (ii) Server Anatomy; (iii) Server cluster organisation;​ (iv) Distributed server and IPv6 
 + 
 + 
 +Title: Communication 
 +Content: (i) OSI model; (ii) Middleware definition; (iii) Types of Communication;​ (iv) Remote Procedure Calls 
 + 
 +Title: Communication 
 +Content: (i) Berkeley Sockets; (ii) Message-Passing Interface; (iii) Message-queuing systems; (iv) Message brokers; (v) IBM’s WebSphere Message-Queuing System 
 + 
 +Title: Security – Encryption 
 +Content: (i) Security: some basic definitions;​ (ii) Conventional Encryption; (iii) Public key encryption 
 + 
 +Title: Digital Signatures and Authentication Protocols 
 +Content: (i) Message Authentication Codes; (ii) Hash functions; (iii) Authentication Protocols; (iv) Symmetric Encryption Authentication;​ (v) X.509 Authentication Service 
 + 
 +Title: Naming 
 +Content: (i) Flat naming; (ii) Name Spaces; (iii) Domain Name Server 
 + 
 +Title: SYNCHRONISATION 
 +Content: (i) Physical Clocks; (ii) Clock Synchronization Algorithms; (iii) Logical clocks 
 + 
 +Title: SYNCHRONISATION 
 +Content: (i) Mutual Exclusion; (ii) Leader Election 
 + 
 +Title: CONSISTENCY AND REPLICATION 
 +Content: (i) Basic definitions about Consistency and replication;​ (ii) Data-centric consistency models; (iii) Client-centric consistency models  
 + 
 +Title: FAULT TOLERANCE 
 +Content: (i) Introduction to fault tolerance; (ii) Process Resilience; (iii) Reliable client-server communication;​ reliable group communication;​ (iv) distributed commit 
 + 
 +Title: Distributed object-based systems 
 +Content: (i) architecture;​ (ii) processes; (iii) Communication;​ (iv) Naming; (v) Synchronisation;​ (vi) Consistency and replication;​ (v) Fault tolerance; (vi) security 
 + 
 +Title: Distributed file systems 
 +Content: (i) architecture;​ (ii) processes; (iii) Communication;​ (iv) naming; (v) Synchronisation;​ (vi) Consistency and replication;​ (v) Fault tolerance; (vi) security 
 + 
 +Title: Distributed web based systems 
 +Content: (i) architecture;​ (ii) processes; (iii) Communication;​ (iv) naming; (v) Synchronisation;​ (vi) Consistency and replication;​ (v) Fault tolerance; (vi) security 
 + 
 +Title: distributed-coordination based systems 
 +Content: student will read the chapter of Andrew STanenbaum and give the lecture
 </​WRAP>​ </​WRAP>​
 ---- ----
 ===== Study material ===== ===== Study material =====
 <WRAP box round center 95%> <WRAP box round center 95%>
-**Course Slides** +The material can be found at the following link:
-  * slide 1st lesson +
-  * +
  
-**Reference books** +http://www.leonardomostarda.net/​distributedSystems.html
-  * 1st book +
-  * 2nd book +
-  * ... +
-  * +
 </​WRAP>​ </​WRAP>​
 ---- ----
 ===== Exams ===== ===== Exams =====
 <WRAP box round center 95%> <WRAP box round center 95%>
-**Exam Dates A.Y2015/​2016** +Written exam is compulsoryOral exam is not compulsory
-  * Winter session dates here  +
-  * Summer session dates here +
-  * Autumn session dates here +
-  * Winter session dates here (2016) +
-**Exam rules**: ​+
  
-** Exam Results ** +Exam marks must be registered during the exams dates. These are available ​ 
-  * N/A+on esse3.
 </​WRAP>​ </​WRAP>​