Inhalt

Einleitung

Voraussetzungen

Anforderungen

Verwendete Komponenten

Hintergrundinformationen

Architektur- und Lösungsüberblick

Erforderliche Konfigurationen für AMF/SMF

Beispiel-Snap-of-Packets

Wichtige DNS-PODs und Konfiguration auf SMI-Ebene erforderlich

Einleitung

Dieses Dokument beschreibt die SCP Model-D-Kommunikationsstrategie zwischen Cisco AMF/SMF und Drittanbieter-NF.

Voraussetzungen

Anforderungen

Cisco empfiehlt, dass Sie über Kenntnisse in folgenden Bereichen verfügen:

- Funktionen der Zugangs- und Mobilitätsmanagementfunktion (AMF)

- Funktionalität der Session Management Function (SMF)

- Funktionen von Service Communication Proxy (SCP)

Verwendete Komponenten

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

Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.

Hintergrundinformationen

Betreiber weltweit können zwischen mehreren Kommunikationsmodellen wählen, bei denen SCP für die Erkennung von Netzwerkfunktionen (NF) und die anschließende Kommunikation zwischen NF und NF verwendet wird. In diesem Thema werden Konzepte zu verschiedenen Kommunikationsmodellen und den Anruffluss-/Konfigurationsänderungen behandelt, die bei Subscriber Microservices Infrastructure (SMI), AMF/SMF erforderlich sind, um eine SCP Model-D-basierte Kommunikation zu ermöglichen.

Architektur- und Lösungsüberblick

In der servicebasierten Architektur (SBA) fungiert der SCP als Vermittler, der die indirekte Kommunikation zwischen NFs durch die Verarbeitung von Routing, Lastenausgleich und Serviceerkennung erleichtert und so die servicebasierte Architektur letztendlich rationalisiert.

3GPP 23.501 Annex-E beschreibt die vier Kommunikationsmodelle zwischen NF in einer 5GC-Bereitstellung.

Abbildung A: (verschiedene Kommunikationsmodelle mit SCP)

Modell-A - Direkte Kommunikation ohne NRF-Interaktion (Network Repository Function): Die Verbraucher werden mit den "NF-Profilen" der Hersteller konfiguriert und kommunizieren direkt mit einem Hersteller ihrer Wahl. Hierbei handelt es sich um eine statische Auswahl, und es werden weder NRF noch SCP verwendet.

Modell B - Direkte Kommunikation mit NRF-Interaktion: Verbraucher ermitteln die Ergebnisse, indem sie die NRF abfragen. Auf der Grundlage des Erkennungsergebnisses führt der Consumer die Auswahl durch. Der Verbraucher sendet die Anfrage an den ausgewählten Hersteller.

Modell C - Indirekte Kommunikation ohne delegierte Erkennung: Verbraucher ermitteln durch Abfrage der NRF. Auf der Grundlage des Erkennungsergebnisses wählt der Consumer einen NF-Satz oder eine bestimmte NF-Instanz des NF-Satzes aus. Der Consumer sendet die Anforderung an den SCP, der die Adresse des ausgewählten Service-Herstellers enthält und auf eine NF-Service-Instanz oder eine Gruppe von NF-Service-Instanzen verweist. Im letzteren Fall wählt das SCP eine NF Service-Instanz aus. Wenn möglich, interagiert das SCP mit NRF, um Auswahlparameter wie Standort, Kapazität usw. abzurufen. Der SCP leitet die Anforderung an die ausgewählte NF-Service-Producer-Instanz weiter.

Modell D - Indirekte Kommunikation mit delegierter Erkennung: Die Verbraucher sind nicht an der Entdeckung oder Auswahl beteiligt. Der Verbraucher fügt der Serviceanfrage alle erforderlichen Erkennungs- und Auswahlparameter hinzu, die erforderlich sind, um einen geeigneten Hersteller zu finden. Der SCP verwendet die Anforderungsadresse sowie die Ermittlungs- und Auswahlparameter in der Anforderungsnachricht, um die Anforderung an eine geeignete Erzeugerinstanz weiterzuleiten. Der SCP kann die Erkennung mit einem NRF durchführen und ein Erkennungsergebnis abrufen.

Details zur modellbasierten Kommunikation: Wenn Call Model-D verwendet wird, sendet der NF-Consumer keine direkte Anfrage an den NRF, sondern delegiert diese Erkennung an den SCP. Der NF-Client sendet eine Nachricht an den SCP und verkettet für jeden dieser Erkennungsfaktoren die Zeichenfolge "3gpp-sbi-discovery" mit dem Namen des Erkennungsfaktors, der verwendet wird, wenn die NF-Erkennung über den NRF erfolgt.

