Inhalt

Einführung

Voraussetzungen

Anforderungen

Verwendete Komponenten

Konventionen

Hintergrundinformationen

Was ist Lastenausgleich?

Vor Cisco Express Forwarding - Sammeln mehrerer Pfade oder Routen

Konfigurieren der Lastverteilung bei Cisco Express Forwarding

Interne Mechanismen zum Load Balancing von Cisco Express Forwarding

Überprüfen des Load Balancing von Cisco Express Forwarding

Freigabe nach einer Linkänderung laden

Freigabeinformationen für Löschung laden

Bekannte Probleme

Hardware-Unterstützung für Cisco Express Forwarding Load Balancing

Zugehörige Informationen

Ähnliche Diskussionen in der Cisco Support Community

Einführung

In diesem Dokument wird erläutert, wie Cisco IOS funktioniert. Bei Verwendung von Cisco Express Forwarding implementiert die Software den Layer-3-Lastenausgleich über mehrere parallele Verbindungen.

Voraussetzungen

Anforderungen

In diesem Dokument wird von einem Verständnis der beiden Datenstrukturen von Cisco Express Forwarding ausgegangen.

- Forwarding Information Base (FIB)

- Adjacency-Tabelle

Im Abschnitt "Zugehörige Informationen" dieses Dokuments finden Sie eine Übersicht über die Cisco Express Forwarding-Funktion.

Verwendete Komponenten

Dieses Dokument ist nicht auf bestimmte Software- und Hardwareversionen beschränkt.

Die in diesem Dokument enthaltenen Informationen wurden aus Geräten in einer bestimmten Laborumgebung erstellt. Alle in diesem Dokument verwendeten Geräte haben mit einer leeren (Standard-)Konfiguration begonnen. Wenn Sie in einem Live-Netzwerk arbeiten, stellen Sie sicher, dass Sie die potenziellen Auswirkungen eines Befehls verstehen, bevor Sie es verwenden.

Konventionen

Weitere Informationen zu Dokumentkonventionen finden Sie in den Cisco Technical Tips Conventions.

Hintergrundinformationen

IP-Switching ist der interne Mechanismus, mit dem Cisco IOS Pakete über einen Router weiterleitet. Zu den verfügbaren Mechanismen gehören Prozesswechsel, schnelles Switching und Cisco Express Forwarding. Je nachdem, welcher der drei Mechanismen zum Umschalten der Mehrzahl der Pakete verwendet wird, wirkt sich dies auf die Gesamtleistung des Systems und den Lastenausgleich aus.

Die IP-Switching-Mechanismen unterstützen zwei allgemeine Modi: pro Paket und pro Ziel. In der folgenden Tabelle sind die Vor- und Nachteile beider Modi aufgeführt.

Pro Ziel

Pro Paket

IP-Switching-Mechanismus

Fast Switching und Cisco Express Forwarding pro Ziel.

Prozess-Switching und Cisco Express Forwarding pro Paket.

Vorteile

Bei schnellem Switching wird sichergestellt, dass Pakete für ein bestimmtes Ziel den gleichen Pfad verwenden, selbst wenn mehrere Pfade zur Verfügung stehen. Mit Cisco Express Forwarding Switching wird sichergestellt, dass Pakete für ein bestimmtes Quell-Ziel-Hostpaar denselben Pfad verwenden, selbst wenn mehrere Pfade zur Verfügung stehen. Datenverkehr, der für verschiedene Paare bestimmt ist, führt in der Regel zu unterschiedlichen Pfaden.

Die Pfadauslastung mit Lastenausgleich pro Paket ist gut, da der Router mithilfe des Lastenausgleichs pro Paket aufeinander folgende Datenpakete über Pfade senden kann, ohne dass einzelne Hosts oder Benutzersitzungen berücksichtigt werden müssen. Dabei wird mithilfe der Round-Robin-Methode bestimmt, welcher Pfad jedes Paket zum Ziel führt.

Nachteile

Bei schnellem Switching kann das Ziel-Switching zu einer ungleichen Lastverteilung führen, da Pakete an ein Ziel immer denselben Pfad verwenden. Cisco Express Forwarding Switching kann zu einer ungleichen Verteilung mit einer kleinen Anzahl von Quell-Ziel-Paaren führen. Der Lastenausgleich pro Ziel hängt von der statistischen Verteilung des Datenverkehrs ab. Die Lastverteilung wird effektiver, wenn die Anzahl der Quell-Ziel-Paare zunimmt.

Pakete für ein bestimmtes Quell-Ziel-Host-Paar können unterschiedliche Pfade verwenden, was eine Neuordnung von Paketen zur Folge haben könnte. Dies wird für VoIP- (Voice over IP) und andere Datenflüsse, die eine sequenzielle Bereitstellung erfordern, nicht empfohlen.

Was ist Lastenausgleich?

Load Balancing beschreibt die Fähigkeit eines Routers, Pakete über mehr als einen Pfad an eine Ziel-IP-Adresse (auch als IP-Präfix bezeichnet) zu übertragen.

