Narzędzia użytkownika

Narzędzia witryny


sk2:zagadnienia

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
sk2:zagadnienia [2023/11/27 23:45]
jkonczak
sk2:zagadnienia [2025/01/02 15:47] (aktualna)
jkonczak [Laboratoria 11 (na zajęciach z konfiguracji DNS; 17/19/20.12)]
Linia 3: Linia 3:
 Do zajęć konieczna jest znajomość programowania strukturalnego i obiektowego w C++.  Do zajęć konieczna jest znajomość programowania strukturalnego i obiektowego w C++. 
  
-===== Laboratoria 2 (10/12/13.10) =====+===== Laboratoria 2 (10/11/15.10) =====
   * znać funkcje (nazwy, jakie informacje są przekazywane w argumentach,​ co oznaczają używane przez nie stałe) do:   * znać funkcje (nazwy, jakie informacje są przekazywane w argumentach,​ co oznaczają używane przez nie stałe) do:
     * tworzenia gniazda     * tworzenia gniazda
Linia 14: Linia 14:
   <​html><​!--* umieć wyświetlić pomoc systemową dla funkcji / struktur--></​html>​   <​html><​!--* umieć wyświetlić pomoc systemową dla funkcji / struktur--></​html>​
  
 +===== Laboratoria 4 (24/​25/​29.10) =====
  
-===== Laboratoria 3 (17/​19/​20.10) ===== +  * znać wymienione niżej funkcje API gniazd, to znaczy wiedzieć: 
- +    * jak nazywa się funkcja która wykonuje konkretne działanie 
-  * znać pełen zestaw ​funkcji ​BSD sockets API:+    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:     * ogólne:
       * tworzenie gniazda       * tworzenie gniazda
Linia 32: Linia 35:
       * wysłanie danych       * wysłanie danych
       * odbiór 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ć 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ć:   * wiedzieć jakie funkcje i w jakiej kolejności należy użyć, aby stworzyć:
Linia 39: Linia 46:
     * serwer UDP     * serwer UDP
  
-===== Laboratoria 5 (2/3/6/7.11) =====+===== Laboratoria 5 (5/7/8.11) =====
  
-  * znać różnice między ​trybem blokującym i nieblokującym  +  * tryb blokujący / nieblokujący:​ 
-  wiedzieć ​które funkcje ​(spośród wszystkich omawianych funkcji sieciowych) ​mogą się zablokować +    * jakie są różnice między ​trybami 
-  wiedzieć w jakiej sytuacji w/w funkcje mogą się zablokować +    * co jeśli funkcja która nie może natychmiast się wykonać jest wywołana w trybie ​nieblokującym 
-  * znać gwarancje ​funkcji write w trybie blokującym +    * które funkcje ​z interfejsu gniazd ​mogą się zablokować, które są zawsze nieblokujące 
-  rozumieć ​jakie wartości ​(ilości bajtów) ​mogą zwrócić funkcje ​odbierające dane sieci +    należy umieć podać w jakich sytuacjach i na jak długo konkretna funkcja z interfejsu gniazd może się zablokować 
-  rozumieć ​jakie wartości ​(ilości bajtów) ​mogą zwrócić funkcje ​wysyłające dane do sieci +  * wysyłanie/​odbieranie danych w trybie (nie)blokującym:​ 
-  * rozumieć ​na czym polega protokół strumieniowy i zorientowany na wiadomość (datagramowy),​ \\ szczególnie w jakich porcjach mogą być odbierane dane w TCP i UDP +    * jakie gwarancje ​mają funkcje wysyłające dane w trybie blokującym 
-  * rozumieć ​czym może skutkować brak kontroli przepływu +    * jakie wartości mogą zwrócić funkcje ​wysyłające dane do sieci (w każdym z trybów) 
-  * rozumieć ​czym może skutkować brak uporządkowania i potwierdzania odebrania danych+    * jakie wartości mogą zwrócić funkcje ​odbierające dane 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   * znać praktyczne różnice między protokołami TCP i UDP
     * jakie gwarancje zapewnia programiście TCP     * jakie gwarancje zapewnia programiście TCP
