To ingeniørar kan forlate same vedlikehaldsvindauge overtydde om at den nye vegen er i drift, og begge kan ta feil av ulike grunnar. Den eine bygde LSP-en og ante at tenesta ville fylgje. Den andre lét tenesta vere og ante at ingenting var endra. Ein pseudowire brukar alltid berre den transporten som peer-adressa hans blir løyst til i det augneblinken, så det eigentlege spørsmålet er kva den oppløysinga gir no, og dei to designa svarar ulikt på det.

Éin etikett namngir ei teneste, den andre flyttar ein pakke

Pseudowire-etiketten, signalert av målretta LDP som skildra i RFC 4447, fortel den mottakande leverandørkanten kva tilkoplingskrins som skal ta imot ramma. Han seier ingenting om korleis ramma kom dit. Etiketten under høyrer til transporten, og den stakken blir bygd av det som annonserte nåbarheit for peer-loopbacken, anten det er LDP, RSVP-TE eller ein segmentruta veg. Fordi ulike protokollar signaliserer dei to laga, kan det eine vere sunt medan det andre er utdatert. Den skilnaden er heile kjelda til forvirringa.

Det er verdt å seie rett ut: pseudowiren vel ikkje LSP-en. Han overlèt ei ramme til transporten, og transporten avgjer ut frå destinasjonsadressa han har fått.

Det er òg derfor ein rein ping gjennom den nye LSP-en provar så lite. LSP-en kan vere oppe, etikettmerkt og bere andre tenester medan pseudowiren din framleis blir løyst gjennom eit anna neste hopp. Inntil du les bindinga, er dei to fakta utan samanheng.

Alternativ A: fest pseudowiren til ein vald transport

Festing tyder å gjere transportoppløysinga til tenesta deterministisk. Avhengig av plattforma tek det form av ein tunnelvalspolicy, eit eksplisitt transportendepunkt på tenesta, eller ein ruttpolicy som skriv om neste hopp for peer-adressa. Alle tre gjer det same under overflata: dei tvingar oppløysinga av éin destinasjon over på ein bestemd LSP. Det er det som gjer resultatet reviderbart etterpå.

Prisen er omfanget. Ein policy som matchar på ei peer-adresse påverkar kvar teneste som peikar mot den peeren, ikkje berre pseudowiren du hadde i tankane.

Reservevegen fortener ei avgjerd før endringsvindauget, ikkje under det. Viss den festa LSP-en fell, lèt du anten tenesta gå på ein annan godkjend veg eller du lèt henne stoppe. Ein policy som stille fell tilbake på ein veg som bryt eit latens- eller disjunktheitskrav, har gjort eit reint avbrot til noko som er mykje vanskelegare å forklare for nokon.

Alternativ B: la IGP-en velje og sjå kva som skjer

Å la tenesta vere er eit legitimt design, og ofte det betre. Pseudowiren fylgjer same oppløysing som all annan trafikk til peer-loopbacken, så han arvar IGP-konvergens, prefikssuppresjon og den redundansen kjernen allereie tilbyr. Færre policyar tyder færre stader der ein utdatert match kan gøyme seg. Byte er at du ikkje lenger styrer kva veg tenesta tek, berre at det finst ein veg.

Like-kostnads multipath skjerpar det bytet meir enn det ser ut ved første augekast. Hasjing er per flyt, så to samtalar i éin pseudowire kan gå ut på ulike ytre etikettar.

Les den installerte videresendinga før du trur på nokon av dei

Start med peer-adressa i staden for tenesta. På Junos skriv show route 203.0.113.1 detail ut det valde neste hoppet og etikettoperasjonen, og show route table mpls.0 mappar den innkomande etiketten til den operasjonen. På IOS XR gir show mpls l2transport vc 100 detail pseudowire-tilstanden saman med den pålagde stakken.

Stadfest LSP-en som transporten faktisk brukar, ikkje den designdokumentet ditt namngir. traceroute mpls ipv4 203.0.113.1/32 på IOS XR går gjennom den etikettsvitsja vegen og listar etikettane og dei utgåande grensesnitta langs han, som er det næraste du kjem å sjå vegen sjølv. Gjenta deretter øvinga frå den fjerne leverandørkanten, fordi returretninga blir løyst uavhengig og asymmetri er vanleg etter ein delvis policy-utrulling. Ein veg som er riktig éin veg og feil den andre er verre enn ein som er jamt feil, fordi halvparten av testane dine vil passere.

Oppbevar prova saman med tenesteposten: peer-adresse, neste hopp, ytre etikett og datoen du kontrollerte. Ruttpolicyar eldast dårleg, og ingen hugsar kva for ein som galdt for to kvartal sidan.

Vel etter feilmodus, ikkje etter preferanse

Festing passar for tenester med eit vilkår IGP-en ikkje kan uttrykke, og for team som kan vedlikehalde policyen gjennom kvar endring. Å overlate det til IGP-en passar for tenester som må overleve kvar einskild feil utan eit menneske i løkka.

Det avgjerande spørsmålet er kva ein feil veg kostar deg. Viss ei teneste på feil LSP berre yter litt dårlegare, la IGP-en bestemme og bruk innsatsen på overvaking. Viss ein feil veg bryt ein kontrakt, eit revisjonsfunn eller eit disjunktheitskrav, fest han og skriv ned reservevegen. Test deretter reservevegen, fordi ein utesta reserve er ei antaking og ikkje ein plan. Uansett, les den installerte bindinga på nytt etter kvar endring i kjernen, og handsam ein pseudowire som kom opp som prov for ingenting anna enn at signaleringa verkar.

Relaterte artiklar