Bei der Diskussion über Lastenausgleich müssen zunächst die folgenden Begriffe definiert werden:

Begriff

Definition

Präfix

Beschreibt ein Ziel-IP-Netzwerk, z. B. 192.16.10.0/24. Cisco IOS fügt der Routing-Tabelle ein Ziel-IP-Präfix hinzu, indem Informationen verwendet werden, die durch den Austausch von Nachrichten mithilfe eines dynamischen Routing-Protokolls oder durch die manuelle Konfiguration statischer Routen gewonnen wurden.

Pfad

Beschreibt eine gültige Route zum Erreichen eines Zielpräfixes. Cisco IOS weist jedem Pfad Kosten zu. Ein Satz aktiver Pfade zu einem Zielpräfix kann gleich oder ungleiche Kosten haben.

Sitzung

Beschreibt einen unidirektionalen Kommunikationsfluss zwischen zwei IP-Knoten. Alle Pakete in einer Sitzung verwenden dieselbe Quell- und Ziel-IP-Adresse.

Weitere Informationen finden Sie unter Wie funktioniert der Lastenausgleich?

Vor Cisco Express Forwarding - Sammeln mehrerer Pfade oder Routen

Cisco Express Forwarding verwendet die Pfadinformationen in der IP-Routing-Tabelle, um den Datenverkehr über mehrere Verbindungen hinweg auszugleichen. Aus diesem Grund beginnt die Bestätigung des richtigen Lastenausgleichs für die Cisco Express-Weiterleitung mit der Bestätigung des Inhalts der IP-Routing-Tabelle.

In der folgenden Topologie verbinden zwei Router, Router A und Router B, Back-to-Back über drei serielle Schnittstellen mit High-Level Data Link Control (HDLC)-Kapselung.

Router A

Router B

interface Ethernet 0

ip address  192.168.20.1 255.255.255.0

!

interface Serial1

ip address 10.10.10.1 255.255.255.0

!

interface Serial2

ip address 20.20.20.1 255.255.255.0

!

interface Serial3

ip address 30.30.30.1 255.255.255.0

ip ospf cost 100

!

router ospf 1

network 10.10.10.0 0.0.0.255 area 0

network 20.20.20.0 0.0.0.255 area 0

network 30.30.30.0 0.0.0.255 area 0

network 192.168.20.0 0.0.0.255 area 0

interface Serial1

ip address 10.10.10.2 255.255.255.0

clockrate 2000000

!

interface Serial2

ip address 20.20.20.2 255.255.255.0

clockrate 148000

!

interface Serial3

ip address 30.30.30.2 255.255.255.0

ip ospf cost 100

clockrate 148000

router ospf 1

network 10.10.10.0 0.0.0.255 area 0

network 20.20.20.0 0.0.0.255 area 0

network 30.30.30.0 0.0.0.255 area 0

maximum-paths 1

Sehen wir uns an, wie Router B einen oder mehrere Pfade zum Erreichen des IP-Netzwerks 192.168.20.0 der Ethernet-Schnittstelle von Router A auswählt.

- Standardmäßig unterstützt Open Shortest Path First (OSPF) vier Pfade zu einem Ziel mit gleichen Kosten. In diesem Szenario wird Router B mit maximal einem Pfad konfiguriert. Daher wählt Router B nur einen Pfad unter den möglichen gleichen Pfaden aus, basierend auf dem, den er zuerst erhalten hat. Router B beginnt mit der Auswahl von Serial 2 als einziger Pfad zum Netzwerk 192.168.20.0. Verwenden Sie die Befehle show ip cef und show ip route, um den aktuellen Pfadsatz anzuzeigen.

RouterB#show ip cef  192.168.20.0

192.168.20.0/24, version 59, cached adjacency to Serial2

0 packets, 0 bytes

via 20.20.20.1, Serial2, 0 dependencies

next hop 20.20.20.1, Serial2

valid cached adjacency

RouterB#show ip route  192.168.20.0

Routing entry for  192.168.20.0/24

Known via "ospf 1", distance 110, metric 74, type intra area

Redistributing via ospf 1

Last update from 20.20.20.1 on Serial2, 00:03:58 ago

Routing Descriptor Blocks:

* 20.20.20.1, from 204.204.204.1, 00:03:58 ago, via Serial2

Route metric is 74, traffic share count is 1

- Verwenden Sie den Befehl maximum-path unter OSPF, um mehr als einen Pfad zur Routing-Tabelle zuzulassen. OSPF ermöglicht nur identischen Kostenausgleich. Um eine ungleiche Lastverteilung zu konfigurieren, konfigurieren Sie Enhanced Interior Gateway Routing Protocol/Interior Gateway Routing Protocol (EIGRP/IGRP) als Interior Gateway Protocol (IGP). Siehe Wie funktioniert der universelle Lastenausgleich (Varianz) in IGRP und EIGRP? für weitere Informationen.

RouterB(config)#router ospf 1

RouterB(config-router)#maximum-paths ?

<1-6>  Number of paths

RouterB(config-router)#maximum-paths 3

- Mit dem Befehl show ip route können Sie überprüfen, ob die Routing-Tabelle zwei Pfade zu 192.168.20.0 enthält.

RouterB#show ip route  192.168.20.0

Routing entry for  192.168.20.0/24

Known via "ospf 1", distance 110, metric 74, type intra area

Redistributing via ospf 1

Last update from 10.10.10.1 on Serial1, 00:00:11 ago

Routing Descriptor Blocks:

* 20.20.20.1, from 204.204.204.1, 00:00:11 ago, via Serial2

Route metric is 74, traffic share count is 1

10.10.10.1, from 204.204.204.1, 00:00:11 ago, via Serial1

Route metric is 74, traffic share count is 1

!--- The route metric is 74 for both paths.

- Obwohl wir OSPF so konfiguriert haben, dass drei Pfade mit gleichen Kosten unterstützt werden, werden in der Ausgabe von show ip route nur zwei aktive Pfade angezeigt. Wir können den Befehl show ip ospf interface verwenden, um den Grund zu bestimmen. Serial 3 hat höhere Kosten als Serial 1 und Serial 2 und ist daher ungleich.

RouterB#show ip ospf interface s1

Serial1 is up, line protocol is up

Internet Address 10.10.10.4/24, Area 0

Process ID 1, Router ID 100.100.100.1, Network Type POINT_TO_POINT, Cost: 64

RouterB#show ip ospf interface s2

Serial2 is up, line protocol is up

Internet Address 20.20.20.2/24, Area 0

Process ID 1, Router ID 100.100.100.1, Network Type POINT_TO_POINT, Cost: 64

RouterB#show ip ospf interface s3

Serial3 is up, line protocol is up

Internet Address 30.30.30.2/24, Area 0

Process ID 1, Router ID 100.100.100.1, Network Type POINT_TO_POINT, Cost: 100

- Mit dem Befehl show run können Sie überprüfen, ob Serial 3 mit dem Befehl ip ospf cost 100 konfiguriert ist. Verwenden Sie den Befehl no ip ospf cost 100 sub-interface, um die Konfiguration zu entfernen und die Kosten für alle drei seriellen Verbindungen gleich zu machen.

RouterB#show run interface s3

Building configuration...

Current configuration:

!

interface Serial3

ip address 30.30.30.2 255.255.255.0

no ip directed-broadcast

ip ospf cost 100

ip ospf interface-retry 0

- Der Befehl show ip route zeigt jetzt drei gleiche Kostenpfade für das Netzwerk 192.168.20.0 an.

RouterB#show ip route  192.168.20.0

Routing entry for  192.168.20.0/24

Known via "ospf 1", distance 110, metric 74, type intra area

Redistributing via ospf 1

Last update from 10.10.10.1 on Serial1, 00:00:01 ago

Routing Descriptor Blocks:

* 20.20.20.1, from 204.204.204.1, 00:00:01 ago, via Serial2

Route metric is 74, traffic share count is 1

30.30.30.1, from 204.204.204.1, 00:00:01 ago, via Serial3

Route metric is 74, traffic share count is 1

10.10.10.1, from 204.204.204.1, 00:00:01 ago, via Serial1

Route metric is 74, traffic share count is

Sehen wir uns nun an, wie der Lastenausgleich von Cisco Express Forwarding die Informationen in der Routing-Tabelle zum Weiterleiten von Paketen verwendet.

Konfigurieren der Lastverteilung bei Cisco Express Forwarding

Cisco Express Forwarding ermöglicht den Lastenausgleich mithilfe der Lastverteilungstabelle. Wie bei allen anderen Load Balancing-Lösungen auf Cisco Routern wird auch bei ausgehenden Schnittstellen die Lastenausgleichsentscheidung getroffen. Im Gegensatz zu anderen Switching-Methoden verfolgt Cisco Express Forwarding Pfade auf der Grundlage der Quell- und Zieladresse des Pfades. Um dies zu vereinfachen, können Sie sagen, dass der Pfad eine IP-Sitzung ist und jede Sitzung logisch als eindeutiges Quell-Ziel-Adresspaar identifiziert wird.

Um zu verstehen, wie der Lastausgleich abläuft, müssen Sie zuerst sehen, wie sich die Tabellen vergleichen. Die Cisco Express Forwarding-Tabelle zeigt auf 16 Hash-Buckets (Load Share-Tabelle), die für parallele Pfade auf die Adjacency-Tabelle zeigen. Weitere Informationen finden Sie im Abschnitt Cisco Express Forwarding Load Balancing Internal Mechanismen (Interne Lastenausgleichsmechanismen für Cisco Express). Jedes zu schaltende Paket wird in das Quell- und Zieladressenpaar aufgeteilt und anhand der Lastfreigabetabelle überprüft.

Hinweis: Es gibt zwei Haupttypen für Cisco Express Forwarding-Switching, für jedes Ziel und für jedes Paket. Wenn beide Typen auf einem Router verwendet werden, verfügt jeder Typ über eine eigene Lastfreigabetabelle.

