Saltar al contenido principal

Guía de Operaciones de OmniLCS

OmniLCS es una plataforma integrada de ubicación LTE/GSM y transmisión de celdas. Combina un E-SMLC (Centro de Ubicación Móvil Evolucionado) para el posicionamiento de UE con un CBC (Centro de Transmisión de Celdas) para servicios de advertencia pública y transmisión comercial, todo dentro de una única aplicación Elixir/OTP.

Resumen de Arquitectura

Resumen de Funciones

E-SMLC -- Servicios de Ubicación

  • Métodos de Posicionamiento: Cell ID, Enhanced Cell ID (E-CID), GNSS/A-GPS, OTDOA
  • LCS-AP sobre SCTP (Interfaz SLs): Se comunica con el MME utilizando LCS-AP nativo según 3GPP TS 29.171, puerto 9082, PPID 29
  • Relay LPPA/LPP: Envía mensajes de protocolo de posicionamiento a eNBs y UEs a través del MME mediante LCS-AP Connection Oriented Information
  • Base de Datos de Celdas: Almacena posiciones de celdas para posicionamiento por Cell ID y OTDOA. Soporta importación desde Huawei U2020 XLSX (GSM/UMTS/LTE/NR), CSV específico del proveedor, JSON y sincronización con InfluxDB. Persistido en Mnesia para sobrevivir a reinicios
  • Multilateración OTDOA: Calcula la posición de UE a partir de mediciones RSTD utilizando mínimos cuadrados iterativos
  • Registro de Ubicación: Persiste cada fijación de ubicación en CSV y en la historia en memoria. Registro opcional en InfluxDB cuando está configurado
  • Seguimiento de Suscriptores: Polling de ubicación periódica por IMSI con intervalo y método configurables. Resultados almacenados en Mnesia con exportación KML/CSV
  • Prueba de Conducción Virtual: Campañas multi-IMSI que combinan posicionamiento GNSS con mediciones de señal E-CID (RSRP/RSRQ). Gestión a nivel de campaña con monitoreo en tiempo real, registro en InfluxDB y exportación KML/CSV con datos de calidad de señal

GMLC -- Centro de Ubicación Móvil de Puerta de Enlace

  • Interfaz Le: Interfaz Diameter para clientes LCS externos (PSAPs, gestión de flotas, interceptación legal) según 3GPP TS 29.172
  • Autorización de Clientes: Control de acceso por cliente con coincidencia de tipo y límites de tasa configurables
  • Ubicación Periódica: Sesiones diferidas que realizan fijaciones de posición a intervalos configurables con registro en InfluxDB y entrega de LRR Diameter
  • Ubicación Activada (Geo-fence): Suscripciones a eventos de área con disparadores de entrada/salida/estar dentro contra áreas circulares o poligonales
  • Entrega de Informe de Ubicación: Envía mensajes Diameter Location-Report-Request (LRR) a los clientes de origen para cada fijación diferida

CBC -- Transmisión de Celdas

  • CBSP 2G: Servidor TCP en el puerto 48049 aceptando conexiones de BSCs
  • SABP 3G: TCP en el puerto 3452 (interfaz Iu-BC, 3GPP TS 25.419, transporte según TS 25.414 §7.1.3.3). CBC se conecta saliendo a pares RNC configurados; también escucha conexiones entrantes de RNC (Indicaciones de Fallo/Reinicio)
  • SBC-AP 4G: Cliente SCTP conectándose a pares MME en el puerto 29168
  • Transmisiones Multilingües: Envía la misma alerta en múltiples idiomas simultáneamente, cada una con su propio Esquema de Codificación de Datos CBS y Código de Mensaje según 3GPP TS 23.038
  • Actualizaciones de Transmisión: Actualiza una transmisión activa incrementando el Número de Actualización. Envía automáticamente Stop-Warning para el antiguo serial antes del nuevo Write-Replace
  • Formato de Mensajes: Codificación GSM de 7 bits y UCS-2, ensamblaje de páginas CBS, construcción de números de serie
  • Tipos de Advertencia: Soporte ETWS (terremoto, tsunami, prueba) con activación de alerta de emergencia y popup
  • Gestión del Estado de Transmisión: Seguimiento de transmisión activa con persistencia a través de reinicios, monitoreo de tiempo de espera de respuesta
  • Persistencia de Mnesia: Base de datos de celdas y estado de alerta CAP persistidos en tablas disc_copies de Mnesia, sobreviviendo a reinicios de la aplicación sin re-importación
  • Procedimientos PWS: Maneja PWS-Restart-Indication y PWS-Failure-Indication desde MMEs
  • Ingesta de Alertas CAP: Acepta el Protocolo Común de Alertas (CAP) v1.2 XML de autoridades de alerta externas a través de HTTP POST o polling de feeds Atom, resuelve áreas de advertencia poligonales a TACs/LACs y activa transmisiones de celdas con aprobación opcional del operador

