1 Instytut Informatyki, Automatyki i RobotykiLoad balancing
2 Uproszczony schemat struktury równoważącej obciążenia serwerowe
3 Techniki realizowane w warstwie 4Równoważenie polegające na rozpraszaniu pakietów sieciowych adresowanych na wirtualny adres IP miedzy serwery posiadające zdolność do realizacji żądań odpowiadających usłudze Rozwiązanie programowe Duża wydajność Mała elastyczność funkcji Ilość jednoczesnych połączeń zależna od dostępnej pamięci
4 Rozpraszanie ruchu w warstwie 4Algorytm karuzelowy (ang. round robin, rr) najprostszy algorytm rozpraszający ruch; ruch rozdzielany jest cyklicznie między wszystkie serwery replikowane. Algorytm karuzelowy z wagami (ang. weight round robin, wrr) modyfikacja algorytmu karuzelowego; każdy serwer replikowany otrzymuje wagę, która uwzględniona jest przy rozpraszaniu ruchu; serwery z największą wagą otrzymują najwięcej ruchu; najlepiej wykorzystać można, gdy serwery replikowane nie posiadają takich samych zasobów.
5 Rozpraszanie ruchu w warstwie 4Metoda najmniejszej liczby połączeń (ang. least connected, lc) rozprasza ruch uwzględniając liczbę połączeń z danym serwerem replikowanym; Wybrany zostaje serwer, który ma najmniej ustanowionych połączeń. Metoda najmniejszej liczby połączeń z wagami (ang. weight least connected, wlc) modyfikacja algorytmu najmniejszej liczby połączeń; Ruch rozpraszany zostaje na podstawie informacji o liczbie połączeń z danym serwerem replikowanym oraz jego wadze.
6 Rozpraszanie ruchu w warstwie 4Metoda najmniejszej liczby połączeń wykorzystująca informację o docelowym przeznaczeniu pakietu (ang. locality-based least-connection, lblc). utworzenie w pamięci tablicy, w której zapisywany jest docelowy adres IP pakietu oraz informacje o przyporządkowanym mu serwerze; cały ruch adresowany na konkretny adres IP kierowany jest do jednego serwera; w momencie, kiedy jest on przeładowany lub reguła nie istnieje w pamięci, przyporządkowanie odbywa się według zasad metody najmniejszej liczby połączeń (lc), jednocześnie w pamięci tworzona zostaje nowa reguła przyporządkowania; algorytm przekazuje pakiety adresowane na dany adres IP serwerowi, który go obsługuje.
7 Rozpraszanie ruchu w warstwie 4Metoda najmniejszej liczby połączeń wykorzystująca informację o docelowym przeznaczeniu pakietu z replikacją (ang. Locality-Based Least-Connection with Replication, lblcr). Metoda ta działa tak samo jak metoda lblc z tą różnicą, iż przyporządkowanie uwzględnia nie jeden serwer a grupę serwerów. Metoda uwzględniająca docelowy adres IP (ang. destination hashing, dh). W pamięci tworzona jest statyczna tablica mieszająca (ang. hash table) przyporządkowująca docelowy adres IP do konkretnego serwera replikowanego.
8 Rozpraszanie ruchu w warstwie 4Metoda uwzględniająca źródłowy adres IP (ang. source hashing, sh). W pamięci tworzona jest statyczna tablica mieszająca (ang. hash table) przyporządkowująca źródłowy adres IP do konkretnego serwera replikowanego. Metoda najkrótszego spodziewanego opóźnienia (ang. shortest expected delay, sed) wybór serwera, dla którego szacowane opóźnienie będzie najmniejsze. Metoda braku oczekiwania (ang. never queue) przyporządkowanie serwera w stanie bezczynności. w przypadku, gdy wszystkie serwery są w użyciu, metoda ta zachowuje się jak metoda najkrótszego spodziewanego opóźnienia (sed).
9 Czego nam potrzeba? Informacje dostępne dla mechanizmów równoważenia na poziomie 4: Adres źródłowy IP Źródłowy port Docelowy adres IP Docelowy port
10 Równoważnie obciążenia z translacją adresów sieciowych
11 Równoważnie obciążenia z bezpośrednią odpowiedzią serwera
12 Równoważnie obciążenia wykorzystujące protokoły tunelowania
13 Techniki realizowane w warstwie 7.Działanie w trybie buforowania wstecznego (ang. reverse proxy) Ukrycie rozpraszania ruchu przed użytkownikami Zależność od liczby połączeń oraz specyfiki przesyłanego ruchu Funkcja wspomagania bezpiecznego połączenia (SSL) Funkcja filtrowania zapytań – zapamiętywanie powtarzalnych
14 Techniki realizowane w warstwie 7.
15 Metody wyboru serwera aplikacyjnegoRozdzielanie przy pomocy algorytmu szeregowania - podstawowa metoda rozpraszania ruchu między serwery aplikacyjne. Analiza składnikowa adresu URL. Analizie poddana zostaje ścieżka adresu URL w zapytaniu od klienta.
16 Metody wyboru serwera aplikacyjnegoStan podtrzymania. Rozwiązanie to realizowane jest przy pomocy ciasteczek (ang. cookies).
17 LB v4 vs v7 Layer 4 Load Balancer: Layer 7 Load Balancer skalowalnyniezawodny wysoka dostępność równoważenie obciążeń Layer 7 Load Balancer nieskalowalny niska jakość (wymaga mocnego sprzętu) złożony kod programowy wymaga kodu klienta dla każdego protokołu + procedura bezpieczeństwa pojedynczy punkt awarii serwery farmy nie mogą ulegać awarii, zatem: nie zalecany dla systemów wysokiej dostępności obciążenie rozproszone jednak nie-zrównoważone
18 Łączenie rozwiązań