Nagłówek protokołu TCP ma długość co najmniej 20 oktetów i zawiera następujące pola: • Port Źródłowy TCP: 16-bitowe pole portu
źródłowego przechowuje numer
portu, który inicjuje sesje komunikacyjne. Port źródłowy i adres źródłowy IP funkcjonują jako adres zwrotny pakietu.
• Port Docelowy TCP: 16-bitowe pole portu docelowego jest adresem portu, dla którego przeznaczona jest transmisja. Port ten zawiera adres interfejsu aplikacji w komputerze odbiorcy, do której przesyłany jest pakiet danych.
• Numer Sekwencji TCP: 32-bitowy numer sekwencji jest wykorzystywany przez komputer odbierający do zrekonstruowania
rozproszonych, rozbitych, podzielonych danych i przywrócenia im pierwotnej postaci. W sieci dynamicznie trasowanej może się zdarzyć, że
niektóre pakiety pójdą innymi trasami i dotrą w niewłaściwej kolejności. Pole numeru sekwencji kompensuje tę niekonsekwencję w dostarczaniu.
• Numer Potwierdzenia TCP: TCP używa 32-bitowego potwierdzenia (ACK) pierwszego oktetu danych zawartego w następnym
oczekiwanym segmencie. TCP może obliczyć ten numer, zwiększając numer ostatniego otrzymanego oktetu o liczbę oktetów w każdym
segmencie TCP. Numer używany do identyfikowania każdego ACK jest numerem sekwencji potwierdzanego pakietu.
• Wyrównanie Danych: 4-bitowe pole przechowujące rozmiar nagłówka TCP, którego miarą jest 32-bitowa struktura danych, znana jako
„skowo".
• Zarezerwowane: 6-bitowe pole, zawsze ustawione na zero. Pole to jest zarezerwowane dla jeszcze nie wyspecyfikowanego, przyszłego zastosowania.
• Flagi: 6-bitowe pole flagi zawiera sześć 1-bitowych flag, które umożliwiają realizację funkcji sterowania, takich jak pole pilność, potwierdzenie pola znaczącego, pchanie, zerowanie połączenia, synchronizacja numerów sekwencyjnych i zakończenie wysyłania danych.
• Rozmiar Okna: 16-bitowe pole używane przez komputer docelowy w celu poinformowania komputera źródłowego o tym, ile danych jest
gotów przyjąć w jednym segmencie TCP.
• Suma Kontrolna (16-bitów): Nagłówek TCP zawiera również pole kontroli błędów, znane jako „suma kontrolna". Komputer źródłowy oblicza wartość tego pola na podstawie zawartości segmentu. Komputer docelowy przeprowadza identyczne obliczenie. Jeśli zawartość pozostała nienaruszona, wynik obydwu obliczeń będzie identyczny, co świadczy o prawidłowości danych.
• Wypełnienie: do tego pola dodawane są zera, tak aby długość nagłówka TCP była zawsze wielokrotnością 32 bitów.
Protokół datagramów użytkownika (UDP) jest innym protokołem IP warstwy host-z-hostem (odpowiadającej warstwie transportu modelu
OSI).Protokół UDP zapewnia proste i mające niewielki narzut transmisje danych, tzw. „datagramy". Prostota datagramów czyni UDP
protokołem nieodpowiednim dla niektórych aplikacji, za to doskonałym dla aplikacji bardzięj wyszukanych, które same mogą zapewnić funkcjonalność połączeniową.
Protokół UDP może być wykorzystywany przy wymienianiu takich danych, jak nadane nazwy NetBIOS, komunikaty systemowe itd., gdyż
wymiany te nie wymagają sterowania strumieniem danych, potwierdzeń, ponownego uporządkowywania ani innych funkcji dostarczanych
przez protokół TCP.
Nagłówek protokołu UDP ma następującą strukturę:
• Numer portu źródłowego UDP: Port źródłowy jest numerem połączenia w komputerze źródłowym. Port źródłowy i adres źródłowy IP
funkcjonujÄ… jako adres zwrotny pakietu.
• Numer portu docelowego UDP: Port docelowy jest numerem połączenia w komputerze docelowym. Port docelowy UDP jest
wykorzystywany do przekazywania pakietu odpowiedniej aplikacji, po tym jak pakiet dotrze do komputera docelowego.
• Suma kontrolna UDP: Suma kontrolna jest polem kontroli błędów, którego wartość jest obliczana na podstawie zawartości segmentu.
Komputer docelowy wykonuje taką samą funkcję matematyczną jak komputer źródłowy. Niezgodność dwóch obliczonych wartości
wskazuje na wystąpienie błędu podczas transmisji pakietu.
• Długość komunikatu UDP: Pole długości komunikatu informuje komputer docelowy o jego rozmiarze. Daje to komputerowi docelowemu
kolejny mechanizm, wykorzystywany do sprawdzania poprawności wiadomości.
|