Równoważenie obciążenia wspomagane przełączaniem z tolerancją na uszkodzenia

9

Studiując do certyfikacji Cisco i Microsoft, dużo czytałem o NIC Teaming, Etherchannels i podobnych rzeczach.

Wiem, że możesz wykonywać statyczne zespoły w MS Windows Server lub tworzyć kanał portowy w Cisco lub używać protokołów dynamicznych, takich jak LACP i PAgP. Ale wszystkie oferują równoważenie obciążenia za pomocą źródłowego lub docelowego adresu MAC lub adresu IP, kombinacji XOR razem lub podobnych rzeczy, prawda? I wydaje się, że nie ma sposobu na zwiększenie rzeczywistej przepustowości, jeśli masz długi, długi transfer plików z jednego serwera na inny (np. Połączenie 4 GigE w celu zwiększenia go do 4 Gb / s).

Zastanawiam się więc, czy to prawda? Czy istnieje sposób na wykorzystanie całej przepustowości połączonych interfejsów? Słyszałem z kilku źródeł, że istnieje coś takiego jak SLB (Switch-Assisted Load Balancing w / Fault Tolerance), który obsługuje pełne równoważenie obciążenia i pozwala na wykorzystanie pełnej przepustowości (np. 4 Gb / s z mojego przykładu między dwoma serwerami w jednej transakcji).

Słyszałem o tym wiele sprzecznych rzeczy i jestem całkowicie zdezorientowany. Pomóżcie chłopaki!

Alex
źródło
Nie jest to złe pytanie, ale AFAIK nie ma sposobu na zwiększenie przepustowości pojedynczego strumienia danych za pomocą równoważenia obciążenia.
pauska
To nie była odpowiedź! Tylko komentarz :-) poczekaj, aż bardziej wykwalifikowany facet wymyśli bardziej szczegółową odpowiedź.
pauska
Oczywiście, że tak :) Jednak jestem trochę sceptyczny co do tego, że jest to możliwe, ale niektórzy sprzedawcy mówią, że tak jest, a mój kolega (serwer) też jest zdezorientowany :) Chcę to wykluczyć
Alex
haha właśnie przypomniał sobie: proszę nie brać sprzedaży Porady ludzi z lekcji OSI kilka lat temu
Alex

Odpowiedzi:

8

W warstwie 2 całe równoważenie obciążenia odbywa się w najlepszym przypadku za pomocą XOR lub skrótu źródłowego i docelowego MAC, a jeśli masz szczęście, może nawet odczytać warstwę 3 i zaszyfrować te dane.

W warstwie 3, jednak, dokąd w zasadzie mówić o wielu bramek (tak skutecznie, dwie fizyczne powiązania z unikalnym następnego hopu w całej każdy), które może max z całej przepustowości łącza, jeśli jesteś przygotowany na per- równoważenie pakietów.

Zanim przejdę dalej, równoważenie pakietów jest ogólnie rzeczą złą , ponieważ może powodować dostarczanie pakietów poza kolejnością, może to być szczególnie straszne w przypadku połączeń TCP, ale oczywiście sprowadza się to do implementacji i większość nowoczesnych stosów toleruje to stosunkowo dobrze.

Aby wykonać równoważenie pakietu, oczywiście jednym wymogiem jest to, że źródłowy i docelowy adres IP wcale nie są podłączone do urządzeń, które mają wiele ścieżek, ponieważ muszą być one trasowane, aby możliwe było równoważenie. Redundancję można uzyskać za pomocą protokołu routingu, takiego jak BGP, OSPF, ISIS, RIP lub alternatywnie, BFD lub proste wykrywanie stanu łącza.

Wreszcie istnieje oczywiście rozwiązanie warstwy transportowej - protokoły, takie jak SCTP, obsługują łączenie się z wieloma punktami końcowymi, a TCP ma już wersje robocze, które dodają opcje wykonywania podobnych czynności. Lub ... możesz po prostu sprawić, aby aplikacja otwierała wiele gniazd.

