In dit document worden de stappen beschreven voor het configureren van de virtuele DNN/APN in de Cisco SMF- en UPF-netwerkelementen.
In 3GPP 5G-architectuur is een Data Network Name (DNN) het 5G-equivalent van een Access Point Name (APN) in 4G/LTE. Het identificeert het gegevensnetwerk waarop een PDU-sessie is ingesteld. In een standaardimplementatie wordt één DNN uniform gebruikt voor alle netwerkfuncties (NF's) die betrokken zijn bij sessiebeheer, waaronder Unified Data Management (UDM), AMF, SMF, CHF, UPF, RADIUS en PCF.
Een Virtual DNN stelt het netwerk in staat om een andere DNN-identiteit te presenteren aan specifieke netwerkfuncties terwijl het een Base DNN gebruikt voor abonneeinteracties met andere netwerkfuncties. Dit maakt differentiatie van de kosten, selectieve beleidshandhaving en servicescheiding mogelijk zonder aparte fysieke infrastructuur of wijzigingen aan abonnementsgegevens in de UDM.
Dit document biedt een technische oplossing voor:
Ondersteunde implementatiemodellen:
| Model |
Beschrijving |
voorbeelden |
|---|---|---|
| Geo-gerepliceerde SMF |
Twee SMF-sites gekoppeld voor redundantie. Wijzigingen die gelijktijdig op beide sites worden toegepast. |
2 instanties per SMF (_inst1, _inst2) |
| Standalone SMF |
Single SMF zonder geo-replicatie. |
1 instantie (alleen_inst1) |
Ondersteunde implementatiemethoden:
| methode |
Beschrijving |
|---|---|
| NSO MoP Automation |
Configuratie geïmplementeerd via Cisco NSO RESTful API met behulp van MoP-automatiseringspayloads |
| Directe CLI |
Configuratie rechtstreeks toegepast op SMF/UPF CLI |
Bij een standaard 5G Core-implementatie wordt, wanneer een UE een PDU-sessie met een specifieke DNN initieert, dezelfde DNN-identiteit verzonden naar alle netwerkfuncties die betrokken zijn bij de levenscyclus van de sessie - UDM, CHF, UPF, RADIUS en PCF. Dit creëert specifieke uitdagingen.
Zonder een virtuele DNN-mogelijkheid moeten exploitanten:
De Virtual DNN-functie lost deze problemen op door selectieve DNN-identiteitspresentatie toe te staan aan individuele netwerkfuncties. Het belangrijkste mechanisme is:
Virtuele DNN - Netwerkfunctie InteractiegedragHet proces voor het SMF om een Base DNN (ontvangen van AMF) op te lossen in een Virtual DNN is:
SMF Base DNN naar Virtual DNN Resolution Flow
Stappen op hoog niveau:
| optie |
NF-lijst |
PCF-interactie |
RADIUS Auth |
Use case |
|---|---|---|---|---|
| Optie A |
[ CHF UPF-straal ] |
Uitgeschakeld |
Ingeschakeld |
UDM gebruikt Base DNN; geen PCF; RADIUS ingeschakeld |
| Optie B |
[ CHF UDM UPF PCF ] |
Ingeschakeld |
Uitgeschakeld |
Geen RADIUS-auteur; PCF ingeschakeld |
| Optie C |
[ CHF UPF ] |
Uitgeschakeld |
Uitgeschakeld |
Minimale NF-interactie (alleen CHF + UPF) |
Opmerking: Wijzig de configuratie op basis van de vereiste.
| Sessietype |
SMF-configuratie |
UPF pdp-type |
|---|---|---|
| Alleen IPv4 |
sessietype IPV4 |
PDP-type IPv4 |
| Alleen IPv6 |
sessietype IPV6 |
PDP-type IPv6 |
| IPv4v6 (dubbele stapel) |
sessietype IPV4V6 |
PDP-type IPv4 IPv6 |
Methode 1. Directe CLI op SMF
Uitvoeren op alle beoogde SMF's (beide geo-gerepliceerde sites tegelijk).
Voeg voorrang vermeldingen in beleid abonnee polsub om de abonnee in kaart te brengen (door SUPI bereik, landcode en instantie) om de virtuele DNN operator beleid.
config policy subscriber polsub precedence 1 supi-start-range <SUPI-START> supi-stop-range <SUPI-STOP> cc-start-range <CC-VALUE> cc-stop-range <CC-VALUE> instance-start-range 1 instance-stop-range 1 operator-policy oppol_<VDNN>_inst1 exit precedence 2 supi-start-range <SUPI-START> supi-stop-range <SUPI-STOP> cc-start-range <CC-VALUE> cc-stop-range <CC-VALUE> instance-start-range 2 instance-stop-range 2 operator-policy oppol_<VDNN>_inst2 exit exit
Maak het operatorbeleid voor elk exemplaar en wijs naar het virtuele DNN-beleid DNN.
config policy operator oppol_<VDNN>_inst1 policy dnn poldnn_<VDNN>_inst1 exit policy operator oppol_<VDNN>_inst2 policy dnn poldnn_<VDNN>_inst2 exit
Hier wordt de virtuele DNN-substitutie gedefinieerd. De inkomende Base DNN (van AMF) wordt toegewezen aan het Virtual DNN-profiel.
config policy dnn poldnn_<VDNN>_inst1 dnn <BASE-DNN-NAME> profile dnnprof-<VDNN>_inst1 exit policy dnn poldnn_<VDNN>_inst2 dnn <BASE-DNN-NAME> profile dnnprof-<VDNN>_inst2 exit
Het DNN-profiel definieert de Virtual DNN-naam, de NF-lijst (waarop NF's de Virtual DNN ontvangen), de RMGR-tag (gedeelde bronkoppeling) en andere sessieparameters.
config profile dnn dnnprof-<VDNN>_inst1 dns primary ipv4 <PRIMARY-DNS-IP> dns secondary ipv4 <SECONDARY-DNS-IP> network-element-profiles chf <CHF-PROFILE> network-element-profiles amf <AMF-PROFILE> network-element-profiles udm <UDM-PROFILE> network-element-profiles scp <SCP-PROFILE> dnn <VIRTUAL-DNN-NAME> network-function-list [ chf radius upf ] dnn rmgr <RMGR-TAG>_1 timeout up-idle <UP-IDLE-TIMEOUT> cp-idle <CP-IDLE-TIMEOUT> charging-profile <CHARGING-PROFILE> wps-profile <WPS-PROFILE> ssc-mode 1 allowed [ 2 ] session type <SESSION-TYPE> upf apn <VIRTUAL-DNN-NAME> qos-profile <QOS-PROFILE> authentication secondary radius group <RADIUS-GROUP> authentication algorithm pap 1 always-on false dcnr true pcf-interaction false userplane-inactivity-timer <INACTIVITY-TIMER> only-nr-capable-ue false eventmgmt-policy <EVENT-POLICY> exit profile dnn dnnprof-<VDNN>_inst2 dns primary ipv4 <PRIMARY-DNS-IP> dns secondary ipv4 <SECONDARY-DNS-IP> network-element-profiles chf <CHF-PROFILE> network-element-profiles amf <AMF-PROFILE> network-element-profiles udm <UDM-PROFILE> network-element-profiles scp <SCP-PROFILE> dnn <VIRTUAL-DNN-NAME> network-function-list [ chf radius upf ] dnn rmgr <RMGR-TAG>_2 timeout up-idle <UP-IDLE-TIMEOUT> cp-idle <CP-IDLE-TIMEOUT> charging-profile <CHARGING-PROFILE> wps-profile <WPS-PROFILE> ssc-mode 1 allowed [ 2 ] session type <SESSION-TYPE> upf apn <VIRTUAL-DNN-NAME> qos-profile <QOS-PROFILE> authentication secondary radius group <RADIUS-GROUP> authentication algorithm pap 1 always-on false dcnr true pcf-interaction false userplane-inactivity-timer <INACTIVITY-TIMER> only-nr-capable-ue false eventmgmt-policy <EVENT-POLICY> exit
apn <VIRTUAL-DNN-NAME>
gtpp group gtpp_group
active-charging rulebase rulebase-mobility
exit
Methode 2: NSO MoP-automatisering
Configuratiebestand: virtual_dnn_new_optionA.cfg
Pad: /var/opt/ncs/mops
(Bestandsinhoud hetzelfde als CLI als eerder)
NSO Payload (Geo-Replicated – beide sites):
POST: http://<NSO-SERVER>:8080/restconf/operations/mop-mop:action/mop-automation
{
"mop-automation": {
"mop-file-name": [
{
"file-name": "virtual_dnn_new_optionA.cfg",
"order": 1,
"target-devices-list": [
{ "target-device-name": "<SMF-NODE-SITE-A>" },
{ "target-device-name": "<SMF-NODE-SITE-B>" }
]
}
],
"operation-type": "dry-run"
}
}
Let op: voer eerst uit met 'operation-type: dry-run' om de delta-configuratie te valideren. Eenmaal gevalideerd, verander naar 'operation-type: commit' om toe te passen.
Na het vastleggen van het nieuwe virtuele DNN-profiel op SMF:
show system status show running-status info | nomore show running-config profile dnn <VIRTUAL-DNN-PROFILE-INST1> show running-config profile dnn <VIRTUAL-DNN-PROFILE-INST2>
Bevestig: Systeemstatus 100%, geen BGP- of CDL-pod wordt opnieuw opgestart.
Voeg de Virtual DNN APN-configuratie toe aan alle UPF's die de Virtual DNN op beide sites bedienen.
Alleen voor IPV4:
config
context <UPF-CONTEXT>
apn <VIRTUAL-DNN-NAME>
pdp-type ipv4
selection-mode subscribed sent-by-ms chosen-by-sgsn
gtpp group <GTPP-GROUP>
ip access-group <IPV4-ACL-NAME> in
ip source-violation ignore
ip context-name <UPF-CONTEXT>
active-charging rulebase <RULEBASE-NAME>
exit
exit
end
Alleen voor IPV6:
config
context <UPF-CONTEXT>
apn <VIRTUAL-DNN-NAME>
pdp-type ipv6
selection-mode subscribed sent-by-ms chosen-by-sgsn
gtpp group <GTPP-GROUP>
ipv6 access-group <IPV6-ACL-NAME> in
ip source-violation ignore
ip context-name <UPF-CONTEXT>
active-charging rulebase <RULEBASE-NAME>
exit
exit
end
Voor IPV4V6 (Dual Stack):
config
context <UPF-CONTEXT>
apn <VIRTUAL-DNN-NAME>
pdp-type ipv4 ipv6
selection-mode subscribed sent-by-ms chosen-by-sgsn
gtpp group <GTPP-GROUP>
ip access-group <IPV4-ACL-NAME> in
ip source-violation ignore
ip context-name <UPF-CONTEXT>
ipv6 access-group <IPV6-ACL-NAME> in
active-charging rulebase <RULEBASE-NAME>
exit
exit
end
NSO MoP Automation (UPF):
Configuratiebestand: virtual_dnn_upf_new.cfg
Pad: /var/opt/ncs/mops
POST: http://<NSO-SERVER>:8080/restconf/operations/mop-mop:action/mop-automation
{
"mop-automation": {
"mop-file-name": [
{
"file-name": "virtual_dnn_upf_new.cfg",
"order": 1,
"target-devices-list": [
{ "target-device-name": "<UPF-NODE-SITE-A-1>" },
{ "target-device-name": "<UPF-NODE-SITE-A-2>" },
{ "target-device-name": "<UPF-NODE-SITE-A-3>" },
{ "target-device-name": "<UPF-NODE-SITE-A-4>" },
{ "target-device-name": "<UPF-NODE-SITE-B-1>" },
{ "target-device-name": "<UPF-NODE-SITE-B-2>" },
{ "target-device-name": "<UPF-NODE-SITE-B-3>" },
{ "target-device-name": "<UPF-NODE-SITE-B-4>" }
]
}
],
"operation-type": "dry-run"
}
}
show configuration context <UPF-CONTEXT> apn <VIRTUAL-DNN-NAME> show system status show session summary
Sla na een succesvolle configuratie op alle UPF's de configuratie op zodat deze tijdens het opnieuw opstarten blijft bestaan. Uitvoeren op elke UPF:
show boot show dir /flash show dir /sftp cp /flash/<PRODUCTION-CONFIG>.cfg /sftp/<PRODUCTION-CONFIG>_Backup-<DATE>.cfg save configuration /flash/<PRODUCTION-CONFIG>.cfg -noconfirm
Gebruik deze sectie wanneer de Virtual DNN al bestaat op de SMF en u de configuratie ervan moet wijzigen (bijvoorbeeld de NF-lijst wijzigen, PCF-interactie uitschakelen/inschakelen, RADIUS-instellingen wijzigen).
Stappen op hoog niveau:
Doel: Voorkomt nieuwe PDU-sessieinstellingen op de virtuele DNN terwijl configuratiewijzigingen worden toegepast. Bestaande sessies blijven onaangetast.
Methode 1. Directe CLI op SMF
Uitvoeren op alle beoogde SMF's:
config profile dnn <VIRTUAL-DNN-PROFILE-INST1> mode offline exit profile dnn <VIRTUAL-DNN-PROFILE-INST2> mode offline exit show config diff | nomore commit
Methode 2. NSO MoP Automation
Configuratiebestand: virtual_dnn_offline.cfg
Pad: /var/opt/ncs/mops
POST: http://<NSO-SERVER>:8080/restconf/operations/mop-mop:action/mop-automation
{
"mop-automation": {
"mop-file-name": [
{
"file-name": "virtual_dnn_offline.cfg",
"order": 1,
"target-devices-list": [
{ "target-device-name": "<SMF-NODE-SITE-A>" },
{ "target-device-name": "<SMF-NODE-SITE-B>" }
]
}
],
"operation-type": "dry-run"
}
}
Let op: voer eerst uit met 'operation-type: dry-run' om te valideren. Verander vervolgens naar 'operation-type: commit' om toe te passen.
Verificatie na stap:
show system status show running-status info | nomore
De systeemstatus moet 100% blijven. Geen BGP- of CDL-pod herstart en geen invloed op bestaande oproepen.
Scenario 1. UDM verwijderen uit NF-lijst en PCF-interactie uitschakelen
Doel: Virtual DNN alleen verzonden naar CHF, UPF en RADIUS. UDM maakt gebruik van Base DNN. PCF uitgeschakeld.
Directe CLI:
config profile dnn <VIRTUAL-DNN-PROFILE-INST1> no mode offline dnn <VIRTUAL-DNN-NAME> network-function-list [ chf upf radius ] pcf-interaction false exit profile dnn <VIRTUAL-DNN-PROFILE-INST2> no mode offline dnn <VIRTUAL-DNN-NAME> network-function-list [ chf upf radius ] pcf-interaction false exit show config diff | nomore commit
NSO MoP Automation:
Configuratiebestand: virtual_dnn_modify_no_udm_no_pcf.cfg
POST: http://<NSO-SERVER>:8080/restconf/operations/mop-mop:action/mop-automation
{
"mop-automation": {
"mop-file-name": [
{
"file-name": "virtual_dnn_modify_no_udm_no_pcf.cfg",
"order": 1,
"target-devices-list": [
{ "target-device-name": "<SMF-NODE-SITE-A>" },
{ "target-device-name": "<SMF-NODE-SITE-B>" }
]
}
],
"operation-type": "dry-run"
}
}
Verwachte configuratie na wijziging:
profile dnn <VIRTUAL-DNN-PROFILE-INST1> dns primary ipv4 <PRIMARY-DNS-IP> dns secondary ipv4 <SECONDARY-DNS-IP> network-element-profiles chf <CHF-PROFILE> network-element-profiles amf <AMF-PROFILE> network-element-profiles udm <UDM-PROFILE> network-element-profiles scp <SCP-PROFILE> dnn <VIRTUAL-DNN-NAME> network-function-list [ chf upf radius ] dnn rmgr <BASE-DNN-RMGR-INST1> timeout up-idle <UP-IDLE-TIMEOUT> cp-idle <CP-IDLE-TIMEOUT> charging-profile <CHARGING-PROFILE> wps-profile <WPS-PROFILE> ssc-mode 1 allowed [ 2 ] session type <SESSION-TYPE> upf apn <VIRTUAL-DNN-NAME> qos-profile <QOS-PROFILE> authentication secondary radius group <RADIUS-GROUP> authentication algorithm pap 1 always-on false dcnr true pcf-interaction false userplane-inactivity-timer <INACTIVITY-TIMER> only-nr-capable-ue false eventmgmt-policy <EVENT-POLICY> exit
show system status show running-status info | nomore show running-config profile dnn <VIRTUAL-DNN-PROFILE-INST1> show running-config profile dnn <VIRTUAL-DNN-PROFILE-INST2>
Bevestig: Systeemstatus 100%, geen BGP- of CDL-pod herstart, geen invloed op bestaande oproepen.
Abonnee van monitor starten op de SMF CLI:
monitor subscriber supi imsi-<TEST-IMSI>
Verwacht gedrag in Trace:
| controlepost |
verwacht resultaat |
|---|---|
| Aanvraag voor instelling PDU-sessie |
DNN = <Base-DNN-NAME> ontvangen van AMF |
| UDM-interactie (NUDM_SDM) |
DNN verzonden naar UDM = Base DNN (via dnn rmgr) |
| CHF-interactie (NCHF_ConvergedCharging) |
DNN verzonden naar CHF = <VIRTUAL-DNN-NAME> |
| UPF (PFCP Session Establishment) |
APN = <VIRTUAL-DNN-NAME> |
| RADIUS Access-Request (indien ingeschakeld) |
Aangeroepen-Station-ID = <VIRTUAL-DNN-NAME> |
| PCF-interactie (Npcf_SMPopolicyControl) (indien ingeschakeld) |
DNN = <VIRTUAL-DNN-NAME> |
| PCF-interactie (indien uitgeschakeld) |
Geen pcf-berichten in spoor |
| PDU-sessieinstelling Accepteren |
Sessie succesvol ingesteld |
| IP-adrestoewijzing |
Geldige IP toegewezen vanuit de juiste pool |
Voorbeeldmonitor Abonnee-uitvoer (sleutelvelden):
--- PDU Session Establishment Request --- DNN: <VIRTUAL-DNN-NAME> S-NSSAI: SST=1, SD=<SD-VALUE> PDU Session Type: <SESSION-TYPE> --- Nudm_SDM (Subscription Data) --- DNN: <BASE-DNN-NAME> <-- Base DNN used for UDM lookup --- Nchf_ConvergedCharging_Create --- DNN: <VIRTUAL-DNN-NAME> <-- Virtual DNN sent to CHF --- PFCP Session Establishment Request (to UPF) --- APN: <VIRTUAL-DNN-NAME> <-- Virtual DNN sent to UPF --- RADIUS Access-Request (if applicable) --- Called-Station-Id: <VIRTUAL-DNN-NAME> <-- Virtual DNN sent to RADIUS --- Npcf_SMPolicyControl_Create (if applicable) --- DNN: <VIRTUAL-DNN-NAME> <-- Virtual DNN sent to PCF --- PDU Session Establishment Accept --- PDU Address: <ALLOCATED-IP> DNN: <VIRTUAL-DNN-NAME>
Controleren sessie op UPF:
show subscribers imsi <TEST-IMSI>
show subscribers user-plane-only full callid <callid>
| variabele |
Beschrijving |
Voorbeeldwaarde |
|---|---|---|
| <VIRTUAL-DNN-NAME> |
De virtuele DNN-id |
Enterprise-IoT.cc |
| <VIRTUAL-DNN-PROFILE-INST1> |
DNN-profielnaam, instantie 1 |
dnnprof-enterprise-iot.cc_inst1 |
| <VIRTUAL-DNN-PROFILE-INST2> |
DNN-profielnaam, instantie 2 |
dnnprof-enterprise-iot.cc_inst2 |
| <BASE-DNN-RMGR-INST1> |
Resource manager voor basis DNN, instantie 1 |
base-apn.operator_1 |
| <BASE-DNN-RMGR-INST2> |
Resource manager voor basis DNN, instantie 2 |
base-apn.operator_2 |
| <SMF-NODE-SITE-A> |
SMF-knooppuntnaam op site A |
SMF-SITE-A |
| <SMF-NODE-SITE-B> |
SMF-knooppuntnaam op site B |
SMF-SITE-B |
| <UPF-NODE-SITE-A-1> naar <UPF-NODE-SITE-A-4> |
UPF-knooppunten op locatie A |
UPF1A tot en met UPF1D |
| <UPF-NODE-SITE-B-1> naar <UPF-NODE-SITE-B-4> |
UPF-knooppunten op locatie B |
UPF1A tot en met UPF1D |
| <PRIMAIR-DNS-IP> |
Primaire DNS IP voor de DNN |
10.x.x.x |
| <SECUNDAIR-DNS-IP> |
Secundaire DNS IP voor de DNN |
10.x.x.x |
| <CHF-PROFIEL> |
Naam van profielelement van CHF-netwerk |
NFPRF-CHF2 |
| <AMF-PROFIEL> |
Profielnaam AMF-netwerkelement |
NFPRF-AMF1 |
| <UDM-PROFIEL> |
Profielnaam UDM-netwerkelement |
NFPRF-UDM1 |
| <SCP-PROFIEL> |
Profielnaam van SCP-netwerkelement |
NFPRF-SCP1 |
| <LAADPROFIEL> |
Profielnaam opladen |
CHGPROF-B2B |
| <QOS-PROFIEL> |
QoS-profielnaam |
5qi-naar-dscp-mapping-tabel |
| <RADIUS-GROEP> |
RADIUS AAA-groepsnaam |
aaa_group_iot |
| <UP-IDLE-TIME-OUT> |
Time-out voor inactief gebruikersvliegtuig (seconden) |
3600 |
| <CP-IDLE-TIME-OUT> |
Time-out voor stationair draaiend vliegtuig (seconden) |
7320 |
| <INACTIVITEIT-TIMER> |
Userplane inactiviteitstimer (seconden) |
3600 |
| <GEBEURTENISBELEID> |
Naam gebeurtenisbeheerbeleid |
EM_DuplicatieIP |
| <WPS-PROFIEL> |
Profiel Wireless Priority Service |
dynamische-WPS |
| <NSO-SERVER> |
Hostnaam NSO-server/IP |
NSO-server.mgmt |
| <UPF-CONTEXT> |
UPF contextnaam voor de DNN |
B2B |
| <GTPP-GROEP> |
GTPP-groep voor CDR-generatie |
gtpp_groep |
| <RULEBASE-NAAM> |
Actieve oplaadregelbasis |
rulebase-mobiliteit |
| <IPV4-ACL-NAAM> |
Naam IPv4-toegangscontrolelijst |
ue_acl_B2B |
| <IPV6-ACL-NAAM> |
Naam van IPv6-toegangscontrolelijst |
ipv6_acl_B2B |
| <SESSIE-TYPE> |
IP-type PDU-sessie |
IPV4 / IPV6 / IPV4V6 |
| <TEST-IMSI> |
Abonnee IMSI testen voor validatie |
10000XXXXXXXXX |
| optie |
NF-lijst |
PCF-interactie |
RADIUS Auth |
pcf-interactie instellen |
|---|---|---|---|---|
| A |
[ CHF UDM UPF radius ] |
Ingeschakeld (standaard) |
Ingeschakeld |
Niet geconfigureerd (standaard) |
| B |
[ CHF UPF-straal ] |
Uitgeschakeld |
Ingeschakeld |
PCF-wisselwerking vals |
| C |
[ CHF UDM UPF PCF ] |
Ingeschakeld |
Uitgeschakeld |
Niet geconfigureerd (standaard) |
| D |
[ CHF UPF ] |
Uitgeschakeld |
Uitgeschakeld |
PCF-wisselwerking vals |
| Scenario |
Beschrijving wijzigen |
NF-lijst na |
PCF-instelling |
|---|---|---|---|
| 1 |
UDM verwijderen + PCF uitschakelen |
[ CHF UPF-straal ] |
PCF-wisselwerking vals |
| 2 |
UDM verwijderen, PCF behouden |
[ CHF UPF radius PCF ] |
Standaard (ingeschakeld) |
| 3 |
Alleen PCF uitschakelen |
[ CHF UDM UPF radius ] |
PCF-wisselwerking vals |
| 4 |
RADIUS verwijderen |
[ CHF UDM UPF PCF ] |
Standaard (ingeschakeld) |
| Revisie | Publicatiedatum | Opmerkingen |
|---|---|---|
1.0 |
01-Sep-2026
|
Eerste vrijgave |