Agregacja Łączy
Łączenie wielu fizycznych połączeń w celu zwiększenia przepustowości i redundancji.
Problem Wąskiego Gardła: Przepustowość i Niezawodność
W miarę jak sieci rosną pod względem prędkości i złożoności, niektóre połączenia stają się krytycznymi wąskimi gardłami. Wyobraź sobie ruchliwą sieć korporacyjną: wiele komputerów użytkowników jest podłączonych do przełącznika dostępowego, a ten pojedynczy przełącznik jest podłączony do rdzeniowego przełącznika dystrybucyjnego za pomocą jednego kabla uplink. To pojedyncze łącze przenosi cały połączony ruch od dziesiątek lub setek użytkowników do reszty sieci. Tworzy to dwa istotne problemy:
- Ograniczenie Przepustowości: Jeśli masz 24 użytkowników na przełączniku dostępowym, wszyscy z połączeniami 1 Gb/s, ale tylko jeden uplink 1 Gb/s do przełącznika rdzeniowego, ten uplink szybko staje się wąskim gardłem. Maksymalny łączny ruch nie może przekroczyć 1 Gb/s tego jednego łącza, co spowalnia całą sieć. Proste rozwiązanie, czyli modernizacja łącza do 10 Gb/s, może być bardzo kosztowne, wymagając nowego sprzętu i potencjalnie nowego okablowania.
- Pojedynczy Punkt Awarii: Jeśli ten jeden krytyczny kabel uplink ulegnie awarii lub port, do którego jest podłączony, zepsuje się, cały przełącznik dostępowy i wszyscy jego podłączeni użytkownicy zostaną całkowicie odcięci od sieci. Ten brak jest poważnym zagrożeniem.
Dodanie drugiego, równoległego łącza fizycznego między przełącznikami może wydawać się oczywistym rozwiązaniem. Jednakże, z powodu działania , który zapobiega pętlom w sieci, tylko jedno z tych łączy byłoby aktywne w danym momencie, podczas gdy drugie byłoby w stanie blokady. Zapewnia to redundancję, ale w żaden sposób nie zwiększa przepustowości. Potrzebne jest bardziej zaawansowane rozwiązanie, aby używać obu łączy jednocześnie.
Czym Jest Agregacja Łącz? Łączenie Połączeń Fizycznych
Agregacja łącz to technika sieciowa, która łączy lub „wiąże” wiele fizycznych połączeń sieciowych w jedno łącze logiczne. Zapewnia to połączenie o wysokiej przepustowości i odporności na awarie między dwoma urządzeniami, zazwyczaj przełącznikami, serwerami lub routerami.
Zamiast traktować dwa łącza 1 Gb/s jako oddzielne ścieżki (gdzie STP zablokowałoby jedno z nich), przełącznik skonfigurowany do agregacji łączy traktuje je jako jedno, połączone łącze o całkowitej przepustowości 2 Gb/s. Technologia ta jest znana pod wieloma nazwami:
- EtherChannel: Zastrzeżona nazwa Cisco dla agregacji łączy.
- Port Trunking lub Port Teaming: Powszechne terminy branżowe.
- Link Aggregation Group (LAG): Termin używany w standardzie IEEE.
- IEEE 802.3ad / 802.1AX: Oficjalne standardy IEEE, które definiują tę technologię.
Kluczowe Korzyści z Agregacji Łącz
Wdrożenie agregacji łączy zapewnia dwie natychmiastowe i potężne korzyści:
- Zwiększona Przepustowość:
Jest to najbardziej oczywista korzyść. Łącząc fizyczne łącza, agregujesz ich pojemności. LAG składający się z dwóch łączy 1 Gb/s tworzy logiczne łącze o całkowitej teoretycznej przepustowości 2 Gb/s. Cztery łącza 10 Gb/s tworzą logiczne łącze 40 Gb/s. Pozwala to administratorom na stopniowe zwiększanie przepustowości między krytycznymi punktami w sieci w bardzo opłacalny sposób, wykorzystując istniejące porty i bez konieczności przechodzenia na kolejny, znacznie droższy, poziom prędkości sprzętu.
- Wysoka Dostępność (Redundancja):
Łącze logiczne pozostaje aktywne, dopóki co najmniej jedno z jego fizycznych łączy jest aktywne. Jeśli jeden z fizycznych kabli w wiązce zostanie przecięty lub port ulegnie awarii, ruch zostanie automatycznie i transparentnie rozłożony na pozostałe aktywne łącza w LAG. Zapewnia to bezproblemową odporność na awarie. Przełączenie awaryjne jest zazwyczaj znacznie szybsze niż czas, jaki protokół Spanning Tree potrzebowałby na ponowną konwergencję, co zapewnia minimalne zakłócenia w usługach sieciowych.
Jak Agregacja Łącz Dystrybuuje Ruch
Powszechnym nieporozumieniem jest, że LAG pozwala pojedynczej, dużej transmisji pliku na wykorzystanie pełnej połączonej prędkości (np. osiągnięcie prędkości 2 Gb/s dla jednego pliku przez LAG 2x1 Gb/s). Zazwyczaj tak nie jest.
Pojedyncza „rozmowa” lub przepływ między dwoma urządzeniami jest zazwyczaj wysyłana tylko przez jedno z fizycznych łączy wewnątrz LAG. Przełącznik potrzebuje spójnego, deterministycznego sposobu decydowania, którego łącza użyć dla każdej ramki, aby zapewnić, że ramki należące do tej samej rozmowy dotrą w odpowiedniej kolejności. Jest to osiągane za pomocą algorytmu równoważenia obciążenia.
Algorytm działa, pobierając określone pola z nagłówka ramki, przepuszczając je przez matematyczną , i używając wynikowej wartości skrótu do wyboru fizycznego łącza z LAG. Powszechnie używane pola do tych obliczeń to:
- Źródłowy Adres MAC: Cały ruch z jednego komputera będzie używał tego samego fizycznego łącza.
- Docelowy Adres MAC: Cały ruch do jednego komputera będzie używał tego samego fizycznego łącza.
- Źródłowy i Docelowy Adres MAC: (Najczęstszy domyślny) Unikalna rozmowa między dwoma adresami MAC będzie używała jednego łącza.
- Źródłowy i Docelowy Adres IP: Równoważy ruch na warstwie 3, przydatne do routingu między różnymi sieciami.
- Numery Portów Źródłowych i Docelowych TCP/UDP: (Najbardziej granularne) Pozwala to różnym aplikacjom (np. przeglądaniu stron vs. e-mail) między tymi samymi dwoma komputerami na potencjalne używanie różnych łączy fizycznych, zapewniając najlepszą dystrybucję ruchu.
Per-Przepływ, Nie Per-Pakiet
Kluczowym wnioskiem jest to, że agregacja łączy wykonuje równoważenie obciążenia na podstawie przepływu (lub rozmowy), a nie na podstawie pojedynczych pakietów. Chociaż pojedyncza transmisja pliku nie przekroczy prędkości jednego łącza, LAG przenoszący ruch z setek różnych rozmów użytkowników skutecznie rozłoży te rozmowy na wszystkie dostępne łącza fizyczne, w pełni wykorzystując zagregowaną przepustowość.
Wymagania Implementacyjne i Protokoły
Aby agregacja łączy działała poprawnie, istnieje kilka ścisłych wymagań dotyczących łączonych łączy fizycznych:
- Ta Sama Prędkość: Wszystkie porty w LAG muszą być skonfigurowane do pracy z tą samą prędkością (np. nie można mieszać portu 100 Mb/s z portem 1 Gb/s).
- Ten Sam Tryb Dupleksu: Wszystkie porty muszą być w tym samym trybie dupleksu (zazwyczaj w pełnym dupleksie).
- Połączenie Punkt-Punkt: Łącza muszą być połączeniami punkt-punkt między tymi samymi dwoma urządzeniami.
- Spójna Konfiguracja: Porty po obu stronach łącza muszą mieć spójne konfiguracje (np. te same przypisania do VLAN, chyba że są skonfigurowane jako trunki).
Aby utworzyć LAG, przełączniki po obu stronach muszą być skonfigurowane. Można to zrobić na dwa sposoby:
- Konfiguracja Statyczna (On): Administrator ręcznie konfiguruje grupę portów na obu przełącznikach w celu utworzenia EtherChannel. Jest to proste, ale nie zapewnia mechanizmu do wykrywania błędów okablowania lub błędnych konfiguracji między przełącznikami.
- Dynamiczne Protokoły Negocjacji: Zdecydowanie zaleca się używanie dynamicznego protokołu negocjacji. Protokoły te pozwalają przełącznikom komunikować się ze sobą w celu automatycznego utworzenia LAG, weryfikacji, że konfiguracja po obu stronach jest zgodna, oraz dynamicznego dodawania lub usuwania łączy z wiązki, jeśli warunki ulegną zmianie. Dwa główne protokoły to:
- PAgP (Port Aggregation Protocol): Protokół zastrzeżony przez Cisco.
- LACP (Link Aggregation Control Protocol): Standard IEEE (802.3ad), który jest niezależny od dostawcy i jest obecnie najczęściej stosowaną metodą.