In einem Szenario, in dem SMF nach Unified Data Management (UDM) mit den Servicenamen nudm-sdm sucht, werden die Erkennungsfaktoren an den SCP übergeben:

- Autoritätsüberschrift: die Behörde entweder den vollqualifizierten Domänennamen (Fully Qualified Domain Name, FQDN) oder die IP-Adresse trägt, wobei der Konfiguration der IP-Adresse Priorität eingeräumt wird.

- 3gpp-sbi-discovery-requester-nf-type: SMF

- 3gpp-sbi-discovery-target-nf-type: UDM

- 3gpp-Sbi-discovery-service-name: nudm-sdm

Abbildung B: (SMF-UDM Kommunikation über SCP Modell D)

Anmerkung: Das 3gpp-sbi-discovery-service Namensformat ist im reinen Zeichenfolgenformat und nicht im Arrayformat gemäß 3gpp 29.510 und offenen API-Definitionen (4.7.12.4 Style). Im 29.510 wird 3gpp-sbi-discovery-service-name als Arrayformat erwähnt.

Abbildung C: (Snapshot aus der Spezifikation 29.510)

Allerdings konvertiert style:form und explode:false das Array in einen einfachen String, der anhand eines Beispiels aus OpenAPI erklärt wird.

Abbildung D: (Snapshot von Open API: (Stilbeispiele 4.7.12.4)

Sie verfügen sowohl in AMF als auch in SMF über eine CLI-Steuerung, um den Parameter "3gpp-sbi-discovery-service" zu senden, da dieser optional ist (dies kann je nach Bereitstellungsumgebung erfolgen).

Im Fall von Modell B, wenn Sie sich das Beispiel der AMF- und der Authentication Server Function (AUSF)-Kommunikation ansehen, sendet die AMF nach der Erkennung von AUSF den POST-Test an AUSF mit AUSF IP/FQDN und Port.

POST: http://<ausf-fqdn>:<port>/nausf-auth/v1/ue-authentifizierungen.

Abbildung E: (AMF-AUSF-Kommunikation über Modell B)

Da die Erkennung im Modell D vom SCP durchgeführt wird, sendet die AMF anstelle von POST-http(s)://<ausf-fqdn>:<ausf-port>/nausf-auth/v1/ue-authentifizierungen die geänderte POST-Anforderung:

POST http(s)://<scp-fqdn>:<scp-port>/nausf-auth/v1/ue-authentifizierungen

ODER

POST http(s)://<scp-fqdn>:<scp-port>/nscp-route/nausf-auth/v1/ue-authentifizierungen(if apiroot=nscp-route)

Mit

3gpp-Sbi-Discovery-target-nf-type: AUSF

3gpp-Sbi-Discovery-Preferred-Locality: LOC1

3gpp-Sbi-Discovery-Dienstname

Hier sehen Sie, dass AMF die API-Root (<ausf-fqdn>:<ausf-port>) der AUSF durch die API-Root der SCP ersetzt hat.

Abbildung F: (AMF-AUSF-Kommunikation über SCP-Modell D)

Die 3gpp-sbi-discovery-Parameter ermöglichen dem SCP, die beste NF abzurufen und dann die POST-Anforderung weiterzuleiten, bei der die api-root des SCP durch die api-root ersetzt wird, die vom NRF empfangen wurde, nachdem die Antwort auf die Ermittlungsanforderung empfangen wurde.

Erforderliche Konfigurationen für AMF/SMF

Um für jede NF (z.B. UDM) anzugeben, welches Anrufmodell verwendet werden muss, wird die Konfiguration des nf-Auswahllösungsmodells innerhalb des zugehörigen 'Profilnetzwerkelements' verwendet.

profile network-element udm prf-udm-scp

[...]

nf-selection-model priority <>[local | nrf-query | nrf-query-peer-input | nrf-query-and-scp | scp]

exit

Nach der Auswahl von Model-D werden die für das zugeordnete Netzwerkelement konfigurierten Abfrageparameter weiterhin verwendet und im Format '3gpp-Sbi-Discovery-<Abfrageparameter>' an den SCP übergeben.

[smf] smf(config)# profile network-element udm prf-udm-scp

[smf] smf(config-udm-udm1)# query-params

Possible completions:

[  chf-supported-plmn  dnn  requester-snssais  tai  target-nf-instance-id  target-plmn ]

Schließlich wird das Profilnetzwerkelement dem Profil Datennetzwerkname (dnn) zugeordnet.

profile dnn ims

network-element-profiles udm prf-udm-scp

network-element-profiles scp prf-scp

exit

SCP(s) sind als Netzwerkelement definiert.

nf-client-profile und ein Fehlerbehandlungsprofil werden dem Netzwerkelement zugeordnet.

profile network-element scp <>

nf-client-profile        <>

failure-handling-profile <>

exit

Das NF-Client-Profil vom Typ "scp-profile" beschreibt die Merkmale des SCP-Endpunkts.

Hier kann nscp-route in api-root hinzugefügt werden.

profile nf-client nf-type scp

scp-profile <>

locality LOC1

priority 30

service name type <>

responsetimeout 4000

endpoint-profile EP1

capacity   30

api-root   nscp-route

priority   10

uri-scheme http

endpoint-name scp-customer.com

priority 10

capacity 50

primary ip-address ipv4

primary ip-address port

fqdn name <>

fqdn port <>

exit

Der SMF-FQDN wird in der Southbound-Schnittstelle (SBI) des Endpunkts konfiguriert.

endpoint sbi

relicas 2

nodes 2

fqdn <>

Beispiel-Snap-of-Packets

Abbildung G: ( AMF- SMF nsmf-pdusession Kommunikation über SCP Modell D)

Aus dem Profil muss auf das soeben konfigurierte SCP-Netzwerkelement verwiesen werden.

profile dnn <>

network-element-profiles udm <>

network-element-profiles scp <>

exit

Wenn die SCP-Fehlerbehandlung mit Aktion als Wiederholungsversuch konfiguriert ist, versucht SMF, die SCP auf der Grundlage der SCP-Konfiguration und der Anzahl der Wiederholungsversuche zu wechseln.

Wenn die SCP-Fehlerbehandlung mit Aktion als Retry-and-Fallback für einen bestimmten Dienstnamen und Nachrichtentyp konfiguriert ist, wird der Fallback auf Modell A ausgeführt.

Dieses Fail Handling Profile für SCP (FHSCP) wird verwendet, wenn der Fehler vom SCP (Server-Header, der den SCP angibt) ausgelöst wird und die NF-Client-Konfiguration für den Peer vorhanden ist.

profile nf-client-failure nf-type scp

profile failure-handling <>

service name type npcf-smpolicycontrol

responsetimeout 1800

message type PcfSmpolicycontrolCreate

status-code httpv2 0,307,429,500,503-504

retry  1

action retry-and-fallback

exit

Beispiel für das NF-Client-Profil für die Policy Control Function (PCF) für das Szenario, in dem für den Nachrichtentyp "PcfSmpolicycontrolCreate" der Wiederholungsversuch und das Failover für die Aktion konfiguriert sind:

profile nf-client nf-type pcf

pcf-profile <>

locality LOC1

priority 1

service name type npcf-smpolicycontrol

endpoint-profile epprof

capacity   10

priority   1

uri-scheme http

endpoint-name ep1

priority 1

capacity 10

primary ip-address ipv4 <>

primary ip-address port <>

exit

endpoint-name ep2

priority 1

capacity 10

primary ip-address ipv4 <>

primary ip-address port <>

exit

Wichtige DNS-PODs und Konfiguration auf SMI-Ebene erforderlich

CoreDNS-PODs, die Teil des kube-system-Namespaces sind, werden als 2-POD-Replikat bereitgestellt. Diese PODs können auf jedem der beiden Master-/Steuerknoten geplant werden und sind unabhängig davon, wo die IP-Adresse des Namenservers im Cluster-Manager konfiguriert ist.

Es wird jedoch empfohlen, die IP-Adresse des Nameservers in allen Steuerungs-/Master-Knoten zu konfigurieren, da Sie kein Label-Steuerelement haben, um die CoreDNS-Pods nach Ihren Wünschen zu drehen. Wenn die Route zu den Nameservern auf keinem der Master-Server vorhanden ist, auf denen CoreDNS bereitgestellt ist, kann die SMF/AMF-Cluster-Synchronisierung nicht durchgeführt werden.

Derzeit leitet CoreDNS DNS-Anfragen an den Namenserver weiter, der in der Datei resolv.conf angegeben ist.

'kubectl edit configmap coredns -n kube-system' Sie haben:

{

forward ./etc/resolv.conf{

max_concurrent 1000

}

Wenn Sie /etc/resolv.conf auf dem Master-Knoten überprüfen, auf dem der Dienst gestartet wird, muss er Folgendes enthalten:

name server <>

name server <>

Beispiel für eine Namenserver-Konfiguration im Master-/Kontrollknoten:

nodes <>

initial-boot netplan vlans <>

dhcp4 false

dhcp6 false

addresses [<>]

nameserver addresses [<>]

id <>

link <>

exit