Durch den zielbasierten Lastenausgleich kann der Router mehrere Pfade nutzen, um eine Lastverteilung zu erreichen. Der zielbasierte Lastenausgleich ist standardmäßig aktiviert, wenn Sie Cisco Express Forwarding aktivieren. Für die meisten Situationen ist dies die bevorzugte Lastenausgleichsmethode. Da der Lastenausgleich nach Ziel von der statistischen Verteilung des Datenverkehrs abhängt, wird die Lastverteilung effektiver, wenn die Anzahl der Quell-Ziel-Paare zunimmt.

Der Lastenausgleich pro Paket ermöglicht es dem Router, aufeinander folgende Datenpakete über Pfade zu senden, ohne dass dabei einzelne Hosts oder Benutzersitzungen berücksichtigt werden. Sie verwendet die Round-Robin-Methode, um den Pfad zu bestimmen, den jedes Paket zum Ziel nimmt. Der Lastenausgleich pro Paket gewährleistet den Lastenausgleich über mehrere Verbindungen. Die Pfadauslastung mit paketbasiertem Lastenausgleich ist gut, aber Pakete für ein bestimmtes Quell-Ziel-Host-Paar können verschiedene Pfade annehmen, die eine Neuordnung der Pakete verursachen können. Aus diesem Grund ist der Lastenausgleich pro Paket für bestimmte Arten von Datenverkehr, z. B. VoIP, ungeeignet, da diese davon abhängen, ob Pakete nacheinander am Ziel ankommen. Verwenden Sie einen Paketbasierten Lastenausgleich, um sicherzustellen, dass ein Pfad für ein einzelnes Quell-Ziel-Paar nicht überlastet wird.

Mit dem Befehl ip load-sharing können Sie zwischen den Methoden pro Paket und pro Ziel wechseln.

7200-1.3(config)#interface fast 0/0

7200-1.3(config-if)#ip load-sharing ?

per-destination  Deterministic distribution

per-packet       Random distribution

7200-1.3(config-if)#ip load-sharing per-packet

Bestätigen Sie Ihre Änderungen mit dem Befehl show cef interface.

7200-1.3#show cef interface fast 0/0

FastEthernet0/0 is up (if_number 3)

Corresponding hwidb fast_if_number 3

Corresponding hwidb firstsw->if_number 3

Internet address is 172.16.81.13/24

ICMP redirects are always sent

Per packet load-sharing is enabled

IP unicast RPF check is disabled

Inbound access list is not set

Outbound access list is not set

IP policy routing is disabled

Hardware idb is FastEthernet0/0

Fast switching type 1, interface type 18

IP CEF switching enabled

IP Feature Fast switching turbo vector

IP Feature CEF switching turbo vector

Input fast flags 0x0, Output fast flags 0x0

ifindex 1(1)

Slot 0 Slot unit 0 VC -1

Transmit limit accumulator 0x0 (0x0)

IP MTU 1500

Interne Mechanismen zum Load Balancing von Cisco Express Forwarding

Lassen Sie uns zunächst den internen Mechanismus für den Lastenausgleich von Cisco Express Forwarding durchbrechen.

- Jede Sitzung (siehe Tabelle oben) ist einem aktiven Pfad zugewiesen.

- Die Zuordnung von Sitzungen zu Pfaden erfolgt mithilfe einer Hash-Funktion, die die Quell- und Ziel-IP-Adressen übernimmt, sowie, in den letzten Versionen von Cisco IOS, mit einer eindeutigen Hash-ID, die die Zuweisung über den End-to-End-Pfad verteilt.

- Aktive Pfade werden intern mehreren von 16 Hash-Buckets zugewiesen. Die Zuordnung von Pfad zu Bucket variiert je nach Art des Lastenausgleichs und der Anzahl der aktiven Pfade.

- Das Ergebnis der Hash-Funktion wird verwendet, um einen der aktivierten Buckets und damit den Pfad für die Sitzung auszuwählen.

- Für alle vom Router weitergeleiteten Sitzungen führt jeder aktive Pfad die gleiche Anzahl von Sitzungen durch.

Sehen wir uns ein Beispiel für diese internen Cisco Express Forwarding an.

1. Verwenden Sie den Befehl maximum-path, um die Anzahl der aktiven Pfade für das Zielpräfix auf zwei zu reduzieren.

RouterB(config)#router ospf 1

RouterB(config-router)#maximum-paths 2

2. Verwenden Sie den Befehl show ip cef {prefix} internal , um die Zuweisung von Pfad zu Bucket anzuzeigen.

RouterB#show ip cef  192.168.20.0 internal

192.168.20.0/24, version 66, per-destination sharing

0 packets, 0 bytes

via 20.20.20.1, Serial2, 0 dependencies

traffic share 1

next hop 20.20.20.1, Serial2

valid adjacency

via 30.30.30.1, Serial3, 0 dependencies

traffic share 1

next hop 30.30.30.1, Serial3

valid adjacency

0 packets, 0 bytes switched through the prefix

Load distribution: 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 (refcount 1)

