Express Path – Übersicht
Express Path (früher als Services Offloading bezeichnet) ist ein Mechanismus zur Verarbeitung von Fast-Path-Paketen im Netzwerkprozessor statt in der Services Processing Unit (SPU). Express Path steigert die Leistung durch Auslagerung des Datenverkehrs von der SPU auf die Netzwerkprozessoren.
Wenn Sie eine Express Path-Sitzung auf dem Netzwerkprozessor erstellen, stimmen die nachfolgenden Pakete des Datenstroms mit der Sitzung auf den Netzwerkprozessoren überein. Der Netzwerkprozessor verarbeitet und leitet das Paket dann weiter. Sie können kein asymmetrisches Routing zwischen Knoten konfigurieren, da Express Path keine Hohe Verfügbarkeit für Sitzungen zwischen Knoten unterstützt.
Der Netzwerkprozessor verwaltet auch zusätzliche Verarbeitungen wie TCP-Sequenzprüfung, Time-to-Live (TTL)-Verarbeitung, Network Address Translation (NAT) und Layer-2-Header-Übersetzung. Die Flow-Tabelle auf dem IOC3 wird von der SPU des Flow-Moduls verwaltet. Die SPU fügt Flow-Einträge in die Flow-Tabelle ein und löscht sie basierend auf den Ergebnissen der Richtlinienübereinstimmung. Express Path unterstützt IPv6.
Die Abbildung zeigt den Paketfluss im Expresspfad.
Vorteile von Express Path
-
Verbessert die Leistung im Single-Flow und auf Chassis-Ebene erheblich.
-
Reduziert SPU-Nutzung und Latenz.
Einschränkungen des Express Path
Express Path unterstützt Folgendes nicht:
-
Funktionen
-
Transparenter Modus
-
Multicast-Sitzung mit mehr als einem Fan-Out
-
Fragmentierte Pakete
-
IPsec VPN
-
Unterschiedliche MTU-Größenwerte
-
J-Strömung
-
Flexibles VLAN-Tagging
-
-
ALG-Datenverkehr (Application Layer Gateway) auf Anwendungsebene:
-
DNS
-
IKE und ESP
-
PPTP
-
SQL-NET
-
-
IPv6
-
NAT
-
Transparenter Modus
-
Unterschiedliche MTU-Größenwerte
-
Class of Service (CoS) an Ausgangsschnittstellen
-
Express-Pfad- und Paket-Offloading funktioniert nicht, wenn Sie Firewall-Filter verwenden, um Datenverkehr an einen virtuellen Router zu leiten.
Wenn Sie Express Path auf einem Gerät aktivieren, das im Chassis-Cluster-Modus betrieben wird:
-
Asymmetrische E/A-Karten (IOC) können nicht konfiguriert werden.
-
Wenn eine untergeordnete Verbindung von der LACP-fähigen reth-Schnittstelle ausfällt, wird der gesamte Datenverkehr auf dieser Verbindung auf andere aktive untergeordnete Verbindungen der Schnittstelle verteilt. Wenn die untergeordnete Verbindung hochgefahren wird und sich wieder der reth-Schnittstelle anschließt, werden der vorhandene Datenverkehr oder die vorhandenen Sitzungen nicht über diese neu hinzugefügte aktive untergeordnete Verbindung verteilt. Neue Sitzungen werden über diesen Link geleitet.
-
Wenn der LACP-fähigen reth-Schnittstelle eine neue untergeordnete Verbindung hinzugefügt wird, werden der vorhandene Datenverkehr oder die vorhandenen Sitzungen nicht über diese neue untergeordnete Verbindung verteilt. Neue Sitzungen werden über diesen Link geleitet.
Automatisierter Express-Pfad
Der automatisierte Expresspfad ist ab Junos OS Version 21.2R1 standardmäßig aktiviert. Mit einem Upgrade auf Junos Version 21.2R1 oder höher erhalten Sie kostenlose, beispiellose Firewall-Leistung der nächsten Generation ohne zusätzliche Konfiguration oder Hardwareinvestitionen. Standardmäßig ist ein automatisierter Expresspfad aktiviert.
Verwenden Sie set security policies from-zone [untrust] to-zone ptrust] policy [services-offload-pol1] then permit no-services-offload in Junos OS Version 21.2R1 den Befehl, um den Expresspfad pro Regel zu deaktivieren.
Verwenden Sie den set security forwarding-options services-offload disable Befehl, um zum vorherigen Verhalten zurückzukehren, indem Sie services-offload pro Regel aktivieren.
Der automatisierte Expresspfad unterstützt die folgenden Funktionen:
-
Stateful Firewall
-
Network Address Translation (NAT)
-
Unified-Policies (mit dynamischen Anwendungen und URL-Kategorien)
-
Benutzer-Firewall
-
Sicherheit Intelligenz
-
Intrusion Detection and Prevention (IDP)
-
Erweiterte Webfilterung
-
Gateways auf Anwendungsebene (ALG)
-
Bildschirme (Anti-DDoS)
Wie verarbeitet Express Path den Datenverkehr?
Wenn das erste Paket an einer Schnittstelle ankommt, leitet der Netzwerkprozessor es an den Central Point (CP) weiter. Die zentrale Stelle wiederum leitet das Paket an die SPU weiter. Die SPU erstellt dann eine Sitzung auf dem Netzwerkprozessor und überprüft, ob der Datenverkehr für die Express Path-Sitzung oder eine normale Sitzung qualifiziert ist.
Wenn der Datenverkehr für die Express Path-Verarbeitung qualifiziert ist, wird eine Express Path-Sitzung für den Datenverkehr in der SPU erstellt. Die Express Path-Sitzung verarbeitet die Fast-Path-Pakete im Netzwerkprozessor, und die Pakete verlassen den Netzwerkprozessor.
Wenn der Datenverkehr nicht für die Express Path-Verarbeitung qualifiziert ist, erstellt die SPU eine normale Sitzung. Die normale Sitzung leitet Pakete vom Netzwerkprozessor zur SPU zur Fast-Path-Verarbeitung weiter.
Express Path Netzwerkprozessor
Wenn auf der SRX-Firewall mit Netzwerkprozessor alle Plug-Ins, einschließlich der Paket-Plug-ins und Stream-Plug-Ins, eine Sitzung ignorieren, entladen wir die Sitzung und installieren sie dann auf dem Netzwerkprozessor. Wenn das Paket-Plugin die Sitzung ignoriert, markieren wir die Flags zum Ignorieren. Wenn das Streaming-Plugin die Sitzung ignoriert, markieren wir die Ignorierflags und schließen TCP-T und TCP-I kurz. Anschließend installieren wir die Sitzung auf dem Netzwerkprozessor, um die Sitzung auszulagern.
Der Netzwerkprozessor der E/A-Karte (IOC) verarbeitet die Fast-Path-Pakete, ohne die Switch-Fabric oder die SPU zu durchlaufen. Dadurch wird die Latenz bei der Paketverarbeitung reduziert.
Jeder Datenstromeintrag verfügt über einen Zähler pro Flügel im Express Path-Netzwerkprozessor. Der Zähler erfasst die Anzahl der Bytes, die der Netzwerkprozessor über den Flügel aussendet.
Das Verhalten des Netzwerkprozessors in verschiedenen Szenarien ist wie folgt:
-
Datenstrom für den ersten Pfad: Der Datenstrom für den ersten Pfad ist derselbe wie der aktuelle Datenstrom des Netzwerkprozessors. Wenn das erste Paket beim Netzwerkprozessor eintrifft, analysiert der Netzwerkprozessor das TCP- oder UDP-Paket, um einen Schlüssel mit 5 Tupeln zu extrahieren, und führt dann eine Sitzungssuche in der Flow-Tabelle durch. Der Netzwerkprozessor leitet dann das erste Paket an den zentralen Punkt weiter. Der zentrale Punkt kann derzeit keine Übereinstimmung finden, da es sich um das erste Paket handelt. Der zentrale Punkt und die SPU erstellen eine Sitzung und gleichen sie mit vom Benutzer konfigurierten Richtlinien ab, um festzustellen, ob es sich bei der Sitzung um eine normale Sitzung oder eine Service-Offload-Sitzung handelt.
Wenn Sie die Sitzung angeben, die mit Express Path verwaltet werden soll, erstellt die SPU einen Sitzungseintrag in der Netzwerkprozessor-Flow-Tabelle. Dadurch wird das Express Path-Flag in der Sitzungseingabetabelle aktiviert. Andernfalls erstellt die SPU einen normalen Sitzungseintrag im Netzwerkprozessor ohne das Express Path-Flag.
-
Fast-Path-Flow: Nachdem Sie den Sitzungseintrag im Netzwerkprozessor erstellt haben, stimmen die nachfolgenden Sitzungspakete mit der Sitzungseintragstabelle überein.
-
Wenn das Express Path-Flag nicht gesetzt ist, leitet der Netzwerkprozessor das Paket an die in der Sitzungseingabetabelle angegebenen SPU s weiter. Das Paket durchläuft den normalen Flow-Prozess.
-
Wenn der Netzwerkprozessor das Flag services-offload in der Sitzungseingabetabelle findet, verarbeitet er das Paket lokal und sendet das Paket direkt.
-
Die Fast-Forward-Funktion des Netzwerkprozessors unterstützt One-Fanout-Multicast-Sitzungen. Der Ausgangsport in der Sitzung muss demselben Netzwerkprozessor zugeordnet sein wie der Eingangsport. Alle anderen Multicast-Fälle müssen wie normale Sitzungen verwaltet werden.
-
-
NAT-Prozess: Die SPU ist für die Zuordnung zwischen der internen IP-Adresse oder dem Port und der externen IP-Adresse oder dem externen Port verantwortlich. Wenn das erste Paket der Sitzung eintrifft, weist die SPU die IP-Adresse oder Portzuordnung zu und speichert die Informationen im Sitzungseintrag des Netzwerkprozessors. Wenn das NAT-Flag festgelegt ist, ändert der Netzwerkprozessor das Paket.
-
Sitzungsalterung: Um den Durchsatz für Service-Offload-Sitzungen zu verbessern, wird in jedem vordefinierten Zeitraum eine Kopie eines Pakets an die SPU gesendet, um den Paketverarbeitungsbedarf auf der SPU zu reduzieren. Um die Anzahl der an die SPU gesendeten Paketkopien zu begrenzen, wird für jede Service-Offload-Sitzung ein Zeitstempel implementiert. Der Netzwerkprozessor berechnet die verstrichene Zeit seit der letzten Sitzungsübereinstimmung. Wenn die verstrichene Zeit größer als der vordefinierte Zeitraum ist, sendet der Netzwerkprozessor eine Kopie des Pakets an die SPU und aktualisiert den Zeitstempel der Sitzung.
-
Sitzungsbeendigung und -löschung: Wenn der Netzwerkprozessor ein IP-Paket mit einem FIN (finished data) oder einem RST-Flag (Reset connection) empfängt, leitet er das Paket an die SPU weiter. Die SPU löscht dann den Sitzungscache auf dem Netzwerkprozessor. Der Netzwerkprozessor empfängt und leitet während des Zustandsübergangs weiterhin alle Pakete an die SPU weiter.
Flügel-Statistik-Zähler
In Express Path bietet der Netzwerkprozessor für jeden Flow-Eintrag die Option, einen Bytezähler pro Flügel beizubehalten. Der Zähler erfasst die Anzahl der Bytes, die der Netzwerkprozessor über den Flügel aussendet.
Wenn Sie den Zähler aktivieren, durchsucht der Netzwerkprozessor seinen Datenstromeintrag (einen Sitzungsflügel) nach jedem eingehenden Paket. Gehört das Paket zu einem etablierten Flow-Eintrag, erhöht der Netzwerkprozessor den Byte-Zähler des Flow-Eintrags im Paket. Der Netzwerkprozessor kopiert regelmäßig ein Paket (Kopierpaket) jedes Datenstromeintrags in die zugehörige SPU, sodass die SPU die Sitzung aufrechterhalten kann. Der Netzwerkprozessor sendet Flow-Byte-Zählerwerte im Header von Copy-Packet-Paketen. Die SPU sammelt und behält Statistikzähler pro Flügel.
Sie können die Statistikkonfiguration während des Lebenszyklus einer Live-Sitzung nicht ändern. Das Deaktivieren oder Aktivieren der Statistikkonfiguration pro Flügel, während eine Sitzung auf dem Netzwerkprozessor aktiv ist, macht die Sitzungsstatistik für die aktuelle Sitzung ungültig. Die neuen Sitzungsstatistiken können erst gültig sein, nachdem die Konfigurationsänderungen festgeschrieben wurden. Netzwerkprozessorzähler pro Flügel können nicht gelöscht werden.
Sessions pro Wing Statistik
Der Netzwerkprozessor verfügt über einen größeren statischen RAM (SRAM), um Sitzungsressourcen aufzunehmen, sodass mehr Sitzungen pro PIC gehostet werden. #concept_gkc_1ry_4sb__per-wing-sessions zeigt die Gesamtzahl der Session Wings an, einschließlich Express Path und Nicht-Express Path.
Verwenden Sie den Feature-Explorer , um die Plattform- und Release-Unterstützung für bestimmte Funktionen zu bestätigen. Weitere Plattformen können unterstützt werden.
Weitere Informationen finden Sie im Abschnitt #concept_gkc_1ry_4sb__section_azn_4yk_khc .
Zusätzliche Informationen zur Plattform
| Gesamtzahl der Flügel |
Anzahl der Express Path UDP-Flügel |
Anzahl der Express Path TCP Wings |
|||
|---|---|---|---|---|---|
| Karten und Firewall der SRX-Serie | Nicht-Express-Path-Modus-Sitzungen | Ohne Statistik | Mit Statistiken | Ohne Statistik | Mit Statistiken |
| Gerät der SRX5000-Reihe SRX5K-MPC (IOC2) |
1,8 Millionen |
1,8 Millionen |
1,8 Millionen |
1,8 Millionen |
1,8 Millionen |
| Gerät der SRX5000-Reihe SRX5K-MPC3 (IOC3) |
20 Millionen |
20 Millionen |
20 Millionen |
20 Millionen |
20 Millionen |
| Gerät der SRX5000-Reihe, SRX5K IOC4 |
10 Millionen |
10 Millionen |
10 Millionen |
10 Millionen |
10 Millionen |
| SRX4600 |
20 Millionen |
20 Millionen |
20 Millionen |
20 Millionen |
20 Millionen |
Express Path Packet Processing auf IOC-Karten
Express Path auf den IOC-Karten basiert auf der Verarbeitung von Fast-Path-Paketen über den Netzwerkprozessor-Chipsatz statt in der SPU, um einige grundlegende Firewall-Funktionen auf die IOC-Karte auszulagern.
Wenn Sie das Express Path-Feature aktiviert haben, bietet die IOC-Karte eine geringere Latenz und unterstützt auch einen höheren Durchsatz, indem die Überlastung der SPU entfernt wird. Die IOC-Karte unterstützt sowohl den Intra-Card-Datenverkehrsfluss als auch den Intercard-Datenverkehr. Um die besten Latenzergebnisse zu erzielen, müssen sich sowohl der Eingangsport als auch der Ausgangsport eines Datenverkehrsstroms auf demselben XM-Chip der IOC-Karte befinden.
Die IOC-Karte unterstützt 240 Gbit/s FPC und verwendet Netzwerkverarbeitungschipsätze (NP) der dritten Generation. Dieser neueste Lookup- und Queuing-Chip ist für höhere Kapazität optimiert. Die IOC-Karte ist mit SCB2 und SCB3 kompatibel, das frühere SCB wird nicht unterstützt.
Sie können aufgrund von Stromverbrauch und thermischen Einschränkungen nicht alle vier PICs auf der IOC-Karte gleichzeitig einschalten. Schalten Sie maximal zwei PICs in gerader oder ungerader Reihenfolge ein. Sie können den set chassis fpc <slot> pic <pic> power off Befehl verwenden, um den einzuschaltenden PIC auszuwählen.
Die Systemprotokollmeldungen lauten:
-
XMCHIP_CMERROR_DDRIF_INT_REG_CHKSUM_ERR_MINOR
-
XMCHIP_CMERROR_DDRIF_INT_REG_CHKSUM_ERR_MAJOR
Die Fehlermeldungen weisen darauf hin, dass der XM-Chip auf einem Flexible PIC Concentrator (FPC) einen Prüfsummenfehler erkannt hat, der Paketverluste verursacht. Die folgenden Fehlerschwellenwerte klassifizieren den Fehler als schwerwiegenden Fehler oder geringfügigen Fehler:
-
Geringfügiger Fehler — > 5 Fehler pro Sekunde
-
Schwerwiegender Fehler — > 255 Fehler pro Sekunde (maximale Anzahl)
In der Data Plane analysiert die IOC-Karte Pakete und sucht sie in der Flow-Tabelle. Wenn die IOC-Karte eine Übereinstimmung in der Datenstromtabelle findet, leitet sie Pakete basierend auf den Anweisungen in der Datenstromtabelle weiter. Die IOC-Karte kann NAT durchführen, den Layer 2 (L2)-Header einkapseln und die Pakete aus der Ausgangsschnittstelle weiterleiten. Die Ausgangsschnittstelle kann sich auf derselben IOC-Karte (Intra-Card-Case) oder einer anderen IOC-Karte (Inter-Card-Case) befinden.
Wenn die IOC-Karte das erste Paket empfängt, stimmt es mit keiner vorhandenen Fast-Forward-Sitzung überein. Die standardmäßige hashbasierte Weiterleitung wird ausgeführt, um das erste Paket an die SPU zu senden. Die SPU erstellt dann die Sicherheitssitzung. Wenn die SPU feststellt, dass der Datenverkehr für den schnellen Vorlauf qualifiziert ist und die zugehörige IOC-Karte den schnellen Vorlauf unterstützt, installiert sie die Sitzung zum schnellen Vorlauf auf der IOC-Karte. Wenn die schnelle Weiterleitung nicht auf den Datenverkehr angewendet werden kann, wird keine Sitzungsnachricht gesendet, und die IOC-Karte verwendet die standardmäßige hashbasierte Weiterleitung, um die Pakete an die SPU weiterzuleiten.
Wenn bei der Verarbeitung von Fast-Forward-IOC-Karten eine Fast-Forward-Sitzung abgeglichen wird, kann das Paket direkt entsprechend dem Ergebnis des Sitzungsflusses weitergeleitet werden. Die IOC-Karte führt alle erforderlichen Maßnahmen durch, z. B. die Weiterleitung des Pakets, die TTL-Prüfung und Verringerung der NAT-Übersetzung sowie die Layer-2-Header-Kapselung.
Zusätzlich sendet der XL-Chip zu einem vordefinierten Zeitpunkt eine Kopie des Weiterleitungspakets an die SPU. Diese Kopie wird verwendet, um die SPU-Sitzung zu aktualisieren, den aktuellen XL-Chipstatus zu ermitteln usw. Die SPU verbraucht dieses Paket und leitet es nicht weiter, da das eigentliche Paket verarbeitet und übertragen wurde.