Dwaj inżynierowie mogą opuścić to samo okno serwisowe w przekonaniu, że nowa ścieżka działa, i obaj mylić się z różnych powodów. Jeden zbudował LSP i założył, że usługa za nim pójdzie. Drugi zostawił usługę w spokoju i założył, że nic się nie zmieniło. Pseudowire zawsze używa tylko tego transportu, na który rozwiązuje się adres jego peera w danej chwili, więc prawdziwym pytaniem jest, co ta rezolucja teraz produkuje, i oba projekty odpowiadają na to inaczej.

Jedna etykieta nazywa usługę, druga przenosi pakiet

Etykieta pseudowire, sygnalizowana przez ukierunkowany LDP, jak opisano w RFC 4447, mówi odbierającej krawędzi dostawcy, który obwód przyłączeniowy ma odebrać ramkę. Nie mówi nic o tym, jak ramka tam dotarła. Etykieta pod nią należy do transportu, a ten stos buduje to, co ogłosiło osiągalność dla loopbacku peera, czy to LDP, RSVP-TE, czy ścieżka routowana segmentowo. Ponieważ dwie warstwy sygnalizują różne protokoły, jedna może być zdrowa, gdy druga jest przestarzała. To rozdzielenie jest całym źródłem zamieszania.

Warto powiedzieć wprost: pseudowire nie wybiera LSP. Przekazuje ramkę transportowi, a transport decyduje na podstawie podanego mu adresu docelowego.

To także dlatego czysty ping przez nowy LSP dowodzi tak niewiele. LSP może być aktywny, mieć etykietę i nieść inne usługi, podczas gdy Twój pseudowire wciąż rozwiązuje się przez inny następny skok. Dopóki nie przeczytasz powiązania, te dwa fakty nie mają ze sobą związku.

Opcja A: przypnij pseudowire do wybranego transportu

Przypięcie oznacza uczynienie rezolucji transportowej usługi deterministyczną. W zależności od platformy przybiera ono formę polityki wyboru tunelu, jawnego punktu końcowego transportu na usłudze lub polityki tras, która przepisuje następny skok dla adresu peera. Wszystkie trzy robią to samo pod spodem: wymuszają rezolucję jednego celu na konkretny LSP. To właśnie czyni wynik audytowalnym później.

Kosztem jest zakres. Polityka dopasowana do adresu peera dotyka każdej usługi wskazującej na tego peera, nie tylko pseudowire, który miałeś na myśli.

Ścieżka zapasowa zasługuje na decyzję przed oknem zmian, a nie w jego trakcie. Jeśli przypięty LSP padnie, albo pozwalasz usłudze jechać inną zatwierdzoną ścieżką, albo pozwalasz jej się zatrzymać. Polityka, która po cichu wraca do ścieżki łamiącej ograniczenie opóźnienia lub rozłączności, zamieniła czystą awarię w coś znacznie trudniejszego do wyjaśnienia komukolwiek.

Opcja B: pozwól IGP wybrać i obserwuj, co się stanie

Zostawienie usługi w spokoju jest uzasadnionym projektem i często lepszym. Pseudowire podąża za tą samą rezolucją co każdy inny ruch do loopbacku peera, więc dziedziczy zbieżność IGP, tłumienie prefiksów i redundancję, którą rdzeń już oferuje. Mniej polityk oznacza mniej miejsc, w których może ukryć się przestarzałe dopasowanie. Ceną jest to, że nie kontrolujesz już, którą ścieżkę wybierze usługa, a jedynie to, że jakaś ścieżka istnieje.

Wielodrożność o równym koszcie zaostrza tę wymianę bardziej, niż wygląda na pierwszy rzut oka. Haszowanie jest na przepływ, więc dwie rozmowy w jednym pseudowire mogą wyjść na różnych zewnętrznych etykietach.

Przeczytaj zainstalowane przekazywanie, zanim zaufasz którejkolwiek

Zacznij od adresu peera, a nie od usługi. Na Junos show route 203.0.113.1 detail wypisuje wybrany następny skok i operację etykiety, a show route table mpls.0 mapuje etykietę przychodzącą na tę operację. Na IOS XR show mpls l2transport vc 100 detail podaje stan pseudowire wraz z nałożonym stosem.

Potwierdź LSP, którego transport faktycznie używa, a nie ten, który wymienia dokument projektu. traceroute mpls ipv4 203.0.113.1/32 na IOS XR przechodzi ścieżkę komutowaną etykietami i wymienia etykiety oraz interfejsy wyjściowe wzdłuż niej, co jest najbliższe samodzielnemu obserwowaniu ścieżki. Potem powtórz ćwiczenie z odległej krawędzi dostawcy, bo kierunek powrotny rozwiązuje się niezależnie i asymetria jest zwykła po częściowym wdrożeniu polityk. Ścieżka poprawna w jedną stronę i błędna w drugą jest gorsza niż jednolicie błędna, bo połowa Twoich testów przejdzie.

Trzymaj dowody razem z rekordem usługi: adres peera, następny skok, etykietę zewnętrzną i datę sprawdzenia. Polityki tras starzeją się źle i nikt nie pamięta, która obowiązywała dwa kwartały temu.

Wybieraj według trybu awarii, nie według preferencji

Przypięcie pasuje do usług z ograniczeniem, którego IGP nie potrafi wyrazić, i do zespołów, które potrafią utrzymać politykę przy każdej zmianie. Zostawienie tego IGP pasuje do usług, które muszą przetrwać każdą pojedynczą awarię bez człowieka w pętli.

Decydujące pytanie brzmi, ile kosztuje Cię błędna ścieżka. Jeśli usługa na błędnym LSP działa tylko trochę gorzej, pozwól IGP zdecydować i zainwestuj wysiłek w monitorowanie. Jeśli błędna ścieżka łamie kontrakt, ustalenie audytu lub wymóg rozłączności, przypnij ją i zapisz ścieżkę zapasową. Potem przetestuj ścieżkę zapasową, bo nieprzetestowana ścieżka zapasowa jest założeniem, a nie planem. Tak czy inaczej, po każdej zmianie w rdzeniu przeczytaj ponownie zainstalowane powiązanie i traktuj pseudowire, który wstał, jako dowód wyłącznie tego, że sygnalizacja działa.

Powiązane artykuły