Olipro
źródło
Dzięki za odpowiedź! Tak, jestem świadomy tego równoważenia obciążenia L3. Zasadniczo, jeśli chcesz więcej niż jeden koncert na drugiej warstwie, wybierz 10gig? Zwłaszcza jeśli chcesz wykonywać kopie zapasowe między serwerami @ warstwa 2, które są podłączone do tego samego przełącznika?
Alex
Zasadniczo tak - możesz robić hackerskie rzeczy na hoście, takie jak tworzenie fałszywego mostu, a następnie przepisywanie docelowego adresu MAC każdej ramki, aby każda z nich wychodziła z innego interfejsu, ale tak naprawdę zależy to od systemu operacyjnego , jest nietrywialny i nie można go skalować.
Olipro
Mamy mieszankę RHEL i Win 08 R2
Alex
5

Po pierwsze, bądźmy realistami odnośnie wydajności twojego systemu; musisz upewnić się, że Twój system może konsekwentnie buforować przepustowość, o którą pytasz, z dysku do odpowiednich kart sieciowych (patrz dół odpowiedzi) ...

Tak długo, jak chcesz używać FTP do przesyłania plików, możesz używać klienta, który obsługuje segmentowanie pliku za pomocą RESTpolecenia FTP do pobierania, oraz serwera, który obsługuje COMBpolecenie FTP do przesyłania z podziałem na segmenty. Korzystając z klientów FTP obsługujących segmentację, możesz otworzyć wiele sesji FTP na przesyłanie plików i skorzystać z haszowania Layer4 LACP obsługiwanego przez wielu dostawców przełączników ... niezależnie od tego, czy łączysz łącza 1GE czy 10GE, przesyłanie segmentowe przyspiesza Twoją wydajność przez LACP.

CuteFTP dla Windows obsługuje transfery REST, a Filezilla obsługuje polecenie COMB . To tylko dwie z kilku opcji, których możesz użyć.


Limity systemowe

Nie wiem, jakiego rodzaju masz dysk, ale często limitem dla jednego systemu są dyskowe operacje we / wy ... jest tu kilka interesujących punktów ... z perspektywy kontrolera ...

  • SATA (wersja 1) maks. Xfer: 1,2 Gb / s po obciążeniu 8b / 10b
  • SATA (wersja 2) maks. Xfer: 2,4 Gb / s po obciążeniu 8b / 10b
  • SATA (wersja 3) maks. Xfer: 4,8 Gb / s po obciążeniu 8b / 10b
  • Maksymalna przepustowość 4G Fibre Channel: 3,56 Gb / s

Innym możliwym ograniczeniem jest prędkość dysku / wrzeciona / ramiona ... chyba że używasz dysku SSD.

Wreszcie potrzebujesz kart sieciowych o wystarczającej pojemności do płyty głównej ... sprawdź, ile linii jest w karcie PCIe. Zakładam, że jesteś w sieci LAN, a utrata / zator pakietów nie będzie problemem. Możesz włączyć jumbos, jeśli uznasz, że procesor jest czynnikiem ograniczającym Twoje transfery.

Mike Pennington
źródło
Myślę, że do przesyłania używamy FTP i SCP. Jeśli chodzi o wydajność I / O, planujemy migrację do iSCSI i bez względu na to, co mówię, nie możemy sobie pozwolić na przełącznik 10 gig o wysokiej gęstości ze względu na ograniczony budżet (który jest naprawdę potrzebny w tym przypadku), więc staramy się improwizować na bieżąco. Właśnie planuję.
Alex
@Alex Pracuję również z ograniczonym budżetem i używam iSCSI. Przełączniki Dell PowerConnect 8132 / 8164F są tak tanie, jak można uzyskać na port za pomocą SFP, a nie absurdalny bufor portowy. Mieliśmy z nimi wielki sukces.
pauska
Rzucę okiem na nich :)
Alex
@Alex, nie proponuję, abyś używał przełącznika 10GE ... nawet wiele połączonych 1GEs może przekroczyć pojemność serwera ... Zaktualizowałem moją odpowiedź, aby podkreślić, że sugeruję użycie LACP
Mike Pennington