• Grupa E Facebook
  • Grupa E Linkedin

Analiza modelu OSI – Warstwa sesji (cz. 6)

Kontynuujemy naszą podróż po modelu OSI, a dzisiaj na tapet bierzemy warstwę sesji – piątą warstwę tego modelu.

Tak jak i reszta, również i ona spełnia bardzo ważną funkcję. Można powiedzieć, że „działa w tle”, ale bez niej nasza komunikacja byłaby pełna przerw i nieporozumień.

Analogcznie jak w poprzednich artykułach, przytoczmy jej definicję z pierwszej części.

Co to jest warstwa sesji?

Warstwa sesji, czyli warstwa piąta, odpowiada za utrzymanie i zarządzanie sesjami komunikacyjnymi między urządzeniami. To tutaj określane są zasady, kiedy jedno urządzenie może zacząć wysyłać dane, a kiedy musi się zatrzymać i czekać na odpowiedź.

Sesja to po prostu jak czasowa relacja między dwoma komunikującymi się stronami.

Jeśli kiedykolwiek uczestniczyłeś w spotkaniu online (np. Microsoft Teams), warstwa sesji to coś, co sprawia, że wszyscy uczestnicy mogą mówić i słuchać w odpowiednich momentach jednocześnie.

Podstawowe funkcje warstwy sesji:

  1. Nawiązywanie sesji – ustala połączenie między dwoma urządzeniami, zanim dane zostaną wysłane.
  2. Zarządzanie sesją – kontroluje przepływ danych podczas trwania sesji, utrzymując stabilność połączenia.
  3. Zamykanie sesji – zakończenie połączenia w sposób kontrolowany, żeby nie pozostawić otwartych „drzwi” i niepotrzebnych zasobów.

Czy to jest proste? Nie wiem, jednak na pewno jest to absolutnie niezbędne, aby zapewnić, że komunikacja między aplikacjami działa bez zakłóceń.

Synchronizacja danych – stabilna komunikacja:

Jednym z najważniejszych zadań warstwy sesji jest synchronizacja danych. W momencie gdy dane są przesyłane w sposób przerywany np. przez różne przerywane połączenia, warstwa sesji odpowiada za to, aby w odpowiednim momencie kontynuować przesyłanie danych od tego miejsca, gdzie zostało ono przerwane.

Wyobraźmy sobie, że przesyłamy duży plik i połączenie nagle się przerwie, warstwa sesji wtedy zapamięta punkt, w którym transmisja została przerwana. Gdy połączenie zostanie wznowione, transmisja będzie kontynuowana od tego miejsca.

Coś w stylu gdybyśmy włączyli pauzę w filmie, a potem wrócili do oglądania od tego samego momentu.

Kontrola dialogu – kto mówi, kto słucha:

Jak wspomniałem wyżej, warstwa sesji odpowiada także za tzw. kontrolę dialogu.

Jest to mechanizm, który ustala, kto w danym momencie ma „prawo głosu”. W sieci nie zawsze obie strony mogą mówić jednocześnie – czasem jedna strona musi poczekać, aż druga skończy. Warstwa sesji jest od zarządzania tym procesem, aby uniknąć sytuacji, w której dane wysyłane są w złym momencie i nie docierają na miejsce.

Mamy tutaj dostępne dwa tryby pracy:

  1. Półdupleks – dane są przesyłane w jedną stronę na raz. Na takiej zasadzie działa np. walkie-talkie – mówimy do kogoś, druga osoba słucha, a potem role się zmieniają.
  2. Pełny dupleks – dane mogą być przesyłane w obu kierunkach jednocześnie, co przypomina zwykłą rozmowę telefoniczną, gdzie obie strony mogą mówić równocześnie.

Warstwa sesji a warstwy wyższe i niższe:

Warto pamiętać, że warstwa sesji nie działa samotnie. Jest w pełni synchroniczna i zależna od pracy warstw niższych i przekazuje kontrolę wyższym warstwom.

Dlatego, jeśli cokolwiek pójdzie nie tak np. w warstwie transportowej – przykładowo połączenie zostanie zerwane z powodu przeciążenia sieci, warstwa sesji będzie próbować odzyskać kontrolę nad komunikacją. To ona finalnie decyduje, czy połączenie trzeba nawiązać na nowo, czy może naprawić istniejącą sesję.

Bezpieczeństwo warstwy sesji:

Warstwa sesji może być celem ataków, jak praktycznie wszystkie inne. Często są one skierowane na tzw. session hijacking. Polega on na przejęciu aktywnej sesji pomiędzy użytkownikiem a serwerem, aby uzyskać dostęp do informacji przesyłanych w trakcie sesji lub przejąć kontrolę nad połączeniem.

Dlatego w tej warstwie stosuje się zabezpieczenia, takie jak np. uwierzytelnianie i szyfrowanie sesji. Dzięki temu połączenie nie zostanie przejęte przez osoby trzecie. Sesje są również często monitorowane przez administratorów, aby wykryć nieautoryzowane próby dostępu i zakończyć połączenie w przypadku podejrzanej aktywności.

Jak warstwa sesji wpływa na Twoje codzienne użytkowanie sieci?

Może się wydawać na pierwszy rzut oka, że warstwa sesji działa gdzieś w tle, ale jej funkcjonowanie ma bezpośredni wpływ na to, jak korzystasz z internetu. Wszelkie aplikacje wymagające długotrwałego połączenia, tj. wideokonferencje czy gry online, korzystają z mechanizmów warstwy sesji.

Bez niej sesje byłyby niestabilne, a połączenia byłyby ciągle przerywane, o ile w ogóle by nie do nich doszło, co w przypadku aplikacji jak np. MS Teams – byłoby koszmarem. Stabilna sesja trwająca nawet przy słabym połączeniu, to zasługa właśnie tej warstwy.

Tym samym omówiliśmy kolejną, już piątą warstwę modelu OSI.

Do zobaczenia w kolejnej części!

Wróć