UDM Configuration
UDM configuration files includes:
udm/udm1/config/udm.conf
udm/udm1/xml/udm-ue-key.xml
udm/udm1/xml/udm-ue.xml
udm/udm1/xml/udm-am-subscription-data.xml
udm/udm1/xml/udm-session-management-subscription-data.xml
udm/udm1/xml/udm-smf-selection.xml
udm/udm1/xml/udm-snssai.xml
udm.conf
<?xml version="1.0" encoding="UTF-8"?>
<ngc>
<!--udmCfgComponent: Load udm Configuration besides interfaces
udm-name: The name of the udm node.
-->
<udmcfg udm-name="URANUS 5GC UDM"
auth-enabled="1"
local-udr-enabled="1"
local-xml-enabled="1"
udm-ue-key-profile="./xml/udm-ue-key.xml"
udm-am-profile="./xml/udm-am-subscription-data.xml"
udm-smf-sel-profile="./xml/udm-smf-selection.xml"
udm-sm-data-profile="./xml/udm-session-management-subscription-data.xml"
udm-snssai-profile="./xml/udm-snssai.xml"
udm-ue-profile="./xml/udm-ue.xml" />
<!--Http2Component - N11 interface component
bind-port: Bind port for listening Http2 messages.
-->
<http2 http2-server-ip="0.0.0.0"
http2-server-port="3123"
http2-client-ip="0.0.0.0"
http2-client-port="3122"
local-udr-enabled="1"
http2-udr-ip="0.0.0.0"
http2-udr-port="8972"
http2-amf-ip="192.168.80.52"
http2-amf-port="88"
http2-smf-ip="192.168.100.53"
http2-smf-port="8014"/>
<!--ETComponent thread-pool-size : the size of thread pool
-->
<wfcomponent thread-pool-size="50"
save-context-as-file="false" />
</ngc>
Nudm Interface (HTTP2)
HTTP2 Server IP: local IP address, Nudm listening server IP.
HTTP2 Server Port: local port, Nudm listening server Port, default 2123.
HTTP2 Client IP: local IP address for connecting to other NF.
HTTP2 Client Port: local port for connecting to other NF.
Enabled UDR
local-udr-enabled: “1” means using local xml subscription files, “0” means using external UDR.
UDR HTTP2 Server IP:
If local-udr-enabled=”1”, this IP serves as the UDR-Manage interface.
If local-udr-enabled=”0”, this IP is the external UDR address.
UDR HTTP2 Server Port:
If local-udr-enabled=”1”, this port serves as the UDR-Manage interface.
If local-udr-enabled=”0”, this port is the external UDR server port.
udm-ue-key.xml(用户标识与鉴权数据)
It stores op, amf, ue key and aka-algorithm.
<?xml version="1.0" encoding="UTF-8"?>
<op-profile>
<ki-profile op="12 34 56 78 90 12 34 56 12 34 56 78 90 12 34 56"
amf="80 00"
vector-size="2"
ue-size="100000">
<ue-ki ue-supi="466920100001101"
ue-usim-key="12 34 56 78 90 12 34 56 78 90 12 34 56 78 90 12"
aka-algorithm="1"
aka-method="1"
opc="21 2E 3B 94 27 9C B0 F8 09 5A 55 E8 EF 55 69 F7"/>
<ue-ki ue-supi="466920100001102"
ue-usim-key="12 34 56 78 90 12 34 56 78 90 12 34 56 78 90 12"
aka-algorithm="1"
aka-method="1"
opc="21 2E 3B 94 27 9C B0 F8 09 5A 55 E8 EF 55 69 F7"/>
...
</ki-profile>
</op-profile>
NOTE: the case of external UDR is not used.
op (system op): default value is “12 34 56 78 90 12 34 56 12 34 56 78 90 12 34 56”.
amf (system amf): default value is “80 00”.
ue-size: number of ue profiles.
ue-supi: user SUPI.
ue-usim-key: UE KI, default value is “12 34 56 78 90 12 34 56 78 90 12 34 56 78 90 12”.
aka-method: ue authentication method, 1 for 5G AKA, and 2 for EAP AKA’.
aka-algorithm: 1 is Milenage, 2 is XOR. By default, it is Milenage.
opc (UE opc, optional): If configured, system op won’t apply to this UE.
udm-ue.xml(用户签约数据)
It stores mapping between imsi and other subscription data idices. subscription data are stored in separate files.
default-snssai-index-list:如果 UE 不请求指定 SNSSAI 的话,UDM 会根据该配置项去轮循分配,表示 UE 默认的切片分配列表,作用于 UE 没有指定切片。如果 udm-snssai.xml 中定义的 SNSSAI 不支持 UE 请求指定的 DNN 的话,UDM 就会拒绝掉。
snssai-index-list:如果 UE 请求了指定 SNSSAI 的话,那么该切片必须要在这个列表内,作用于 UE 指定的切片。
<?xml version="1.0" encoding="UTF-8"?>
<udm-profile nf-type="2">
<user-profile name="user-profile" size="10000">
<user-subscription ue-supi="466920100001101"
default-snssai-index-list="1"
snssai-index-list="1"
am-subscription-index="1"
session-management-data-index-list="1"
subscribed-snssai-info-index-list="1" />
<user-subscription ue-supi="466920100001102"
default-snssai-index-list="2"
snssai-index-list="2"
am-subscription-index="2"
session-management-data-index-list="2"
subscribed-snssai-info-index-list="2" />
...
</user-profile>
</udm-profile>
# 注:DNN private 的配置使用。
<user-subscription ue-supi="466920100001101"
default-snssai-index-list="3"
snssai-index-list="3"
am-subscription-index="1"
session-management-data-index-list="3"
subscribed-snssai-info-index-list="3" />
default-snssai-index-list: A list of snssai index reference to udm-snssai.xml.
snssai-index-list: A list of snssai index reference to udm-snssai.xml.
am-subscription-index: A am-data index reference to udm-am-subscription-data.xml.
session-management-data-index-list: A list of index reference to udm-session-management-subscription-data.xml.
subscribed-snssai-info-index-list: A list of snssai info index reference to udm-smf-selection.xml.
udm-am-subscription-data.xml(接入和移动管理签约数据)
It stores Access and Mobility Management subscription data. The data model can be reference to TS29.503.
<?xml version="1.0" encoding="UTF-8"?>
<udm-profile nf-type="2">
<am-subscription name="am-subscription" size="2">
<am-entry index="1"
subscribed-ue-ambr-ul="1024"
subscribed-ue-ambr-dl="1024"
rat-restriction=""
periodic-registrate-timer="20"
priority-service-ind="0"
subscribed-dnn-list="default,private">
<area-restriction-list size="0">
<restriction-entry
area-restriction-type="1"
tac-list="52,12,13"
tac-code="11"
max-number-tas="2"
rat-type="1" />
<restriction-entry
area-restriction-type="1"
tac-list="21,22,23"
tac-code="11"
max-number-tas="2"
rat-type="1" />
</area-restriction-list>
</am-entry>
<am-entry index="2"
subscribed-ue-ambr-ul="102400"
subscribed-ue-ambr-dl="102400"
rat-restriction=""
periodic-registrate-timer="20"
priority-service-ind="0"
subscribed-dnn-list="public">
<area-restriction-list size="0">
<restriction-entry
area-restriction-type="1"
tac-list="52,12,13"
tac-code="11"
max-number-tas="2"
rat-type="1" />
<restriction-entry
area-restriction-type="1"
tac-list="21,22,23"
tac-code="11"
max-number-tas="2"
rat-type="1" />
</area-restriction-list>
</am-entry>
...
</am-subscription>
</udm-profile>
udm-session-management-subscription-data.xml(会话管理签约数据)
It stores session management subscription data. The data model can be reference to TS29.503.
<?xml version="1.0" encoding="UTF-8"?>
<udm-profile nf-type="2">
<sm-data-list size="3">
<sm-data-entry index="1"
snssai-sst="1"
snssai-sd=""
dnn-size="1" >
<dnn-configuration-entry dnn-index="11"
dnn-name="default"
defaultSessionType="2"
allowedSessionTypes="1,3"
defaultSscModes="1"
allowedSscModes="1"
iwkEpsInd="0"
landnIndicator="0" />
</sm-data-entry>
<sm-data-entry index="2" snssai-sst="2" snssai-sd="" dnn-size="1" >
<dnn-configuration-entry dnn-index="12" dnn-name="public" defaultSessionType="2" allowedSessionTypes="1,3" defaultSscModes="1" allowedSscModes="1" iwkEpsInd="0" landnIndicator="0" />
</sm-data-entry>
<sm-data-entry index="3" snssai-sst="3" snssai-sd="" dnn-size="1" >
<dnn-configuration-entry dnn-index="13" dnn-name="private" defaultSessionType="2" allowedSessionTypes="1,3" defaultSscModes="1" allowedSscModes="1" iwkEpsInd="0" landnIndicator="0" />
</sm-data-entry>
</sm-data-list>
</udm-profile>
udm-smf-selection.xml(SMF 选择相关数据)
It stores smf selection subscription data. The data model can be reference to TS29.503.
<?xml version="1.0" encoding="UTF-8"?>
<udm-profile nf-type="2">
<smf-select-subscription-list size="3">
<subscribed-snssai-info-entry index="1" snssai-sst="1" snssai-sd="" dnn-size="1" >
<dnn-info-entry dnn-index="11" dnn-name="default" default-dnn-ind="1" lbo-roaming-allowed="1" />
</subscribed-snssai-info-entry>
<subscribed-snssai-info-entry index="2" snssai-sst="2" snssai-sd="" dnn-size="1" >
<dnn-info-entry dnn-index="12" dnn-name="public" default-dnn-ind="0" lbo-roaming-allowed="0" />
</subscribed-snssai-info-entry>
<subscribed-snssai-info-entry index="3" snssai-sst="3" snssai-sd="" dnn-size="1" >
<dnn-info-entry dnn-index="13" dnn-name="private" default-dnn-ind="1" lbo-roaming-allowed="1" />
</subscribed-snssai-info-entry>
</smf-select-subscription-list>
</udm-profile>
udm-snssai.xml(切片数据)
It stores a snssai list. The data model can be reference to TS29.503.
<?xml version="1.0" encoding="UTF-8"?>
<udm-profile nf-type="2">
<snssai-list size="3">
<snssai-entry index="1" snssai-sst="1" snssai-sd="" plmn="46692" />
<snssai-entry index="2" snssai-sst="2" snssai-sd="" plmn="46692" />
<snssai-entry index="3" snssai-sst="3" snssai-sd="" plmn="46692" />
</snssai-list>
</udm-profile>
TS
问题 1:启动顺序问题,重启 UDM 后需要分别再重启 AMF、SMF,查看日志确保互联成功。重启 UDM 后,最好也重启 AMF 来刷新一下从 UDM 获取到的信息。
问题 2:validateDnnAndSnssai 失败。
错误:
UID466920100001102 validateDnnAndSnssai..
UID466920100001102 S-NSSAI is not requested by UE.
UID466920100001102 getting the 0 allowed snssai
UID466920100001102 System default S-NSSAI: 1ffffff
UID466920100001102 Compare Snssai. Snssai: 1ffffff, subscribedSnssai: 22be0a2
UID466920100001102 Snssai mismatch! Try next one...
UID466920100001102 Failed to validate DNN and Snssai !!!
正确:
UID466920100001102 validateDnnAndSnssai...
UID466920100001102 S-NSSAI is not requested by UE.
UID466920100001102 getting the 0 allowed snssai
UID466920100001102 System default S-NSSAI: 1ffffff
UID466920100001102 Compare Snssai. Snssai: 1ffffff, subscribedSnssai: 1ffffff
UID466920100001102 DNN is requested by UE. Compare Dnn. Dnn: default, subscribedDnn: private
UID466920100001102 UE requested DNN mismatches with the subscription data.
UID466920100001102 DNN is requested by UE. Compare Dnn. Dnn: default, subscribedDnn: default
UID466920100001102 UE requested DNN matches with the subscription data.