Połączenie ECMP (lub innych przyczyn ścieżek asymetrycznych) i HSRP jest domyślnie zepsute w Cisco IOS; domyślne zachowanie w tym projekcie nadmiernie zalewa ruch emisji pojedynczej.
Jaka jest najlepsza praktyka stosowania HSRP z ECMP w celu zapobiegania powodziom nieznanej emisji pojedynczej?
Szczegóły / Tło
Dla wielu naszych obiektów mamy topologię HSRP podobną do pierwszego diagramu poniżej. Nasze routery WAN Cisco mają takie same trasy do wszystkich innych witryn; dlatego możemy cały czas widzieć asymetryczne efekty routingu. Zwykle przypisujemy R1 jako główny HSRP, ale ECMP zezwala na ruch powrotny przez R1 lub R2.
Problem polega na tym, że gdy PC1 montuje zdalny napęd iSCSI w sieci WAN, ruch opuszcza witrynę przez R1, ale może powrócić przez R2. Dopóki ruch iSCSI wraca przez R1, nie ma żadnych problemów.
Problem występuje, gdy ruch PC1 powraca przez R2. Załóżmy, że sesja iSCSI rozpoczyna się o 8:00:00, a oba routery i oba przełączniki uczą się jednocześnie komputera Mac PC1. Pomiędzy 8:00:00 a 8:00:05 nie występują problemy z zalaniem, ponieważ oba przełączniki nadal mają adres mac PC1 w tabeli CAM.
Pięć minut po rozpoczęciu sesji iSCSI wpis CAM S2 dla komputera Mac PC1 wygasa z tabeli CAM, a S2 zalewa ruch PC1 ze wszystkich portów (w tym przypadku do Po1, Gi0 / 3 i Gi0 / 4). Jeśli sesja iSCSI PC1 zużywa dużo przepustowości, to nieznane zalewanie emisji pojedynczej może wyssać nietrywialną pojemność z łączy do PC3 i PC4.
Przełączniki Cisco IOS mają domyślny zegar CAM wynoszący 300 sekund ...
S2# show mac address-table aging-time
Vlan Aging Time
---- ----------
1 300
17 300
Jednak domyślny zegar ARP interfejsu Cisco IOS to 4 godziny ...
R2# show interface gi0/0
GigabitEthernet0/0 is up, line protocol is up
Hardware is AmdP2, address is 000a.dead.beef (bia 000a.dead.beef)
Internet address is 172.17.1.252/24
MTU 1500 bytes, BW 10000 Kbit, DLY 1000 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation ARPA, loopback not set
Keepalive set (10 sec)
ARP type: ARPA, ARP Timeout 04:00:00 <--------------
Dlatego S2 zaczyna zalewać ruch iSCSI na PC1 po pięciu minutach.
Odpowiedzi:
Prostą odpowiedzią jest ustawienie timera CAM na równy lub nieco dłuższy niż odpowiedni interfejs ARP timera , ale istnieją co najmniej trzy różne opcje do wyboru ...
Opcja 1: Obniż wszystkie zegary ARP interfejsu
Ta opcja działa najlepiej, jeśli masz przyzwoitą sieć przełączaną w warstwie 2, rozsądną liczbę wpisów ARP i kilka routowanych interfejsów. Ta metoda jest również preferowana, jeśli chcesz szybko sprawdzić, jak wpisy na komputerze Mac przestarzałe z topologii.
arp timeout 240
hold-queue 200 in
ihold-queue 200 out
aby uniknąć upuszczania pakietów ARP podczas okresowych odświeżeń ARP (te limity mogą być wyższe lub niższe w zależności od liczby odświeżeń ARP, które Twoim zdaniem musisz obsłużyć naraz). Jeśli dostosowujesz wartości selektywnego odrzucania pakietów , powinieneś postępować zgodnie ze wskazówkami w dokumencie, który połączyłem.Zmusza to Cisco IOS do odświeżenia tabeli ARP w ciągu czterech minut, jeśli nie nastąpiło inaczej dla danego wpisu ARP. Oczywistą wadą jest to, że nie skaluje się to dobrze, jeśli masz dużo wpisów ARP ... limity różnią się w zależności od platformy. Użyłem tego z kilkoma setkami ARP na router na Catalyst 4500/6500 (SVI warstwy 3) bez żadnych problemów.
Opcja 2: Zwiększ czas przełączników CAM
Ta opcja działa najlepiej, jeśli masz dużą liczbę wpisów ARP (tj. Tysiące, na przykład intensywne środowisko VMWare).
mac address-table aging-time 14400
lub wmac address-table aging-time 14400 vlan <vlan-id>
przypadku każdego wzbudzającego niepokój Vlana.Ta zmiana dostosowuje liczniki, które według większości osób są ustawione na 300 sekund (w systemie Cisco IOS), więc pamiętaj o uwzględnieniu tego w dokumentacji ciągłości. Efektem ubocznym jest to, że wpisy w tabeli CAM pozostają przez 4 godziny po wyjęciu komputera (co może być dobre lub złe, w zależności od twojego PoV). Jeśli 4 godziny są za długie, zobacz następną opcję ...
Opcja 3: Zmień zarówno timery ARP interfejsu, jak i przełączniki Timery CAM
Ta opcja pozwala uniknąć strasznie długich timerów CAM w Opcji 2 kosztem większej konfiguracji. Możesz wybrać, czy potrzebujesz 900 sekund, 1800 sekund, czy cokolwiek innego ... po prostu upewnij się, że timery CAM i ARP są zgodne; dlatego musisz skonfigurować zarówno Opcję 1, jak i Opcję 2 w swoich topologiach.
źródło
Dla mnie ECMP jest tutaj prawdziwym problemem - więc oprócz powyższych kroków, aby ograniczyć zalewanie nieznanej emisji pojedynczej, możesz również dostroić metryki trasy w kierunku WAN, aby R1 był preferowany zamiast R2 dla ruchu powrotnego. Jednym ze sposobów osiągnięcia tego jest lista dystrybucji w R2 w następujący sposób: (EIGRP używany tylko na przykład, to samo można osiągnąć za pomocą OSPF lub BGP z innymi poleceniami)
Spowoduje to, że sieć WAN przekieruje cały ruch dla 172.17.1.0 do R1. Jeśli R1 Se1 / 0 zawiedzie, trasa zostanie zainstalowana w kierunku R2. Możesz dalej dostroić te parametry, aby trasa tworzenia kopii zapasowych do R2 była w rzeczywistości wykonalnym następcą szybszego przełączania awaryjnego. HSRP i śledzenie zajmą się ruchem wyjściowym.
źródło
Pomysł, aby nie używać ECMP, jeśli HSRP jest w użyciu, może być odpowiedni dla SERWERÓW, w których ruch wejściowy może być większy niż ruch wyjściowy, w sytuacji na komputerze OGÓLNIE ruch wejściowy z sieci WAN (odpowiedzi) jest większy niż ruch wyjściowy (wejście). Lubimy, jak większość ludzi ustawia timery ARP. możesz zadzierać z licznikami CAM, ALE jeśli powiesz MDF z przełącznikiem warstwy 3 i IDF z 2 przełącznikami kolekcji i powiedz 5 przełączników dostępu, konfiguracja LI SVI jest dużo łatwiejsza niż wykonywanie wszystkich przełączników dostępu.
źródło
Można użyć stosu przełączników, aby złagodzić problem wygaśnięcia wpisu adresu MAC w drugim przełączniku.
źródło
Ach, pamiętam ten. Kilka tygodni temu miałem z tym wiele radości. Jedną z pomarszczeń jest to, że zdarzenia STP wprowadzą sieci vlans w tryb szybkiego starzenia się, więc ustawienie timera MAC na dłużej niż timer ARP nie pomaga
Rozwiązałem problem, zmuszając ECMP do powrotu z serwerów, tworząc dwie pływające bramy HSRP, z jedną podstawową na każdym routerze. Następnie skonfigurowaliśmy obie bramy na każdym hoście. Wymuszając w ten sposób ruch hosta zarówno do R1, jak i R2, mamy pewność, że R2 nigdy nie zestarzeje adresów MAC.
Idealnie nie byłoby problemu, gdyby przełączniki L2 / 3 usuwały wpisy ARP związane z przestarzałymi adresami MAC. Następny pakiet do adresu IP spowodowałby wówczas nowe żądanie ARP, zapełniając zarówno pamięć podręczną ARP, jak i tabelę MAC. Myślę, że Cisco w końcu to zaimplementowało, ale nie jestem pewien.
źródło
Podsumowanie: MC-LAG lub HSRP GARP
Nigdy nie byłem fanem poprawiania timerów. Zegary są ustawione w określony sposób, zwykle z wielu powodów. Zmieniając je:
Na przemian:
Użyj MC-LAG (aka „MEC” w dokumentacji Cisco). Jest to najlepsza opcja, ale powinieneś zrozumieć scenariusze wdrażania, w których można zastosować MC-LAG (nie jest to rozwiązanie uniwersalne i powinno zostać wdrożone tylko po odpowiednich badaniach i testach). Warianty MC-LAG zależą od sprzętu. Przykłady to:
za. Układanie (Cat 3k)
b. VSS (Cat4k / 6k)
do. VPC (Nexus)
re. Pseudo mLACP (ASR1k)
mi. MC-LAG (ASR9k)
fa. Klastrowanie (ASA)
Włącz HSRP, aby okresowo wysyłać bezpłatne pakiety ARP . To prawda, że jest to podobne do zmieniania timerów, ale jest to o wiele bardziej wdzięczna zmiana niż manipulowanie tabelą CAM i zegarami ARP. (Należy jednak pamiętać, że zależy to od kombinacji sprzętu i oprogramowania, nie wszystkie implementacje HSRP oferują taką możliwość).
Domyślnie HSRP wysyła 3 GARP w 0, 2 i 4 sekundy po tym, jak router stanie się bramą przekazywania. Istnieje jednak parametr konfiguracyjny, który pozwala wybrać liczbę GARP (w tym „nieskończony”) i interwał.
Używam MC-LAG dość szeroko, szczególnie VSS, VPC i Clustering (nie jestem fanem układania).
Tam, gdzie nie mogę korzystać z MC-LAG ani GLBP, to mam zastosowanie do routerów granicznych L2 / L3 w kampusie (mam kampus z 350 budynkami, więc dość mocno używam Cat6k):
(Zamieszczam odniesienia do tych wszystkich, ale nie mam wystarczająco wysokiej „reputacji” na tej stronie, aby opublikować więcej niż dwa adresy URL).
źródło
Właśnie zdałem sobie sprawę, że mój oryginalny komentarz jest prawidłowy - ale żałośnie niepełny. Zaleceniem neutralnym dla dostawców jest budowanie w trójkątach, a nie prostokątach. Więc:
Nie tylko MC-LAG, ale MC-LAG na obu warstwach. Następnie masz do czynienia ze wspólną tabelą CAM na poziomie przełącznika i routera.
Jeśli nie możesz tego zrobić, MC-LAG albo router lub przełącznik, a MC-LAG do drugiej warstwy z dodatkowym łączem (tj. Pełna siatka między routerami i przełącznikami). STP zapewni topologię bez pętli.
Jeśli nie możesz tego zrobić, nadal routery i przełączniki są pełne. STP zapewni topologię bez pętli, a tabele CAM przełączników będą nadal znały wszystkie odpowiednie reguły przekazywania MAC. Serwer zawsze wysyła swój MAC, a jeśli skonfigurujesz GARP HSRP w odstępach 1-minutowych, przełączniki również nie zapomną HSMR vMAC.
Preferowane opcje są w tej kolejności. Ale przynajmniej zainstaluj tę dodatkową parę linków.
źródło