This is an old revision of the document!
Distributed Systems
News
- Insert the date here: the course web site is now on-line
General Info
Teacher:
ESSE3 Link
Lessons schedule:
- Wednesday, 16:00 - 18:00 (Room AB1)
- Thursday, 9am - 11am (Room AB1)
Students Office hours:
- Please send an email to me and we can arrange a meeting
Course Objectives
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
Course Contents
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 S. Tanenbaum and give the lecture
Study material
The material can be found at the following link:
Exams
Exam Dates A.Y. 2015/2016
- Winter session dates here
- Summer session dates here
- Autumn session dates here
- Winter session dates here (2016)
Exam rules:
Exam Results
- N/A