Kategorie
#Technologie: Aktualności

Software-Defined Networks, czyli marsz w przyszłość

Raz kupione urządzenia obsługiwały konkretne standardy i służyły wiele lat stanowiąc pewnego rodzaju wyspę technologiczną. Owszem, protokoły dynamicznego routingu (czyli wyznaczania tras pakietów) istniały w wyższej warstwie sieciowej, ale w warstwie łącza danych mieliśmy najczęściej sytuację „na sztywno”, gdzie każda ważniejsza zmiana wymagała wizyty inżyniera w pomieszczeniu aparatury. Umowy z klientami usług obowiązywały na stosunkowo długie okresy kilku lat, żeby inwestycje w sprzęt i te „wyspy” czy inne „silosy” finansowo i moralnie się zamortyzowały w czasie trwania umów.

Przez lata znacząco wzrósł ruch w sieciach. Rośnie nie tylko szybkość transmisji, ale przede wszystkim liczba węzłów sieci, liczba włókien, liczba wykorzystanych długości fal nośnych i konieczność połączenia w jednym światłowodzie wielu technologii transmisyjnych. Obecnie, w dobie komunikacji 5G i Internetu rzeczy wymagania rosną i konieczne jest stosowanie również połączeń typu punkt-wiele punktów. Stosuje się podział włókien światłowodowych pomiędzy wiele rozłącznych transmisji w różnych standardach i trybach, np. z podziałem czasu (TDM) lub długości fali (CWDM, DWDM). Zarządzanie i monitoring sieci muszą być wydajne w sytuacji częstych zmian konfiguracji sieci. Czyli potrzebujemy elastyczności i skrócenia czasu od pomysłu, przez fazę proof-of-concept, a później gotowego rozwiązania produkcyjnego.

Skoro wszystko jest software-defined, to sieci światłowodowe też

Współczesny świat zmierza do separowania infrastruktury usługodawcy od odbiorcy. Trendy są takie, że klient nie musi znać się na sposobie realizacji usługi w niższych warstwach. A dostawca chce mieć jeden centralnie zarządzany system dla zapewnienia punktów styku dla wszystkich klientów. Nikt już nie chce autonomicznych wysp technologicznych budowanych tylko dla jednego klienta. Zasada ta obowiązuje w wielu dziedzinach życia, nie tylko w telekomunikacji, ale też choćby w rozwiązaniach chmurowych.

Można powiedzieć, że obszar software-defined, czyli rozwiązań budowanych za pomocą zmiany konfiguracji lub wgrania nowego oprogramowania w miejsce wymiany sprzętu, ma w telekomunikacji dwie główne odnogi. Jedna to Software-Defined Radio (SDR). Dostawcy często tworzą uniwersalną platformę sprzętową odpowiedzialną za część analogową i działającą w szerokim zakresie częstotliwości radiowych. Chodzi o wzmacniacze niskoszumne (odbiorniki) lub mocy (nadajniki), interfejsy antenowe, przemianę częstotliwości i filtrację. Natomiast modulację lub demodulację cyfrową wraz z ramkowaniem i korekcją błędów przenosi się w dziedzinę oprogramowania. Takie urządzenie może obsługiwać wiele standardów cyfrowych jednocześnie bez konieczności inwestowania w nową platformę sprzętową. W szybko zmieniającym się świecie aktualizacji standardów dostępów radiowych rozwiązanie zwiększa elastyczność, bo zmniejsza koszty i skraca czas od pomysłu do uruchomienia pilotażowej usługi.

Ale nie tylko komunikacja radiowa wpadła na ten pomysł. W dziedzinie sieci światłowodowych spotykamy się z Software-Defined Networks (SDN). Można powiedzieć, że SDN jest ważnym założeniem, paradygmatem budowy nowych sieci optycznych. Rosnąca liczba wariantów transmisji, liczby klientów i skracanie czasu uruchomienia usługi powoduje, że rośnie problem zarządzania sieciami i elastycznością w zmianach konfiguracji. Trzydzieści lat temu raz uruchomiony system światłowodowy pracował latami, aż do kolejnej inwestycji w sprzęt nowszej generacji. Dziś jest to dalece niewystarczające. Wraz ze wzrostem stopnia skomplikowania konfiguracji sieci, zarządzanie nimi ręcznie staje się zbyt mało wydajne. Potrzebne są szybkie rozwiązania dla różnych małych projektów, eksperymentów, małych usług. Mamy potrzebę większej zwinności. Kluczowym elementem SDN jest konfiguracja, a w trakcie użytkowania, automatyzacja przepływu danych.

