CODE 86800 ACADEMIC YEAR 2018/2019 CREDITS 6 cfu anno 2 INGEGNERIA INFORMATICA 8733 (LM-32) - GENOVA SCIENTIFIC DISCIPLINARY SECTOR ING-INF/05 LANGUAGE Italian TEACHING LOCATION GENOVA SEMESTER 1° Semester TEACHING MATERIALS AULAWEB OVERVIEW The course introduce the modern topics of networked systems. Starting from the principles of distributed systems, it will lead to the modern multi-processor, multi-location, falut-resistant distributed architectures, which are the basis both of the leading enterprises of the 21st century (Google, Amazon, Facebook) and of Cloud Computing in the wider sense. The engineering issues of this new ICT industry will be also considered, with consideration on its impact on the environment. AIMS AND CONTENT LEARNING OUTCOMES The course will address resource virtualization issues in complex information systems. The latest methodological and architectural solutions will be presented. Next, the cloud computing approach will be studied by analyzing both formal aspects and commercial solutions. AIMS AND LEARNING OUTCOMES Understand the world of networked services and applications Learn to cope with - at a macro level - the design of distributed systems Acquire knowledge and be able to evaluate the different Cloud architecures Acquire some competence in programming simple Cloud applications Understand the engineering issues of ICT in the 21st century PREREQUISITES Operating systems, computer networks, basic competence of computer programming and some principles of concurrent programming. TEACHING METHODS Mainly frontal lessons. In the second part of the course some specific topics will be proposed for in-depth study, aiming to a brief presentation and follow-updiscussion with the teacher and the other students. SYLLABUS/CONTENT A. Distributed systems Scalability, availability/reliability. Abstractions and models; hypothesis on order and time. Problem of consensus; FLP impossibility and CAP theorem. Strong and weak consistency. Time and order: partial and total order. Relation between time, order and performances. Synchronous and asynchronous replicas. Algorithms that tolerate net partitions: Paxos. Replica mechanisms with strong consistency. Protocols with weak consistency. Data types that have replica convergence (CRDT). CALM theorem. B. Principles and practical of the Cloud Computing What it is. Service models: Infrastructure as to Service (IaaS), Platform as to Service (Paas), Software as to Service (SaaS). Contractual aspects and business models. Socio-economic aspects. Technology of Cloud Computing. Examples of Cloud services (Web Services, SaaS, PaaS, IaaS). Organization and management of data in the Cloud. Examples of modern applications (searching, indexing, ranking, collective intelligence). Economic aspects. Security and governance of Cloud (public, private, hybrid). C. Introduction to Green IT From traditional server to virtualized server in the Data Center. The organization of a modern Data Center. The issues of power efficiency. The evolution of networks inside Data Centers. D. Internet Architecture What is the modern infrastructure of Internet and how its ecosystem evolved over time. Internet governance. What is Network Neutrality and what it implies fromthe technological and economic points of view. RECOMMENDED READING/BIBLIOGRAPHY Mikito Takada, “Distributed Systems for fun and profit”, free ebook [http://book.mixu.net/distsys/], 2013. Chris Harding et al., “Cloud Computing for Business”, The Open Group, free ebook [https://www2.opengroup.org/ogsys/catalog/G114], 2011. Marty Poniatowski, “Foundation of Green IT: Consolidation, Virtualization, Efficiency, and ROI in the Data Center”, Prentice Hall (also as ebook), 2009. TEACHERS AND EXAM BOARD GIUSEPPE MARINO Ricevimento: The teacher is available on appointment (to be agreed on by e-mail of at the end of any lesson). Exam Board GIUSEPPE MARINO (President) ANTONIO BOCCALATTE LESSONS LESSONS START The first lesson will be on Tue September 18th, following the official timetable. Class schedule VIRTUALIZATION AND CLOUD COMPUTING EXAMS EXAM DESCRIPTION Case study of a real application and oral examination. ASSESSMENT METHODS To achieve competence in recognizing the specific issues of distributed systems, to be able to outline viable technical solutions. To acquire competence in evaluating and comparing projects of Cloud architectures and in designing simple applicative services on the Internet. Exam schedule Data appello Orario Luogo Degree type Note 15/02/2019 09:00 GENOVA Esame su appuntamento 02/08/2019 09:00 GENOVA Esame su appuntamento 13/09/2019 09:00 GENOVA Esame su appuntamento