Inhoud

Inleiding

Voorwaarden

Vereisten

Gebruikte componenten

Achtergrondinformatie

Gecumuleerde kenmerken voor interieurgateway-protocol

Gebruiksvoorbeelden

1. Multi-ASN-netwerk

Configuratie

Verificatie

2. Naadloze MPLS (Single ASN)

Opmerkingen

Apparaatlogboeken - Initiaal

AIGP-oplossing

Configuratie

Voorbeeldconfiguratie

Apparaatlogboeken - na AIGP-implementatie

Aandachtspunten

AIGP negeren

Conclusie

Gerelateerde informatie

Inleiding

Dit document beschrijft wat de Gecumuleerde Binnenlandse Gateway Protocol (AIGP) metriek is in BGP-protocol (BGP) en de bijbehorende gebruikscases.

Voorwaarden

Vereisten

Cisco raadt kennis van de volgende onderwerpen aan:

- BGP

- Naadloze Multiprotocol Label Switching (MPLS) netwerk

Gebruikte componenten

Dit document is niet beperkt tot specifieke software- en hardware-versies.

De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als ons netwerk live is, zorg er dan voor dat u de mogelijke impact van een opdracht begrijpt.

Achtergrondinformatie

Deze sectie geeft een overzicht van de AIGP metriek en enkele belangrijke overwegingen met betrekking tot het gebruik ervan.

Zoals u weet, staat IGP voor Interior Gateway Protocol en vertegenwoordigt het een groep routeringsprotocollen die binnen één administratief domein worden uitgevoerd. IGP neemt een pad-selectie beslissing op basis van metrische waarde.

BGP is ontwikkeld om routing te bieden via een groot aantal onafhankelijke autonome systemen (Autonomous Systems, AS) met beperkte of geen coördinatie tussen de respectieve overheidsdiensten. Het neemt niet zijn weg-selectie beslissingen door het gebruik van een metriek. Er zijn echter implementaties waarin één beheer meerdere aaneengesloten BGP-netwerken beheert. In zulke gevallen kan het binnen dat ene administratieve domein wenselijk zijn dat BGP paden selecteert op basis van een metriek, net zoals een IGP zou doen.

Gecumuleerde kenmerken voor interieurgateway-protocol

De AIGP-metriek (gedefinieerd via RFC7311) is een optioneel niet-transitief BGP-padkenmerk. Het waardeveld van het AIGP-kenmerk is gedefinieerd als een verzameling Type/Lengte/Waarde-elementen (TLV’s). De BGP AIGP TLV bevat de geaccumuleerde IGP-metriek.

Opmerking: BGP-routers die de optionele niet-transitieve kenmerken niet ondersteunen (bijvoorbeeld AIGP), moeten dergelijke kenmerken verwijderen en mogen deze niet doorgeven aan andere BGP-peers. AIGP-metriek is niet bedoeld als transitief tussen volledig verschillende autonome systemen (alleen over interne AS-grenzen heen).

Gebruiksvoorbeelden

1. Multi-ASN-netwerk

Vandaag de dag zijn er veel netwerken die zich in één administratief domein bevinden, die om verschillende redenen zijn onderverdeeld in meerdere ASN's. Hiervoor kunnen vele mogelijke redenen zijn:

- IGP-schaal

- Eén provider-netwerk werd gekocht door een andere netwerkprovider, maar toch hebben ze hun BGP ASN’s niet intern samengevoegd

- Verschillende bedrijfsdivisies hebben intern hun eigen netwerk

- BGP-confederaties met Sub-AS

- Naadloze MPLS etc.

In netwerken als deze, kan het nuttig zijn om BGP toe te staan om zijn besluiten te nemen die op de metriek IGP worden gebaseerd, zodat BGP de kortste weg van begin tot eind tussen twee knooppunten kiest, zelfs als de knooppunten in twee verschillende ASNs zijn.

Bijvoorbeeld: ABC-netwerk, dat is onderverdeeld in twee BGP ASN's, ASN 1 en ASN 2. Zij peering bij ASBR en de kosten van de verbinding IGP vertegenwoordigen bandbreedte. Het doel is om een optimaal pad tussen PE11 en PE21 te hebben.

