跳到主要内容

OmniHSS 协议流程

← 返回操作指南


概述

本文档详细说明了 OmniHSS 支持的 Diameter 协议消息流程。理解这些流程对于故障排除和操作至关重要。


S6a 接口 (LTE/EPC)

认证信息请求 (AIR/AIA)

MME 请求用户的认证向量。

关键 AVP:

  • 请求: 用户名 (IMSI), 访问-PLMN-Id, 请求的向量数量
  • 响应: 认证信息 (RAND, AUTN, XRES, KASME)

更新位置请求 (ULR/ULA)

MME 通知 HSS 用户位置并检索订阅数据。

关键 AVP:

  • 请求: 用户名 (IMSI), RAT 类型, ULR 标志, 访问-PLMN-Id, UE-SRVCC 能力
  • 响应: 订阅数据 (AMBR, APN 配置, 网络接入模式)

清除 UE 请求 (PUR/PUA)

MME 通知 HSS 当用户上下文被删除时。

通知请求 (NOR/NOA)

MME 通知 HSS 各种事件。

取消位置请求 (CLR/CLA)

HSS 发起位置取消以通知 MME 用户应被分离。OmniHSS 支持自动和程序化 CLR 发送。

自动 CLR (MME 切换)

当用户从新的 MME 执行更新位置请求时,OmniHSS 会自动���之前的 MME 发送 CLR 以清理过时的注册。

关键 AVP (自动 CLR):

  • 用户名: 用户的 IMSI
  • 目标主机: 之前的 MME 主机名
  • 目标域: 之前的 MME 域
  • 取消类型: 0 (MME 更新过程)
  • CLR 标志: 0
  • 订阅数据: 完整的订阅配置文件

程序化 CLR (API 触发)

管理员可以通过程序化 API 触发 CLR,以强制分离用户(例如,因订阅撤回、欺诈预防或管理操作)。

关键 AVP (程序化 CLR):

  • 用户名: 用户的 IMSI
  • 目标主机: 最近看到的 MME 主机名
  • 目标域: 最近看到的 MME 域
  • 取消类型: :subscription_withdrawal (按 3GPP TS 29.272 编码为整数)
  • CLR 标志:
    • s6a_indicator: 1 (表示使用 S6a 接口)
    • reattach_required: 1 (UE 必须重新认证以重新附着)

取消类型

OmniHSS 支持按 3GPP TS 29.272 的多种取消类型:

类型描述用例
MME 更新过程0正常 MME 更改从新 MME 自动进行 ULR
SGSN 更新过程1SGSN 切换3G/2G 切换场景
订阅撤回2管理终止通过 API 手动分离
更新过程 IWF3互通功能更新传统网络互操作
初始附着过程4新注册强制重新认证

CLR 标志

CLR 标志 AVP 是一个位掩码,具有以下字段:

标志描述
S6a/S6d 指示符01 = 使用 S6a 接口
重新附着所需11 = UE 必须执行新的附着

示例 CLR 标志配置:

clr_flags: %{
s6a_indicator: 1, # 使用 S6a 接口
reattach_required: 1 # 强制重新认证
}

多 IMSI 场景

OmniHSS 按 每个用户 (IMSI) 跟踪 MME 注册,而不是按 MSISDN。这对于理解多 IMSI 场景中的 CLR 行为至关重要:

场景 1: 多个 MSISDN,单个 IMSI

用户 A:
- IMSI: 999000123456789
- MSISDNs: ["+1234567890", "+9876543210"]
- last_seen_mme: "mme01.operator.com"

当该用户移动到新的 MME 时:

  • 发送一个 CLR 到 "mme01.operator.com",IMSI 为 999000123456789
  • 两个 MSISDN 都受到影响(同一用户,同一 SIM)
  • 用户名 AVP 包含 IMSI,而不是 MSISDNs

场景 2: 多个用户(不同 IMSI),相同 MSISDN

OmniHSS 强制 唯一 MSISDN 约束(一个 MSISDN 不能同时属于多个用户)。但是,在迁移/转移期间:

用户 A:
- IMSI: 999000111111111
- MSISDN: "+1234567890"
- last_seen_mme: "mme01.operator.com"

用户 B(迁移后):
- IMSI: 999000222222222
- MSISDN: "+1234567890" # 相同 MSISDN,不同 SIM/IMSI
- last_seen_mme: "mme02.operator.com"

当用户 B 注册时:

  • 不发送 CLR(不同 IMSI = 不同用户)
  • 用户 A 仍然在 mme01 注册
  • 用户 B 在 mme02 注册
  • 两者可以同时处于活动状态(不同的物理设备)

场景 3: 程序化 CLR 用于多 MSISDN 用户

结果:

  • 发送一个 CLR 到用户的 last_seen_mme
  • 所有 MSISDN 与该 IMSI 关联的都被有效分离
  • IMSI 是跟踪 MME 注册的主键

重要注意事项

  1. IMSI 是关键: CLR 操作始终是 按 IMSI,而不是按 MSISDN。subscriber_state 表按用户 (IMSI) 跟踪 last_seen_mme

  2. 原子操作: 每个用户一次只能在一个 MME 注册。自动 CLR 确保通过清理旧注册来实现这一点。

  3. 如果没有之前的 MME 则不发送 CLR: 如果 last_seen_mmenil(用户从未注册),则在 ULR 期间不发送 CLR。

  4. 包含订阅数据: 自动 CLR(在 ULR 期间)包括完整的 Subscription-Data AVP,以帮助旧 MME 正确清理上下文。

  5. 异步: CLR 是异步发送的(火并忘)。对新 MME 的 ULA 响应不等待��� MME 的 CLA。

  6. CLA 处理: OmniHSS 接收 CLA 响应,但当前会丢弃它们(在第 398 行为 :discard)。这防止了消息循环,并且是标准 HSS 行为。


SWx 接口 (非 3GPP 接入 / WiFi 通话)

SWx 接口通过将 ePDG(演进数据包网关)连接到 HSS,以实现 WiFi 通话的用户认证和授权。

多媒体认证请求 (MAR/MAA)

ePDG 请求 EAP-AKA 认证向量以进行 WiFi 通话注册。

关键 AVP:

  • 请求: 用户名 (IMSI 或 IMSI@realm), SIP-Auth-Data-Item (认证方案), SIP-Number-Auth-Items
  • 响应: SIP-Auth-Data-Item (SIP-Authenticate, SIP-Authorization, 保密密钥, 完整性密钥)

SQN 重新同步: 当 UE 检测到由于 SQN 不匹配而导致的认证失败时,ePDG 在 SIP-Authorization AVP 中包含重新同步数据。OmniHSS 从该字段中提取 AUTS,并使用 3GPP TS 33.102 中的 IND 长度感知计算重新计算 SQN。

服务器分配请求 (SAR/SAA)

ePDG 注册或注销用户以进行 WiFi 通话服务。

服务器分配类型:

类型描述
NO_ASSIGNMENT0仅查询,无状态变化
REGISTRATION1初始 WiFi 通话注册
RE_REGISTRATION2注册刷新
UNREGISTERED_USER3未注册用户的服务
TIMEOUT_DEREGISTRATION4注册超时
USER_DEREGISTRATION5用户发起的注销
AUTHENTICATION_FAILURE7认证失败,清除状态
ADMINISTRATIVE_DEREGISTRATION8管理员发起的注销

关键 AVP:

  • 请求: 用户名 (IMSI), 服务器分配类型, 服务器名称 (ePDG 身份), 服务选择 (APN)
  • 响应: 用户数据 (IFC 配置 XML), 非 3GPP 用户数据

WiFi 通话注册流程

完整的端到端 WiFi 通话注册。


Cx 接口 (IMS)

用户授权请求 (UAR/UAA)

I-CSCF 查询用户是否有权注册。

服务器分配请求 (SAR/SAA)

S-CSCF 注册/注销用户并检索 IMS 配置文件。

IFC 模板渲染:

  • {{imsi}} → 实际 IMSI
  • {{msisdns}} → 电话号码列表
  • {{mcc}}, {{mnc}} → 本地 PLMN 代码

多媒体认证请求 (MAR/MAA)

S-CSCF 请求 IMS 注册的认证向量。

位置信息请求 (LIR/LIA)

I-CSCF 查询哪个 S-CSCF 正在为用户服务。


Sh 接口 (IMS 配置文件数据)

用户数据请求 (UDR/UDA)

应用服务器请求用户配置文件数据。

配置文件更新请求 (PUR/PUA)

应用服务器更新用户配置文件数据。

订阅通知请求 (SNR/SNA)

应用服务器订阅配置文件更改。


Gx 接口 (策略控制)

OmniHSS 通过 Gx 接口作为 PCRF(策略和计费规则功能)运行。

请参阅 PCRF 文档 以获取详细的架构、策略配置和 QoS 管理。

信用控制请求 - 初始 (CCR-I/CCA-I)

P-GW 在建立 PDN 会话时请求策略规则。

关键 AVP:

  • 请求: 订阅 ID (IMSI), 被叫站 ID (APN), RAT 类型, IP-CAN 类型
  • 响应: QoS 信息 (QCI, ARP, AMBR), 计费规则安装

信用控制请求 - 更新 (CCR-U/CCA-U)

P-GW 通知会话更改。

信用控制请求 - 终止 (CCR-T/CCA-T)

P-GW 通知 PDN 会话结束时。

重新认证请求 (RAR/RAA)

OmniHSS (PCRF) 向 P-GW 发起策略更新。


Rx 接口 (IMS 媒体策略)

OmniHSS 通过 Rx 接口作为 PCRF 运行以进行 IMS 媒体授权。

请参阅 PCRF 文档 以获取详细的 VoLTE 通话流程和媒体授权。

AA 请求 (AAR/AAA)

P-CSCF 请求 IMS 会话的媒体授权。

关键信息:

  • 解析 SDP 以确定编解码器和带宽
  • 计算所需带宽 (上行/下行)
  • 为媒体流创建 SDF 过滤器
  • 通过 Gx RAR 触发专用承载

会话终止请求 (STR/STA)

P-CSCF 通知 IMS 会话结束。


S13 接口 (EIR)

OmniHSS 通过 S13 接口作为 EIR(设备身份注册)运行。

请参阅 EIR 文档 以获取详细的设备身份检查、IMEI 验证和黑名单管理。

ME 身份检查请求 (ECR/ECA)

外部 EIR 客户端(或 MME)请求设备验证。

设备状态值:

  • 设备未知 (0) - 设备允许(白名单)
  • 设备被列入黑名单 (1) - 设备被阻止
  • 设备被列入灰名单 (2) - 设备允许但被跟踪

完整呼叫流程: VoLTE 通话

端到端 VoLTE 通话设置,显示多个接口。


Zh 接口 (通用引导架构)

Zh 接口通过将引导服务器功能 (BSF) 连接到 HSS,以实现通用引导架构 (GBA) 的用户认证和密钥派生。

多媒体认证请求 (MAR/MAA)

BSF 请求 GBA 认证向量以进行引导。

关键 AVP:

  • 请求: 用户名 (IMPI), 公共身份, SIP-Auth-Data-Item (认证方案), 目标域
  • 响应: SIP-Auth-Data-Item (SIP-Authenticate, SIP-Authorization, 保密密钥, 完整性密钥), GBA-UserSecSettings

GBA 用例:

应用描述
MBMS移动广播多播服务密钥管理
HTTPS基于 GBA 的证书配置
NAF通用网络应用功能认证
Presence安全的存在服务认证

SWm 接口 (不受信任的非 3GPP 接入)

SWm 接口通过将 3GPP AAA 服务器连接到 HSS,以实现对不受信任的非 3GPP 接入网络(例如,通过 ePDG 的 WiFi)的 EAP-AKA 认证。

Diameter-EAP-请求 (DER/DEA)

EAP 认证交换以进行 WiFi 访问。

关键 AVP:

  • 请求: 会话 ID, 认证应用 ID, EAP-Payload, 认证请求类型, 用户名 (可选)
  • 响应: EAP-Payload, EAP 主会话密钥 (MSK), APN 配置, 会话超时

AA-请求 (AAR/AAA)

成功 EAP 认证后的授权。

关键 AVP:

  • 请求: 会话 ID, 认证应用 ID, 用户名, 认证请求类型, AAR 标志
  • 响应: APN 配置, 3GPP 计费特性, 会话超时

会话终止请求 (STR/STA)

WiFi 会话终止通知。

终止原因:

原因描述
DIAMETER_LOGOUT1用户注销
DIAMETER_SERVICE_NOT_PROVIDED2服务不可用
DIAMETER_BAD_ANSWER3协议错误
DIAMETER_ADMINISTRATIVE4管理员终止
DIAMETER_LINK_BROKEN5连接丢失
DIAMETER_AUTH_EXPIRED6认证超时
DIAMETER_USER_MOVED7用户移动到其他接入
DIAMETER_SESSION_TIMEOUT8会话超时

故障排除协议问题

认证失败 (S6a AIR)

检查:

  1. 密钥集配置正确 (Ki, OPC, AMF)
  2. SQN 同步 (如果重复失败)
  3. 漫游规则允许访问网络

位置更新失败 (S6a ULR)

检查:

  1. EPC 配置文件存在并且已配置 APN
  2. 数据服务允许漫游
  3. MME 身份格式正确

IMS 注册失败 (Cx SAR)

检查:

  1. IMS 配置文件已分配给用户
  2. IFC 模板有效 XML
  3. S-CSCF 选择已配置
  4. 如果在模板中使用,则分配 MSISDN

PDN 连接失败 (Gx CCR-I)

检查:

  1. APN 在 EPC 配置文件的 APN 列表中存在
  2. APN QoS 配置文件已配置
  3. PDN 会话表未满(如果存在限制)

← 返回操作指南