Hopp til hovedinnholdet

Segment Routing Primer — SR-MPLS and SRv6

.. tittel: Segment Routing Primer — SR-MPLS og SRv6 .. slug: segment-ruting-primer .. dato: 2026-04-07 12:00:00 UTC .. tags: segment-ruting, sr-mpls, srv6, mpls, trafikk-engineering, nettverk .. kategori: Artikler ..lenke: .. beskrivelse: Praktisk veiledning til Segment Routing-arkitektur, SR-MPLS-etikettstabler, SRv6 SIDs og Segment Routing Header, SR-TE trafikkteknikk, og sammenligning med RSVP-TE. .. type: tekst

Segment Routing Primer — SR-MPLS og SRv6

Kilderuting uten per-flyt-tilstand: hvordan SR erstatter RSVP-TE, hva Node-SID og Adj-SID gjør, hvordan SRv6 koder instruksjoner i IPv6-adresser, og hvor SR-TE passer i trafikkteknikk.

1. Problemet med RSVP-TE

RSVP-TE (Resource Reservation Protocol – Trafikkteknikk,RFC 3209) aktivert eksplisitt banekontroll i MPLS-nettverk, men introduserte betydelig operasjonell kompleksitet:

  • Per-flyt tilstand:Hver LSP krever tilstand på hver ruter langs banen (RSVP PATH og RESV-meldinger). I et nettverk med tusenvis av LSP-er opprettholder transittrutere enorme soft-state-tabeller som må oppdateres kontinuerlig.
  • Head-end-signalering:Ingress (head-end) ruteren signaliserer banen gjennom RSVP. Enhver topologiendring krever re-signalering, og skaper konvergensoverhead.
  • Skalerbarhet:Antall LSP-er vokser med O(N²) for full mesh, og hver LSP bruker LFIB-oppføringer på hver transittruter.
  • Rask omdirigering kompleksitet:RSVP-FRR (RFC 4090) beskytter LSP-er med forhåndsberegnet omveier eller bypass-tunneler for anlegg – en funksjon som fungerer, men legger til et nytt lag av tilstand.

Segmentruting (RFC 8402) eliminerer per-flyt tilstand ved transittnoder helt. Kilderuteren koder hele videresendingsbanen som en ordnet liste oversegmenteri selve pakkeoverskriften. Transitrutere behandler bare det aktive segmentet og trenger ikke LSP-status.

2. SR-arkitektur (RFC 8402)

A segmenter en instruksjon som forteller en ruter hvordan den skal videresende pakken - det kan bety "gå til denne noden", "avslutt på denne spesifikke grensen" eller "bruk dette VPN-oppslaget." Segmenter identifiseres av Segment Identifiers (SID-er). En ordnet liste over SID-er ersegmentliste(eller SID-liste). Det aktive segmentet behandles ved hvert hopp; når behandlingen er fullført, fjernes segmentet og det neste blir aktivt.

Det eksisterer to dataplaninstanser:

  • SR-MPLS: SID-er er MPLS-etiketter. Segmentlisten er en etikettstabel. Bakoverkompatibel med eksisterende MPLS-maskinvare.
  • SRv6: SID-er er 128-biters IPv6-adresser. Segmentlisten føres i Segment Routing Header (SRH, IPv6 extension header). IPv6-native; ingen MPLS nødvendig.

3. SR-MPLS: Node-SID, Adj-SID og SRGB

SR-MPLS (RFC 8660) definerer to grunnleggende SID-typer, annonsert av IS-IS (RFC 8667) eller OSPF (RFC 8665) som TLV-utvidelser:

SID-type Omfang Stabilitet Betydning
Node-SID Global (SRGB) Vedvarende "Lever til denne noden ved å bruke den korteste IGP-banen." Hver ruter har én Node-SID per loopback/ruter-ID. Alle rutere i SR-domenet må programmere denne etiketten.
Adjacency-SID(Adj-SID) Lokal (SRLB eller dynamisk) Kortvarig (per økt) "Videresend dette spesifikke grensesnittet til denne spesifikke naboen." Brukes til å tvinge en pakke inn på en bestemt lenke uavhengig av den korteste veien.
Anycast-SID Global Vedvarende Delt av et sett med noder (f.eks. en anycast-gruppe med rutereflektorer eller datasenter PoPs). Pakker leveres til nærmeste medlem.

DeSRGB(Segment Routing Global Block) er etikettområdet reservert for globalt signifikante SID-er. Vanlig standard er 16000–23999 (Cisco, Juniper), selv om den er konfigurerbar. Node-SID er kodet somindeksverdier(f.eks. indeks 100) og løst til en etikett ved å legge indeksen til SRGB-basen (f.eks. 16000 + 100 = etikett 16100). Alle rutere må bruke samme SRGB for at globale SID-er skal være konsistente – feilaktige SGRB-er mellom leverandører eller konfigurasjoner forårsaker feilmerking.

Adj-SID-er er lokale og ikke stabile på tvers av omstarter eller koblingsklaffer.Bruk aldri en Adj-SID i en statisk SR-policy, eller bruk den i operasjonelle skript. Bruk Node-SID-er for stabile baner og Adj-SID-er bare innenfor dynamisk beregnede SR-TE-baner der kontrolleren sporer gjeldende verdier.

