logo

Flagi TCP

W przypadku połączenia TCP flagi służą do wskazywania określonego stanu połączenia lub do dostarczania dodatkowych przydatnych informacji, takich jak rozwiązywanie problemów lub obsługa kontroli określonego połączenia. Najczęściej używane flagi to SYN, ACK i FIN . Każda flaga odpowiada 1-bitowej informacji.

emoji jabłkowe na Androidzie

Rodzaje flag:



    Synchronizacja (SYN) – jest używana w pierwszym etapie fazy ustanawiania połączenia lub procesu trójstronnego uzgadniania pomiędzy dwoma hostami. Tylko pierwszy pakiet od nadawcy i odbiorcy powinien mieć ustawioną tę flagę. Służy do synchronizowania numeru sekwencyjnego, tj. do poinformowania drugiej strony, który numer sekwencyjny powinien zaakceptować. Potwierdzenie (ACK) – służy do potwierdzania pakietów, które zostały pomyślnie odebrane przez hosta. Flaga jest ustawiona, jeśli pole numeru potwierdzenia zawiera ważny numer potwierdzenia.
    Na poniższym schemacie odbiorca wysyła ACK = 1 oraz SYN = 1 w drugim etapie ustanawiania połączenia, aby poinformować nadawcę, że otrzymał swój początkowy pakiet.
    Zakończ (FIN) – służy do żądania zakończenia połączenia, czyli gdy nie ma już danych od nadawcy, żąda zakończenia połączenia. Jest to ostatni pakiet wysłany przez nadawcę. Zwalnia zarezerwowane zasoby i elegancko kończy połączenie.
    Reset (RST) – służy do zakończenia połączenia, jeśli nadawca RST czuje, że coś jest nie tak z połączeniem TCP lub że rozmowa nie powinna się odbyć. Może zostać wysłany od strony odbiorcy, gdy pakiet zostanie wysłany do konkretnego hosta, który się tego nie spodziewał. Pilne (URG) – służy do wskazania, że ​​dane zawarte w pakiecie powinny zostać potraktowane priorytetowo i pilnie obsłużone przez odbiorcę. Ta flaga jest używana w połączeniu z polem Pilnego wskaźnika w celu zidentyfikowania lokalizacji pilnych danych w pakiecie. Push (PSH) – służy do zażądania natychmiastowego dostarczenia danych do hosta odbierającego, bez oczekiwania na buforowanie dodatkowych danych po stronie nadawcy. Flaga ta jest powszechnie używana w aplikacjach takich jak strumieniowe przesyłanie dźwięku lub wideo w czasie rzeczywistym. Okno (WND) – służy do komunikowania nadawcy rozmiaru okna odbioru. Rozmiar okna to ilość danych, jaką host odbierający jest w stanie przyjąć w dowolnym momencie. Nadawca powinien ograniczyć ilość wysyłanych danych w oparciu o rozmiar okna reklamowanego przez odbiorcę. Suma kontrolna (CHK) – służy do sprawdzenia integralności segmentu TCP podczas transmisji. Suma kontrolna jest obliczana dla całego segmentu, łącznie z nagłówkiem i polami danych, i jest obliczana ponownie przy każdym przeskoku na ścieżce sieciowej. Numer sekwencyjny (SEQ) – jest to unikalny numer przypisany każdemu segmentowi przez nadawcę w celu określenia kolejności, w jakiej pakiety powinny być odbierane przez odbiorcę. Numer kolejny jest używany w połączeniu z numerem potwierdzenia, aby zapewnić niezawodny transfer danych i zapobiec duplikowaniu pakietów. Numer potwierdzenia (ACK) – służy do potwierdzenia odbioru segmentu TCP i przekazania nadawcy kolejnego oczekiwanego numeru sekwencyjnego. Pole numeru potwierdzenia zawiera numer kolejny następnego oczekiwanego segmentu, a nie numer ostatniego odebranego segmentu.

Zakończenie (FIN) v/s Reset (RST) –

    Push (PSH) – Warstwa transportowa domyślnie czeka przez pewien czas, aż warstwa aplikacji prześle wystarczającą ilość danych równą maksymalnemu rozmiarowi segmentu, aby liczba pakietów przesyłanych w sieci zminimalizowała, co nie jest pożądane w przypadku niektórych aplikacji, takich jak aplikacje interaktywne (czatowanie). Podobnie warstwa transportowa po stronie odbiorcy buforuje pakiety i przesyła je do warstwy aplikacji, jeśli spełnia określone kryteria.

    Ten problem został rozwiązany za pomocą PSH. Warstwa transportowa ustawia PSH = 1 i natychmiast wysyła segment do warstwy sieciowej, gdy tylko otrzyma sygnał z warstwy aplikacji. Warstwa transportowa odbiorcy, po zobaczeniu PSH = 1, natychmiast przekazuje dane do warstwy aplikacji.
    Ogólnie rzecz biorąc, mówi odbiorcy, aby przetwarzał te pakiety w miarę ich odbierania, zamiast je buforować.
    Pilne (URG) – Dane znajdujące się w segmencie z flagą URG = 1 są natychmiast przekazywane do warstwy aplikacji, nawet jeśli jest więcej danych do przekazania do warstwy aplikacji. Służy do powiadamiania odbiorcy o konieczności przetworzenia pilnych pakietów przed przetworzeniem wszystkich pozostałych pakietów. Odbiorca zostanie powiadomiony, gdy wszystkie znane pilne dane zostaną odebrane.



Push (PSH) v/s Pilne (URG) –

protokół internetowy smtp