!--- The load distribution line summarizes how each path is !--- assigned to the hash buckets.

Hash  OK  Interface                 Address         Packets

1     Y   Serial2                   point2point           0

2     Y   Serial3                   point2point           0

3     Y   Serial2                   point2point           0

4     Y   Serial3                   point2point           0

5     Y   Serial2                   point2point           0

6     Y   Serial3                   point2point           0

7     Y   Serial2                   point2point           0

8     Y   Serial3                   point2point           0

9     Y   Serial2                   point2point           0

10    Y   Serial3                   point2point           0

11    Y   Serial2                   point2point           0

12    Y   Serial3                   point2point           0

13    Y   Serial2                   point2point           0

14    Y   Serial3                   point2point           0

15    Y   Serial2                   point2point           0

16    Y   Serial3                   point2point

Die 16 Hash-Buckets werden je nach Art des Lastenausgleichs und Anzahl der aktiven Pfade eingerichtet. Der einfache Fall ist für eine gerade Anzahl von Pfaden. Die 16 Eimer sind gleichmäßig mit den aktiven Pfaden gefüllt. Wenn 16 nicht durch die Anzahl der aktiven Pfade dividierbar ist, werden die letzten Puffer, die den Rest darstellen, deaktiviert. Die folgende Tabelle zeigt, wie die Hash-Buckets nach zwei und drei aktiven Pfaden suchen.

Bucket/Pfade

0

1

2

1

4

5

6

7

8

9

10

11

12

13

14

15

2

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

1

0

1

2

0

1

2

0

1

2

0

1

2

0

1

2

x

Im folgenden Beispiel gibt es drei Pfade zum Ziel. Beachten Sie, dass Cisco Express Forwarding die Hash-Bucket 16 entfernt hat und dass die drei seriellen Verbindungen den Hash-Buckets 1 bis 15 gleichmäßig zugewiesen sind.

RouterB#show ip cef  192.168.20.0 interface

192.168.20.0/24, version 64, per-destination sharing

0 packets, 0 bytes

via 20.20.20.1, Serial2, 0 dependencies

traffic share 1

next hop 20.20.20.1, Serial2

valid adjacency

via 30.30.30.1, Serial3, 0 dependencies

traffic share 1

next hop 30.30.30.1, Serial3

valid adjacency

via 10.10.10.1, Serial1, 0 dependencies

traffic share 1

next hop 10.10.10.1, Serial1

valid adjacency

0 packets, 0 bytes switched through the prefix

Load distribution: 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 (refcount 1)

!--- The active paths are assigned to hash buckets in a !--- round-robin pattern.

Hash  OK  Interface                 Address         Packets

1     Y   Serial2                   point2point           0

2     Y   Serial3                   point2point           0

3     Y   Serial1                   point2point           0

4     Y   Serial2                   point2point           0

5     Y   Serial3                   point2point           0

6     Y   Serial1                   point2point           0

7     Y   Serial2                   point2point           0

8     Y   Serial3                   point2point           0

9     Y   Serial1                   point2point           0

10    Y   Serial2                   point2point           0

11    Y   Serial3                   point2point           0

12    Y   Serial1                   point2point           0

13    Y   Serial2                   point2point           0

14    Y   Serial3                   point2point           0

15    Y   Serial1                   point2point           0

!--- Hash bucket 16 has been removed.

Hinweis: Obwohl sie einen einzelnen Pfad für ein Ziel auswählen, unterscheiden sich die Cisco Express Forwarding-Mechanismen pro Ziel und die schnellen Switching-Mechanismen in der Auswahl dieses Pfades. Cisco Express Forwarding berücksichtigt sowohl die Quell- als auch die Ziel-IP-Adressen, während Fast Switching nur die Ziel-IP-Adresse berücksichtigt.

Überprüfen des Load Balancing von Cisco Express Forwarding

Führen Sie die folgenden Schritte aus, um den Lastenausgleich für Cisco Express Forwarding auf Ihrem Router zu überprüfen.

1. Bestätigen Sie, dass Cisco Express Forwarding auf dem Router global aktiviert ist.

S3-4K-2#show ip cef

%CEF not running

Prefix                      Next Hop                     Interface

!--- This output shows Cisco Express Forwarding is not enabled. !--- Use ip cef command in global configuration to enable it.

2. Für die jeweiligen ausgehenden Schnittstellen ist das Switching pro Paket oder pro Ziel aktiviert. Der Standardwert ist "pro Ziel".

RouterA#show cef interface s1

Serial1 is up (if_number 3)

Internet address is 10.10.10.1/24

ICMP redirects are always sent

Per packet loadbalancing is disabled

IP unicast RPF check is disabled

Inbound access list is not set

Outbound access list is not set

Interface is marked as point to point interface

Hardware idb is Serial1

Fast switching type 4, interface type 40

IP CEF switching enabled

!--- Cisco Express Forwarding is enabled on the interface.

IP CEF Fast switching turbo vector

Input fast flags 0x0, Output fast flags 0x0

ifindex 5(5)

Slot 0 Slot unit 1 VC -1