W SDN izoluje się samo zarządzanie siecią od ruchu sieciowego użytkowników sieci. Z punktu widzenia użytkownika, topologia sieci, często stosunkowo skomplikowana, jest niewidoczna i niemożliwa do ustalenia z poziomu klienta, a sam klient nie musi być informowany o zmianach, np. przełączeniach awaryjnych lub innych rekonfiguracjach, o ile zapewniona jest umowna wydajność.

Orkiestracja i już wszystko gra na płaszczyznach

Absolwentom szkół muzycznych orkiestracja kojarzy się zapewne z rozpisaniem utworu na poszczególne instrumenty i procesem tworzenia partytury. Robi to kompozytor albo aranżer. Cóż, dobry inżynier też powinien być artystą w swoim fachu. Nam orkiestracja kojarzy się jednak z zarządzaniem. Otóż łatwo powiedzieć o nowym paradygmacie i roztaczać piękne wizje SDN. Ale praktyka wymaga standaryzacji i rozpisania ról poszczególnych modułów systemu, aby rozwiązania od wielu dostawców były kompatybilne.

W SDN wprowadzono pojęcie płaszczyzn (planes), których rozróżniamy zasadniczo trzy. Mamy płaszczyznę biznesową/aplikacyjną, czyli warstwę określenia wymagań funkcjonalnych. Implementuje się ją zazwyczaj jako moduł oprogramowania orkiestratora, w którym administratorzy określają co chcą osiągnąć i za pomocą jakich środków. Orkiestrator to najwyżej położona część systemu, w której definiuje się usługi, usługobiorców i dochodzi do ich opisu w formie metadanych. Następną płaszczyzną jest pośrednia płaszczyzna kontrolera sieci. W tej płaszczyźnie zarządza się zasadami przepływów danych realizowanych przez urządzenia sieciowe. Wreszcie mamy płaszczyznę przetwarzania strumieni danych użytkownika realizowaną przez same urządzenia sieciowe, do których doprowadzone są światłowody. Większość z nich to będą przełączniki, które obsługują SDN. Płaszczyzny w SDN komunikują się przez uzgodnione interfejsy i implementacje tych płaszczyzn mogą w założeniu pochodzić od różnych dostawców, choć oczywiście są i tacy dostawcy, którzy oferują pełen stos protokołów i rozwiązane „z półki”. Niektórzy dostawcy, dostarczają wszystkie moduły, od przełączników, aż do orkiestratora. Ale są też dostawcy specjalizujący się w wybranych polach, np. dostarczają same przełączniki albo same orkiestratory.

W założeniu, dzięki standaryzacji, operator dużej sieci może kupić „czyste” urządzenia, które dopiero podpięte zostaną pod system kontrolera, a on do systemu orkiestracji, który to zleci odpowiedniej usłudze wygenerowanie konfiguracji do urządzeń, a także zadba o ich wdrożenie w sieci. W ten sposób można zmienić sieć bez fizycznego dostępu do urządzeń.

Protokół jak piosenka, jest dobry na wszystko

Kluczem do sukcesu każdej technologii jest standaryzacja. W SDN przełączniki różnych dostawców powinny docelowo obsługiwać te same standardy, aby moduły zarządzające mogły w prosty sposób generować dla nich konfiguracje. W przeciwnym razie będą budowane wyspy technologiczne danych dostawców gotowych rozwiązań, a integracje pomiędzy tymi wyspami będą bardzo drogie, choć w obrębie danej wyspy SDN będzie realizowane. W telekomunikacji, jeśli trzeba coś ustandaryzować, zazwyczaj kończy się to powstaniem uznanego w branży protokołu, czyli opisu sposobu wymiany danych.