Interfaces de Control

  • API REST: HTTPS en el puerto 8443 con puntos finales para solicitudes de ubicación, gestión de celdas y estado del sistema
  • Panel de Control LiveView: HTTPS en el puerto 443 con panel en tiempo real, pruebas de ubicación, gestión de base de datos de celdas, monitoreo de pares Diameter y composición de transmisión CBC

Estructura de Documentación

DocumentoDescripción
Referencia de ConfiguraciónTodos los parámetros de configuración con tablas y ejemplos
Operaciones de Transmisión de CeldasOperaciones CBSP (2G), SABP (3G) y SBC-AP (4G), formato de mensajes, solución de problemas
Operaciones de Alertas CAPIngesta de CAP v1.2, resolución de polígonos, flujo de aprobación, polling de feeds
Servicios de UbicaciónMétodos de posicionamiento E-SMLC, interfaz LCS-AP, base de datos de celdas, OTDOA
Seguimiento de Suscriptores y Prueba de ConducciónSeguimiento periódico, campañas de prueba de conducción virtual, mediciones RSRP/RSRQ, exportación KML/CSV
GMLC e Interfaz LeAcceso a clientes LCS externos, ubicación periódica y geo-fence, registro en InfluxDB
Referencia de API RESTTodos los puntos finales de la API con ejemplos de solicitud/respuesta
Guía de Interfaz WebPáginas y características del panel de control LiveView

Resumen de Interfaces

InterfazProtocoloTransportePuertoDirecciónReferencia 3GPP
SLs (E-SMLC ↔ MME)LCS-APSCTP9082OmniLCS se conecta a MMEsTS 29.171
SLg/Le (GMLC ↔ Clientes LCS/DRA)DiameterSCTP3868Entrante de clientes LCS, saliente a DRATS 29.172
CBSPCBSPTCP48049BSCs se conectan a OmniLCSTS 48.049
SABP (Iu-BC)SABPTCP3452Saliente a RNCs / Entrante de RNCsTS 25.414 §7.1.3.3
SBC-APSBC-APSCTP29168OmniLCS se conecta a MMEsTS 29.168
API RESTHTTPSTCP8443Clientes se conectan a OmniLCS--
Panel de ControlHTTPSTCP443Navegadores se conectan a OmniLCS--
Sincronización de CeldasHTTPTCP8086OmniLCS consulta InfluxDB--

Árbol de Supervisión

OmniLCS inicia los siguientes procesos bajo un supervisor uno a uno:

  1. OmniLcs.Persistence -- Inicialización de Mnesia y persistencia respaldada en disco para la base de datos de celdas y alertas CAP
  2. OmniLcs.Context -- Inicialización de tabla ETS (cell_database, location_session, pending_transactions); carga celdas persistidas desde Mnesia al iniciar
  3. OmniLcs.InfluxDb -- Grupo de conexiones InfluxDB
  4. OmniLcs.Esmlc.LocationLogger -- Registro de fijaciones de ubicación en CSV y ETS
  5. Task.Supervisor -- Ejecución de tareas asíncronas
  6. OmniLcs.Sls.SctpTransport -- Conexiones de cliente SCTP SLs LCS-AP a MMEs
  7. DiameterEx.Supervisor -- Gestión de servicio y pares Diameter (SLg y otras interfaces Diameter)
  8. OmniLcs.Esmlc.CellSync -- Sincronización periódica de celdas en InfluxDB
  9. OmniLcs.Cbc.CbspConnectionSupervisor -- DynamicSupervisor para conexiones TCP CBSP 2G
  10. OmniLcs.Cbc.CbspTransport -- Escucha TCP CBSP (puerto 48049)
  11. OmniLcs.Cbc.SabpConnectionSupervisor -- DynamicSupervisor para conexiones TCP SABP 3G
  12. OmniLcs.Cbc.SabpTransport -- Escucha TCP SABP (puerto 3452)
  13. OmniLcs.Cbc.Engine -- Gestión del estado de transmisión CBC (2G, 3G y 4G)
  14. OmniLcs.Cbc.SctpTransport -- Conexiones de cliente SCTP SBC-AP a MMEs
  15. OmniLcs.Cap.AlertManager -- Gestión del ciclo de vida de alertas CAP (analizar, resolver, aprobar, transmitir); persistido en Mnesia
  16. OmniLcs.Cap.FeedPoller -- Polling periódico de feeds Atom CAP
  17. OmniLcs.Gmlc.ClientRegistry -- Gestión de clientes LCS externos autorizados
  18. OmniLcs.Gmlc.SessionSupervisor -- DynamicSupervisor para sesiones de ubicación periódicas y activadas
  19. OmniLcs.Tracking.SessionSupervisor -- DynamicSupervisor para sesiones de vigilancia de seguimiento de suscriptores
  20. OmniLcs.DriveTest.CampaignSupervisor -- DynamicSupervisor para campañas de prueba de conducción virtual