Vyučující
|
|
Obsah předmětu
|
1. Implementace komunikace po síti na jednotlivých vrstvách ISO/OSI přehled dostupných knihoven. 2. Komunikace na úrovni vrstvy MAC v sítích 802.*: způsoby implementace. 3. Implementace a použití servisních protokolů (DHCP, ARP, ICMP, atd.). 4. Komunikace protokolem TCP/IP: socket, vstupně/výstupní proudy a jejich ošetření. Implementace pomocí blokujících i neblokujících operací. 5. Sockety na straně serveru. Implementace pomocí blokujících a neblokujících operací. 6. Komunikace protokolem UDP/IP: datagramy na straně serveru a klienta. 7. Komunikace pomocí zpráv typu broadcast a multicast. 8. Real-time protokoly pro přenos hlasu a videa. 9. Příklady implementace protokolů na aplikační vrstvě. 10. Zabezpečení komunikace: implementace šifrování dat, bezpečná autentizace. 11. Implementace ochrany proti běžným typům útoků na straně serveru. 12. Výkonnostní optimalizace na úrovni HW, operačního systému a aplikace. Rozkládání zátěže. 13. Implementace vysoké dostupnosti síťových aplikací. 14. Clustery, gridy a cloudy jako běhová prostředí síťových aplikací.
|
Studijní aktivity a metody výuky
|
Přednášení, Cvičení na počítači, Individuální práce studentů
- Domácí příprava na výuku
- 30 hodin za semestr
- Účast na výuce
- 56 hodin za semestr
- Semestrální práce
- 12 hodin za semestr
- Příprava na zkoušku
- 14 hodin za semestr
|
Předpoklady |
---|
Odborné znalosti |
---|
Studenti musí mít úspěšně ukončeny předměty Počítačové sítě, Programování v jazyku C/C++, Objektové programování a návrhové vzory. |
Studenti musí mít úspěšně ukončeny předměty Počítačové sítě, Programování v jazyku C/C++, Objektové programování a návrhové vzory. |
Výsledky učení |
---|
Student získá znalost programování síťových aplikací, komunikujících protokolem IP jak v rolích klienta, tak serveru. |
Student získá znalost programování síťových aplikací, komunikujících protokolem IP jak v rolích klienta, tak serveru. |
Vyučovací metody |
---|
Přednášení |
Cvičení na počítači |
Individuální práce studentů |
Přednášení |
Cvičení na počítači |
Individuální práce studentů |
Hodnotící metody |
---|
Analýza seminární práce |
Známkou |
Známkou |
Analýza seminární práce |
Doporučená literatura
|
-
HALL, B. Beej's Guide to Network Programming: Using Internet Sockets. 2019. ISBN 978-1-70530-990-2.
-
KOPPARAPU, C. Load balancing servers, firewalls, and caches.. New York, 2002. ISBN 978-0-471-41550-3.
-
MARCUS, E., STERN, H. Blueprints for high availability. Indianapolis, 2003. ISBN 978-0-471-43026-1.
-
STEVENS, W., FENNER, B. a RUDOFF, A. M. UNIX network programming. Boston, 2004. ISBN 0131411551.
-
WETHERALL, D., Tanenbaum, A. S. Computer networks. Upper Saddle River, NJ, 2011. ISBN 0-13-212695-8.
|