Multi-ASN netwerk zonder AIGP

Opmerking:

1. Ervan uitgaande dat Add-path is ingeschakeld op RR1/2 om zowel de NH naar PEx te adverteren.

2. De apparaten die in het bovengenoemde scenario worden gebruikt, werken allemaal met Cisco IOS-XE.

PE11#sh bgp ipv4 unicast 10.0.21.21/32

BGP routing table entry for 10.0.21.21/32, version 20

Paths: (2 available, best #2, table default)

Not advertised to any peer

Refresh Epoch 3

2

192.168.0.12 (metric 211) from 192.168.11.11 (192.168.11.11)

Origin IGP, metric 0, localpref 100, valid, internal

Originator: 192.168.0.12, Cluster list: 192.168.11.11

rx pathid: 0x1, tx pathid: 0

Refresh Epoch 3

2

192.168.0.11 (metric 201) from 192.168.11.11 (192.168.11.11)

Origin IGP, metric 0, localpref 100, valid, internal, best

Originator: 192.168.0.11, Cluster list: 192.168.11.11

rx pathid: 0x0, tx pathid: 0x0

Als AiGP in de topologie is ingeschakeld (op PE11, PE32, ASBR1x, ASBR2x, RR1, RR2), kiest de PE11 nu het pad met de laagste end-to-end IGP-kosten.

Multi-ASN netwerk met AIGP

Configuratie

PEx, ASBRx, RRn:

Configuratie van AIGP-mogelijkheden:

router bgp ASN

neighbor <NBR_IP> aigp

!

Opmerking: BGP-peering daalt en stelt opnieuw in om over deze nieuwe mogelijkheid te onderhandelen. Het wordt daarom aangeraden deze in een onderhoudsvenster uit te voeren.

AIGP-metriek voor een prefix adverteren.

PE21:

route-map SET_AIGP permit 10

set aigp-metric igp-metric

!

router bgp 2

address-family {ipv4|ipv6} unicast

network 10.0.21.21 mask 255.255.255.255 route-map SET_AIGP

!

Verificatie

PE11#sh bgp ipv4 unicast 10.0.21.21/32

BGP routing table entry for 10.0.21.21/32, version 21

Paths: (2 available, best #2, table default)

Not advertised to any peer

Refresh Epoch 3

2

192.168.0.11 (metric 201) from 192.168.11.11 (192.168.11.11)

Origin IGP, aigp-metric 501, metric 0, localpref 100, valid, internal

Originator: 192.168.0.11, Cluster list: 192.168.11.11

rx pathid: 0x1, tx pathid: 0

Refresh Epoch 3

2

192.168.0.12 (metric 211) from 192.168.11.11 (192.168.11.11)

Origin IGP, aigp-metric 201, metric 0, localpref 100, valid, internal, best

Originator: 192.168.0.12, Cluster list: 192.168.11.11

rx pathid: 0x0, tx pathid: 0x0

2. Naadloze MPLS (Single ASN)

In een groot Core-netwerk voor serviceproviders wordt het transportnetwerk gewoonlijk onderverdeeld in verschillende IGP-domeinen, aan elkaar gekoppeld met behulp van BGP gelabelde Unicast om end-to-end gelabelde switched Path (LSP) te leveren. De routers van de grens voeren Volgende Hop Zelf (NHS) in BGP LU AF uit.

IGP/LDP bevat alleen prefix-/labelinformatie in het lokale gebied/domein. Vervolgens voert BGP het prefix/label naar alle afgelegen gebieden/domeinen door de routes te herverdelen in BGP op gebiedskaders. De routes/labels worden vervolgens geadverteerd met LSP’s. De volgende hop voor de route wordt bij elke ABR veranderd in lokale router die de noodzaak verwijdert om IGP-routes over gebied/domeingrenzen te lekken.

In dit topologiediagram is er één BGP-domein dat is verdeeld in 2 IGP-domeinen (CORE en Access-1). Het nummer naast elke link staat voor de IGP-kosten/metriek van die link.

Naadloze MPLS-netwerk zonder AIGP

Uitdaging: Neerwaarts verkeer van PS-Core naar eNB/gNB (aangesloten op CSR15) neemt een asymmetrisch en suboptimaal pad in vergelijking met opwaarts verkeer van eNB/gNB (aangesloten op CSR15) naar PS-Core, wat Latency problemen veroorzaakt in Mobiliteitsverkeer.

Opmerkingen

1. Primair waargenomen in geografische grensscenario's waarbij dezelfde aggregatierouterie fungeert als een gemeenschappelijke grensrouter voor meerdere toegangsdomeinen (bijvoorbeeld AGG102 in de eerder genoemde afbeelding).

2. Voor opwaarts verkeer kiest de Cell-Site Router (CSR) de dichtstbijzijnde border-router. CSR15 selecteert bijvoorbeeld AGG102 als NextHop.

3. Voor Neerwaarts verkeer kiest de Service Aggregation Router (SAR) ook de dichtstbijzijnde border-router. Zo selecteert SAR150 AGG101 (kosten 180 < 200).

Apparaatlogboeken - Initiaal

Upstream verkeer - CSR15 tot SAR150

RP/0/0/CPU0:CSR15#traceroute mpls ipv4 10.0.2.150/32 so 10.0.2.15

Tracing MPLS Label Switched Path to 10.0.2.150/32, timeout is 2 seconds

Codes: '!' - success, 'Q' - request not sent, '.' - timeout,

'L' - labeled output interface, 'B' - unlabeled output interface,

'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,

'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,

'P' - no rx intf label prot, 'p' - premature termination of LSP,

'R' - transit router, 'I' - unknown upstream index,

'X' - unknown return code, 'x' - return code 0

Type escape sequence to abort.

0 10.15.102.15 MRU 1500 [Labels: explicit-null/16150 Exp: 0/0]

L 1 10.15.102.102 MRU 1500 [Labels: 16150 Exp: 0] 0 ms                !!!! AGG102

. 2 *                                                                 !!!! P112 does not have a route to CSR15

! 3 10.112.150.150 20 ms                                              !!!! SAR150

Downstream traffic - SAR150 tot en met CSR15

RP/0/0/CPU0:SAR150#traceroute mpls ipv4 10.0.2.15/32 source 10.0.2.150

Tracing MPLS Label Switched Path to 10.0.2.15/32, timeout is 2 seconds

Codes: '!' - success, 'Q' - request not sent, '.' - timeout,

'L' - labeled output interface, 'B' - unlabeled output interface,

'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,

'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,

'P' - no rx intf label prot, 'p' - premature termination of LSP,

'R' - transit router, 'I' - unknown upstream index,

'X' - unknown return code, 'x' - return code 0

Type escape sequence to abort.

0 10.101.150.150 MRU 1500 [Labels: explicit-null/16015 Exp: 0/0]

L 1 10.101.150.101 MRU 1500 [Labels: 16015 Exp: 0] 10 ms                 !!! AGG101

L 2 10.11.101.11 MRU 1500 [Labels: 16015 Exp: 0] 10 ms                   !!! CSR11

L 3 10.11.12.12 MRU 1500 [Labels: 16015 Exp: 0] 10 ms                    !!! CSR12

L 4 10.12.13.13 MRU 1500 [Labels: 16015 Exp: 0] 20 ms                    !!! CSR13

L 5 10.13.14.14 MRU 1500 [Labels: explicit-null Exp: 0] 30 ms            !!! CSR14

! 6 10.14.15.15 30 ms                                                    !!! CSR15

AIGP-oplossing

Het doel is om een optimaal pad van begin tot eind te hebben tussen SAR-routers en CSR-routers. BGP gelabeld Unicast (RFC 3107) wordt gebruikt om de afstand van SAR naar CSR routers te berekenen. De bandbreedte beschikbaar op elk van de kernverbindingen wordt in kaart gebracht aan kosten IGP, vandaar moet BGP deze kosten correct tussen elk van PEs dragen. Deze functionaliteit wordt bereikt door AiGP te gebruiken.

Naadloze MPLS-netwerkmodule met

AIGPSeamloze MPLS-netwerkmodule met AIGP

Opmerking:

1. Ervan uitgaande dat Add-path is ingeschakeld op RR1/2, AGG, CSR en SAR-apparaten om zowel de NH te adverteren.

2. Alle apparaten die in het bovengenoemde scenario worden gebruikt, zijn gebaseerd op Cisco IOS-XR.

Configuratie

De mogelijkheid voor AiGP-padkenmerken moet worden overeengekomen tussen de BGP-peers. AiGP-metriek zijn alleen opgenomen in prefixadvertenties tussen AiGP-compatibele peers. AIGP-mogelijkheid is geconfigureerd voor een individuele BGP-peer en een specifieke BGP-adresfamilie.

router bgp ASN

neighbor <NBR_IP>

address-family ipv4 unicast

aigp [disable]

AIGP-metriek is een 32-bits (0 tot 4.294.967.295) waarde. Het kan worden ingesteld tijdens herdistributie, routeinitiatie via netwerkverklaring of tijdens ontvangst van een prefix met een routekaart/routebeleid.

route-policy AIGP_POLICY

set aigp-metric igp-cost

end-policy

!

router bgp ASN

address-family {ipv4|ipv6} unicast

network <NETWORK/MASK> route-policy AIGP_POLICY

or

redistribute {ospf|isis} {process-id} route-policy AIGP_POLICY metric VALUE

!

Opmerking:

1. Voor herverdeelde routes, is de waarde die aan het AiGP attribuut wordt toegewezen de waarde van iGP volgende hop aan de route of zoals die door een routebeleid wordt geplaatst.

2. Voor statische routes die in BGP worden herverdeeld, is de toegewezen waarde de waarde van de volgende hop aan de route of zoals die door een routebeleid wordt geplaatst.

3. De route wordt geïmporteerd in BGP via een netwerkverklaring. De toegewezen waarde is de waarde van de volgende hop aan de route of zoals die door een routebeleid wordt geplaatst.

Voorbeeldconfiguratie

CSR15:

! Additional config lines related to AIGP are marked in RED color

route-policy SID($SID)

set label-index $SID

set aigp-metric igp-cost

end-policy

!

router bgp 1

address-family ipv4 unicast

network 10.0.2.15/32 route-policy SID(15)

neighbor-group RR

address-family ipv4 labeled-unicast

aigp

!

!

!

Opmerking: er is een soortgelijke configuratie op alle respectievelijke BGP-peerapparaten uitgevoerd.

Apparaatlogboeken - na AIGP-implementatie

Downstream traffic - SAR150 tot en met CSR15

RP/0/0/CPU0:SAR150#sh bgp ipv4 labeled-unicast 10.0.2.15/32

BGP routing table entry for 10.0.2.15/32

Versions:

Process bRIB/RIB SendTblVer

Speaker 411 411

Local Label: 16015

Last Modified: Oct 24 11:05:26.796 for 00:00:04

Paths: (2 available, best #1)

Not advertised to any peer

Path #1: Received by speaker 0

Not advertised to any peer

Local

10.0.2.102 (metric 200) from 10.0.2.100 (10.0.2.15)

Received Label 16015

Origin IGP, metric 0, localpref 100, aigp metric 20, valid, internal, best, group-best, labeled-unicast

Received Path ID 1, Local Path ID 1, version 410

Originator: 10.0.2.15, Cluster list: 10.0.2.100, 10.0.2.102

Total AIGP metric 220

Label-Index: 15

Path #2: Received by speaker 0

Not advertised to any peer

Local

10.0.2.101 (metric 180) from 10.0.2.100 (10.0.2.15)

Received Label 16015

Origin IGP, metric 0, localpref 100, aigp metric 60, valid, internal, backup, add-path, labeled-unicast

Received Path ID 8, Local Path ID 7, version 411

Originator: 10.0.2.15, Cluster list: 10.0.2.100, 10.0.2.101

Total AIGP metric 240

Label-Index: 15

RP/0/0/CPU0:SAR150#traceroute mpls ipv4 10.0.2.15/32 so 10.0.2.150

Tracing MPLS Label Switched Path to 10.0.2.15/32, timeout is 2 seconds

Codes: '!' - success, 'Q' - request not sent, '.' - timeout,

'L' - labeled output interface, 'B' - unlabeled output interface,

'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,

'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,

'P' - no rx intf label prot, 'p' - premature termination of LSP,

'R' - transit router, 'I' - unknown upstream index,

'X' - unknown return code, 'x' - return code 0

Type escape sequence to abort.

0 10.112.150.150 MRU 1500 [Labels: 16102/16015 Exp: 0/0]

L 1 10.112.150.112 MRU 1500 [Labels: explicit-null/16015 Exp: 0/0] 10 ms          !!! P112

L 2 10.102.112.102 MRU 1500 [Labels: explicit-null Exp: 0] 10 ms                  !!! AGG102

! 3 10.15.102.15 20 ms                                                            !!! CSR15

Upstream verkeer - CSR15 tot SAR150

RP/0/0/CPU0:CSR15#traceroute mpls ipv4 10.0.2.150/32 source 10.0.2.15

Tracing MPLS Label Switched Path to 10.0.2.150/32, timeout is 2 seconds

Codes: '!' - success, 'Q' - request not sent, '.' - timeout,

'L' - labeled output interface, 'B' - unlabeled output interface,

'D' - DS Map mismatch, 'F' - no FEC mapping, 'f' - FEC mismatch,

'M' - malformed request, 'm' - unsupported tlvs, 'N' - no rx label,

'P' - no rx intf label prot, 'p' - premature termination of LSP,

'R' - transit router, 'I' - unknown upstream index,

'X' - unknown return code, 'x' - return code 0

Type escape sequence to abort.

0 10.15.102.15 MRU 1500 [Labels: explicit-null/16150 Exp: 0/0]

L 1 10.15.102.102 MRU 1500 [Labels: 16150 Exp: 0] 10 ms                 !!! AGG102

. 2 *                                                                   !!! P112 does not have a route to CSR15

! 3 10.112.150.150 30 ms                                                !!! SAR150

Aandachtspunten

- Met veranderingen in IGP kosten (bijvoorbeeld, verandering in fysieke topologie wegens verbinding besnoeiing en meer), zijn er ook overeenkomstige veranderingen in BGP. Dit kan BGP-routekaart veroorzaken. Deze convergentie hangt ook af van de BGP Next Hop Trigger vertragingswaarde die voor niet-kritieke gebeurtenissen is geconfigureerd.

- Door het introduceren van AiGP wordt de beste padselectie van BGP gewijzigd. BGP AIGP wordt ingesteld na de lokale voorkeur van BGP en vóór het kenmerk AS_PATH. Dus als er bestaand beleid is met betrekking tot AS_PATH preending, moet dat mogelijk worden herzien.

- Wanneer er twee paden zijn, één met de AIGP metriek en de andere zonder, geeft BGP altijd de voorkeur aan een pad met de AIGP metriek.

AIGP negeren

Een apparaat met het BGP-protocol (border gateway protocol) kan ook worden geconfigureerd om de AIGP-metriek te negeren tijdens het beste padselectieproces tussen twee paden wanneer één pad niet de AIGP-metriek heeft. bgp bestpath aigp ignore Gebruik van de opdracht in de routerconfiguratiemodus. Om het apparaat terug te keren naar de standaardbediening, gebruikt u het no-formulier van deze opdracht.

[no] bgp bestpath aigp ignore

Standaard geeft BGP altijd de voorkeur aan een pad met de AIGP-metriek. bgp bestpath aigp ignore Wanneer er twee paden zijn, één met de AIGP-metriek en de andere zonder, dan resulteert het uitvoeren van de opdracht in BGP het uitvoeren van de beste padberekening alsof geen van beide paden de AIGP-metriek heeft.

Conclusie

BGP AIGP attribuut is zeker ontwikkeld om bepaalde niche use cases op te lossen, maar het moet voorzichtig worden gebruikt.

Gerelateerde informatie

- Het AIGP-metriek kenmerk voor BGP configureren

- Cisco Technical Support en downloads