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