Saltar al contenido principal

← Resumen

Operaciones de OmniUDM

OmniUDM es la función de Gestión Unificada de Datos (UDM) del núcleo 5G de Omnitouch. Presenta la identidad del suscriptor, la suscripción y los datos de contexto al resto del núcleo a través de los servicios estándar de Nudm, respaldando todos los datos autoritativos en el Repositorio de Datos Unificado (OmniUDR) a través de nudr-dr.

Referencias de Rol y Especificación 3GPP

AspectoReferencia
Rol funcional de UDM en el 5GCTS 23.501
Servicios Nudm (SDM / UEAU / UECM)TS 29.503
Nudr_DataRepository (consumido)TS 29.504
Esquemas de ocultación y protección de SUCI / SUPITS 33.501 §6.12 y Anexo C
Estructura y codificación de SUCI / SUPITS 23.003 §2.2B
Jerarquía de autenticación y clave 5G-AKATS 33.501 §6.1.3, Anexo A
Conjunto de algoritmos MilenageTS 35.206
Codificación de identidad móvil (SUCI/MSIN BCD)TS 24.501

Interfaces y Puntos de Acceso SBI

OmniUDM registra los siguientes servicios con el NRF y los sirve en el listener SBI (sbi_scheme://sbi_addr:sbi_port):

ServicioVersiónPropósito
nudm-sdmv2Gestión de datos del suscriptor
nudm-ueauv1Generación de vectores de autenticación de UE
nudm-uecmv1Gestión del contexto de UE (registro AMF/SMF)

Todos los datos autoritativos del suscriptor y del contexto se leen desde / escriben en OmniUDR a través de nudr-dr/v2 (ruta base .../nudr-dr/v2/subscription-data/{ueId}/...). Todos los cuerpos de solicitud/respuesta son JSON. Los errores se devuelven como application/problem+json ProblemDetails.

Nudm_UEAuthentication (nudm-ueau/v1)

MétodoRutaDescripción
POST/{supiOrSuci}/security-information/generate-auth-dataGenerar un vector de autenticación 5G-AKA. Acepta un SUPI o SUCI; primero oculta SUCI. Requiere servingNetworkName y ausfInstanceId
POST/{supi}/auth-eventsRegistrar un evento de resultado de autenticación. Requiere nfInstanceId, success, timeStamp, authType, servingNetworkName
PUT/{supi}/auth-events/{authEventId}Actualizar / eliminar un evento de autenticación (cuerpo AuthEvent, authRemovalInd=true lo elimina)

Nudm_UECM (nudm-uecm/v1)

MétodoRutaDescripción
PUT/{supi}/registrations/amf-3gpp-accessAMF registra el acceso 3GPP para un UE
PATCH/{supi}/registrations/amf-3gpp-accessActualizar parámetros del registro 3GPP AMF almacenado (merge-patch)
GET/{supi}/registrations/amf-3gpp-accessRecuperar el registro 3GPP AMF almacenado
PUT/{supi}/registrations/amf-non-3gpp-accessAMF registra el acceso no 3GPP para un UE
GET/{supi}/registrations/amf-non-3gpp-accessRecuperar el registro no 3GPP AMF almacenado
PUT/{supi}/registrations/smf-registrations/{pduSessionId}SMF registra un contexto de sesión PDU
DELETE/{supi}/registrations/smf-registrations/{pduSessionId}SMF desregistra un contexto de sesión PDU

Nudm_SDM (nudm-sdm/v2)

MétodoRutaDescripción
GET/{supi}GetDataSets - recuperar múltiples conjuntos de datos seleccionados por el parámetro de consulta obligatorio dataset-names (separados por comas AM, SM, SMF_SEL, UEC_SMF)
GET/{supi}/am-dataDatos de suscripción de acceso y movilidad (consulta opcional plmn-id)
GET/{supi}/sm-dataDatos de suscripción de gestión de sesiones (consulta opcional plmn-id)
GET/{supi}/smf-select-dataDatos de suscripción de selección de SMF (consulta opcional plmn-id)
GET/{supi}/nssaiDatos de suscripción de selección de corte de red
GET/{supi}/ue-context-in-smf-dataContexto de UE en SMF (sesiones PDU activas): ver nota a continuación
POST/{supi}/sdm-subscriptionsSuscribirse a notificaciones de cambios de datos. Requiere nfInstanceId, callbackReference, monitoredResourceUris
GET/{supi}/sdm-subscriptions/{subscriptionId}Recuperar una suscripción SDM almacenada
PATCH/{supi}/sdm-subscriptions/{subscriptionId}Modificar una suscripción SDM (merge-patch)
DELETE/{supi}/sdm-subscriptions/{subscriptionId}Eliminar una suscripción SDM

Ocultación de SUCI / SUPI

Para proteger la identidad permanente del suscriptor por aire, el UE envía un SUCI (Identificador de Suscripción Ocultado) en lugar del SUPI (Identificador Permanente de Suscripción, es decir, imsi-<IMSI>). Cuando el AUSF pide a OmniUDM que genere un vector de autenticación para un SUCI, OmniUDM de-oculta el SUCI al SUPI antes de que pueda buscar datos del suscriptor en UDR.

OmniUDM admite los tres esquemas de protección definidos en TS 33.501 §6.12 / Anexo C:

EsquemaNombreCurva / Cripto¿Requiere clave HNET?
0Esquema nuloNinguno - MSIN está en texto claroNo
1ECIES Perfil ACurve25519 (X25519) + AES-128-CTR + HMAC-SHA-256
2ECIES Perfil Bsecp256r1 / P-256 + AES-128-CTR + HMAC-SHA-256

Para el esquema nulo, el MSIN se transporta en texto claro; se decodifica en BCD a partir de la salida del esquema para reconstruir el IMSI (según TS 24.501 - los dígitos MSIN están codificados en BCD, no en hex). Para Perfil A y Perfil B, la de-ocultación realiza un ECDH efímero-estático contra la clave privada de la Red de Hogar del operador, deriva las claves de cifrado/MAC (ANSI-X9.63-KDF con SHA-256), verifica el MAC, descifra el MSIN oculto y lo decodifica en BCD para reconstruir el IMSI.

Las claves privadas de la Red de Hogar para Perfil A/B se cargan desde el directorio hnet_key_dir. La nomenclatura de archivos, codificaciones y los requisitos de seguridad y actualización de caché están documentados en Configuración → Claves de Red de Hogar (hnet_key_dir).

Procedimientos Clave

De-ocultación de SUCI y Generación de Vectores de Autenticación

El AUSF solicita un vector de autenticación; OmniUDM resuelve la identidad (de-ocultando un SUCI si es necesario), obtiene material clave y un vector base del HSS a través de UDR, luego vuelve a derivar el AUTN específico de 5G y las claves. La gestión de SQN y cualquier re-sincronización son manejadas por el HSS detrás de UDR - OmniUDM vuelve a derivar el AUTN de 5G (bit de separación establecido), XRES*, y KAUSF a partir del material devuelto. Un resynchronizationInfo suministrado por el AUSF se reenvía al HSS a través de UDR.

Los fallos de de-ocultación devuelven HTTP 403 (Fallo en la De-ocultación de SUCI), un esquema de protección no soportado devuelve HTTP 501, un suscriptor faltante devuelve HTTP 404 (USER_NOT_FOUND), y material clave inválido o un fallo en la generación de vectores del HSS devuelven HTTP 500.

Registro de Eventos de Resultado de Autenticación

Después de que el AUSF completa la autenticación, registra el resultado. OmniUDM almacena el evento contra el contexto del UE y devuelve una Location para el evento creado; el AUSF puede más tarde PUT un AuthEvent con authRemovalInd=true para eliminarlo (204 No Content).

Recuperación de Datos de Suscripción SDM (sm-data)

Después del registro, el AMF/SMF recupera los datos de suscripción. OmniUDM actúa como proxy para la solicitud a UDR, añadiendo el PLMN de servicio, y devuelve la respuesta de UDR. Para sm-data, un único objeto UDR se envuelve en un array según TS 29.503 SmSubsData.

Los flujos de am-data, smf-select-data, y GetDataSets (GET /{supi}) siguen el mismo patrón de proxy contra UDR. GetDataSets ensambla solo los conjuntos de datos solicitados que puede resolver, omitiendo cualquier que falle. nssai se deriva de la respuesta am-data de UDR (ver abajo).

El contexto de UE en SMF devuelve el contexto de sesión PDU en vivo. GET /{supi}/ue-context-in-smf-data y el conjunto de datos UEC_SMF en GetDataSets devuelven los contextos de sesión PDU activos del UE según lo informado por el SMF a través del procedimiento de registro SMF Nudm_UECM. Cada registro SMF almacenado se proyecta en el mapa pduSessions (clave por ID de sesión PDU) según TS 29.503. El mapa está vacío ({"pduSessions": {}}) solo cuando el UE realmente no tiene registros SMF.

Recuperación de NSSAI con Recaída por Defecto

GET /{supi}/nssai recupera am-data de UDR y extrae el nssai embebido. Si UDR devuelve am-data sin un nssai, o si la búsqueda de UDR falla, OmniUDM devuelve la caída configurable default_nssai para que el AMF siempre reciba una lista de cortes.

La caída default_nssai debe coincidir con los cortes que la red realmente sirve - un suscriptor ofrecido un corte que el AMF no está configurado para servir es rechazado con la causa 5GMM #62. Ver Configuración → Claves de Ajuste Opcionales.

Notificaciones de Cambio SDM

Los suscriptores con una suscripción SDM activa son notificados de cambios posteriores: OmniUDM POSTea una ModificationNotification a cada callbackReference de la suscripción (asíncronamente) cuando los recursos monitoreados cambian. También se puede activar manualmente una notificación para un SUPI a través de la API de Gestión/OAM.

Registro AMF UECM y Movilidad

Cuando un UE se registra, el AMF se registra a sí mismo para ese UE en OmniUDM. Si un AMF diferente fue registrado previamente, OmniUDM notifica el deregCallbackUri del antiguo AMF para que pueda liberar el UE, luego persiste el nuevo registro en UDR.

Los IEs obligatorios se validan según TS 29.503: el registro 3GPP de AMF requiere amfInstanceId, deregCallbackUri, guami, ratType; el registro de SMF requiere smfInstanceId, pduSessionId, singleNssai, plmnId, y el cuerpo pduSessionId debe coincidir con la ruta (una discrepancia devuelve MANDATORY_IE_INCORRECT). Los IEs faltantes devuelven HTTP 400.