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 [2024/10/17 14:41]
jkonczak
sk2:zagadnienia [2025/11/11 15:42] (aktualna)
jkonczak
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/11/15.10) =====+===== Laboratoria 2 (10/14.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 4 (24/28.10) =====
  
   * znać wymienione niżej funkcje API gniazd, to znaczy wiedzieć:   * znać wymienione niżej funkcje API gniazd, to znaczy wiedzieć:
Linia 46: Linia 46:
     * serwer UDP     * serwer UDP
  
-====== ——— 2023 ——— ======+===== Laboratoria 5 (4/​7.11) ​=====
  
-===== Laboratoria 5 (2/3/6/7.11) ===== +  * tryb blokujący ​nieblokujący:​ 
- +    jakie są różnice między ​trybami 
-  ​znać różnice między ​trybem blokującym i nieblokującym  +    * co jeśli funkcja która nie może natychmiast się wykonać jest wywołana w trybie ​nieblokującym 
-  wiedzieć ​które funkcje ​(spośród wszystkich omawianych funkcji sieciowych) ​mogą się zablokować +    * które funkcje ​z interfejsu gniazd ​mogą się zablokować, które są zawsze nieblokujące 
-  wiedzieć w jakiej sytuacji w/w funkcje mogą się zablokować +    należy umieć podać w jakich sytuacjach i na jak długo konkretna funkcja z interfejsu gniazd może się zablokować 
-  * znać gwarancje ​funkcji write w trybie blokującym +  * wysyłanie/​odbieranie danych w trybie (nie)blokującym:​ 
-  rozumieć ​jakie wartości ​(ilości bajtów) ​mogą zwrócić funkcje ​odbierające dane z sieci +    * jakie gwarancje ​mają funkcje wysyłające dane w trybie blokującym 
-  rozumieć ​jakie wartości ​(ilości bajtów) ​mogą zwrócić funkcje ​wysyłające dane do sieci +    * jakie wartości mogą zwrócić funkcje ​wysyłające dane do sieci (w każdym ​trybów) 
-  * 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 wartości mogą zwrócić funkcje ​odbierające dane sieci (w każdym z trybów) 
-  * rozumieć ​czym może skutkować brak kontroli przepływu +  * 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 uporządkowania i potwierdzania odebrania danych+  * 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 71: Linia 72:
     * semantyka strumieniowa / zorientowana na wiadomość (datagramowa)     * semantyka strumieniowa / zorientowana na wiadomość (datagramowa)
 --></​html>​ --></​html>​
 +
 +===== Laboratoria 7 (21.11/​2.12) =====
 +Wejściówka obejmuje temat z __wykładu__ (temat z 18.11).
 +\\
 +<​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.
 +\\
 +Dla porządku zamieszczam odnośniki przypominające te zagadnienia.
 +</​small>​
 +\\
 + 
 +
 +  * co to jest: <​small>​(należy umieć podać krótkie definicje lub dopasować nazwę do definicji)</​small>​
 +    * uwierzytelnianie,​ autoryzacja [[https://​www.microsoft.com/​pl-pl/​security/​business/​security-101/​what-is-authentication#​authorization|■]],​ szyfrowanie
 +    * kryptografia symetryczna,​ kryptografia asymetryczna <​html>​
 +      <div style="​display:​inline-block"><​div style="​position:​absolute;​ transform: translateY(-1em);">​
 +      <div style="​display:​inline-block;​ height: 4.2em; width: 0.5em; border: 1px gray solid; border-left:​ none"></​div>​
 +      <div style="​display:​inline-block;​ height: 5.2em; vertical-align:​ middle;"></​html>​[[https://​www.youtube.com/​watch?​v=0ctat6RBrFo|■]]<​html></​div></​div></​div></​html>​
 +    * klucz publiczny, klucz prywatny
 +    * urząd certyfikacji (certificate authority), certyfikat
 +    * man-in-the-middle attack [[https://​pl.wikipedia.org/​wiki/​Atak_man_in_the_middle|■]]
 +    * standard X.509 [[https://​www.ibm.com/​docs/​en/​sdk-java-technology/​8?​topic=certificate-x509-certificates|■]],​ format PEM [[https://​learn.microsoft.com/​pl-pl/​azure/​iot-hub/​reference-x509-certificates#​certificate-formats|■]]
 +  ​
 +  * 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
 +
 +====== ——— 2024 ——— ======
 +
 +===== 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) =====
sk2/zagadnienia.1729168915.txt.gz · ostatnio zmienione: 2024/10/17 14:41 przez jkonczak