Nie wymagam dokładnej znajomości składni funkcji. \\
Wymagam znajomość nazw funkcji i umiejętność znalezienia opisu składni. \\
Do zajęć konieczna jest znajomość programowania strukturalnego i obiektowego w C++.
===== Laboratoria 2 (10/12/13.10) =====
* znać funkcje (nazwy, jakie informacje są przekazywane w argumentach, co oznaczają używane przez nie stałe) do:
* tworzenia gniazda
* łączenia gniazda
* czytania/wysłania danych z/do gniazda
* zamykania połączenia sieciowego i zamykania gniazda
* znać strukturę pozwalającą na zapis adresu gniazda
* wiedzieć że kolejność bajtów we wiadomościach musi być z góry ustalona
* kojarzyć funkcje pozwalające na wpisanie adresu IP i portu
===== Laboratoria 3 (17/19/20.10) =====
* znać pełen zestaw funkcji BSD sockets API:
* ogólne:
* tworzenie gniazda
* ustalanie lokalnego adresu
* zamykanie gniazda
* połączeniowe (i pseudopołączeniowe):
* łączenie do wybranego adresu
* oczekiwanie na nowe połączenia
* przyjęcie nowego połączenia
* wysyłanie danych
* odbiór danych
* zakończenie połączenia
* bezpołączeniowe:
* wysłanie danych
* odbiór danych
* wiedzieć w jakiej kolejności można wywoływać w/w funkcje
* wiedzieć jakie funkcje i w jakiej kolejności należy użyć, aby stworzyć:
* klienta TCP
* serwer TCP
* klienta UDP
* serwer UDP
===== Laboratoria 5 (2/3/6/7.11) =====
* znać różnice między trybem blokującym i nieblokującym
* wiedzieć które funkcje (spośród wszystkich omawianych funkcji sieciowych) mogą się zablokować
* wiedzieć w jakiej sytuacji w/w funkcje mogą się zablokować
* znać gwarancje funkcji write w trybie blokującym
* rozumieć jakie wartości (ilości bajtów) mogą zwrócić funkcje odbierające dane z sieci
* rozumieć jakie wartości (ilości bajtów) mogą zwrócić funkcje wysyłające dane do sieci
* rozumieć na czym polega protokół strumieniowy i zorientowany na wiadomość (datagramowy), \\ szczególnie w jakich porcjach mogą być odbierane dane w TCP i UDP
* rozumieć czym może skutkować brak kontroli przepływu
* rozumieć czym może skutkować brak uporządkowania i potwierdzania odebrania danych
* znać praktyczne różnice między protokołami TCP i UDP
* jakie gwarancje zapewnia programiście TCP
* co w TCP programista musi sam zaimplementować
* jakie gwarancje zapewnia programiście UDP
* co w UDP programista musi sam zaimplementować
===== Laboratoria 10 (na 1 zajęciach z WLAN, 7/8/12.12) =====
Do pierwszych laboratoriów o sieciach bezprzewodowych proszę przypomnieć sobie zagadnienia:
* model warstwowy ISO/OSI oraz TCP/IP
* co to jest, jakie ma warstwy
* jakie zadania mają warstwy: fizyczna, łącza danych, sieci
* adresacja IPv4 - teoria
* co to jest adres sieci
* co to jest maska sieci i jak można ją zapisać
* jak wyliczyć które adresy IP należą do sieci
* jak podzielono pulę adresów
* trasowanie (routing) – teoria (co to jest, po co to jest, jak czytać tabelę tras, jak są podejmowane decyzje którędy idzie pakiet)
* ethernet
* jak wygląda adresowanie urządzeń w ethernecie
* kiedy urządzenie może zacząć wysyłać dane
* co się dzieje jeśli dwa urządzenia zaczną nadawać dane naraz
* urządzenia sieciowe
* przełącznik (switch)
* działa na warstwie łącza danych (2; adresy MAC; komunikacja między "bezpośrednio" połączonymi urządzeniami)
* rozgranicza domeny kolizyjne, ale nie rozgłoszeniowe (przypomnieć sobie definicje)
* ma wiele portów
* nie ma adresu IP (chyba że dodatkowo, poza byciem przełącznikiem, jest też czymś jeszcze – np. zdalną konsolą do zarządzania przełącznikiem)
* nie ma adresu MAC (chyba że… [jak wyżej])
* jest "niewidzialny" dla urządzeń do niego podłączonych
* trasownik (router)
* działa na warstwie sieci (3; adresy IP; komunikacja między dowolnymi urządzeniami w sieci)
* rozgranicza domeny rozgłoszeniowe
* stoi pomiędzy różnymi sieciami IP
* ma wiele interfejsów sieciowych
* każdy interfejs może mieć (dowolnie dużo) adresów IP
* adresy IP na różnych interfejsach muszą być z innych sieci
* wykonuje trasowanie (routing)
* narzędzia sieciowe w Linuksie
* wyświetlanie dostępnych interfejsów sieciowych
* włączanie / wyłączanie interfejsu
* sprawdzanie czy jest łączność na warstwie fizycznej
* wyświetlanie (wszystkich) ustawionych adresów IP
* ustawianie / usuwanie adresu IP
* dodawanie drugiego adresu IP do interfejsu
* wyświetlanie tabeli tras
* dodawanie tras do tabeli
* włączanie / wyłączanie IP forwarding
Na wejściówce mogą pojawić się pytania z:
* modelu warstwowego – za co która warstwa odpowiada
* adresu MAC – do czego służy, skąd się zwykle bierze, jak wygląda (zapis)
* adresacji IP:
* do czego służy adres IP, skąd się zwykle bierze, jak wygląda (zapis)
* zakresy publicznych i rozgłoszeniowych IP, bloki adresów prywatnych
* jakie IP należą do podanej sieci
* narzędzi sieciowych w Linuksie:
* wyświetlanie, włączanie, wyłączanie interfejsów
* wyświetlanie adresów MAC
* wyświetlanie, dodawanie, zmiana, usuwanie adresów IP
* sprawdzanie łączności IP, sprawdzanie trasy do podanego IP
* wyświetlanie, dodawanie tras
* trasowania – kiedy jest wykonywane, jak działa
===== Laboratoria 12 (na zajęciach z DNS; 21.12 / 8/9.1) =====
Na wejściówce będą pytania sprawdzające znajomość treści przedstawionych na wykładzie z DNS ([[https://www.cs.put.poznan.pl/mkalewski/edu/sk/doc/system-nazw-domen.pdf|link do slajdów]]):
* co to jest nazwa domenowa, co oznacza skrót FQDN
* na czym polega hierarchia w systemie nazw domenowych
* co to jest korzeń (root zone)
* co to jest TLD
* jakie są rodzaje TLD – krajowe, funkcjonalne, sponsorowane, …
* z każdego z w/w rodzaju należy znać po 3 przykłady TLD
* jakie są rodzaje serwerów, do czego służą i czym się różnią:
* root server, authoritative, caching (non-authoritative)
* master, slave
* co to jest resolver
* rodzaje rekordów zasobowych: A, AAAA, NS, CNAME, MX, TXT, …
* do czego służą
* co zawierają
===== Laboratoria 13 (na zajęciach z IPv6; 11/12/16.01) =====
* Co to jest adres MAC, ile na bitów, skąd się bierze?
* Na jakiej warstwie ISO/OSI działa protokół IP?
* Jakie zadania pełni protokół IP?
* Na czym polega fragmentacja w IP?
* Skąd wiadomo jaki protokół warstwy wyższej jest w danym pakiecie IP?
* Adres IPv4:
* Ile bitów ma adres?
* Jakie zakresy adresów mają bloki prywatne?
* Które adresy są multicastowe?
* Jaki jest adres localhosta, jaki adres reprezentuje dowolny adres?
* Jak jest określany adres MAC urządzenia o znanym adresie IP?
* Jaki protokół jest używany do automatycznego nadawania adresów IP? Jak wygląda przydzielanie adresu IP?
* Do czego wykorzystywany jest protokół ICMP?
* Do czego wykorzystywany jest NAT i dlaczego jest potrzebny?
====== ——— 2022 ——— ======
===== Laboratoria 10 (13/14.12) =====
Zagadnienia na wejściówkę:
* znać rodzaje sieci IBSS (ad-hoc), BSS i ESS
* z czego się składają
* czym się od siebie różnią
* rozróżniać identyfikatory ESSID (SSID) i BSSID
* jak się je zapisuje
* kto je nadaje / jak są tworzone
* znać komendy do:
* wyświetlania informacji o bezprzewodowych kartach sieciowych
* listowania interfejsów bezprzewodowych (jakie są dostępne, w jakich trybach pracują)
* wyświetlania stanu połączenia bezprzewodowego (czy jest połączenie, do jakiej sieci, na jakim kanale/częstotliwości)
* skanowania (wyświetlania listy) dostępnych sieci
* zmiany trybu pracy interfejsu bezprzewodowego
* [SK1] Podstawy obsługi sprzętu CISCO ([[sk1:cisco_wstep]]):
* kojarzyć jak i z jakich programów korzysta się do komunikacji po porcie szeregowym pod Linuksem
* kojarzyć tryby działania w IOS i przechodzenie między nimi (''enable'', ''configure terminal'', …)
* umieć wyświetlić pomoc kontekstową (''?'') i korzystać z autouzupełniania (''tab'')
* przypomnieć sobie jak wyglądały nazwy interfejsów
===== Laboratoria 11 (20/21.12) =====
* Znać różnice między WEP, WPA/WPA2-PSK, WPA3-SAE, WPA/WPA2/WPA3-EAP oraz WPA-Personal, WPA-Enterprise
* czym różni się uwierzytelnianie i które urządzenie je wykonuje
* czym różni się szyfrowanie, jakie są używane sposoby szyfrowania, kto może odszyfrować dane
* które rozwiązania są uważane za bezpieczne, w których bezpieczeństwo zależy od konfiguracji (np. zastosowanych metod, siły haseł)
* Kojarzyć do czego służy protokół EAP i RADIUS w WPA-Enterprise
* Kojarzyć od czego zależy metoda uwierzytelniania w WPA-Enterprise
* Kojarzyć jaka jest rola WPS i znać przykłady metod WPS
* Wiedzieć jakie programy pozwalają łączyć się do sieci bez zabezpieczeń i z zabezpieczeniami WPA/WPA2/WPA3
====== ——— 2021 ——— ======
===== Laboratoria 5 (1 zajęcia z programowania, 9/4.11) =====
**Uwaga**: Wejściówka obejmuje przypomnienie z przedmiotów //programowanie niskopoziomowe//, //programowanie obiektowe// i //programowanie systemowe i współbieżne//:
* jakim poleceniem (w konsoli) można skompilować program w języku C/C+''''+
* podstawy języka C/C+''''+, w szczególności:
* co to jest struktura i unia
* czym jest wskaźnik, jak dostać się do wskazywanych danch, jak dostać wskaźnik na wybrane dane
* na czym polega rzutowanie, jak je wykonać
* jak w programie w języku C/C+''''+:
* dostać się do argumentów programu
* zaalokować statycznie i dynamicznie pamięć, zwolnić zajętą wcześniej pamięć
* interfejs POSIX:
* co to jest deskryptor pliku
* jaką funkcją otwiera się zwykły plik w POSIX, jakie argumenty przyjmuje ta funkcja, jakie wyniki zwraca
* czym są potoki, jak mogą być wykorzystane do komunikacji międzyprocesowej
* jaką funkcją zamyka się plik w POSIX
* jaka funkcja czyta dane z deskryptora pliku, jakie argument przyjmuje i jaki zwraca wynik
* jaka funkcja zapisuje dane do wskazanego deskryptora pliku, jakie argument przyjmuje i jaki zwraca wynik
* jakie numery mają deskryptory standardowego wejścia, wyjścia i błędu, do czego służą
====== ——— 2019 ——— ======
===== Laboratoria N+5 (na zajęciach z kształtowania ruchu, 13/14.1) =====
* Iptables:
* Kiedy wykonywane są łańcuchy input, forward i output z tabeli filter?
* Jaką komendą wyświetlić listę reguł iptables?
* Umieć czytać listę reguł iptables (tzn. rozumieć co robi wskazana reguła).
* Jaką komendą dodać regułę:
* dotyczącą konkretnego adresu źródłowego / docelowego,
* protokołu TCP / UDP,
* dotyczącą konkretnego portu docelowego / źródłowego.
* Umieć konstruować proste reguły.
* Umieć usunąć regułę z listy.
* Kojarzyć programy do badania prędkości sieci między dwoma komputerami.
====== ——— 2016 ——— ======
===== Laboratoria N+4/5 (WLAN – infrastruktura) =====
Na wejściówce obowiązują zagadnienia z poprzedniej wejściówki oraz:
* rozumieć jaką rolę pełni AP w sieci WLAN i na jakiej warstwie działa
* umieć określić jak zachowa się AP podłączony do innych urządzeń sieciowych
* pamiętać jak STA odróżnia dwa różne AP z tej samej sieci
* rozumieć kiedy następuje uwierzytelnianie i od kiedy wiadomości są szyfrowane
* kojarzyć co określają standardy WEP, WPA i WPA2, umieć określić jaki poziom bezpieczeństwa zapewniają
* znać dwa tryby WPA (PSK i EAP), wiedzieć czym się różnią
* kojarzyć jak działa WPA-EAP (Enterprise) – infrastruktura z serwerem uwierzytelniającym oraz bogaty wybór metody uwierzytelniania