Eksempel på SR-MPLS-etikettstabel— sende trafikk fra R1 til R5 via R3 (eksplisitt veipunkt), og unngå den direkte R1→R5-stien:

Ingress R1 pushes: [Node-SID(R3)] [Node-SID(R5)]
  R1→R2: outer label = SID(R3), inner = SID(R5)
  R2→R3: pops SID(R3) (PHP or explicit-null)
  R3 sees top label = SID(R5); forwards on shortest path to R5
  R5 pops SID(R5); delivers to local application

4. SRv6: SID-er som IPv6-adresser

SRv6 (RFC 8986) koder SID-er som 128-biters IPv6-adresser strukturert som:

| Locator (e.g., /48) | Function (operator-defined, typically 16 bits) | Argument (remaining bits) |
  • Locator: Ruterbart IPv6-prefiks tildelt noden. Transportrutere ruter mot dette prefikset normalt. Lokalisatoren er annonsert i IGP.
  • Funksjon: Identifiserer den spesifikke operasjonen som skal utføres ved SID-endepunktet. Eksempler: End (frem til neste SID), End.X (send ut spesifikk adjacency), End.DT4 (decap og IPv4-tabelloppslag – brukt for IPv4 VPN-er), End.DX2 (decap og L2 cross-connect).
  • Argument: Valgfri tilleggskontekst for funksjonen (f.eks. en flyt-ID for entropi).

Segmentlisten føres iSRH(Segmentrutingsoverskrift,RFC 8754) — en IPv6-utvidelse-header med Next Header = 43 (Routing Header), Ruting Type = 4. SRH-en inneholder:

  • Segment Left (SL): indekser inn i segmentlisten som peker til den aktive SID
  • Tag: flytklassifisering hint
  • Segmentliste[0..n]: de bestilte SID-ene (siste SID er destinasjonen)

Ved hver SR-bevisst node, hvis IPv6-destinasjonen samsvarer med en lokal SID, utfører noden SID-funksjonen, reduserer Segment Left og kopierer Segment List [Segment Left] til IPv6 DA før videresending.

5. Trafikkteknikk med SR-TE

SR-TE (RFC 9256— SR Policy Architecture) erstatter RSVP-TE LSPer medSR retningslinjer, hver definert av:

  • Headend: Inngangsnoden som instansierer policyen
  • Farge: En 32-bits identifikator som brukes til å knytte trafikk (via BGP Color utvidet fellesskap) med policyen
  • Endepunkt: Destinasjonsnoden
  • En eller flerekandidatveier, hver med en vektet segmentliste

Kandidatbaner beregnes av hovedenden (ved hjelp av lokal CSPF/PCE) eller distribueres av en sentralisert SR-PCE/kontroller over PCEP (RFC 5440) eller BGP SR Policy (seRFC 9256§8). Dette eliminerer RSVP-signaleringsplanet fullstendig, samtidig som eksplisitt banekontroll bevares.

On-Demand Next-Hop (ODN)er en SR-TE-funksjon der headend automatisk instansierer en SR-policy når en BGP-rute ankommer med et spesifikt fargefellesskap, uten forhåndsprovisionering – som muliggjør automatisert trafikkstyring for VPN-er og CDN-prefikser.

6. SR-MPLS vs SRv6 vs RSVP-TE

SR-MPLS SRv6 RSVP-TE
Dataplan MPLS etikettstabel IPv6 + SRH-utvidelsesoverskrift MPLS etikettstabel
Per-flyt tilstand ved transitt Ingen Ingen Ja (RSVP myk tilstand)
Signaleringsprotokoll IGP (IS-IS/OSPF) utvidelser IGP-utvidelser RSVP-TE (PATH/RESV)
HW-kompatibilitet Enhver MPLS HW Krever SRv6-kompatibel ASIC Enhver MPLS HW
Overhead per pakke 4 B per etikett 8 + 16n B (SRH med n SID-er) 0 (MPLS-etikett allerede i stabel)
VPN-støtte Via MPLS VPN-etiketter End.DT4/DT6/DX2 SID-funksjoner Via MPLS VPN-etiketter
Rask omdirigering TI-LFA (topologiuavhengig, ingen forhåndskonfigurasjon) TI-LFA RSVP-FRR (forhåndsbestemt bypass)
Utplasseringsmodenhet Utbredt i SP/DC Voksende; ASIC-støtte modnes fortsatt Moden, men avtagende

Referanser

  • RFC 8402— Segmentrutingsarkitektur
  • RFC 8660— Segmenter ruting med MPLS-dataplanet
  • RFC 8665— OSPF-utvidelser for segmentruting
  • RFC 8667— IS-IS-utvidelser for segmentruting
  • RFC 8669— Segment Routing Prefix SID Extensions for BGP
  • RFC 8754— IPv6 Segment Routing Header (SRH)
  • RFC 8986— Segmentruting over IPv6 (SRv6) nettverksprogrammering
  • RFC 9252— BGP-overleggstjenester basert på segmentruting over IPv6 (SRv6)
  • RFC 9256— Segmentrutingspolitikkarkitektur
  • IETF SPRING arbeidsgruppe— Kildepakkeruting i nettverk (aktive SR-utkast)