Rozmawiając o technologii blockchain, często posługujemy się pojęciem zdecentralizowanej sieci. Zdarza się jednak, że mylone jest ono z siecią rozproszoną. Niska jest też wciąż świadomość korzyści płynących z decentralizacji.
Czym właściwie jest zdecentralizowana sieć? Czym różni się od scentralizowanej? W naszym artykule objaśnimy istotę tego pojęcia, a także pochylimy się nad zaletami zdecentralizowanej sieci. Podsuniemy również sposoby na rozwiązanie kluczowych wyzwań, jakie generuje ona dla projektów opartych na blockchainie. Aby zrozumieć potencjał decentralizacji, porównamy jej specyfikę z cechami rozwiązań scentralizowanych.
Zacznijmy od definicji. Według National Institute of Standards and Technology, zdecentralizowana sieć to:
”Konfiguracja sieciowa, w której występuje wiele organów służących za scentralizowany łącznik pewnego podzbioru uczestników tej sieci. Ponieważ pewni uczestnicy sieci znajdują się za scentralizowanym łącznikiem, to utrata tego łącznika wiąże się z utratą możliwości komunikowania się przez tych uczestników”.
W skrócie, zdecentralizowana sieć jest środowiskiem lub platformą, która przetwarza zapytania za pośrednictwem wielu sprzętów zamiast jednego centralnego serwera. Często wykorzystuje się ją na potrzeby aplikacji wymagających dużych mocy obliczeniowych.
Zdecentralizowane sieci przynoszą cały szereg korzyści. Przede wszystkim: są bardziej stabilne i skalowalne, a przy tym lepiej chronią prywatność.
Takie sieci są również bardziej odporne na zakłócenia w przypadku awarii, która dotknie jeden z węzłów. Jest tak, ponieważ nie polegają one na jednym centralnym serwerze, aby móc przetworzyć informacje.
Ponadto zdecentralizowane sieci można znacznie łatwiej skalować, dodając więcej komputerów do sieci celem uzyskania większej mocy obliczeniowej. Wyższy poziom prywatności w stosunku do sieci scentralizowanych wynika z faktu, że dane nie przepływają przez pojedynczy węzeł, lecz cały ich szereg.
Zdecentralizowane sieci mają wiele zalet, ale sprawiają również kilka problemów. Wysokie koszty utrzymania czynią je mniej odpowiednimi dla małych organizacji. Dodatkowo gorzej znoszą również uszkodzenia. W rezultacie, często nie sprawdzają się w przypadku organizacji potrzebujących niewielkiego systemu.
Przy ich użytkowaniu mogą pojawić się również problemy z koordynacją, gdy wystąpi błąd w komunikacji między kluczowymi węzłami.
W scentralizowanej architekturze sieci, to główny serwer przetwarza większość danych, a sprzęty o mniejszej mocy obliczeniowe łączą się z nim, wysyłając na niego zapytania. Dotyczy to całego szeregu usług, od aplikacji po przechowywanie danych.
Największą zaletą scentralizowanych sieci jest ich wysoka wydajność, spójność i przystępność cenowa. Na administratorów sieci wywierana jest coraz większa presja stałej aktualizacji i serwisowania infrastruktury – jeśli sieć kontrolowana jest przez jeden centralny serwer, mają oni znacznie mniej pracy.
Ponadto wszystkie dane w scentralizowanej sieci muszą zostać przetworzone w tym samym miejscu, co ułatwia ich śledzenie i gromadzenie.
Scentralizowane sieci mają również pewne wady. Jeśli centralny serwer ulegnie awarii, poszczególne komputery (klienci), które do niego przynależą, nie są w stanie przetwarzać zapytań użytkownika. Wpływ takiej sytuacji na sieć zależy od wolumenu zapytań, jakie przetwarza serwer. Jeśli klienci odpowiadają za nieco więcej niż tylko przesyłanie zapytań, dostępność systemu będzie bardzo ograniczona.
Kolejną wadą scentralizowanych sieci jest ich ograniczona skalowalność. Jako że całość mocy obliczeniowej spoczywa w pojedynczym serwerze, jedynym sposobem na rozbudowanie sieci jest zwiększenie pamięci czy dodanie pasma wejścia-wyjścia dla serwera, co nie jest opłacalne w dłuższym ujęciu.
Załóżmy, że twój biznes podlega okresowym wahaniom natężenia aktywności. W takim przypadku, pojedynczy serwer może stać się „wąskim gardłem”, nie radząc sobie z ilością zapytań przy bardziej intensywnych okresach.
Ponadto prace konserwacyjne mogą od czasu do czasu wymagać okresowego wyłączenia głównego serwera. To z kolei może doprowadzić do zakłóceń sieci, powodując niedogodności po stronie użytkownika.
A co z kwestią bezpieczeństwa? W przypadku sieci scentralizowanej, mamy do czynienia z Single Point of Failure, co zwiększa prawdopodobieństwo naruszeń bezpieczeństwa i zakłóceń spowodowanych zagrożeniem cyberataków (np. DDoS). Sprawa jest tutaj prosta – mamy tylko jeden cel zamiast wielu rozdystrybuowanych.
Sieć rozproszona jest dość podobna w swojej specyfice do zdecentralizowanej. Podobnie jak ona, zastępuje pojedynczy serwer wieloma właścicielami sieci. Jest jednak pewna różnica – w sieci rozproszonej węzły są połączone między sobą, co oznacza, że własność danych i zasoby obliczeniowe są równo rozdystrybuowane między uczestników sieci.
Co ciekawe, pojęcie rozproszonej sieci jest czasami wykorzystywane do opisywania sieci rozdystrybuowanych w sensie geograficznym, które jednak bazują na hierarchicznym modelu węzłów. W takiej sieci lokalizacje węzłów i ich moce obliczeniowe są zazwyczaj równo rozdystrybuowane.
Scentralizowane sieci powstały celem poprawy wydajności i wykorzystania potencjału ekonomii skali. Z drugiej strony, zdecentralizowane sieci mają za zadanie poprawić szybkość i elastyczność sieci poprzez przeniesienie mocy obliczeniowych na indywidualnych użytkowników.
Rozproszone sieci nie posiadają natomiast centralnego serwera czy oddzielnego zestawu głównych węzłów. W związku z tym, całe przetwarzanie danych odbywa się z udziałem użytkowników sieci. Co za tym idzie, wszyscy użytkownicy mają równy dostęp do danych.
Jak widać, każdy z wariantów ma swoje wady i zalety. Trudno jednoznacznie odpowiedzieć na pytanie, który z nich jest najlepszy. Najlepiej spojrzeć na to przez pryzmat własnych potrzeb i specyfiki swojego biznesu.
Porównując zalety i wady poszczególnych struktur sieciowych, miej na uwadze, że żadna z nich nie jest uniwersalna. Jednocześnie, współczesny Internet bazuje w dużej mierze na scentralizowanych sieciach, a co za tym idzie, większość systemów legacy uwzględnia jakąś formę centralnej konfiguracji.
Wdrożenia zdecentralizowanych i rozproszonych sieci napędzają sporo innowacji i mogą znieść wiele ograniczeń narzucanych przez centralne struktury. Przykładowo, umożliwiają rozwój zdecentralizowanych finansów czy idei niezależnej tożsamości (self-sovereign identities).
W miarę rozwoju różnych opcji konfiguracji sieci, organizacje będą zyskiwać większe możliwości dopasowania architektury sieciowej do swoich potrzeb. Może to nasilić zwrot ku bardziej zdecentralizowanym i rozproszonym strukturom.