Saltar al contenido principal

Núcleo Conmutado por Circuito (CS)

El dominio legado conmutado por circuito (voz y SMS 2G/3G) se despliega mediante el playbook services/cs.yml. Proporciona el BSC orientado a la radio, el conmutador de software OmniMSC y la pila de señalización SS7/SIGTRAN.

Descripción general​

cs.yml ejecuta tres roles, cada uno contra su propio grupo de inventario:

ComponenteRolGrupo de inventarioPaquetesDescripción
BSCcircuit_switched/bscbscBSC, MGWControlador de Estación Base + Puerta de Enlace de Medios (para pruebas y validación de 2G/3G)
MSCcircuit_switched/omnimscmscomnimscConmutador de Centro de Conmutación Móvil
SS7omniss7ss7omniss7Pila SS7/SIGTRAN (STP, HLR, SMSC, CAMEL, probador)
- name: Setup MSC
hosts: msc
roles:
- {role: circuit_switched/omnimsc, become: yes}

BSC (circuit_switched/bsc)​

Instala un BSC y Puerta de Enlace de Medios (MGW) desde el servidor APT de Omnitouch para pruebas y validación conmutadas por circuito. El rol configura ambos servicios.

  • Renderiza los archivos de configuración del BSC y MGW a partir de las plantillas del rol.
  • Instala una anulación de systemd para el servicio MGW que desactiva la programación de CPU en tiempo real. Limpia CPUSchedulingPolicy, Priority y AmbientCapabilities. Las máquinas virtuales no soportan programación en tiempo real.
  • Los controladores reinician cada servicio. Cada controlador luego verifica que el servicio alcance active (6 reintentos, 5 s de separación) antes de continuar.

MSC (circuit_switched/omnimsc)​

Instala el paquete omnimsc y lo configura de manera similar a un NF de 5GC:

  • Resuelve group_vars_omnicore y deriva license_server_api_urls del grupo license_server.
  • Renderiza el runtime.exs.j2 incorporado en /etc/omnimsc/. Si omnimsc_template_config está configurado, renderiza una plantilla personalizada de group_vars/ en su lugar.
  • Asegura un directorio de salida de CDR (omnimsc_cdr_output_dir, por defecto /var/lib/omnimsc/cdr).
  • Genera un certificado TLS autofirmado para la interfaz web / API.
  • Utiliza el patrón de enlace simbólico de configuración versionada + runtime.exs, reiniciando al cambiar.

SS7 (omniss7)​

Un único rol que instala el paquete omniss7 y renderiza una plantilla de configuración por rol SS7, seleccionada por la variable de host ss7_role:

ss7_rolePlantillaFunción
stpstp.j2Punto de Transferencia de Señal (rutear SS7)
hlrhlr.j2Registro de Ubicación del Hogar
smscipsmgw.j2SMSC / IP-SM-GW
camelcamel.j2Control de servicio CAMEL
testertester.j2Agente de prueba/carga de señalización

Selectores adicionales:

  • Configurar ss7_protocol: m2pa renderiza m2pa.j2 (un endpoint M2PA) en lugar de la plantilla tester.
  • Configurar ss7_template_config (una ruta bajo group_vars/) anula todas las plantillas incorporadas con una configuración específica del host.

Al igual que los otros componentes de Elixir, omniss7 utiliza el patrón de enlace simbólico de configuración versionada + runtime.exs y refleja el enlace simbólico en /opt/omniss7/releases/*.

Documentación Relacionada​