Zapewnienie wystarczającej jakości usług (QoS) w sieciach IP staje się coraz ważniejszym aspektem dzisiejszej infrastruktury IT w przedsiębiorstwie. QoS jest niezbędny nie tylko do przesyłania głosu i wideo przez sieć, ale jest również ważnym czynnikiem wspierającym rozwój Internetu Rzeczy (IoT). W tym artykule wyjaśnię, dlaczego QoS jest ważny, jak działa i opiszę kilka scenariuszy użycia, aby pokazać, w jaki sposób może on przynieść korzyści użytkownikom końcowym.
Dlaczego QoS jest ważny?
Niektóre aplikacje działające w sieci są wrażliwe na opóźnienia. Aplikacje te często używają protokołu UDP w przeciwieństwie do protokołu TCP. Kluczową różnicą pomiędzy TCP i UDP w odniesieniu do wrażliwości czasowej jest to, że TCP retransmituje pakiety, które zostały utracone w tranzycie, podczas gdy UDP tego nie robi. W przypadku przesyłania plików z jednego komputera do drugiego, TCP powinien być używany, ponieważ jeśli jakiekolwiek pakiety zostaną utracone, zniekształcone lub dotrą poza kolejnością, protokół TCP może retransmitować i zmieniać kolejność pakietów, aby odtworzyć plik na komputerze docelowym.
Ale w przypadku aplikacji UDP, takich jak rozmowa telefoniczna IP, żaden utracony pakiet nie może być retransmitowany, ponieważ pakiety głosowe przychodzą jako uporządkowany strumień; retransmitowanie pakietów jest bezużyteczne. Z tego powodu, jakiekolwiek utracone lub opóźnione pakiety dla aplikacji wykorzystujących protokół UDP stanowią prawdziwy problem. W naszym przykładzie połączenia głosowego, utrata nawet kilku pakietów spowoduje, że jakość głosu stanie się poszarpana i niezrozumiała. Dodatkowo, pakiety są wrażliwe na to, co jest znane jako jitter. Jitter to zmienne opóźnienie aplikacji strumieniowej.
Jeśli sieć ma dużą przepustowość i nie ma ruchu, który przekracza jej możliwości, nie będzie problemu z utratą pakietów, opóźnieniami czy jitterem. Ale w wielu sieciach przedsiębiorstw, będą czasy, w których łącza stają się nadmiernie zatłoczone do punktu, w którym routery i przełączniki zaczynają upuszczać pakiety, ponieważ są one przychodzące / wychodzące szybciej niż to, co może być przetwarzane. Jeśli tak się stanie, ucierpią na tym aplikacje strumieniowe. W tym miejscu pojawia się QoS.
Jak działa QoS?
QoS pomaga zarządzać stratami pakietów, opóźnieniami i jitterem w infrastrukturze sieciowej. Ponieważ mamy do czynienia z ograniczoną ilością pasma, naszym pierwszym zadaniem jest określenie, które aplikacje skorzystają na zarządzaniu tymi trzema elementami. Gdy administratorzy sieci i aplikacji zidentyfikują aplikacje, które powinny mieć priorytet nad przepustowością w sieci, następnym krokiem jest identyfikacja tego ruchu. Istnieje kilka sposobów identyfikacji lub oznaczania ruchu. Class of Service (CoS) i Differentiated Services Code Point (DSCP) to dwa przykłady. CoS oznacza strumień danych w nagłówku ramki warstwy 2, natomiast DSCP oznacza strumień danych w nagłówku pakietu warstwy 3. Różne aplikacje mogą być oznaczane w różny sposób, co pozwala urządzeniom sieciowym na kategoryzację danych do różnych grup.
Gdy możemy kategoryzować strumienie danych do różnych grup, możemy użyć tej informacji do umieszczenia polityki na tych grupach w celu zapewnienia preferencyjnego traktowania niektórych strumieni danych w stosunku do innych. Jest to znane jako kolejkowanie. Na przykład, jeśli ruch głosowy jest oznaczony i polityka jest utworzona, aby dać mu dostęp do większości pasma sieciowego na łączu, routing lub urządzenie przełączające przeniesie te pakiety/ramki na przód kolejki i natychmiast je prześle. Jeśli jednak standardowy strumień transferu danych TCP jest oznaczony niższym priorytetem, będzie on czekał (będzie ustawiony w kolejce), aż będzie wystarczająca przepustowość do transmisji. Jeśli kolejki zapełnią się zbyt mocno, pakiety/ramki o niższym priorytecie są odrzucane jako pierwsze.
Scenariusze użycia QoS
Jak stwierdzono wcześniej, najczęstszymi przypadkami użycia QoS są strumienie głosowe i wideo. Ale jest wiele innych przykładów, szczególnie teraz, gdy IoT zaczyna się rozkręcać. Przykładem jest sektor produkcyjny, gdzie maszyny zaczynają wykorzystywać sieć do dostarczania informacji o stanie w czasie rzeczywistym na temat wszelkich problemów, które mogą wystąpić. Każde opóźnienie w identyfikacji problemu może skutkować błędami produkcyjnymi kosztującymi dziesiątki tysięcy dolarów w każdej sekundzie. Dzięki QoS, strumień danych o stanie produkcji może mieć priorytet w sieci, aby zapewnić przepływ informacji w odpowiednim czasie.
Innym przypadkiem użycia może być parowanie różnych inteligentnych czujników dla projektów IoT na dużą skalę, takich jak inteligentny budynek lub inteligentne miasto. Duża część zbieranych i analizowanych danych, takich jak temperatura, wilgotność i świadomość lokalizacji, jest bardzo wrażliwa na czas. Ze względu na tę wrażliwość czasową, dane te powinny być odpowiednio identyfikowane, oznaczane i kolejkowane.
Bezpiecznie jest powiedzieć, że w miarę jak nasze potrzeby w zakresie łączności będą się rozszerzać na wszystkie aspekty naszego życia osobistego i biznesowego, QoS będzie odgrywać coraz ważniejszą rolę w upewnianiu się, że pewne strumienie danych są traktowane priorytetowo w stosunku do innych, aby działać wydajnie.