Transmit limit accumulator 0x0 (0x0)

IP MTU 1500

3. Bestätigen Sie, dass die Routing-Tabelle und die Cisco Express Forwarding-Tabelle alle parallelen Pfade mit dem Befehl show ip route enthalten.

RouterB#show ip route 192.168.20.0

Routing entry for 192.168.20.0/32, 1 known subnets

O       192.168.20.1 [110/65] via 20.20.20.1, 00:06:54, Serial1

[110/65] via 10.10.10.1, 00:06:54, Serial2

[110/65] via 30.30.30.1, 00:06:54, Serial3

4. Aktivieren Sie die FIB für die Cisco Express-Weiterleitung mit dem Befehl show ip cef.

RouterB#show ip cef 192.168.20.0

192.168.20.0/24, version 18, per-destination sharing

0 packets, 0 bytes

via 30.30.30.1, Serial3,   0 dependencies

traffic share 1

next hop 30.30.30.1, Serial3

valid adjacency

via 20.20.20.1, Serial2, 0 dependencies

traffic share 1

next hop 20.20.20.1, Serial2

valid adjacency

via 10.10.10.1, Serial1, 0 dependencies

traffic share 1

next hop 10.10.10.1, Serial1

valid adjacency

0 packets, 0 bytes switched through the prefix

tmstats: external 0 packets, 0 bytes

internal 0 packets, 0 bytes

RouterB#show ip cef 192.168.20.0 internal

192.168.20.0/24, version 18, per-destination sharing

0 packets, 0 bytes

via 30.30.30.1, Serial3, 0 dependencies

traffic share 1

next hop 30.30.30.1, Serial3

valid adjacency

via 20.20.20.1, Serial2, 0 dependencies

traffic share 1

next hop 20.20.20.1, Serial2

valid adjacency

via 10.10.10.1, Serial1, 0 dependencies

traffic share 1

next hop 10.10.10.1, Serial1

valid adjacency

0 packets, 0 bytes switched through the prefix

tmstats: external 0 packets, 0 bytes

internal 0 packets, 0 bytes

Load distribution: 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 (refcount 1)

Hash  OK  Interface                 Address         Packets

1     Y   Serial3                   point2point           0

2     Y   Serial2                   point2point           0

3     Y   Serial1                   point2point           0

4     Y   Serial3                   point2point           0

5     Y   Serial2                   point2point           0

6     Y   Serial1                   point2point           0

7     Y   Serial3                   point2point           0

8     Y   Serial2                   point2point           0

9     Y   Serial1                   point2point           0

10    Y   Serial3                   point2point           0

11    Y   Serial2                   point2point           0

12    Y   Serial1                   point2point           0

13    Y   Serial3                   point2point           0

14    Y   Serial2                   point2point           0

15    Y   Serial1                   point2point           0

Hinweis: Die oben gezeigte Lastverteilungstabelle zeigt die Lastverteilung 0 1 2 0 1 2 . . . und die Datenverkehrsfreigabe für jede Route 1 beträgt. Dies bedeutet, dass die Kosten pro Ziel für die Lastverteilung auf drei gleiche Kostenrouten aufgeteilt werden.

5. Überprüfen Sie die Adjacencies von Cisco Express Forwarding.

RouterB#show adjacency detail

Protocol Interface                 Address

IP       Serial1                   point2point(11)

0 packets, 0 bytes

0F000800

CEF   expires: 00:02:31

refresh: 00:00:31

IP       Serial2                   point2point(11)

0 packets, 0 bytes

0F000800

CEF   expires: 00:02:31

refresh: 00:00:31

IP       Serial3                   point2point(11)

0 packets, 0 bytes

0F000800

CEF   expires: 00:02:31

refresh: 00:00:31

6. Bestätigen Sie, dass der erwartete Lastverteilungsmechanismus für Cisco Express Forwarding auf allen ausgehenden Schnittstellen konfiguriert ist.

RouterB#show ip cef  192.168.20.0

192.168.20.0/24, version 89, per-destination sharing

0 packets, 0 bytes

via 10.10.10.1, Serial1, 0 dependencies

traffic share 1

next hop 10.10.10.1, Serial1

valid adjacency

[output omitted]

7. Mithilfe von Hash Bucket Accounting können Statistiken erfasst werden, um die Cisco Express Forwarding-Muster in Ihrem Netzwerk besser zu verstehen. Sie können z. B. Informationen wie die Anzahl der an ein Ziel gesendeten Pakete und Bytes oder die Anzahl der über ein Ziel gesendeten Pakete sammeln. Verwenden Sie den folgenden Befehl:

router(config)# ip cef accounting load-balance-hash

Überprüfen Sie den Paketfluss, indem Sie die Werte im Feld Packet einhalten.

RouterB#show ip cef 192.168.20.0 internal

[...]

Load distribution: 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 (refcount 1)

Hash  OK  Interface                 Address         Packets

1     Y   Serial                    point2point           0

2     Y   Serial2                   point2point           0

3     Y   Serial1                   point2point           0

4     Y   Serial3                   point2point           0

