Pular para o conteúdo principal

OmniUDM

OmniUDM é a função de Gerenciamento Unificado de Dados (UDM) do Core 5G da Omnitouch. É a autoridade da rede para dados relacionados a assinantes e gerenciamento de identidade na interface baseada em serviço (SBI). OmniUDM não mantém o banco de dados de assinantes em si: ele busca dados brutos de assinantes do Repositório de Dados Unificado (UDR, OmniUDR) através de nudr-dr e os apresenta ao restante do core através dos serviços padrão Nudm.

OmniUDM fornece três serviços Nudm:

  • Nudm_SDM (Gerenciamento de Dados do Assinante) - serve dados de acesso e mobilidade (am-data), dados de gerenciamento de sessão (sm-data), dados de seleção de SMF (smf-select-data), dados de seleção de fatia de rede (nssai), e gerencia assinaturas de mudança de dados do assinante.
  • Nudm_UEAuthentication (nudm-ueau) - gera vetores de autenticação 5G-AKA sob solicitação do AUSF, realizando desconcelamento de SUCI para SUPI antes de qualquer consulta ao UDR, e registra eventos de resultado de autenticação.
  • Nudm_UECM (Gerenciamento de Contexto do UE) - rastreia qual AMF (acesso 3GPP e não 3GPP) e quais SMFs atualmente atendem cada assinante, e notifica um AMF anterior quando um UE se move.

O estado em tempo de execução por UE (contexto de autenticação, registros AMF/SMF, assinaturas SDM) é mantido em um armazenamento de contexto em memória. Dados de assinantes e persistência de contexto autoritativos vivem no OmniUDR.

Documentação

  • Operações - papel 3GPP, interfaces e endpoints SBI, e procedimentos-chave com diagramas de sequência.
  • Configuração - referência completa de configuração em tempo de execução, API de Gerenciamento/OAM, e registro.
  • Métricas - métricas Prometheus e exemplos de consultas PromQL.
  • Solução de Problemas - modos de falha comuns.

Visão Geral da Arquitetura

Visão Geral dos Recursos

  • Três serviços Nudm - SDM (v2), UEAU (v1), e UECM (v1), registrados com o NRF e descobertos por AMF, SMF, e AUSF.
  • Desconcelamento de SUCI - Esquema nulo, ECIES Perfil A (Curve25519), e Perfil B (secp256r1), com chaves carregadas de hnet_key_dir em formato PEM, hex, ou bruto.
  • Derivação de chave 5G - re-deriva o 5G AUTN (bit de separação), XRES*, e KAUSF a partir de material fornecido pelo HSS; SQN/resync gerenciado pelo HSS por trás do UDR.
  • Dados respaldados pelo UDR - todos os dados autoritativos de assinantes e contexto são lidos de / escritos para o OmniUDR via nudr-dr/v2.
  • Gerenciamento de mobilidade - notificação de desregistro de old-AMF em caso de mudança de AMF; registros de acesso 3GPP e não 3GPP rastreados separadamente.
  • Notificações de mudança de SDM - entrega assíncrona de ModificationNotification para consumidores inscritos.
  • Integração NRF - registro automático e heartbeat periódico.
  • API de gerenciamento operacional - uma API de gerenciamento/OAM HTTPS expõe status de NF/NRF/licença, inspeção de contexto de UE, estatísticas, limpeza de cache, controle de nível de log, re-registro NRF, desregistro forçado de AMF, e acionamento manual de notificação de mudança de dados SDM.
  • Registro JSON estruturado com contexto de sessão por solicitação.
  • Métricas Prometheus para autenticação, registro, consultas SDM, status NRF, e a VM BEAM.

Início Rápido

OmniUDM é configurado a partir de variáveis de ambiente na inicialização, sob a chave de aplicativo :omniudm. Cada valor tem um padrão embutido, então o processo começa sem ambiente definido; implantações em produção devem definir pelo menos os valores de SBI, NRF, UDR, PLMN, e 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"

A referência completa de parâmetros, API de Gerenciamento/OAM, e configuração de registro estão documentadas em Configuração.