Index
Vad är ECMP (Equal Cost Multi Path)?
Konfigurationssyntax
Exempel
Mål
Topologi
Exempelkonfiguration
ECMP (Equal Cost Multi Path) är en layer 3-routningsstrategi för att vidarebefordra trafik till en destination med hjälp av flera tillgängliga sökvägar. ECMP ökar antalet sökvägar till en destination och ökar den tillgängliga bandbredden för att nå destinationen. ECMP-mekanismen möjliggör belastningsbalansering och ökad bandbredd genom att använda länkar och bandbredd som inte används.
ECMP-hashning
Olika hashhanteringsfunktioner krävs på olika nivåer för att förhindra trafik polarisering i nätverkstopologi i trädstorlek. I SONiC använder vi olika hashalgoritmer för ECMP och LAG som standard, så att konfigurera hash seed är allt som krävs.
Även om ECMP kan öka antalet tillgängliga länkar bör alla tillgängliga sökvägar vara nära inlästa så att ingen sökväg är över eller underutnyttad. Du kan ändra IP ECMP-inläsningsresursens hashparametrar för att påverka trafikbelastningsdelning över flera tillgängliga sökvägar. Konfigurera ECMP på alla enheter som finns mellan källan och destinationen för att få optimal ECMP-inläsningsdelning.
Det är bästa praxis att konfigurera olika belastningsbalanseringsparametrar på varje nivå baserat på det unika trafikmönstret i nätverket, vid behov. På router A kan till exempel hashfälten för belastningsbalansering inkludera source-ip, dest-ip, protocol, source-port och L4-dest-port. På router B kan hashfälten endast använda source-ip, dest-ip och protocol.
Konfigurera ECMP-hash seed.
Konfigurera ett unikt hashf seed för varje enhet för att undvika hash polarisering som kan leda till överbelastning i nätverket. Nätverks polarisering kan ske när flera dataflöden försöker nå en switch med samma switchportar.
Konfigurationssyntax |
Förklaring |
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# ip load-share hash { seed-value }
|
Konfigurera hash seed. Värdet för seed-värdet är från 0 till 16777215. |
Aktivera flera sökvägar i BGP-konfiguration
Konfigurationssyntax |
Förklaring |
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# router bgp {as-number}
DELLSONiC (conf-router-bgp)# address-family {ipv4 unicast | ipv6 unicast}
DELLSONiC (conf-router-bgp-af)# maximum-paths {number}
|
Konfigurera det maximala antalet eBGP-vägar som kan väljas för att skapa ECMP-vägar (Equal Cost Multi-Path) för lastdelning. |
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# router bgp {as-number}
DELLSONiC (conf-router-bgp)# address-family {ipv4 unicast | ipv6 unicast}
DELLSONiC (conf-router-bgp-af)# maximum-paths ibgp {number} |
Konfigurera det maximala antalet iBGP-vägar som kan väljas för att skapa ECMP-vägar (Equal Cost Multi-Path) för lastdelning. |
Konfigurera ECMP-lastdelningshash för IPv4 (tillval).
Konfigurationssyntax |
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# ip load-share hash ipv4 {ipv4-src-ip | ipv4-dst-ip | ipv4-ip-proto | ipv4-l4-src-port| ipv4-l4-dst-port | symmetric}
|
Konfigurera ECMP-lastresurshash för IPv6 (tillval).
Konfigurationssyntax |
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# ip load-share hash ipv6 {ipv6-src-ip | ipv6-dst-ip | ipv6-next-hdr | ipv6-l4-src-port| ipv6-l4-dst-port | symmetric}
|
Överväg att Dell SONiC-switchen har två vägar från BGP för att nå 4.4.4.4/32-rutter. Vi måste använda ECMP för att nå 4.4.4.4/32 och använda båda rutterna samtidigt.
Vi kan visa sökvägen som annonseras av BGP-grannarna till vår switch för att nå en värd eller ett undernät. Använd kommandot show bgp ipv4 unicast <host/subnet>. Nedan visas ett exempel på utdata
DELLSONiC# show bgp ipv4 unicast 4.4.4.4
BGP-routingtabellpost för 4.4.4.4/32
Sökvägar: (2 tillgängliga, bästa 2, tabell standard)
200
10.0.0.2 från 10.0.0.2 (20.0.0.1)
Ofullständigt ursprung, mätvärde 0, giltigt, externt, flera sökvägar
Senaste uppdateringen: 2023-12-25 14:34:55+0000
200
30.0.0.2 från 30.0.0.2 (30.0.0.2)
Ofullständigt ursprung, mått 0, giltig, extern, flera sökvägar, bästa (äldre sökväg)
Senaste uppdateringen: 2023-12-25 14:34:55+0000 |
|
Låt oss aktivera ECMP.
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# ip load-share hash seed 100
|
Låt oss konfigurera den maximala BGP-sökvägen till 2 eftersom vi har två sökvägar.
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# router bgp 100
DELLSONiC(config-router-bgp)# address-family ipv4 unicast
DELLSONiC(config-router-bgp-af)# maximum-paths 2 |
Om du vill kontrollera om båda rutterna är installerade i routningstabellen använder du kommandot nedan:
show ip route <hopst/subnet>
DELLSONiC# show ip route 4.4.4.4
Codes: K - kernel route, C - connected, S - static, B - BGP, O - OSPF
> - selected route, * - FIB route, q - queued route, r - rejected route
Destination Gateway Dist/Metric Last Update
--------------------------------------------------------------------------------------------------------------------------------
B>* 4.4.4.4/32 via 10.0.0.2 Eth1/1 20/0 03:02:41 ago
* via 30.0.0.2 Eth1/2
|