5     Y   Serial2                   point2point          35

6     Y   Serial1                   point2point           0

7     Y   Serial3                   point2point           0

8     Y   Serial2                   point2point          60

9     Y   Serial1                   point2point           0

10    Y   Serial3                   point2point           0

11    Y   Serial2                   point2point           0

12    Y   Serial1                   point2point           0

13    Y   Serial3                   point2point           0

14    Y   Serial2                   point2point          30

15    Y   Serial1                   point2point           0

125 Pakete durchliefen Serial 2. Wenn Sie ping verwenden, um Datenverkehr zu generieren, stellen Sie sicher, dass Ping-Pakete den Cisco Express Forwarding-Switched-Router übertragen müssen. Anders ausgedrückt: Ping-Pakete müssen von einer Cisco Express Forwarding-Switched-Schnittstelle, von einer Cisco Express Forwarding-Switched-Schnittstelle, von einer anderen Cisco Express Forwarding-Switched-Schnittstelle gesendet werden.

Hinweis: Die Lastverteilung pro Ziel wird effektiver, wenn die Anzahl der Quell-Ziel-Paare zunimmt.

8. Zeichnen Sie beim Senden von Datenverkehr an das Präfix mehrere Ausgaben des Befehls show interface auf. Analysieren Sie die Werte "txload" und "rxload". (Einige Schnittstellen zeigen einen einzelnen "Load"-Wert an, der sowohl Senden als auch Empfangen berücksichtigt.) Obwohl der Lastenausgleich pro Paket eine gleichmäßige Verteilung der Paketanzahl ermöglicht, können parallele Verbindungen je nach Paketgröße eine leicht ungleichmäßige Rate aufweisen.

Serial1/0:0 is up, line protocol is up

reliability 255/255, txload 10/255, rxload 3/255

Serial1/1:0 is up, line protocol is up

reliability 255/255, txload 18/255, rxload 3/255

9. Mit Cisco Express Forwarding für den Lastenausgleich nach Ziel können Sie mithilfe des folgenden Befehls bestimmen, welchem Pfad eine Sitzung zugewiesen wird. Fügen Sie das Schlüsselwort internal hinzu, um anzuzeigen, welches Hash-Bucket verwendet wird.

show ip cef exact-route {source-ip-address} {dest-ip-address} [internal]

RouterB# show ip cef exact-route 50.50.50.2 192.168.20.1  internal

50.50.50.2      -> 192.168.20.1   : Serial9/0 (next hop 20.20.20.1)

Bucket 4 from 15, total 3 paths

RouterB# show ip cef exact-route 5.5.5.1 192.168.20.1  internal

5.5.5.1         ->192.168.20.1   : Serial9/0 (next hop 20.20.20.1)

Bucket 7 from 15, total 3 paths

RouterB# show ip cef exact-route 6.6.6.1 192.168.20.1  internal

6.6.6.1         -> 192.168.20.1   : Serial9/0 (next hop 20.20.20.1)

Bucket 7 from 15, total 3 paths

RouterB# show ip cef exact-route 8.8.8.1 192.168.20.1  internal

8.8.8.1         -> 192.168.20.1   : Serial9/0 (next hop 20.20.20.1)

Bucket 13 from 15, total 3 paths

10. Wenn die Ausgabe ungleichmäßig erscheint, sollten Sie Folgendes berücksichtigen:

- Die Anzahl der eindeutigen Quell- und Zieladressenpaare oder Sitzungen, die die parallelen Verbindungen durchlaufen.

- Anzahl und Größe der Pakete in jeder Sitzung Verfügt eine Sitzung über eine große Anzahl von Paketen? Der Lastenausgleich pro Ziel hängt von der statistischen Verteilung des Datenverkehrs ab und wird mit zunehmender Anzahl der Quell-Ziel-Paare effektiver.

Freigabe nach einer Linkänderung laden

Wenn eine Routing-Tabelle die Anzahl der aktiven Pfade für ein Ziel ändert, aktualisiert Cisco Express Forwarding die Load Balancing-Strukturen, die in der Ausgabe des internen Befehls show ip cef {prefix} sichtbar sind. Cisco Express Forwarding vergleicht dann neu eingehende Pakete mit einer Adjacency und dem zugehörigen Hash-Bucket. Die ausgewählte Eimer kann mit der zuvor verwendeten identisch sein.

In den folgenden Schritten wird beschrieben, wie Informationen zum Lastenausgleich von Cisco Express Forwarding nach einer Änderung der Anzahl der aktiven Pfade zu einem Zielpräfix aktualisiert werden.

1. Angenommen, ein Zielpräfix ist über zwei Pfade erreichbar. Pfad 1 ist inaktiv, Pfad 2 ist aktiv und leitet den gesamten Datenverkehr weiter.

2. Wenn Pfad 1 wieder verfügbar ist, werden IP-Routing-Rekonvergenzprozesse ausgelöst.

