Segment TCP składa się z nagłówka i danych. Nagłówek TCP zawiera informacje niezbędne do nawiązania połączenia, zachowania kolejności i potwierdzania odbioru. Na egzaminie INF.02 warto wiedzieć, jakie pola są w nagłówku TCP i do czego służą.
Po tej lekcji będziesz umiał:
- wymienić główne pola nagłówka TCP,
- wyjaśnić rolę portów, numeru sekwencji i numeru potwierdzenia.
Główne pola nagłówka TCP
- Port źródła (16 bitów) i port celu (16 bitów) — identyfikacja aplikacji nadawcy i odbiorcy. Serwer nasłuchuje na znanym porcie (np. 80); klient używa portu efemerycznego.
- Numer sekwencji (32 bity) — numer bajtu, od którego zaczyna się dane w tym segmencie. Umożliwia ułożenie segmentów we właściwej kolejności i wykrycie duplikatów lub braków.
- Numer potwierdzenia (32 bity) — „odebrałem dane do tego numeru; oczekuję następnego”. Używany przy potwierdzeniach (ACK).
- Flagi — np. SYN (synchronizacja, początek połączenia), ACK (potwierdzenie), FIN (zakończenie), RST (reset). Na egzaminie mogą pojawić się skróty SYN, ACK, FIN.
- Okno (window) — rozmiar bufora odbiorcy; informacja dla nadawcy, ile danych może jeszcze wysłać bez przepełnienia (kontrola przepływu).
- Suma kontrolna — wykrywanie błędów transmisji.
Dzięki numerowi sekwencji i potwierdzeniom TCP może retransmitować zagubione segmenty i ułożyć dane w poprawnej kolejności.