Linia 62: Linia 72:
     * semantyka strumieniowa / zorientowana na wiadomość (datagramowa)     * semantyka strumieniowa / zorientowana na wiadomość (datagramowa)
 --></​html>​ --></​html>​
 +
 +===== Laboratoria 7 (19/​21/​22.11) =====
 +Wejściówka obejmuje temat z __wykładu__.
 +\\
 +<​small>​(Zagadnienia z pierwszej grupy powinny być częścią wiedzy ogólnoinformatycznej,​ stąd na wykładzie te pojęcia mogą się pojawić bez definicji.)</​small>​
 +\\
 + 
 +
 +  * co to jest: <​small>​(należy umieć podać krótkie definicje lub dopasować nazwę do definicji)</​small>​
 +    * 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 <​small>​ 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</​small>​
 +
 +  * 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 …''​
 +
 +===== Laboratoria 12 (na zajęciach z HTTP; 7/9/10.12) =====
 +
 +Wejściówka obejmuje temat z __wykładu__.
 +
 +  * co to jest HTTP i URL
 +  * wersje protokołu HTTP:
 +    * jakie są/były używane
 +    * które używają protokołu tekstowego a które binarnego
 +    * które używają TCP a które UDP, jakie są domyślne porty dla HTTP i HTTPS
 +    * która obowiązkowo wymaga szyfrowania
 +  * z jakich części składa się URL dla HTTP i te części oznaczają: \\ schemat, host, port, ścieżka, zapytania (//​[[https://​datatracker.ietf.org/​doc/​html/​rfc1738#​section-3.3|searchpart]]//​ aka //​[[https://​datatracker.ietf.org/​doc/​html/​rfc9110#​name-http-uri-scheme|query]]//​)
 +  * co to jest percent-encoding (urlencoding),​ do czego jest używane w linii żądania, w treści jakich żądań jest powszechnie używane
 +  * jak jest zbudowane żądanie HTTP/1.x
 +    * co to jest linia żądania, z czego się składa
 +    * jakie metody HTTP są wykorzystywane przez przeglądarki
 +    * co to są nagłówki, jak oddziela się nazwę od wartości
 +    * jak oddziela się nagłówki od siebie, jak oddziela się nagłówki od treści żądania
 +  * do czego służy nagłówek //Host// i na jaką wartość trzeba go ustawić
 +  * jak wygląda odpowiedź HTTP/1.x
 +    * co to jest linia statusu, z czego się składa
 +    * co oznaczają kody należące do grup: 2xx, 3xx, 4xx i 5xx
 +  * należy też umieć napisać treść żądania HTTP/1.x która pobierze wskazany URL bądź odtworzyć URL z treści żądania
 +====== ——— 2023 ——— ======
  
 ===== Laboratoria 10 (na 1 zajęciach z WLAN, 7/8/12.12) ===== ===== Laboratoria 10 (na 1 zajęciach z WLAN, 7/8/12.12) =====
Linia 120: Linia 211:
     * wyświetlanie,​ dodawanie tras     * wyświetlanie,​ dodawanie tras
   * trasowania – kiedy jest wykonywane, jak działa   * 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 ——— ====== ====== ——— 2022 ——— ======
Linia 155: Linia 282:
   * Wiedzieć jakie programy pozwalają łączyć się do sieci bez zabezpieczeń i z zabezpieczeniami WPA/​WPA2/​WPA3   * Wiedzieć jakie programy pozwalają łączyć się do sieci bez zabezpieczeń i z zabezpieczeniami WPA/​WPA2/​WPA3
  
- 
-===== Laboratoria 14 (17/18.1) ===== 
-  * 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? 
-  ​ 
 ====== ——— 2021 ——— ====== ====== ——— 2021 ——— ======
 ===== Laboratoria 5 (1 zajęcia z programowania,​ 9/4.11) ===== ===== Laboratoria 5 (1 zajęcia z programowania,​ 9/4.11) =====
sk2/zagadnienia.1701125133.txt.gz · ostatnio zmienione: 2023/11/27 23:45 przez jkonczak