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++.
===== 2017-11-25 =====
* znać funkcje BSD sockets API do obsługi protokołu TCP, to jest funkcje do:
* tworzenia gniazda
* zamykania gniazda
* łączenia gniazda
* ustawiania lokalnego adresu gniazda
* rozpoczęcia nasłuchiwania
* czytania danych
* wysyłania danych
* wiedzieć co zwracają funkcje i co należy im przekazać((nie chodzi o składnię, ale o to jakie informacje funkcja potrzebuje; \\ np. ''accept'' musi dostać deskryptor nasłuchującego gniazda i może dostać miejsce na wpisanie kto się połączył))
* wiedzieć w jakiej kolejności można wywoływać w/w funkcje, w szczególności jaka kolejność stworzy:
* klienta TCP
* serwera TCP
* znać strukturę pozwalającą na zapis adresu gniazda (dla rodziny adresów IPv4)
* wiedzieć że kolejność bajtów we wiadomościach musi być z góry ustalona
* kojarzyć funkcje pozwalające na wpisanie adresu IP i numeru portu
* wiedzieć co oznaczają stałe używane funkcjach sieciowych
* umieć wyświetlić pomoc systemową dla funkcji / struktur
===== 2018-01-21 =====
Do laboratoriów o sieciach bezprzewodowych proszę przypomnieć sobie zagadnienia:
* adresacja IP - 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
* trasowanie (routing) – teoria (co to jest, po co to jest, jak czytać tabelę tras, jak są podejmowane decyzje którędy idzie pakiet)
* 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 interface 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
Na wejściówce mogą pojawić się pytania z:
* modelu warstwowego – za co która warstwa odpowiada
* adresu MAC – do czego służy, jak wygląda
* adresacji 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, dodawanie, zmiana, usuwanie adresów IP
* sprawdzanie łączności IP
* wyświetlanie, dodawanie tras
* trasowania – kiedy jest wykonywane, jak działa