Narzędzia użytkownika

Narzędzia witryny


Pasek boczny


O mnie


Dydaktyka:

Feedback


sk2:zagadnienia

To jest stara wersja strony!


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/11/15.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 4 (24/25/29.10)

  • znać wymienione niżej funkcje API gniazd, to znaczy wiedzieć:
    • jak nazywa się funkcja która wykonuje konkretne działanie
    • jakich informacji potrzebuje (nie trzeba znać kolejności, nazw, ani dokładnych typów argumentów)
    • co każda z tych funkcji zwraca (nie chodzi o typ, bo wszystkie zwracają typ int – trzeba wiedzieć co oznacza jego wartość)
  • lista funkcji
    • 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
    • odpytywanie o nazwy domenowe:
      • do odwzorowywania nazw domenowych na adresy IP
      • do odwzorowywania adresów IP na nazwy domenowe
  • wiedzieć co oznaczają stałe które występują w tych funkcjach:
    AF_INET, AF_INET6, SOCK_STREAM, SOCK_DGRAM, IPPROTO_TCP, IPPROTO_UDP, INADDR_ANY, INADDR_LOOPBACK, SOMAXCONN, SHUT_RDWR, SO_REUSEADDR
  • 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 (5/7/8.11)

  • tryb blokujący / nieblokujący:
    • jakie są różnice między trybami
    • co jeśli funkcja która nie może natychmiast się wykonać jest wywołana w trybie nieblokującym
    • które funkcje z interfejsu gniazd mogą się zablokować, które są zawsze nieblokujące
    • należy umieć podać w jakich sytuacjach i na jak długo konkretna funkcja z interfejsu gniazd może się zablokować
  • wysyłanie/odbieranie danych w trybie (nie)blokującym:
    • jakie gwarancje mają funkcje wysyłające dane w trybie blokującym
    • jakie wartości mogą zwrócić funkcje wysyłające dane do sieci (w każdym z trybów)
    • jakie wartości mogą zwrócić funkcje odbierające dane z sieci (w każdym z trybów)
  • na czym polega protokół strumieniowy i zorientowany na wiadomość (datagramowy),
    szczególnie w jakich porcjach mogą być odbierane dane w TCP i UDP
  • czym może skutkować brak kontroli przepływu
  • 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 7 (19/21/22.11)

Wejściówka obejmuje temat z wykładu.
(Zagadnienia z pierwszej grupy powinny być częścią wiedzy ogólnoinformatycznej, stąd na wykładzie te pojęcia mogą się pojawić bez definicji.)
 

  • co to jest: (należy umieć podać krótkie definicje lub dopasować nazwę do definicji)
    • uwierzytelnianie, autoryzacja, szyfrowanie
    • kryptografia symetryczna, kryptografia asymetryczna
    • klucz publiczny, klucz prywatny
    • man-in-the-middle attack
    • urząd certyfikacji (certificate authority), certyfikat
    • standard X.509, format PEM
  • czy serwer zwykle ma swój certyfikat
  • czy klient zwykle ma swój certyfikat
  • po co serwerowi certyfikat
  • skąd bierze się klucz używany do szyfrowania
  • jaka jest różnica między TLS i DTLS
  • na jakiej warstwie działa TLS
  • jakie gwarancje daje programiście połączenie TLS tzn. jest strumieniowy czy datagramowy, połączeniowy czy bezpołączeniowy, zapewnia kontrolę przepływu czy nie, czy pozwala na gubienie danych, duplikację, zmianę kolejności
  • jak nazywają się przykładowe biblioteki implementujące TLS
  • czym jest i do czego służy struktura ("obiekt") SSL_CTX
  • czym jest i do czego służy struktura ("obiekt") SSL
  • jakie wartości w zwracane przez funkcje SSL_set_fd/SSL_connect/…_accept/…_read/…_write/… oznaczają powodzenie, jakie oznaczają inny rezultat

Laboratoria 10 (na zajęciach z odpytywania DNS; 10/12/13.12)

Wejściówka obejmuje temat z wykładu.

  • 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, non-authoritative (caching)
  • co to jest resolver
  • rodzaje rekordów zasobowych: A, AAAA, NS, CNAME, MX, TXT, …
    • do czego służą
    • co zawierają
  • na czym polegają zapytania rekurencyjne i iteracyjne

Laboratoria 11 (na zajęciach z konfiguracji DNS; 17/19/20.12)

  • znać komendy odpytujące:
    • podany serwer nazw
    • o wskazane rodzaje rekordów
    • o odwzorowanie odwrotne (o nazwę domenową odpowiadającą wskazanemu IP)
  • wiedzieć co oznacza treść (i składnia) wartości rekordów NS, CNAME, A, AAAA i MX
  • umieć odczytać wyniki komendy dig … lub host -v …

——— 2023 ———

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 (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 (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
sk2/zagadnienia.1734264880.txt.gz · ostatnio zmienione: 2024/12/15 13:14 przez jkonczak