5. IP-Verkehrsverarbeitung (IP Traffic Processing)
Wie in Abschnitt 4.4.1, "Die Sicherheitsrichtliniendatenbank (SPD)", erwähnt, MUSS die SPD (oder zugehörige Caches) während der Verarbeitung des gesamten Verkehrs, der die IPsec-Schutzgrenze überschreitet, einschließlich IPsec-Verwaltungsverkehr, konsultiert werden. Wenn keine Richtlinie in der SPD gefunden wird, die mit einem Paket übereinstimmt (entweder für eingehenden oder ausgehenden Verkehr), MUSS das Paket verworfen werden.
Um die Verarbeitung zu vereinfachen und sehr schnelle SA-Lookups zu ermöglichen (für SG/BITS/BITW), führt dieses Dokument das Konzept eines SPD-Caches für den gesamten ausgehenden Verkehr (SPD-O plus SPD-S) und einen Cache für eingehenden, nicht IPsec-geschützten Verkehr (SPD-I) ein.
5.1. Ausgehende IP-Verkehrsverarbeitung (Outbound IP Traffic Processing)
Betrachten Sie zunächst den Pfad für Verkehr, der über eine geschützte Schnittstelle in die Implementierung eintritt und über eine ungeschützte Schnittstelle austritt.
IPsec MUSS die folgenden Schritte beim Verarbeiten ausgehender Pakete ausführen:
-
Wenn ein Paket von der Teilnehmer-(geschützten) Schnittstelle ankommt, rufen Sie die SPD-Auswahlfunktion auf, um die erforderliche SPD-ID zu erhalten, um die entsprechende SPD auszuwählen.
-
Gleichen Sie die Paket-Header mit dem Cache für die durch die SPD-ID aus Schritt 1 angegebene SPD ab.
3a. Wenn eine Übereinstimmung vorliegt, verarbeiten Sie das Paket wie durch den übereinstimmenden Cache-Eintrag angegeben, d. h. BYPASS, DISCARD oder PROTECT unter Verwendung von AH oder ESP.
3b. Wenn keine Übereinstimmung im Cache gefunden wird, durchsuchen Sie die durch SPD-ID angegebene SPD (SPD-S- und SPD-O-Teile).
- Das Paket wird an die ausgehende Weiterleitungsfunktion übergeben, um die Schnittstelle auszuwählen, an die das Paket gerichtet wird.
5.1.1. Behandlung eines ausgehenden Pakets, das verworfen werden muss
Wenn ein IPsec-System ein ausgehendes Paket erhält, das es verwerfen muss, SOLLTE es in der Lage sein, eine ICMP-Nachricht zu generieren und zu senden, um dies der Quelle anzuzeigen.
5.1.2. Header-Konstruktion für Tunnelmodus
Dieser Abschnitt beschreibt die Behandlung von Feldern im äußeren IP-Header für Tunnelmodus-SAs.
5.1.2.1. IPv4: Header-Konstruktion für Tunnelmodus
Wenn ein IPv4-Datagramm für die Übertragung im Tunnelmodus eingekapselt wird, umfasst der äußere IP-Header die folgenden Felder:
- Version: 4
- IHL (Internet Header Length): Typischerweise 5, es sei denn, Optionen sind vorhanden
- Type of Service (TOS): Siehe Traffic-Class-Mapping unten
- Gesamtlänge (Total Length): Länge des gesamten IP-Datagramms
- TTL (Time to Live): Konfigurierbarer Wert
- Protokoll (Protocol): AH (51) oder ESP (50)
5.1.2.2. IPv6: Header-Konstruktion für Tunnelmodus
Wenn ein IPv6-Datagramm für die Übertragung im Tunnelmodus eingekapselt wird, umfasst der äußere IP-Header die folgenden Felder:
- Version: 6
- Traffic Class: Siehe Traffic-Class-Mapping unten
- Flow Label: Konfigurierbar
- Next Header: AH (51) oder ESP (50)
5.2. Verarbeitung eingehenden IP-Verkehrs
Mehrere Pfade existieren für die eingehende Verarbeitung von IP-Verkehr.
5.2.1. Ungeschützt zu Geschützt
Dieser Abschnitt beschreibt die Verarbeitung für Verkehr, der an einer ungeschützten Schnittstelle ankommt und für eine geschützte Schnittstelle bestimmt ist. IPsec MUSS die folgenden Schritte ausführen:
-
IPsec-Verarbeitung: Wenn das Paket ein IPsec-Paket (AH oder ESP) ist, führen Sie die IPsec-Verarbeitung unter Verwendung des durch das SPI ausgewählten SAD-Eintrags durch.
-
Selektorprüfung: Wenn das Paket über eine SA angekommen ist, überprüfen Sie, ob die Selektoren des Pakets mit den Selektoren für die SA übereinstimmen.
-
SPD-Lookup: Suchen Sie die Selektoren des Pakets in der entsprechenden SPD (SPD-I).
-
Weiterleitung: Wenn das Paket alle Prüfungen bestanden hat, leiten Sie es an die entsprechende geschützte Schnittstelle weiter.
5.2.2. Geschützt zu Geschützt oder Geschützt zu Ungeschützt
Verkehr, der von einer geschützten Schnittstelle stammt, wird ähnlich wie ausgehender Verkehr behandelt, wie in Abschnitt 5.1 beschrieben.
Verwandte Abschnitte: