OmniUDM
OmniUDM 是 Omnitouch 5G 核心的 统一数据管理 (UDM) 功能。它是网络中与订阅者相关的数据和身份处理的权威,位于基于服务的接口 (SBI) 上。OmniUDM 本身不持有订阅者数据库:它通过 nudr-dr 从 统一数据存储 (UDR, OmniUDR) 获取原始订阅者数据,并通过标准的 Nudm 服务将其呈现给核心的其他部分。
OmniUDM 提供三个 Nudm 服务:
- Nudm_SDM (订阅者数据管理) - 提供接入和移动数据 (
am-data)、会话管理数据 (sm-data)、SMF 选择数据 (smf-select-data)、网络切片选择数据 (nssai),并管理订阅者数据变更订阅。 - Nudm_UEAuthentication (
nudm-ueau) - 根据 AUSF 的请求生成 5G-AKA 身份验证向量,在任何 UDR 查找之前执行 SUCI 到 SUPI 的解密,并记录身份验证结果事件。 - Nudm_UECM (用户设备上下文管理) - 跟踪当前为每个订阅者提供服务的 AMF (3GPP 和非 3GPP 接入) 和 SMF,并在用户设备移动时通知之前服务的 AMF。
每个用户设备的运行时状态(身份验证上下文、AMF/SMF 注册、SDM 订阅)保存在内存上下文存储中。权威的订阅者数据和上下文持久性存储在 OmniUDR 中。
文档
- 操作 - 3GPP 角色、SBI 接口和端点,以及带有序列图的关键程序。
- 配置 - 完整的运行时配置参考、管理/OAM API 和日志记录。
- 指标 - Prometheus 指标和示例 PromQL 查询。
- 故障排除 - 常见故障模式。
架构概述
功能概述
- 三个 Nudm 服务 - SDM (v2)、UEAU (v1) 和 UECM (v1),已在 NRF 注册并可被 AMF、SMF 和 AUSF 发现。
- SUCI 解密 - Null 方案、ECIES Profile A (Curve25519) 和 Profile B (secp256r1),密钥从
hnet_key_dir以 PEM、十六进制或原始形式加载。 - 5G 密钥派生 - 从 HSS 提供的材料重新派生 5G AUTN (分离位)、
XRES*和KAUSF;SQN/重同步由 UDR 后面的 HSS 处理。 - UDR 支持的数据 - 所有权威的订阅者和上下文数据均通过
nudr-dr/v2从 OmniUDR 读取/写入。 - 移动处理 - 在 AMF 变更时向旧 AMF 发送注销通知;3GPP 和非 3GPP 接入注册单独跟踪。
- SDM 变更通知 - 异步
ModificationNotification发送给订阅的消费者。 - NRF 集成 - 自动注册和定期心跳。
- 操作管理 API - HTTPS 管理/OAM API 提供 NF/NRF/许可证状态、UE 上下文检查、统计信息、缓存清除、日志级别控制、NRF 重新注册、强制 AMF 注销和手动 SDM 数据变更通知触发。
- 结构化 JSON 日志记录,每个请求的会话上下文。
- Prometheus 指标,用于身份验证、注册、SDM 查询、NRF 状态和 BEAM VM。
快速开始
OmniUDM 在启动时通过环境变量进行配置,位于 :omniudm 应用程序键下。每个值都有内置默认值,因此该过程在未设置任何环境的情况下开始;生产部署应至少设置 SBI、NRF、UDR、PLMN 和 hnet_key_dir 值。
config :omniudm,
udr_uri: "http://127.0.0.22:7777",
sbi_scheme: "http",
sbi_addr: "127.0.0.12",
sbi_port: 7777,
nrf_uri: "http://127.0.0.1:7777",
mcc: "999",
mnc: "70",
prometheus_metrics_port: 9568,
heartbeat_interval: 10_000,
hnet_key_dir: "/etc/omniudm/hnet"
完整的参数参考、管理/OAM API 和日志配置在 配置 中有详细记录。