3. Cisco Express Forwarding gleicht die Last jetzt über beide Pfade hinweg aus und schützt nicht vorhandene Datenflüsse über Pfad 2. Dies würde Pfad 1 ungenutzt lassen. Mit anderen Worten: Cisco Express Forwarding ist nicht der Ansicht, dass Pakete für eine Sitzung über einen gültigen Pfad weitergeleitet werden können, und es kann ein neuer Pfad für einen Datenstrom ausgewählt werden, je nachdem, welcher Hash-Bucket er ausgewählt wird.

Freigabeinformationen für Löschung laden

Nach einer Änderung der Routing-Tabelle löscht Cisco Express Forwarding die Load Balancing-Strukturen, die den Hash-Buckets aktive Pfade zuweisen, und erstellt sie neu. Beim Neuerstellen gehen möglicherweise einige Pakete verloren, und der interne Befehl show ip cef {prefix} weist auf Informationen zur Lastverteilung hin, die gelöscht werden sollen.

router#show ip cef 10.10.128.0 int

10.10.128.0/28, version 63, per-destination sharing

0 packets, 0 bytes

via 10.8.0.31, 0 dependencies, recursive

next hop 10.8.2.49, POS0/0/0

valid adjacency

Load sharing information due for deletion

Durch die über die Cisco Bug-ID CSCdm87127 implementierten Änderungen wird der Paketverlust bei einer Änderung der Anzahl der aktiven Pfade für die Standard-Route 0.0.0.0 minimiert. Insbesondere weist Cisco Express Forwarding jetzt einen FIB-Eintrag mit Speicherplatz für die maximal möglichen aktiven Pfade für diese Route zu.

Bekannte Probleme

Der Lastenausgleich für Cisco Express Forwarding ist auf vier Pfaden nicht gleich. Weitere Informationen finden Sie unter CSCdm87756 (nur registrierte Kunden).

In Cisco IOS-Versionen vor 12.0(16)S kann die Eingabe des Befehls show ip cef für die exakte Weiterleitung dazu führen, dass der Route Processor (RP) in einem Internet-Router der Cisco Serie 12000 oder einem Router der Cisco 7500/RSP-Serie neu geladen wird. Diese Situation tritt ein, wenn das Zielpräfix rekursiv ist und der Router die Lastverteilung zum nächsten Hop durchführt. Weitere Informationen finden Sie unter CSCdt80914 (nur registrierte Kunden) , das dieses Problem behebt.

Bei Plattformen der Serie 6500 wird CEF-Lastenausgleich pro Paket nicht unterstützt. Dies liegt an der Hardware-Einschränkung, und es ist derzeit nur ein Lastenausgleich pro Ziel möglich. Daher ist die einzige Option die Lastverteilung über verteiltes Multilink Point-to-Point Protocol (dMLPPP) oder Layer 4.

Hardware-Unterstützung für Cisco Express Forwarding Load Balancing

Der Lastenausgleich für Cisco Express Forwarding pro Paket wurde ursprünglich auf Plattformen unterstützt, die softwarebasierte Weiterleitung verwenden. Zu diesen Plattformen gehören die Serien 2600, 3600 und 7200. Der Paketbasierte Lastenausgleich wird jetzt mithilfe von Parallel Express Forwarding (PXF) auf der 7200-Serie mit einer NSE-1- und 1000-Serie in der Hardware unterstützt. Bei der Catalyst 6000-Serie gelten die ip load-sharing per Packet, ip cef accounting per Präfix und ip cef accounting unrekursive Befehle auf MSFC2 nur für Datenverkehr, der in der MSFC2 in der Software Cisco Express Forwarding-Switched enthalten ist. Die Befehle wirken sich nicht auf Datenverkehr aus, der auf dem PFC2-Router (Hardware Layer 3) oder auf Switching-Modulen mit DFC-Ausstattung geschaltet ist. Weitere Informationen finden Sie unter Konfigurieren von IP-Unicast-Layer-3-Switching auf der Supervisor Engine 2.

Hinweis: Ein Cisco 7300-Router mit einer NSE-100-Prozessorkarte unterstützt keinen CEF-Lastenausgleich pro Paket in PXF. Die PXF unterstützt nur den Lastenausgleich pro Ziel. Sie scheinen jedoch Unterstützung zu haben, da die Konfigurationsbefehle in der CLI des Routers verfügbar waren. Dies wird korrigiert und in der Cisco Bug-ID CSCdx63389 aufgezeichnet.

Bei der Serie 12000 ist der Load Balancing-Modus pro Paket für alle Layer-3-Forwarding-Engines mit Ausnahme der Engines 3 und 4 verfügbar. Jede Linecard trifft unabhängige Weiterleitungsentscheidungen. Um die genaue Route für jeden IP-Datenfluss anzuzeigen, verwenden Sie den Befehl exec slot X show ip hardware-cef strict-route src dst auf Linecards, die hardwarebasierte Cisco Express Forwarding-Tabellen verwenden.

Zugehörige Informationen

- Cisco Express Forwarding

- Lastenausgleich mit Cisco Express Forwarding

- IP-Routing-Unterstützung

- Technischer Support und Dokumentation - Cisco Systems