Testy DDoS i testy obciążeniowe polegają na wysyłaniu dużej ilości ruchu do systemu, dlatego często są mylone. Ich cele są jednak różne. Testy obciążeniowe sprawdzają, czy aplikacja działa w akceptowalny sposób, gdy pojawia się wielu rzeczywistych użytkowników. Testy DDoS sprawdzają, czy zabezpieczenia wytrzymują ruch zaprojektowany tak, aby je przeciążyć lub wyczerpać. Wybór niewłaściwego testu może pozostawić właściwe pytanie bez odpowiedzi. Ten przewodnik porównuje oba podejścia i pomaga zdecydować, które przeprowadzić najpierw.
Co to jest
Testy obciążeniowe i przeciążeniowe symulują realistyczne zachowania użytkowników: przeglądanie, logowanie, wyszukiwanie, dodawanie do koszyka, finalizowanie zakupu lub wywoływanie API. Testy stopniowo zwiększają ruch do oczekiwanego i szczytowego poziomu, a czasem powyżej niego, aby znaleźć punkty załamania. Wyniki koncentrują się na czasach odpowiedzi, odsetku błędów, przepustowości i wykorzystaniu zasobów oraz pomagają zidentyfikować wąskie gardła, takie jak wolne zapytania do bazy danych, ograniczone pule połączeń lub zbyt wolno reagujące autoskalowanie. Testy odporności na DDoS symulują wrogie wzorce ruchu: zalewanie na poziomie sieci, wyczerpywanie połączeń lub duże wolumeny żądań aplikacyjnych zaprojektowanych tak, aby omijać pamięć podręczną. Wyniki koncentrują się na tym, czy usługi ochrony, ograniczanie liczby żądań, reguły WAF i zabezpieczenia po stronie operatorów wykrywają i absorbują ruch, ile to trwa i jaki wpływ odczuwają uprawnieni użytkownicy. Testy obciążeniowe dotyczą głównie wydajności i efektywności; testy DDoS dotyczą głównie ochrony i reakcji. Oba wymagają pisemnego zakresu, bezpiecznych limitów i warunków przerwania, a testy DDoS w większości przypadków wymagają dodatkowo zgody dostawcy.
Dla kogo
To porównanie pomaga zespołom, które:
- Przygotowują się do wdrożenia, kampanii lub sezonowego szczytu i chcą mieć pewność co do wydajności
- Kupiły usługę CDN lub ochrony przed DDoS i chcą zobaczyć, jak się zachowuje
- Doświadczyły spowolnień lub awarii i nie wiedzą, czy przyczyną było obciążenie, czy atak
- Muszą wyjaśnić kierownictwu, dlaczego proponowane są dwa różne testy ruchu
Co pomaga wyjaśnić
Porównanie obu testów pomaga wyjaśnić:
- Czy głównym ryzykiem jest rzeczywisty popyt przekraczający wydajność, czy wrogi ruch przekraczający możliwości ochrony
- Które środowisko jest odpowiednie: zbliżone do produkcyjnego środowisko testowe dla testów obciążeniowych czy skoordynowane okno na produkcji dla testów odporności
- Jakie wskaźniki są istotne: czas odpowiedzi i odsetek błędów czy wykrywanie, czas uruchomienia ochrony i wpływ na użytkowników
- Których dostawców należy poinformować lub uzyskać ich zgodę
Co jest zawarte
- Test obciążeniowy warto wybrać, jeśli: zbliża się wdrożenie lub szczyt, wydajność jest powracającym problemem albo zmieniono architekturę lub hosting
- Test DDoS warto wybrać, jeśli: korzystają Państwo z usług ochrony, których nigdy nie widzieli w działaniu, prowadzą usługę o dużej widoczności albo klienci lub partnerzy pytają o odporność
- W przypadku testów obciążeniowych: określić ścieżki użytkowników, oczekiwane i szczytowe wolumeny, dane testowe i kryteria sukcesu
- W przypadku testów DDoS: określić scenariusze ataku, maksymalne natężenia, zgody dostawców i warunki przerwania
- W obu przypadkach: uzgodnić środowiska, okna testowe, monitorowanie, osoby kontaktowe i raportowanie
- Rozważyć kolejność: przed testowaniem zabezpieczeń usunąć problemy z wydajnością wykryte w testach obciążeniowych
Co nie jest uwzględnione
- Twierdzenia, że którykolwiek z testów zapewnia dostępność lub chroni przed wszystkimi przyszłymi zdarzeniami związanymi z ruchem
- Testów bez pisemnej autoryzacji i zgody dostawcy, jeśli jest wymagana
- Stałego monitorowania ani reagowania na incydenty, chyba że mają odrębnie określony zakres
- Szczegółowych technik generowania ruchu
Kiedy to wybrać
W razie wątpliwości warto zacząć od pytania, na które potrzebna jest odpowiedź. Jeśli brzmi ono: „czy w dniu wdrożenia obsłużymy oczekiwanych klientów?”, należy przeprowadzić test obciążeniowy. Jeśli brzmi: „czy nasze zabezpieczenia wytrzymałyby próbę wyłączenia nas z sieci?”, należy przeprowadzić test odporności na DDoS. Wiele organizacji wykonuje oba testy po kolei: test obciążeniowy, aby ustalić prawidłowy poziom bazowy, a następnie test odporności, aby ocenić zabezpieczenia względem tego poziomu.
Nasze podejście
Przed testem należy określić, czym jest sukces. W przypadku testów obciążeniowych mogą to być akceptowalne czasy odpowiedzi przy określonej liczbie jednoczesnych użytkowników. W przypadku testów odporności może to być czas potrzebny na uruchomienie ochrony oraz poziom wpływu, jaki w tym czasie odczuwają uprawnieni użytkownicy. Nasza usługa Application Load & Stress Testing ocenia zachowanie aplikacji w uzgodnionych scenariuszach użycia, przy uzgodnionych poziomach obciążenia, w uzgodnionych środowiskach i z uzgodnionymi limitami bezpieczeństwa. Nasza usługa DDoS Resilience Testing ocenia uzgodnione scenariusze zakłóceń w pisemnie określonych granicach, w tym z koordynacją z dostawcami. Każda z nich kończy się pisemnymi obserwacjami i priorytetowymi zaleceniami, a działania naprawcze lub stałe monitorowanie można dodać w osobno uzgodnionym zakresie. Jeśli planują Państwo oba testy, warto określić ich zakres łącznie, tak aby środowiska, osoby kontaktowe i formaty raportów były spójne, a wyniki można było porównać.
Często zadawane pytania
Artykuły pokrewne
Zacznij
Chcą Państwo pomocy w wyborze testu ruchu odpowiedniego dla Państwa sytuacji?
Proszę opisać aplikację, hosting, dostawców oraz wydarzenie lub ryzyko, na które się Państwo przygotowują. Zarekomendujemy proporcjonalny zakres testu.
Poproś o pisemny zakres