Konfigurieren von RPM-Tastköpfen auf Routern der M-, MX- und T-Serie und Switches der EX-Serie
Der Testbesitzer und der Testname eines RPM-Tastkopfs stellen zusammen eine einzelne RPM-Konfigurationsinstanz dar. Wenn Sie den Testnamen angeben, können Sie auch die Testparameter konfigurieren.
Um den Testbesitzer, den Testnamen und die Testparameter zu konfigurieren, fügen Sie die probe
Anweisung auf Hierarchieebene [edit services rpm]
ein:
[edit services rpm] probe owner { delegate-probes; test test-name { data-fill data; data-size size; destination-interface interface-name; destination-port (RPM) port; dscp-code-points (RPM) dscp-bits; hardware-timestamp; history-size size; inet6-options; moving-average-size number; one-way-hardware-timestamp; probe-count count; probe-interval seconds; probe-type type; routing-instance (RPM) instance-name; rpm-scale { destination { interface interface-name.logical-unit-number; subunit-cnt subunit-cnt; } source { address-base ipv4-address-base; count ipv4-count; step ipv4-step; } source-inet6 { address-base ipv6-address-base; count ipv6-count; step ipv6-step; } target { address-base ipv4-address-base; count ipv4-count; step ipv4-step; } target-inet6 { address-base ipv6-address-base; count ipv6-count; step ipv6-step; } tests-count tests-count; } source-address address; target (url url | address address); test-interval interval; thresholds (Junos OS) thresholds; traps traps; ttl [hop-count] } }
Beachten Sie bei der Konfiguration von RPM-Clients und RPM-Servern die folgenden Punkte:
RPM wird auf logischen Systemen nicht unterstützt.
Sie können einen RPM-Client, der PIC-basiert ist, und einen RPM-Server, der entweder auf der Paketweiterleitungs-Engine oder der Routing-Engine basiert, nicht so konfigurieren, dass sie die RPM-Sonden empfangen.
Es ist nicht möglich, einen RPM-Client, der auf der Paketweiterleitungs-Engine basiert, und einen RPM-Server, der die RPM-Sonden empfängt, auf der PIC oder Routing-Engine zu konfigurieren.
Der RPM-Client und der RPM-Server müssen sich auf demselben Modultyp befinden. Wenn z. B. der RPM-Client PIC-basiert ist, muss auch der RPM-Server PIC-basiert sein, und wenn der RPM-Server auf der Paketweiterleitungs-Engine basiert, muss der RPM-Client ebenfalls auf der Paketweiterleitungs-Engine basieren.
Ab Junos OS Version 17.3R1 wird PIC-basiertes und Routing-Engine-basiertes RPM für IPsec-Tunnel und GRE-Tunnel unterstützt, wenn Sie MS-MPCs oder MS-MICs verwenden. RPM auf Basis der Paketweiterleitungs-Engine wird für IPsec-Tunnel nicht unterstützt. Die Unterstützung von RPM in IPSec-Tunneln ermöglicht die Überwachung von Service Level Agreements (SLA) für den in IPSec-Tunneln transportierten Datenverkehr.
Ab Junos OS Version 17.3R1 können Sie die Generierung von IPv4
icmp-ping
- undicmp-ping-timestamp
RPM-Tests auf einer MS-MPC oder MS-MIC konfigurieren, wodurch sich die Anzahl der Sonden, die auf jeder Service-NPU generiert werden, um bis zu 1 Million pro Sekunde im Vergleich zur Anzahl der Sonden erhöht, die auf der Packet Forwarding Engine generiert werden. Ab Junos OS Version 18.1R1 können Sie die Generierung vonicmp6-ping
RPM-Sonden auf einem MS-MPC oder MS-MIC konfigurieren. So konfigurieren Sie die Erzeugung von RPM-Tastköpfen auf einem MS-MPC oder MS-MIC:Fügen Sie die auf der Hierarchieebene und die
destination-interface interface-name.logical-unit-number
Anweisung auf der[edit services rpm probe owner test test-name]
[edit services rpm probe owner]
Hierarchieebene eindelegate-probes
. Die interface-name.logical-unit-number gibt eine logische Schnittstelle an einem MS-MPC- oder MS-MIC-Steckplatz, PIC und Port an, für den eine gültige IP-Adresse definiert ist (z. B. ms-1/2/1.1). Bei der Schnittstelle darf es sich nicht um eine aggregierte Multiservices-Schnittstelle (ams-) handeln.Fügen Sie die und die
rpm client-delegate-probes
family (inet | inet6) address address
Anweisungen auf der[edit interfaces interface-name unit logical-unit-number]
Hierarchieebene ein. Das interface-name und das logical-unit-number muss mit dem übereinstimmen, das interface-name.logical-unit-number Sie für .destination-interface
Für RPM-Tests, die auf einem MS-MPC oder MS-MIC konfiguriert sind, können Sie die
routing-instance
Anweisung nicht auf Hierarchieebene[edit services rpm probe owner test test-name]
konfigurieren, und Sie können nicht sowohl IPv4- als auch IPv6-Probes innerhalb desselben Tests konfigurieren.Ab Junos OS Version 18.1R1 können Sie zusätzliche Filter verwenden, um die Ausgabe der Befehle show services rpm probe-results und show services rpm history-results für RPM-Sonden, die auf einer MS-MPC oder MS-MIC generiert wurden, einzuschränken.
Ab Junos OS Version 17.4R1 können Sie die CLI-Konfiguration für RPM-Tests für IPv4 optimieren. Ab Junos OS Version 18.2R1 können Sie auch die CLI-Konfiguration für RPM-Tests für IPv6 optimieren. Diese Optimierung ermöglicht die Verwendung von Konfigurationsanweisungen mit minimaler Drehzahl, um mehrere Tests (bis zu 100 Tsd. Tests) mit vordefinierten, reservierten RPM-Testnamen zu generieren. Diese Optimierung kann für Tests mit Sonden konfiguriert werden, die entweder von der Packet Forwarding Engine oder von einer MS-MPC oder MS-MIC generiert werden. Tests werden für mehrere Kombinationen von Quell- und Zieladressen generiert, die je nach Konfiguration inkrementiert werden.
Die maximale Anzahl gleichzeitiger RPM-Tests, die für verschiedene Junos-Versionen unterstützt werden, lautet wie folgt:
Junos OS-Version älter als 17.3R1—500
Junos OS-Version 17.3R1 und höher: 2000 für die Testtypen ICMP und ICMP-Timestamp. Für Tests anderer Typen (UDP und TCP) liegt der Grenzwert bei 500.
Junos OS, Version 17.3R1 und höher (mit der Implementierung von Delegate-Probes) – 1 Million pro Service-NPU.
Hinweis:Ein MS-MIC enthält eine Service-NPU und ein MS-MPC enthält vier Service-NPUs.
Mit der Implementierung von Delegate-Probes sind die RPM-Probes konform mit RFC792 und RFC4443. Daher können sie verwendet werden, um jedes IP-Gerät zu überwachen, das entweder RFC-konform ist, und sind in der Lage, auf icmp-timestamp- und/oder icmp6-ping-Pakete zu reagieren.
Tests werden zuerst für alle Quelladressen mit der anfänglichen Zieladresse generiert, dann werden Tests für alle Quelladressen mit der nächsten verfügbaren Zieladresse generiert usw. Sie können auch eine Gruppe konfigurieren, die globale Werte für einen bestimmten Testbesitzer enthält, und die Gruppe auf den Testbesitzer anwenden.
Um mehrere RPM-Tests zu generieren, konfigurieren Sie Folgendes:
[edit services rpm probe owner] apply-groups group-name; test test-name { rpm-scale { destination { interface interface-name.logical-unit-number; subunit-cnt subunit-cnt; } source { address-base ipv4-address-base; count ipv4-count; step ipv4-step; } source-inet6 { address-base ipv6-address-base; count ipv6-count; step ipv6-step; } target { address-base ipv4-address-base; count ipv4-count; step ipv4-step; } target-inet6 { address-base ipv6-address-base; count ipv6-count; step ipv6-step; } tests-count tests-count; } }
Folgende Optionen stehen zur Verfügung:
ipv4-address-base Die IPv4-Quell- oder Zieladresse, die inkrementiert wird, um die in den RPM-Tests verwendeten Adressen zu generieren.
ipv6-address-base Die IPv6-Quell- oder Zieladresse, die inkrementiert wird, um die in den RPM-Tests verwendeten Adressen zu generieren.
ipv4-step Der Betrag, um den die IPv4-Quell- oder Zieladresse für jeden generierten RPM-Test erhöht werden soll.
ipv6-step Der Betrag, um den die IPv6-Quell- oder Zieladresse für jeden generierten RPM-Test erhöht werden soll.
ipv4-count Die maximale Anzahl von IPv4-Quell- oder -Zieladressen, die für die generierten RPM-Tests verwendet werden sollen.
ipv6-count Die maximale Anzahl von IPv6-Quell- oder -Zieladressen, die für die generierten RPM-Tests verwendet werden sollen.
interface-name.logical-unit-number Die Services-Schnittstelle, die RPM-Sonden generiert, und die Nummer der logischen Einheit, die für den ersten generierten Test verwendet wird.
subunit-cnt Die maximale Anzahl logischer Einheiten, die von der Services-Schnittstelle in den generierten Tests verwendet werden. Der erste generierte Test verwendet die in der Option angegebene logische Einheit, und bei jedem nachfolgenden Test wird die Nummer der interface-name.logical-unit-number logischen Einheit um eins erhöht. Sobald die maximale Anzahl logischer Einheiten verwendet wurde, kehrt der nächste generierte Test zu der logischen Einheit zurück, die im ersten Test verwendet wurde.
tests-count Die maximale Anzahl von RPM-Tests, die generiert werden sollen. Diese Zahl muss kleiner oder gleich der Anzahl der generierten Quelladressen multipliziert mit der Anzahl der generierten Zieladressen sein.
So konfigurieren Sie eine Gruppe mit globalen Werten für einen bestimmten Testbesitzer:
[edit groups group-name] services { rpm { probe <*> { test { data-fill data; data-size size; dscp-code-points (RPM) dscp-bits; history-size size; moving-average-size number; probe-count count; probe-type type; test-interval interval; thresholds (Junos OS) thresholds; } } } }
Wenn Sie einen Testbesitzer angeben möchten, schließen Sie die
probe
Anweisung auf Hierarchieebene[edit services rpm]
ein. Die Kennung des Testbesitzers kann bis zu 32 Zeichen lang sein.Wenn Sie einen Testnamen angeben möchten, fügen Sie die
test
Anweisung auf Hierarchieebene[edit services rpm probe owner]
ein. Der Bezeichner des Testnamens kann bis zu 32 Zeichen lang sein. Ein Test stellt den Bereich der Sonden dar, über den die Standardabweichung, der Durchschnitt und der Jitter berechnet werden.Wenn Sie den Inhalt des Datenteils von ICMP-Tests (Internet Control Message Protocol) angeben möchten, schließen Sie die
data-fill
Anweisung auf Hierarchieebene[edit services rpm probe owner]
ein. Der Wert kann ein Hexadezimalwert sein. Diedata-fill
Anweisung ist mit denhttp-get
Testtypen oderhttp-metadata-get
ungültig.Um die Größe des Datenteils von ICMP-Tests anzugeben, schließen Sie die
data-size
Anweisung auf Hierarchieebene[edit services rpm probe owner]
ein. Die Größe kann von0
bis65400
sein und die Standardgröße ist0
. Diedata-size
Anweisung ist mit denhttp-get
Testtypen oderhttp-metadata-get
ungültig.Hinweis:Wenn Sie die Hardware-Zeitstempelfunktion konfigurieren (siehe Konfigurieren des RPM-Zeitstempels auf Routern der MX-, M-, T- und PTX-Serie und Switches der EX-Serie):
Dies ist ein veraltetes Element, der Standardwert ist 32 Byte und dies ist ein veraltetes Element
data-size
, 32 ist der Mindestwert für die explizite Konfiguration. Der UDP-Zeitstempel-Testtyp ist eine Ausnahme. Es erfordert eine Mindestdatengröße von 44 Byte.Sie
data-size
muss mindestens 100 Byte kleiner sein als die Standard-MTU der Schnittstelle der RPM-Clientschnittstelle.
Auf Routern der M- und T-Serie konfigurieren Sie die
destination-interface
Anweisung so, dass die Hardware-Zeitstempelung von RPM-Testpaketen aktiviert wird. Sie geben eine sp--Schnittstelle an, damit der AS- oder Multiservices-PIC die Hardware-Zeitstempel hinzufügt. Weitere Informationen finden Sie unter Konfigurieren des RPM-Zeitstempels auf Routern der MX-, M-, T- und PTX-Serie und Switches der EX-Serie. Sie können die Anweisung auch einschließen, um unidirektionaleone-way-hardware-timestamp
Verzögerungs- und Jittermessungen zu aktivieren.Um den UDP-Port (User Datagram Protocol) oder TCP-Port (Transmission Control Protocol) anzugeben, an den der Test gesendet wird, schließen Sie die
destination-port
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Diedestination-port
Anweisung wird nur für die Testtypen UDP und TCP verwendet. Der Wert kann oder von49160
bis65535
sein7
.Wenn Sie entweder
probe-type udp-ping
oderprobe-type udp-ping-timestamp
zusammen mit dem Hardware-Zeitstempel konfigurieren, kann der Wert für diedestination-port
nur 7 sein. Eine Constraint-Prüfung verhindert, dass Sie in diesem Fall einen anderen Wert für den Zielport konfigurieren. Diese Einschränkung gilt nicht, wenn Sie einen unidirektionalen Hardware-Zeitstempel verwenden.Um den Wert des Felds Differentiated Services (DiffServ) im IP-Header anzugeben, fügen Sie die
dscp-code-point
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Der Wert der DSCP-Bits (DiffServ-Codepunkt) kann auf ein gültiges 6-Bit-Muster festgelegt werden. Beispiel:001111
. Sie kann auch mithilfe eines Alias festgelegt werden, der auf Hierarchieebene[edit class-of-service code-point-aliases dscp]
konfiguriert ist. Der Standardwert ist000000
.Um die Anzahl der gespeicherten Verlaufseinträge anzugeben, fügen Sie die
history-size
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Geben Sie einen Wert von0
bis512
an. Der Standardwert ist50
.Wenn Sie eine Anzahl von Stichproben für statistische Berechnungen angeben möchten, schließen Sie die
moving-average-size
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Geben Sie einen Wert von0
bis an255
.Um die Anzahl der Tests innerhalb eines Tests anzugeben, schließen Sie die
probe-count
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Geben Sie einen Wert von1
bis an15
.Um die Zeit anzugeben, die zwischen dem Senden von Paketen gewartet werden soll, fügen Sie die
probe-interval
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Geben Sie einen Wert von1
bis255
Sekunden an.Um den Paket- und Protokollinhalt des Tests anzugeben, fügen Sie die
probe-type
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Die folgenden Sondentypen werden unterstützt:http-get
– Sendet eine HTTP-Get-Anfrage (Hypertext Transfer Protocol) an eine Ziel-URL.http-metadata-get
– Sendet eine HTTP-Abrufanforderung für Metadaten an eine Ziel-URL.icmp-ping
– Sendet ICMP-Echoanfragen an eine Zieladresse.icmp-ping-timestamp
– Sendet ICMP-Zeitstempelanforderungen an eine Zieladresse.tcp-ping
—Sendet TCP-Pakete an ein Ziel.udp-ping
- Sendet UDP-Pakete an ein Ziel.udp-ping-timestamp
– Sendet UDP-Zeitstempelanfragen an eine Zieladresse.
Die folgenden Probetypen unterstützen den Hardware-Zeitstempel von Probepaketen:
icmp-ping
, , ,icmp-ping-timestamp
udp-ping
.udp-ping-timestamp
Ab Junos OS Version 17.3R3 werden die Delegate Probes gleichmäßig über das Intervall von 3 Sekunden verteilt, um Paketspitzen im Netzwerk aufgrund der Echtzeit-Leistungsüberwachung (Real-Time Performance Monitoring, RPM) zu vermeiden. RPM-Syslogs werden mit der Erhöhung der Anlaufzeit von RPM-Delegiertentests auf 60 Sekunden verarbeitet. Wenn RPM-Syslogs verarbeitet werden, ist die Wahrscheinlichkeit, dass mehrere Tests gleichzeitig beginnen und enden, geringer, daher ist eine potenzielle Einschränkung inevent-processing
.Hinweis:Für einige Sondentypen müssen zusätzliche Parameter konfiguriert werden. Wenn Sie z. B. die
tcp-ping
Option orudp-ping
angeben, müssen Sie den Zielport mit derdestination-port
Anweisung konfigurieren. Dieudp-ping-timestamp
Option erfordert eine Mindestdatengröße von 12; jede kleinere Datengröße führt zu einem Commit-Fehler. Die minimale Datengröße für TCP-Testpakete beträgt 1.Wenn Sie entweder
probe-type udp-ping
oderprobe-type udp-ping-timestamp
zusammen mit demone-way-hardware-timestamp
Befehl konfigurieren, kann der Wert für diedestination-port
nur 7 sein. Eine Constraint-Prüfung verhindert, dass Sie in diesem Fall einen anderen Wert für den Zielport konfigurieren können.Um die Routinginstanz anzugeben, die von ICMP-Tests verwendet wird, schließen Sie die
routing-instance
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Die Standard-Routing-Instanz ist die Internet-Routing-Tabelleinet.0
.Um die Quell-IP-Adresse anzugeben, die für ICMP-Tests verwendet wird, fügen Sie die
source-address
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Wenn die Quell-IP-Adresse nicht eine der dem Router zugewiesenen Adressen ist, verwendet das Paket die Adresse der ausgehenden Schnittstelle als Quelle.Ab Junos OS-Version 16.1R1 müssen Sie zum Angeben der Quell-IPv6-Adresse, die für RPM-Tests verwendet werden soll, die vom RPM-Client (dem Gerät, von dem die RPM-Pakete stammen) an den RPM-Server (das Gerät, das die RPM-Tests empfängt) gesendet werden, die
inet6-options source-address ipv6-address statement
auf Hierarchieebene[edit services rpm probe owner test test-name]
angeben. Wenn die IPv6-Quelladresse nicht eine der dem Router oder Switch zugewiesenen Adressen ist, verwendet das Paket die Adresse der ausgehenden Schnittstelle als Quelle.Um die Zieladresse anzugeben, die für die Sonden verwendet wird, schließen Sie die
target
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein.Geben Sie für HTTP-Testtypen eine vollständig formatierte URL an, die in der URL-Adresse enthalten ist
http://
.Geben Sie für alle anderen Sondentypen eine IP-Adresse der Version 4 (IPv4) oder der IP-Version 6 (IPv6) (IPv6-Unterstützung beginnt in Junos OS Version 16.1R1) für den Zielhost an.
Um die Wartezeit zwischen den Tests anzugeben, fügen Sie die
test-interval
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Geben Sie einen Wert von0
bis86400
Sekunden an. Ein Wert von 0 Sekunden bewirkt, dass der RPM-Test nach einer Iteration beendet wird. Der Standardwert ist 1.Um Schwellenwerte anzugeben, die für die Tests verwendet werden, schließen Sie die
thresholds
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Bei Überschreitung des konfigurierten Schwellenwerts wird eine Systemprotokollmeldung generiert. Ebenso wird ein SNMP-Trap (falls konfiguriert) generiert, wenn ein Schwellenwert überschritten wird. Die folgenden Optionen werden unterstützt:egress-time
: Misst die maximale Zeit von der Quelle bis zum Ziel pro Sonde.ingress-time
: Misst die maximale Zeit vom Ziel bis zur Quelle pro Sonde.jitter-egress
: Misst den maximalen Quell-Ziel-Jitter pro Test.jitter-ingress
– Misst den maximalen Ziel-zu-Quelle-Jitter pro Test.jitter-rtt
– Misst den maximalen Jitter pro Test von 0 bis 60000000 Mikrosekunden.rtt
– Misst die maximale Umlaufzeit pro Sonde in Mikrosekunden.std-dev-egress
: Misst die maximale Standardabweichung von Quelle zu Ziel pro Test.std-dev-ingress
– Misst die maximale Standardabweichung vom Ziel zur Quelle pro Test.std-dev-rtt
– Misst die maximale Standardabweichung pro Test in Mikrosekunden.successive-loss
: Misst die Anzahl der aufeinanderfolgenden Sondenverluste und zeigt damit das Versagen der Sonde an.total-loss
: Misst die Gesamtzahl der Sondenverluste, die auf einen Testfehler hinweisen, von 0 bis 15.
Traps werden gesendet, wenn der konfigurierte Schwellenwert erreicht oder überschritten wird. Um das Trap-Bit so zu setzen, dass Traps generiert werden, schließen Sie die
traps
Anweisung auf Hierarchieebene[edit services rpm probe owner test test-name]
ein. Die folgenden Optionen werden unterstützt:egress-jitter-exceeded
: Generiert Traps, wenn der Schwellenwert für die Jitter in der Ausgangszeit erreicht oder überschritten wird.egress-std-dev-exceeded
: Generiert Überfüllungen, wenn der Schwellenwert für die Standardabweichung der Ausgangszeit erreicht oder überschritten wird.egress-time-exceeded
: Generiert Überfüllungen, wenn der Schwellenwert für die maximale Ausgangszeit erreicht oder überschritten wird.ingress-jitter-exceeded
: Generiert Traps, wenn der Schwellenwert für die Jitter-Eingangszeit erreicht oder überschritten wird.ingress-std-dev-exceeded
: Generiert Überfüllungen, wenn der Schwellenwert für die Standardabweichung der Eingangszeit erreicht oder überschritten wird.ingress-time-exceeded
: Generiert Überfüllungen, wenn der Schwellenwert für die maximale Eingangszeit erreicht oder überschritten wird.jitter-exceeded
: Generiert Traps, wenn der Schwellenwert für den Jitter in der Round-Trip-Zeit erreicht oder überschritten wird.probe-failure
: Generiert Überfüllungen für aufeinanderfolgende Schwellenwerte für Sondenverluste, die überschritten werden.rtt-exceeded
: Generiert Traps, wenn der Schwellenwert für die maximale Round-Trip-Zeit erreicht oder überschritten wird.std-dev-exceeded
: Generiert Überfüllungen, wenn der Schwellenwert für die Standardabweichung der Round-Trip-Zeit erreicht oder überschritten wird.test-completion
: Generiert Überfüllungen, wenn ein Test abgeschlossen ist.test-failure
: Generiert Überfüllungen, wenn der Schwellenwert für den Gesamtverlust der Sonde erreicht oder überschritten wird.
icmp6-ping
RPM-Sonden auf einem MS-MPC oder MS-MIC konfigurieren.
event-processing
.
icmp-ping
- und
icmp-ping-timestamp
RPM-Tests auf einer MS-MPC oder MS-MIC konfigurieren, wodurch sich die Anzahl der Sonden, die auf jeder Service-NPU generiert werden, um bis zu 1 Million pro Sekunde im Vergleich zur Anzahl der Sonden erhöht, die auf der Packet Forwarding Engine generiert werden.
inet6-options source-address ipv6-address statement
auf Hierarchieebene
[edit services rpm probe owner test test-name]
angeben.