OmniUDR
OmniUDR 实现了 Omnitouch 5G 核心的 统一数据存储 (UDR)。它通过服务基础接口 (SBI) 向 UDM 和 PCF 暴露 Nudr_DataRepository 服务 (TS 29.504):结构化的用户、策略和上下文数据。
OmniUDR 不拥有用户数据。它是一个薄的、符合标准的 Nudr_DR 外观,位于 OmniHSS REST 配置后端 之上:每次数据存储读取在请求时都被转换为一个或多个 OmniHSS REST 调用,HSS 响应在返回给消费者之前被映射到 3GPP Nudr 数据模型。OmniUDR 是唯一直接与 OmniHSS REST API 通信的 5G 核心网络功能。UDM(通过它,AUSF)通过标准 Nudr 调用 OmniUDR 来访问用户数据,而不是直接调用 HSS。
由于 HSS 是记录系统,OmniUDR 几乎不持有持久状态。它唯一的本地状态是三个小的内存 (ETS) 存储:一个 AMF 和 SMF 注册上下文的缓存(用于决定上下文写入是创建还是更新),一个数据变更订阅存储,保存活动的 Nudr_DR subs-to-notify 订阅,以及一个保存 Nudr_DR application-data 家族(PFD、流量影响、BDT)的应用数据存储。这些都没有持久化;所有在重启时都会被清除。注册上下文缓存可以通过管理 API 刷新。
文档
- 操作指南 - 3GPP 角色、提供的数据集、SBI 端点,以及关键的读取/更新/上下文/策略过程及其序列图。
- 配置参考 - 完整的运行时配置参考、HSS 后端设置、管理/OAM API 和日志记录。
- 指标 - 用于 NRF 注册、HSS 后端健康、请求计数/延迟和 BEAM VM 健康的 Prometheus 指标,以及示例 PromQL。
- 故障排除 - 常见问题及其解决方案。
架构概述
AUSF 并未作为直接消费者出现:5G 认证数据流为 AUSF → UDM → OmniUDR → OmniHSS。OmniUDR 将 4G 风格的 HSS 用户记录(密钥材料、EPC/APN QoS 配置、PCRF 收费规则)实时映射到 5G Nudr 结构(认证订阅、接入与移动数据、会话管理数据、SMF 选择数据、策略数据)。
特性概述
- Nudr_DR 订阅数据:认证订阅读取和 SQN 更新 (PATCH),加上接入与移动、会话管理和 SMF 选择的配置数据 (GET),实时从 HSS 用户记录映射。
- Nudr_DR 上下文数据:AMF 3GPP 访问注册(镜像到 HSS 电路会话/位置和本地缓存)和 SMF 注册(仅本地 ETS 缓存),每个返回 201/204 以区分创建与更新。
- Nudr_DR 策略数据:AM 策略数据(粗略的
subscCats)和 SM 策略数据(每个 S-NSSAI/DNN 的smPolicySnssaiData),源自 HSS EPC/PCRF 配置供 PCF 使用。 - Nudr_DR 数据变更订阅:消费者注册一个
subs-to-notify订阅,命名监控资源 URI 和通知回调 URI,存储在内存中的订阅存储中;当监���数据发生变化时,OmniUDR 向订阅者发出 DataChangeNotify 通知(ADD / REPLACE / REMOVE)(根据 TS 29.504 的订阅通知)。 - Nudr_DR 应用数据:对
application-data家族(pfds、influenceData、bdtData)进行通用 CRUD(GET 集合 / GET / PUT / DELETE),由本地内存 (ETS) 存储支持;不由 HSS 支持,且在重启时不持久化。 - 专有认证向量生成:一个非标准的
authentication-vectorsPOST,将向量生成和 SQN/重同步处理委托给 HSS(Ki/OPc 永远不会离开),仅由 OmniUDM 消费。 - HSS 支持的无状态性:没有本地用户存储;读取可用性和延迟直接跟踪 HSS,通过健康指标和每个端点请求指标显示。
- NRF 集成:自动注册和定期心跳,带有 OAM API 进行实时配置更改、强制重新注册和上下文缓存刷新。
快速开始
主要操作设置是 OmniHSS REST 后端 URL 和 OmniHSS API 密钥。密钥是必需的,并且必须具有 OmniHSS 角色 hlr_interworking。最小部署绑定 SBI 监听器并将 OmniUDR 指向其 NRF 和 HSS:
config :omniudr,
hss_api_base_url: "https://hss.example.net:8443",
hss_api_key: "<具有角色 hlr_interworking 的 OmniHSS API 密钥>",
sbi_scheme: "http",
sbi_addr: "127.0.0.22",
sbi_port: 7777,
nrf_uri: "http://127.0.0.1:7777",
mcc: "999",
mnc: "70"
完整参数集 - 包括 PLMN 身份、指标/心跳调优、切片映射覆盖和实验室测试用户辅助 - 在 配置参考 中有详细记录。