Distribuované systémy a výpočty
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
B2M32DSVA | Z,ZK | 6 | 2P + 2C | česky |
- Garant předmětu:
- Peter Macejko
- Přednášející:
- Peter Macejko
- Cvičící:
- Peter Macejko, Ondřej Vondrouš, Ondřej Votava
- Předmět zajišťuje:
- katedra telekomunikační techniky
- Anotace:
-
Předmět je zaměřen na technologie podporující distribuovaný výpočet: na mechanismy zajišťující spolehlivé, efektivní a bezpečné propojení aplikačních procesů, programová rozhraní komunikačních kanálů a současné middleware technologie. Podstatná část přednášek je věnována typickým technikám distribuovaného výpočtu: zabezpečení kauzality výpočtu, zajištění výlučného přístupu, zvládnutí zablokování, ochraně proti výpadkům, mobilitě výpočtu a bezpečnosti.
- Požadavky:
-
Základní znalosti v oboru počítačových sítí a komunikací. Základy programování v jazyce Java.
- Osnova přednášek:
-
1. Distribuovaný výpočet, grafové algoritmy (Dijkstra), synchronní a asynchronní model
2. Komunikační systém - potvrzovací protokoly, směrování
3. Synchronní a asynchronní výměna zpráv, multicasting
4. Procedurální komunikace - IDL rozhraní, sémantika volání, asynchronní mechanismy
5. Modely distribuovaného výpočtu - client-server, peer-to-peer, subscribe-publish, cloud computing
6. Podpora distribuovaných aplikací - Java RMI, JMS, Jini; SOAP, REST
7. Čas v distribuovaných systémech - synchronizace fyzických hodin, skalární a vektorové logické hodiny
8. Sdílení prostředků, distribuované algoritmy výlučného přístupu
9. Algoritmy rozbití symetrie
10. Detekce ukončení výpočtu, zablokování - předcházení a detekce
11. Replikace dat a procesů, zajištění konzistence
12. Velké distribuované systémy: architektura a výpočty (DHT, CDN, MapReduce, PageRank, social networks)
13. Mobilita v distribuovaných systémech - rozkládání zátěže, mobilní agenti, kooperující ad-hoc systémy
14. Bezpečnost v distribuovaných systémech - Kerberos, PKI, PGP
- Osnova cvičení:
-
1. Úvod do předmětu
2. Prostředí Java RMI, JMS
3. Prostředí SOAP
4. Prostředí Jini, REST
5. Práce na malých úlohách, konzultace
6. Práce na malých úlohách, konzultace
7. Distribuovaná aplikace - ukázka implementace
8. Distribuovaná aplikace - ukázka implementace, zadání projektu
9. Práce na projektu, konzultace
10. Práce na projektu, konzultace
11. Distribuované ukládání dat
12. Práce na projektu, konzultace
13. Vyhodnocení projektu
14. Vyhodnocení projektu, zápočet
- Cíle studia:
-
Absolvent předmětu získá přehled v oboru distribuovaných systémů. Bude si vědom omezení i výhod při nasazování takovýchto systémů. Absolvent bude také schopen navrhnout a implementovat jednoduchý distribuovaný systém.
- Studijní materiály:
-
Janeček J.: Distribuované systémy, ES ČVUT 2001, ISBN: 8001023079.
Coulouris G., Dollimore J., Kindberg T., Blair G.: Distributed Systems: Concepts and Design (5th Edition), Addison-Wesley 2011, ISBN: 0132143011.
Tel G.: Introduction to Distributed Algorithms, Cambridge University Press 2000, ISBN: 0521794838.
Attiya H., Welch J.: Distributed Computing: Fundamentals, Simulations, and Advanced Topics, John Wiley and Sons, Inc., 2004. Second Edition, ISBN: 978-0-471-45324-6.
- Poznámka:
- Další informace:
- https://moodle.fel.cvut.cz/courses/B2M32DSVA
- Rozvrh na zimní semestr 2024/2025:
-
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Po Út St Čt Pá - Rozvrh na letní semestr 2024/2025:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů:
-
- Elektronika a komunikace - Komunikační sítě a internet (povinně volitelný předmět)
- Elektronika a komunikace - Mobilní komunikace (povinně volitelný předmět)
- Softwarové inženýrství a technologie - specializace Enterprise systémy (PS)
- Softwarové inženýrství a technologie - specializace Technologie pro multimédia a virtuální realitu (povinně volitelný předmět)
- Softwarové inženýrství a technologie - specializace Technologie internetu věcí (PS)
- Softwarové inženýrství a technologie - společný 1. ročník (PS, povinně volitelný předmět)