Programowanie aplikacji sieciowych
Informacje ogólne
Kod przedmiotu: | MFI-I.3L.097 |
Kod Erasmus / ISCED: | (brak danych) / (brak danych) |
Nazwa przedmiotu: | Programowanie aplikacji sieciowych |
Jednostka: | Instytut Informatyki |
Grupy: | |
Strona przedmiotu: | https://umcs.rusinek.online |
Punkty ECTS i inne: |
0 LUB
4.00
(w zależności od programu)
|
Język prowadzenia: | polski |
Wymagania wstępne: | * Podstawowa znajomość architektury sieci (Technologie sieciowe). * Znajomość jednego z języków programowania (C, Java, Python). |
Godzinowe ekwiwalenty punktów ECTS: | Godziny kontaktowe (z udziałem nauczyciela akademickiego) Wykład 15 Laboratorium 30 Konsultacje 5 Łączna liczba godzin z udziałem nauczyciela akademickiego 50 Liczba punktów ECTS z udziałem nauczyciela akademickiego 2 Godziny nie kontaktowe (praca własna studenta) Samodzielne rozwiązywanie zadań 30 Przygotowanie się do laboratorium 10 Przygotowanie się do egzaminu 10 Łączna liczba godzin niekontaktowych 50 Liczba punktów ECTS za godziny niekontaktowe 2 Sumaryczna liczba punktów ECTS dla modułu 4 |
Sposób weryfikacji efektów kształcenia: | Warunkiem zaliczenia przedmiotu jest udział studenta w przewidzianych planem studiów zajęciach dydaktycznych oraz uzyskanie pozytywnych ocen z prac objętych tymi zajęciami. 1. Zaliczenie laboratorium (max. 100 pkt): a) kartkówki (30 pkt) - W01-04,U02, b) aktywność w trakcie zajęć (30 pkt) - U01-04, c) zadania do rozwiązania w domu (15 pkt) - U01-04, K01, K02, K04, d) projekt zaliczeniowy (25 pkt) - U01-04, K03. Próg zaliczenia 51% punktów. 2. Egzamin pisemny (20 pytań) - W01-04, K01, K02, K04. Próg zaliczenia 51% punktów |
Pełny opis: |
Programowanie aplikacji sieciowych to przedmiot, który łączy wiedzę oraz umiejętności z obszarów sieci oraz programowania. Wykład porusza tematykę protokołów komunikacji, czyli zbioru ścisłych reguł i kroków postępowania, które są automatycznie wykonywane przez urządzenia komunikacyjne w celu nawiązania łączności i wymiany danych. Szczegółowo zostaną omówione wybrane protokoły z modelu OSI. Następnie student zapozna się z procesem projektowania i implementowania własnego protokołu oraz analizy nieznanego mu protokołu w celu stworzenia programu klienta lub serwera dla danego protokołu. W ostatniej części zajęć student pozna zaawansowane mechanizmy wykorzystywane do tworzenia serwerów oraz programów klienckich dla szeregu protokołów warstwy aplikacji. Zakres treści: 1. Modele komunikacji 1.1 Model OSI 1.2 Model TCP/IP 2. Protokoły komunikacyjne 2.1 ARP 2.2 IP 2.3. TCP 2.4. UDP 2.5 DNS 2.6. SMTP/IMAP/POP3 2.7. HTTP 3. Architektury sieci 4. Programowanie sieciowe za pomocą gniazd 5. Analiza protokołu 5.1. KNX 6. Projektowanie protokołu 7. Mechanizmy zaawansowane 7.1. Serwery wielowątkowe 7.2. Serwery zdarzeniowe 7.3. Szyfrowana komunikacja |
Literatura: |
Skrypt dostarczony w ramach wykładu oraz dostępny na stronie: https://github.com/damianrusinek/classes-pas. James Forshaw, "Attacking Network Protocols", no starch press, 2018, ISBN-13: 978-1-59327-750-5 |
Efekty uczenia się: |
WIEDZA W01 - wie, w jaki sposób system operacyjny obsługuje połączenia sieciowe (K_W01,K_W07) W02 - zna i rozumie mechanizmy obsługi połączeń sieciowych w co najmniej jednym języku wysokiego poziomu (K_W02) W03 - zna i rozumie algorytmy przetwarzania danych przez popularne protokoły sieciowe (K_W05) W04 - zna i rozumie sposoby przechowywania danych w procesach sieciowych (K_W06) UMIEJĘTNOŚCI U01 - ma umiejętność tworzenia algorytmów realizujących znane i własne protokoły sieciowe (K_U03, K_U06, K_U10, K_U11) U02 - ma umiejętność projektowania, implementowania oraz wdrażania własnych protokołów sieciowych (K_U05, K_U10, K_U11) U03 - ma umiejętność zapewnienia poufności i bezpieczeństwa danych w aplikacjach sieciowych (K_U04, K_U11) U04 - ma umiejętność tworzenia użytkowych klientów protokołów sieciowych (K_U08) KOMPETENCJE SPOŁECZNE K01 - jest gotów na poznawanie nowych protokołów sieciowych w celu pogłębienia wiedzy (K_K01) K02 - jest gotów do krytycznej oceny własnej wiedzy (K_K02) K03 - jest gotów do pracy w zespole (K_K03) K04 - jest gotów do pogłębiania wiedzy poprzez analizę dokumentacji protokołów sieciowych oraz innych technicznych źródeł w języku angielskim (K_K06) |
Zajęcia w cyklu "Semestr letni 2022/2023" (zakończony)
Okres: | 2023-02-27 - 2023-06-25 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Laboratorium, 30 godzin
Wykład, 15 godzin
|
|
Koordynatorzy: | Marcin Smolira | |
Prowadzący grup: | Filip Postępski, Marcin Smolira | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: |
Przedmiot -
Egzamin
Laboratorium - Zaliczenie na ocenę Wykład - Egzamin |
Zajęcia w cyklu "Semestr letni 2023/2024" (zakończony)
Okres: | 2024-02-26 - 2024-06-23 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Laboratorium, 30 godzin
Wykład, 15 godzin
|
|
Koordynatorzy: | Marcin Smolira | |
Prowadzący grup: | Filip Postępski, Marcin Smolira | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: |
Przedmiot -
Egzamin
Laboratorium - Zaliczenie na ocenę Wykład - Egzamin |
Właścicielem praw autorskich jest Uniwersytet Marii Curie-Skłodowskiej w Lublinie.