Skip to main content
European Commission logo

Narzędzia do ochrony i optymalizacji europejskiej komunikacji internetowej

Awarie routerów internetowych niosą za sobą wiele konsekwencji. Zespół unijnego projektu SafeNet opublikował pierwsze publicznie dostępne i otwarte narzędzie umożliwiające wykrywanie i naprawę błędów w routerach. W połączeniu z komercyjnym oprogramowaniem do optymalizacji sieci centrów danych pomoże ono chronić infrastrukturę komunikacyjną, na której polegają obywatele Europy.

©angelus_liam #131586472 source: stock.adobe.com 2022

PDF Basket

Nie wybrano żadnego elementu

Problemy z działaniem sieci mają olbrzymi wpływ na nasze codzienne życia, z kolei awarie w centrach danych mogą zakłócać działanie aplikacji o znaczeniu krytycznym. Przykładem mogą być na przykład awarie sieci linii lotniczych, które prowadzą do uziemiania samolotów.

Jednym z kluczowych elementów infrastruktury internetowej są routery, które odpowiadają za wymianę danych między sieciami komputerowymi. Jednym z elementów każdego routera jest oprogramowanie określane mianem płaszczyzny sterowania, które odpowiada za wytyczanie trasy danych do miejsca przeznaczenia. Ważną rolę odgrywa również płaszczyzna danych, która przetwarza ruch sieciowy. Urządzenia z najwyższej półki są w stanie przesyłać aż 52 terabajty ruchu na sekundę.

„Działanie routerów można porównać do urzędu pocztowego. Urządzenie odczytuje nagłówki pakietów danych, które pełnią rolę porównywalną z adresami na kopertach. Na tej podstawie określają ich miejsce przeznaczenia”, wyjaśnia Costin Raiciu z Uniwersytetu Politehnica w Bukareszcie.

Jeszcze do niedawna płaszczyzna danych stanowiła część oprogramowania wbudowanego w urządzenie, w związku z czym zakres jego działania był ograniczony do szeregu z góry określonych funkcji. Oznaczało to, że wszelkie zmiany w tym kodzie wymagały od producentów urządzeń sieciowych, w tym gigantów takich jak Cisco, Broadcom i Intel, przeprojektowania układów krzemowych, w związku z czym jakakolwiek modernizacja stawała się niezwykle kosztowna.

Współcześnie element ten jest programowalny za pomocą języków takich jak P4. Układy Tofino spółki Intel oraz Trident firmy Broadcom to przykłady routerów z programowalnymi płaszczyznami danych.

„Choć programowalne routery zapewniają niezrównaną elastyczność, w oprogramowaniu mogą występować błędy, których programiści nie dostrzegą w czasie prac. Takie błędy mogą doprowadzić do awarii, a nawet wyłączenia sieci”, wyjaśnia Raiciu, koordynator finansowanego przez Unię Europejską projektu SafeNet.

Opierając się na badaniach zrealizowanych w ramach wcześniejszego projektu (CORNET), zespół kierowany przez Raiciu opracował narzędzie o nazwie bf4, które umożliwia wyszukiwanie błędów w programach napisanych w języku P4 i ich automatyczną naprawę, dzięki czemu mogą z niego korzystać także osoby niebędące ekspertami. W ramach projektu SafeNet badacze przeanalizowali możliwość rozwoju możliwości tej technologii i udostępnienia jej zainteresowanym stronom.

„Nasze rozwiązanie do wykrywania błędów jest dostępne w serwisie GitHub w modelu otwartoźródłowym. Z tego co wiemy, jest obecnie jedynym publicznie dostępnym narzędziem przeznaczonym do tego celu”, zauważa Raiciu, współzałożyciel spółki Correct Networks, która pełni rolę gospodarza projektu. „Przeprowadzone przez nasz zespół badania rynku przekonały nas do rozszerzenia działalności o rozwój komercyjnego oprogramowania do optymalizacji sieci centrów danych”.

Weryfikacja przed wdrożeniem

„Język programowania P4 jest szczególnie podatny na błędy ze względu na niskopoziomowy charakter, zbliżony do języka programowania C stosowanego w świecie oprogramowania”, dodaje Raiciu.

Najczęstsze błędy popełniane przez programistów języka P4 dotyczą niedokładnych wartości nagłówków, które powodują awarie aplikacji oraz routerów, a także mogą zwiększyć podatność urządzeń sieciowych na włamania.

Wiele błędów można wychwycić, jeśli pakiety danych i ścieżki są weryfikowane przed wdrożeniem, jednak cały proces opiera się na szybkich narzędziach weryfikacyjnych. Takie narzędzia muszą działać w ciągu minut lub sekund, a ponadto nie mogą generować fałszywych alarmów.

Opracowane przez zespół narzędzie bf4 wykorzystuje technikę generowania warunków weryfikacyjnych (ang. verification-condition generation) połączoną z nowatorskim algorytmem wnioskowania. Takie rozwiązanie pozwala na wykrywanie błędnych informacji w płaszczyźnie kontroli, dzięki czemu wyklucza możliwość wystąpienia fałszywych alarmów.

W przypadku największego programu napisanego w języku P4 – switch.p4, który zawiera 6 000 wierszy kodu, program bf4 znalazł około 160 błędów w ciągu dwóch minut. Po uruchomieniu algorytmu wnioskowania okazało się, że większość informacji o błędach była fałszywymi alarmami. W rezultacie liczba potencjalnych błędów zmniejszyła się do 15.

„Kod w języku P4 może być następnie naprawiony przez programistów lub poprawiony automatycznie przez narzędzie bf4”, dodaje Raiciu.

Przejście od wykrywania błędów do optymalizacji

„Możliwości narzędzia bf4 w zakresie weryfikacji programów napisanych w języku P4 są niezrównane. Świadczy to zarówno o prostocie samego języka P4, jak i o postępach w dziedzinie informatyki i teorii systemów”, zauważa Raiciu.

Badanie rynku przeprowadzone przez zespół projektu SafeNet z udziałem potencjalnych klientów wykazało, że wykorzystanie programowalnych routerów pozostaje na niskim poziomie, a niewielu programistów korzysta z języka P4 in situ.

„Z tego powodu postanowiliśmy udostępnić kod źródłowy rozwiązania bf4 i skupić się na tworzeniu i komercjalizacji oprogramowania optymalizującego wydajność sieci w centrach danych”, wyjaśnia Raiciu. „Opatentowaliśmy już tę technologię i po dużym zainteresowaniu ze strony kluczowych graczy, takich jak Orange i Microsoft, mamy teraz jasny plan wprowadzenia produktu na rynek”.

PDF Basket

Nie wybrano żadnego elementu

Informacje o projekcie

Akronim projektu
SafeNet
Nr projektu
875690
Koordynator projektu: Rumunia
Uczestnicy projektu:
Rumunia
Koszt całkowity
€ 150 000
Wkład UE
€ 150 000
Czas trwania
-

Więcej informacji

More information about project SafeNet

All success stories