W SDN najbardziej popularny protokół to OpenFlow. Przypisuje się go do warstwy drugiej (łącza danych). Jest protokołem sterowania przepływami, które rozumie się jako strumienie pakietów o pewnych cechach. Na podstawie tzw. tabeli przepływów, dobiera się odpowiedni scenariusz działania dla nadchodzącego od klienta pakietu, np. przekierowanie go na odpowiedni port odpowiedniego urządzenia. OpenFlow umożliwia automatyczne przełączanie tras na podstawie odświeżanej na bieżąco tabeli przepływów w sieci. Trasy mogą być programowane za pomocą poleceń protokołu. Protokół może sterować różnymi parametrami transmisji, np. długością fali w DWDM. Umożliwia także wyliczanie tras, czyli określania węzłów, przez które przepłyną dane klienta. Protokół służy też do konfigurowania i monitorowania urządzeń. Zapewnione są różne miary QoS (Quality of Service) takie jak bitowa stopa błędów, stosunek sygnału do szumu i uogólnione współczynniki jakości. Można powiedzieć, że protokół OpenFlow pośredniczy pomiędzy płaszczyzną zarządzania, a płaszczyzną transmisji danych.

Przełączniki SDN, czyli kto odwali robotę?

Częścią wykonawczą w SDN, działającą w najniższej płaszczyźnie, czyli elementem, który ma styczność z danymi klienta, są przełączniki SDN. Zarządzanie przełącznikiem obsługującym OpenFlow polega na tworzeniu, usuwaniu i modyfikowaniu przepływów wzdłuż ścieżki przepływu danych. Przełącznik, fizyczny lub wirtualny (jako proces uruchomiony na większym urządzeniu), zawiera szereg tabel przepływów oraz zestaw instrukcji (akcji). Wpisy w tabelach przepływów służą do weryfikacji spełnienia pewnych warunków przez nadchodzące pakiety. Potem dochodzi do poddania tych pakietów pewnym akcjom zdefiniowanym w zestawie instrukcji. Te tabele przepływów i akcje mogą być na bieżąco zmieniane i monitorowane przez kontroler sieci.

Przełączniki SDN obsługują najczęściej protokół OpenFlow za pomocą połączenia SSL i TCP/IP. W tym sensie protokół wymaga warstwy trzeciej na interfejsie zarządczym do zarządzania przepływami w warstwie drugiej na innych swoich interfejsach.

Panie, a kto się tym zajmie?

Korzenie standaryzacji sięgają jeszcze roku 1995, kiedy Sun Microsystems zapoczątkował prace w ramach Java Open Networking Foundation (OFN). Były to początki protokołu OpenFlow. Prace były prowadzone były m.in. na Uniwersytecie Stanforda i Indiana University, a pierwsza wersja protokołu powstała w 2009 r. Obecnie dużą rolę odgrywa organizacja Open Networking Foundation (https://opennetworking.org). Jest społecznością stanowiącą parasol nad różnymi projektami standaryzacji rozwiązań software-defined, w tym SDN. Zajmuje się także certyfikacją zgodności z protokołem OpenFlow współpracując z akredytowanymi laboratoriami testującymi. W rozwój SDN zaangażowany jest też wielki biznes. W pracach nad implementacją protokołu uczestniczą Cisco, Hewlett-Packard, IBM, Juniper Networks, Dell, Google i wiele innych czołowych dostawców technologii.

Do pracy, rodacy!

Stosowanie SDN ma dużo zalet, wśród nich przypomnijmy możliwość wydajnego, centralnego i zwinnego zarządzania całą siecią przez zespół administratorów oraz możliwość stosowania mechanizmów automatycznej rekonfiguracji. Skraca się czas prowadzenia faz proof-of-concept i wdrożenia usługi. Zalety SDN ujawniają się najsilniej tam, gdzie spotykają się strumienie danych od różnych klientów i w różnych technologiach. Jest to właśnie przypadek sieci PIONIER. Zatem SDN to przyszłość PIONIERa.

Marcin Dąbrowski