Kurze Antwort, verwenden Sie einfach das Resource ReSerVation Protocol (RSVP).
Lange Antwort, Sie könnten Multi-Topologie-Routing verwenden und mehrere Metriken in jeder Schnittstelle haben und einige Pakete in eine andere Topologie als andere Pakete zwingen. Aber ich würde mich nicht wirklich dorthin wagen.
Möglicherweise möchten Sie mit Ihrem Account-Team darüber sprechen, dass das Segment-Routing implementiert werden soll: http://tools.ietf.org/html/draft-previdi-filsfils-isis-segment-routing-02 (Kundendruck hilft bei der Ressourcenentwicklung)
Das Segment-Routing würde es trivial machen, Ihr Problem zu lösen, während Sie sowohl LDP als auch RSVP aus Ihrem Netzwerk entfernen und sich nur auf IGP verlassen.
Da mein Vorschlag in den Kommentaren nicht wirklich funktioniert hat, werde ich erklären, warum nicht und wie man das Problem behebt.
Das Problem ist, dass LSP in HW installiert sein muss, um es verwenden zu können. Und nach meinem Vorschlag wird der RSVP-LSP erst installiert, wenn der LDP-LSP nicht mehr vorhanden ist. Daher können wir dort keinen bedingten Verkehr einspeisen.
Ich konnte keine Möglichkeit finden, RSVP + LDP in ECMP zu erzwingen, mit gleicher Präferenz gewinnt LDP. Aber wir können immer noch das erreichen, was zumindest auf zwei verschiedene Arten gewünscht wird.
- Dual Next-Hops
Fügen Sie den l2circuit PEs den zweiten Next-Hop hinzu. Dieser Next-Hop wird von iBGP nicht verwendet, daher wird überhaupt kein Datenverkehr gezogen.
Konfigurieren Sie nun den RSVP-Tunnel für diesen zweiten Loopback und verwenden Sie ihn als Nachbaradresse für l2circuit.
Der Nettoeffekt ist, dass der gesamte Datenverkehr LDP verwendet, mit Ausnahme dieses l2-Schaltkreises, der RSVP verwendet
- Nur RSVP
Erstellen Sie zwei RSVP-Tunnel, einen über den IGP-Pfad (dh über denselben wie LDP) und einen über Ihren expliziten Pfad. Diese können auf ECMP eingestellt werden, dh der gesamte Verkehr verwendet beide Tunnel.
Nachdem wir die ECMP-Anforderungen erfüllt haben, können wir die Exportrichtlinie "Routing-Optionen-Weiterleitungstabelle" verwenden, um etwas Verkehr auf LSP_NORMAL und etwas Verkehr auf LSP_EVPN zu setzen. Im Wesentlichen wäre unsere Exportpolitik:
.
term EVPN {
from community EVPN;
then {
install-nexthop lsp LSP_EVPN;
accept;
}
}
term NORMAL {
from next-hop 1.2.3.4;
then {
install-nexthop lsp LSP_NORMAL;
accept;
}
}
Jetzt würde kein Datenverkehr tatsächlich das ECMP verwenden, da der gesamte Datenverkehr zu dem einen oder anderen RSVP-LSP gezwungen würde.
Ich würde die 1. Option bevorzugen.