SMS
Este documento describe la implementación del Servicio de Mensajes Cortos en OmniMSC, cubriendo flujos de SMS de origen móvil y de terminación móvil, asignación de identificadores de transacción DTAP, manejo de SAPI de interfaz A, enrutamiento de respuestas MAP y las capas de códec SMS.
Para diagramas de flujo de llamadas que incluyen SMS junto con voz, consulte Diagramas de Flujo de Llamadas. Para detalles de la interfaz MAP que cubren operaciones MO-ForwardSM y MT-ForwardSM, consulte Operaciones MAP. Para la configuración de dirección y código de punto SMSc, consulte Referencia de Configuración. Para problemas comunes de entrega de SMS, consulte Solución de Problemas — Problemas de SMS.
MO-SMS (SMS de Origen Móvil)
Un suscriptor envía un mensaje corto a través del MSC al Centro de SMS (SMSc). El MSC actúa como un relé, recibiendo el SM desde la interfaz aérea y reenviándolo al SMSc utilizando MAP MO-ForwardSM.
El MO Handler extrae el SM-RP-DA (dirección de destino, típicamente la dirección del SMSc) y SM-RP-OA (dirección de origen, el MSISDN del suscriptor) del RP-DATA, luego construye la solicitud MAP MO-ForwardSM. La respuesta MAP determina si el MSC envía RP-ACK o RP-ERROR de vuelta al UE.
MT-SMS (SMS de Terminación Móvil)
El SMSc entrega un mensaje corto a un suscriptor a través del MSC. El SMSc envía un MAP MT-ForwardSM (opcode 44) al MSC, que busca al suscriptor si es necesario y entrega el SM a través de la interfaz aérea.
Asignación Síncrona de TI
El MT Handler llama a register_mt_sms en el proceso MSC-A como una operación síncrona. Esto asigna un Identificador de Transacción DTAP para la entrega de MT-SMS y previene una condición de carrera donde dos entregas concurrentes de MT-SMS al mismo suscriptor podrían asignarse el mismo TI. La llamada síncrona asegura que los valores de TI sean únicos en todas las transacciones de SMS activas para un suscriptor dado.
Identificador de Transacción DTAP
Para MT-SMS, la red asigna el Identificador de Transacción (TI). Según 3GPP TS 24.007, la bandera TI distingue al originador:
| Dirección | Bandera TI | Significado |
|---|---|---|
| Red → UE (CP-DATA) | 0 | La red originó esta transacción |
| UE → Red (CP-ACK, RP-ACK) | 1 | UE respondiendo a la transacción originada por la red |
El MSC establece la bandera TI=0 en el CP-DATA enviado al UE. El UE refleja el valor de TI pero establece la bandera=1 en todas las respuestas (CP-ACK, CP-DATA que contiene RP-ACK). Esta convención permite que ambos lados distingan entre múltiples transacciones SMS concurrentes.
SAPI 3
Los PDUs NAS de SMS (CP-DATA, CP-ACK, CP-ERROR) se transportan en SAPI 3 de la interfaz A según 3GPP TS 48.006. El byte DLCI (Identificador de Conexión de Enlace de Datos) en el encabezado DTAP de BSSAP se establece en 0x03, indicando SAPI=3.
SAPI 3 proporciona un canal lógico separado del canal de señalización principal (SAPI 0), que transporta mensajes CC y MM. Esta separaci��n permite que la entrega de SMS ocurra concurrentemente con una llamada de voz activa sin interferir con la señalización de control de llamadas.
Enrutamiento de Respuestas MAP
Cuando un MT-ForwardSM llega del SMSc, el MSC debe enrutar la respuesta TCAP End de vuelta al código de punto de origen correcto. El módulo de ingreso captura el OPC (Código de Punto de Origen) del mensaje de transferencia M3UA entrante y lo almacena como routing_info[:opc].
Al construir la respuesta TCAP End, el MSC utiliza este OPC almacenado como el DPC (Código de Punto de Destino) para el mensaje M3UA saliente. Esto asegura que la respuesta llegue al SMSc correcto, lo cual es importante en redes donde múltiples instancias de SMSc utilizan diferentes códigos de punto, o donde un STP enruta basado en el código de punto en lugar de en el título global SCCP.
El intercambio OPC/DPC sigue la convención estándar de M3UA: el OPC de respuesta es el propio código de punto del MSC (el DPC entrante), y el DPC de respuesta es el código de punto del SMSc (el OPC entrante).
Códec SMS
El códec SMS maneja dos capas de protocolo según 3GPP TS 24.011:
Capa CP (Subcapa de Gestión de Conexiones)
| Mensaje | Dirección | Descripción |
|---|---|---|
| CP-DATA | Ambos | Transporta un mensaje RP como carga útil |
| CP-ACK | Ambos | Reconoce la recepción de CP-DATA |
| CP-ERROR | Ambos | Informa un error en la capa CP (valor de causa incluido) |
CP-DATA contiene un único PDU de capa RP. Cada CP-DATA debe ser reconocido con un CP-ACK antes de que se pueda enviar el siguiente CP-DATA en la misma transacción.
Capa RP (Protocolo de Relé)
| Mensaje | Dirección | Descripción |
|---|---|---|
| RP-DATA | Ambos | Transporta el SM-TP-DU (el mensaje corto real) junto con las direcciones RP-DA y RP-OA |
| RP-ACK | Ambos | Confirma la entrega exitosa de RP-DATA |
| RP-ERROR | Ambos | Informa un error en la capa RP (valor de causa de la tabla 8.4 de TS 24.011) |
Para MO-SMS, el RP-DATA del UE contiene el SM-RP-DA (dirección del SMSc) y SM-RP-OA (dirección del suscriptor). Para MT-SMS, el MSC construye RP-DATA con SM-RP-DA (IMSI del suscriptor) y SM-RP-OA (dirección del SMSc).
Referencias
| Especificación | Título | Relevancia |
|---|---|---|
| TS 24.011 | Soporte del Servicio de Mensaje Corto Punto a Punto en la interfaz de radio móvil | Capas de protocolo CP y RP, formatos de mensaje, códigos de causa |
| TS 29.002 Sección 12 | Especificación MAP - Procedimientos del Servicio de Mensaje Corto | MAP MO-ForwardSM (opcode 46), MT-ForwardSM (opcode 44), información de enrutamiento para SM |
| TS 23.040 | Realización técnica de SMS | Codificación de la capa SM-TP, período de validez, informes de estado |
| TS 48.006 | Especificación del mecanismo de transporte de señalización para la interfaz BSC-MSC | Asignación de DLCI/SAPI para DTAP de la interfaz A |
| TS 24.007 | Capa de señalización de interfaz de radio móvil 3 - Aspectos generales | Asignación de Identificador de Transacción y convenciones de bandera TI |