SDN - sieci sterowane programowo

Architektura i możliwości wykorzystania SDN

Podstawą architektury SDN jest założenie, że funkcje kontrolne są scentralizowane i obsługiwane przez oprogramowanie kontrolera SDN. Protokoły takie jak OpenFlow są wykorzystywane do przekazywania poleceń do przełącznika i programowania jego funkcji. Tego typu zadania mogą być realizowane również przy zastosowaniu innych protokołów, takich jak XMPP (Extensible Messaging and Presence Protocol), Netcong (Network Configuration Protocol) lub OpenStack w wersjach opracowanych przez Rackspace i NASA.

W tym modelu aplikacje działające w sieci powinny wykorzystywać funkcje API związane z kontrolerem SDN. Niestety wciąż brak jest standardu dotyczącego tego typu bibliotek API i w efekcie aplikacja przygotowana do współpracy z jedną biblioteką może wymagać modyfikacji, aby mogła współpracować z kontrolerem SDN innej firmy.

Oprogramowanie kontrolera SDN musi zawierać sterowniki umożliwiające kontrolowanie funkcji urządzeń sieciowych pracujących w systemie. Dopiero wówczas może on pełnić rolę systemu zarządzania siecią. Z reguły kontrola wydajności i niezawodności sieci jest realizowana przy wykorzystaniu SNMP lub innych standardowych protokołów.

Urządzenia sieciowe zgodne z OpenFlow umożliwiają zarządzanie konfiguracją topologii sieci, połączeniami i ścieżkami przekazywania danych oraz jakością usług QoS.

SDN - sieci sterowane programowo

Sieć z przełącznikami w rozwiązaniu klasycznym, hybrydowym i dedykowanym Open Flow

Należy tu zauważyć, że większość nowoczesnych przełączników i routerów jest wyposażana w moduły pamięci zawierające flow tables (tablice danych), umożliwiające sterowanie przepływem danych z wydajnością zbliżoną do przepustowości interfejsów sieciowych. Wykorzystywane są one do sterowania funkcjami przekazywania pakietów w warstwach L2, L3 i L4. Tablice te mają różną strukturę, zależnie od producenta sprzętu, ale istnieje podstawowy zestaw funkcji obsługiwanych przez praktycznie wszystkie urządzenia sieciowe. Wykorzystuje to właśnie protokół OpenFlow. Oparty na tym standardzie, pojedynczy kontroler umożliwia centralne programowanie funkcji fizycznych i wirtualnych przełączników pracujących w sieci.

Choć programowanie funkcji sieciowych przy wykorzystaniu pojedynczego kontrolera SDN jest możliwe, to takie firmy jak Big Switch i NEC opracowują rozwiązania wykorzystujące klastry - zestawy współpracujących kontrolerów sieci zapewniające wysoką dostępność i niezawodność systemu. Jest bardzo prawdopodobne, że tego typu rozwiązania będzie wspierał również IBM.

Wiele z dostępnych obecnie na rynku przełączników pracujących w warstwach L2/L3 może funkcjonować jako tzw. przełączniki hybrydowe, czyli obsługujące zarówno klasyczne funkcje przełączania i routing pakietów, jak i polecenia wydawane przez kontroler OpenFlow. Wymaga to jedynie rozszerzenia funkcji oprogramowania firmware (firmowego sieciowego systemu operacyjnego, NOS - Network Operating System) przez dodania modułu agenta OpenFlow.

Bardziej efektywnym rozwiązaniem byłoby jednak wprowadzenie układów scalonych specjalnie zaprojektowanych do obsługi OpenFlow. Architektura przełączników wykorzystujących takie układy mogłaby zostać zasadniczo uproszczona, bo urządzenia takie nie wymagałyby instalacji rozbudowanego oprogramowania, dużej pamięci i procesorów o wysokiej mocy przetwarzania danych, których wymagają współczesne sieciowe systemy operacyjne. W szczególności oznacza to możliwość istotnego obniżenia cen urządzeń sieciowych.


TOP 200