ÍNDICE
GLOSARIO... 3
INTRODUCCIÓN... 7
LA SEÑALIZACIÓN SS7 EN UNA RED MÓVIL... 11
2.1 QUÉ ES LA SEÑALIZACIÓN... 12
2.2 ARQUITECTURA DE LA RED SS7 ... 12
2.2.1 Puntos de Transferencia de Señalización (STP)... 13
2.2.2 Punto de control de servicios (SCP)... 14
2.2.3 Punto de Datos de Servicio (SDP)... 14
2.2.4 Registro de localización de usuarios (HLR)... 15
2.2.5 Registro de localización de visitantes (VLR)... 15
2.2.6 Centro de Servicio de Mensajes Cortos (SMSC) ... 16
2.2.7 Enlaces de señalización SS7... 16
2.2.8 Señalización asociada... 16
2.2.9 Señalización cuasi-asociada ... 17
2.3 CAPAS DEL PROTOCOLO SS7 ... 17
2.3.1 Nivel Físico ... 17
2.3.2 Parte de Transferencia de Mensajes (MTP) – Nivel 2 ... 18
2.3.3 Parte de Transferencia de Mensajes (MTP) – Nivel 3 ... 19
2.3.4 Parte de usuario de RDSI (ISUP) ... 23
2.3.5 Parte de Control de Conexión de Señalización (SCCP)... 24
2.3.6 Parte de Aplicación de Capacidades de Transacción (TCAP) ... 27
2.3.7 Parte de Aplicación de Movilidad (MAP)... 27
2.4 TRANSACCIONES MAP EN EL SERVICIO SMS... 28
2.4.1 Mensaje corto originado ... 28
2.4.2 Mensaje corto terminado ... 29
TRANSPORTE DE SEÑALIZACIÓN SS7 SOBRE IP ... 31
3.1 SIGTRAN... 32
3.1.1 Qué es el Sigtran... 32
3.1.2 Arquitectura de los protocolos SIGTRAN ... 32
3.1.3 Necesidad de implementar un nuevo protocolo de transporte... 33
3.2 SCTP [RFC2960] ... 34
3.2.1 Características principales ... 34
3.2.2 Funciones de SCTP ... 36
3.3 M2PA... 39
3.3.1 Funciones soportadas por M2PA... 39
3.3.2 Formato de los mensajes M2PA... 41
3.4 M2UA [RFC 3331]... 41
3.5 M3UA [RFC 3332]... 44
3.5.1 Representación mediante códigos de punto de señalización... 45
3.5.2 Routing Keys ... 46
3.5.3 Redundancia ... 46
3.5.4 Formato de los mensajes de datos de usuario... 47
3.5.5 Utilización de M3UA ... 48
3.6.1 Encaminamiento de mensajes... 49
3.6.2 Utilización de SUA... 50
DISEÑO DE UNA RED DE TRANSPORTE DE SMS SOBRE IP... 51
4.1 OBJETIVO DE DISEÑO ... 52
4.2 PRESENTACIÓN DEL CASO DE ESTUDIO ... 52
4.2.1 Distribución de usuarios ... 52
4.2.2 Distribución de MSCs con acceso radio... 53
4.2.3 Red de tránsito... 54
4.2.4 Red de señalización ... 57
4.2.5 Portabilidad de numeración móvil... 61
4.2.6 Tráfico de SMS... 62
4.2.7 SMSCs... 63
4.2.8 Distribución de nodos por emplazamiento ... 64
4.3 RED SIGTRAN NECESARIA ... 65
4.3.1 Nodos ampliables con señalizadores SIGTRAN... 65
4.3.2 Alternativas de implementación ... 65
4.3.3 Arquitectura de la red SIGTRAN objetivo... 67
4.3.4 Tráfico IP en SGWs... 69
4.3.5 Tráfico IP en HLRs ... 73
4.3.6 Tráfico IP en SMSCs... 75
4.3.7 VLANes SIGTRAN ... 77
4.3.8 Ancho de banda entre emplazamientos ... 81
4.3.9 Plan de direccionamiento IP... 90
4.3.10 Configuración en MSCs ... 94
4.3.11 Configuración en STP/SGWs... 97
4.3.12 Configuración en SMSCs ... 101
4.3.13 Configuración en HLRs... 107
COMPARACIÓN ENTRE SOLUCIÓN TRADICIONAL Y SOLUCIÓN SIGTRAN... 111
5.1 OBJETIVO DE LA COMPARACIÓN... 112
5.2 RED EQUIVALENTE TRADICIONAL... 112
5.3 COMPARACIÓN DE AMBAS SOLUCIONES ... 113
5.3.1 Ancho de banda entre emplazamientos ... 113
5.3.2 Coste de los SMSCs ... 115
5.3.3 Coste de la red ... 116
5.3.4 Flexibilidad de las plataformas... 116
5.3.5 Capacidad de la red ... 117
5.3.6 Comportamiento ante congestión ... 117
5.3.7 Experiencia en la tecnología... 118
5.3.8 Evolución de la red... 118
5.4 RESULTADO DE LA COMPARACIÓN ... 120
BIBLIOGRAFÍA ... 123
GLOSARIO
• 3GPP Third generation partnership project. Grupo normalizador de las redes de telefonía móvil de tercera generación.
• ACK Mensaje de asentimiento a otro mensaje enviado previamente.
• BSC Base Station Controller. Nodo de conmutación dedicado a controlar estaciones base de radio.
• CAMEL Protocolo de Red Inteligente normalizado específico para redes de telefonía móvil.
• Chunk Unidad de información en la que se divide un paquete del protocolo SCTP.
• CIC Circuit Identification Code. Código identificador de un circuito de voz entre dos nodos de conmutación.
• CRC Cyclic redundancy check. Comprobación de redundancia cíclica.
• Diffserv Método de caracterización de tráfico IP basado en diferenciación por servicios.
• DPC Destination Point Code. Código de punto de señalización destino.
• FISU Fill-in signal unit. Unidad de señalización de relleno.
• FSM-MO Forward Short Message Mobile Originated. Envío de mensaje corto originado en móvil.
• FSM-MO-ack Forward Short Message Mobile Originatd acknowledgement.
Mensaje de asentimiento al envío de mensaje corto originado en móvil.
• FSM-MT Forward Short Message Mobile Terminated. Envío de mensaje corto terminado en móvil.
• FSM-MT-ack Forward Short Message Mobile Originatd acknowledgemente.
Mensaje de asentimiento al envío de mensaje corto terminado en móvil.
• GMSC Gateway Mobile Switching Centre. Central de conmutación móvil con capacidad para enviar mensajes a los registros de localización de usuarios.
• GPRS General Packet Radio Service. Servicio general de envío de
• GSM: Global Switched Mobile Network. Red de conmutación móvil global.
• GT Global Title. Título Global.
• GTT Global Title Translation. Traducción de títulos globales.
• HLR Home Location Register. Registro de localización de los usuarios de la propia red.
• IEEE Institute of Electrical and Electronics Engineers. Instituto de Ingenieros eléctricos y electrónicos.
• IETF Internet Engineering Task Force. Grupo de Trabajo de ingeniería de Internet.
• INAP Intelligent Network Application Part. Parte de aplicación de Red Inteligente.
• IP: Internet Protocol. Protocolo de Internet.
• ISPC International Signalling Point Code. Código de punto de señalización nacional
• ISUP Integrated Services User Part. Parte de usuario de servicios integrados.
• IUA ISDN Q.921-User Adaptation Layer. Capa de adaptación del usuario del protocolo Q.921 de la Red Digital de Servicios Integrados.
• Linkset Conjunto de enlaces de señalización entre dos nodos adyacentes.
• LSSU Link Status Signal Unit. Unidad de señalización de estado de enlace.
• M2PA MTP2-User Peer-to-Peer Adaptation Layer. Capa de adaptación entre pares de usuario de MTP2.
• M2UA MTP2-User Adaptation Layer. Capa de adaptación de usuario de MTP2.
• M3UA MTP3-User Adaptation Layer. Capa de adaptación de usuario de MTP3.
• MAP Mobile Application Part. Parte de aplicación móvil.
• MSC Mobile Switching Centre. Central de conmutación de telefonía móvil.
• MSISDN Mobile Station Integrated Service Digital Network Number. Número de línea de telefonía móvil.
• MSU Message Signal Unit. Unidad de señalización de mensaje.
• MTP Message Transfer Protocol. Protocolo de transferencia de mensajes de señalización.
• MTP3 Message Transfer Protocol layer 3. Capa de red del protocolo de transferencia de mensajes de señalización.
• NI Network Indication. Indicador de Red.
• OPC Originating Point Code. Código de punto de señalización origen.
• OSI Open System Interconnection. Interconexión de sistemas abiertos.
• RANAP Radio Access Network Application Part. Parte de aplicación de la red de acceso radio.
• Roaming Utilización por parte de un usuario de telefonía móvil de una red distinta de la suya.
• SCCP Signalling Connection Control Part. Parte de control de conexión de señalización.
• SCP Service Control Point. Punto de control de servicios.
• SCTP Stream Control Transmission Protocol. Protocolo de transmisión de flujos de control.
• SDP Service Data Point. Punto de datos del servicio.
• SGSN Serving GPRS support node. Nodo servidor de soporte de la red GPRS.
• SGW Signalling Gateway. Pasarela de señalización.
• SI Service Indicator. Indicador de servicio.
• SIGTRAN Signalling Transport. Transporte de señalización.
• SIO Service Information Octet. Octeto de información de servicio.
• SLC Signalling link code. Código de enlace de señalización.
• SLS Signalling link selection. Selección de enlace de señalización.
• SMS Short Message Service. Servicio de mensajes cortos.
• SMSC Short Message Service Centre. Central del servicio de mensajes cortos.
• SMS-MO Short Message Service-Mobile Originated. Mensaje corto originado en móvil.
• SMS-MT Short Message Service-Mobile Terminated. Mensaje corto terminado en móvil.
• SRI Send Routing Information. Envío de información de encaminamiento.
• SRIfSM Send Routing Information for Short Message. Envío de información de encaminamiento para mensaje corto.
• SS7 Sistema de señalización número siete.
• SSN Subsystem number. Número de subsistema.
• STP Signalling Transfer Point. Punto de transferencia de señalización.
• SUA SCCP-User Adaptation Layer. Capa de adaptación de usuarios de SCCP.
• Stream Secuencia de mensajes de usuario de SCTP que debe entregarse al nivel superior de forma ordenada.
• TCAP Transaction Capabilities Application Part. Parte de aplicación de capacidades de transacción.
• TCP Transmission Control Protocol. Protocolo de control de transmisión.
• TDM Time division multiplexation. Multiplexación por división en el tiempo.
• TSN Transmission Sequence Number. Número de secuencia de transmisión.
• TUA TCAP User Adaptation Layer. Capa de adaptación de usuarios de TCAP.
• UDP User Datagram Protocol. Protocolo de datagramas de usuario.
• UIT-T Unión Internacional de Telecomunicaciones-Sector de normalización de telecomunicaciones.
• UMTS: Universal Mobile Telecommunications System. Sistema universal de telecomunicaciones móviles.
• USSD Unstructured suplementary service data. Datos no estructurados de servicios suplementarios.
• VLAN Virtual local area network. Red de área local virtual.
• VLR Visitor Location Register. Registro de localización de visitantes.
1 1
I I N N T T R R O O D D U U C C C C I I Ó Ó N N
Los operadores móviles están experimentando un importante crecimiento en el número de usuarios, junto con una creciente difusión de nuevos servicios de comunicaciones basados en transacciones de datos. Como consecuencia de ello, se plantea la necesidad de contar con una red de transporte de datos más orientada al tráfico de mensajería.
Los nodos de las redes GSM utilizan el sistema de señalización número 7 (en adelante SS7) para intercambiar información relativa al control de llamadas, información de control de la movilidad de los usuarios y también para transportar los mensajes de texto intercambiados entre usuarios (en adelante SMS, de Short Message Service).
El sistema SS7 surgió dentro del entorno de la telefonía fija. Fue necesario crear un nuevo protocolo (MAP) para añadirle las funcionalidades requeridas por las redes GSM, tales como consulta a registros de usuarios. Basándose en estas nuevas funcionalidades se implementó el servicio de envío de mensajes de texto de móvil a móvil (SMS). Sin embargo, tanto las nuevas funcionalidades como las originales, utilizan como base el protocolo de transporte de señalización MTP, diseñado para unas redes con un tráfico de señalización mucho menor que el de las redes móviles. En redes con alta densidad de usuarios, las limitaciones del MTP suponen un serio problema a la hora de cursar la señalización de determinados nodos.
Lo más importante en una red de transporte de señalización es la fiabilidad. Dado que esta red transporta el control de todas las comunicaciones, un fallo en ella podría suponer la indisponibilidad de gran parte de la red y pérdidas económicas mucho mayores que las que produciría un fallo equivalente en un nodo de transporte de tráfico de usuario. Este nivel de fiabilidad se debe mantener porque al operador le interesa que el tráfico de señalización relativo a llamadas siempre se pueda cursar, y con unos retardos máximos garantizados. Sin embargo, el tráfico de envío de mensajes cortos no es tan crítico.
El servicio de mensajes cortos es de tipo “datagrama” y sin requisitos de retardo.
El tráfico que genera tiene requisitos de transporte poco exigentes. Sin embargo, el sistema GSM utiliza la red SS7 para transportarlos. Por esta red se transmite también la señalización relativa a llamadas, que tiene unos requisitos muy estrictos en cuanto a retardos y sobre todo, a disponibilidad de la red. Como la red SS7 no puede distinguir un tipo de tráfico de otro, añadir un tráfico de mensajes cortos importante supone ampliar toda la red de señalización lo suficiente como para garantizar alta disponibilidad y bajo retardo a todo este nuevo tráfico, que realmente no lo necesita.
En el momento en que es necesario realizar inversiones en la red de señalización, red fiable y de disponibilidad total, motivadas por el transporte de mensajes cortos, servicio sin requisitos de retardo, el operador debe plantearse utilizar redes de transporte alternativas al sistema SS7 tradicional, de forma que pueda ofrecer el mismo servicio a sus usuarios pero con la mínima inversión.
Las redes IP son claramente más adecuadas que las redes SS7 para el transporte de información sin requisitos estrictos de retardo o ancho de banda. Por ello, los operadores de telefonía móvil pueden encontrar ventajoso utilizar esta tecnología para el transporte de SMS.
En un futuro cercano, las redes de telefonía móvil de tercera generación utilizarán como única red de transporte una red IP, por lo que también le puede resultar interesante a los operadores móviles de segunda y tercera generación, utilizar la misma red de transporte de su sistema de tercera generación para cursar el tráfico de voz y señalización de su red de segunda generación. Esto resultará especialmente ventajoso cuando la tecnología GSM se encuentre en declive, tal como le ocurre actualmente a la telefonía móvil analógica.
2 2
L L A A S S E E Ñ Ñ A A L L I I Z Z A A C C I I Ó Ó N N
S S S S 7 7 E E N N U U N N A A R R E E D D
M M Ó Ó V V I I L L
2.1 QUÉ ES LA SEÑALIZACIÓN
En una Red de Conmutación, se entiende por señalización el intercambio de información entre diferentes nodos de la red necesario para proveer un servicio de comunicación.
Los usuarios de una Red de Conmutación, como es una red GSM, también intercambian señalización con elementos de la red, por ejemplo al marcar un número de teléfono, o al colgar.
El Sistema de Señalización SS7 es un medio que utilizan los elementos de la red de conmutación para intercambiar información. Esta información se transporta en forma de mensajes. Los mensajes SS7 transportan información relativa a establecimiento y liberación de llamadas. Además, en las redes de telefonía móvil también transportan información de localización del usuario en la red, así como mensajes de texto de usuario (SMS).
2.2 ARQUITECTURA DE LA RED SS7
El sistema SS7 consiste básicamente en una red de transporte de mensajes cuyos usuarios son nodos de conmutación. Esta red de transporte de señalización es paralela a la red de conmutación que forman los nodos que la utilizan, y su topología es, en general, completamente diferente. La Figura 1 muestra un esquema de red SS7 de una red GSM, con los componentes fundamentales.
MSC
MSC
HLR
SCP
Enlaces de señalización SMSC
Enlaces de voz Enlaces de señalización
Enlaces de voz
STP
STP STPSTP
STP
STP STPSTP
Figura 1. Esquema de Red SS7 en una red GSM.
Los elementos que forman la red SS7 en una red GSM son los siguientes:
2.2.1 Puntos de Transferencia de Señalización (STP)
Un STP es un conmutador de paquetes diseñado específicamente para enviar mensajes de señalización SS7. Los STPs encaminan mensajes entre centrales de conmutación (MSCs y GMSCs en una red móvil), bases de datos, como los registros de localización de los usuarios (HLRs), y nodos de control de servicios basados en Red Inteligente (SCPs).
La disponibilidad de la Red SS7 que interconecta los nodos de conmutación de una red de telefonía es un factor de máxima importancia en el procesamiento de las llamadas. Si dos centrales no pueden intercambiarse señalización, no podrán establecer ninguna llamada entre ellas. Por esta razón, la red SS7 se diseña con una arquitectura completamente redundante. Además, los protocolos de transporte de mensajes de señalización se han definido con mecanismos de re-encaminamiento de tráfico de señalización en caso de fallos en elementos de la propia red de señalización. Para el caso de los STPs, éstos siempre se configuran en parejas exactamente iguales. Todos los nodos que se conectan a un STP, también se conectan al otro STP de la pareja, formando una red redundante.
2.2.2 Punto de control de servicios (SCP)
Los servicios de telefonía que necesitan de un procesamiento avanzado de las llamadas (procesamiento que no pueden acometer las centrales de conmutación) se implementan mediante nodos de control de servicios (SCP). Estos nodos intercambian señalización de control de llamada con las centrales de conmutación, y en ellos se implementa la lógica del servicio. Este tipo de servicios se conoce también con el nombre de Red Inteligente.
Un ejemplo de servicio de Red Inteligente puede ser el de llamadas al servicio de atención telefónica de una empresa con presencia en varias ciudades, de manera que marcando un único número 900, la llamada siempre se encamine al centro de atención telefónica más cercano al origen de la llamada. En este caso, la central de conmutación en la que se origine la llamada efectuará una consulta al SCP para proseguir con el encaminamiento de la llamada. Esta consulta consistirá en un intercambio de mensajes de señalización entre central y SCP.
Dependiendo de la importancia del servicio al que atienden, los SCPs se pueden configurar como parejas redundantes, del mismo modo que los STPs.
En general, los SCPs implementan servicios basados en llamadas, no basados en otras portadoras utilizadas para enviar información en las redes móviles, como pueden ser SMS, USSD o GPRS.
2.2.3 Punto de Datos de Servicio (SDP)
Es posible que para proveer algunos servicios de Red Inteligente de forma masiva sea necesario disponer de varios nodos SCP, para distribuir la carga total de proceso del servicio. Si estos nodos requieren utilizar una base de datos común, es necesario disponer de un nodo independiente que la contenga. Este nodo se llama SDP, y también utiliza la Red SS7 para recibir y responder las consultas que provienen de los nodos SCP.
La base de datos del SDP se puede distribuir físicamente en varios nodos en caso de bases de datos de millones de registros y frecuencias de acceso elevadas, para mayor facilidad de implementación.
2.2.4 Registro de localización de usuarios (HLR)
Consiste en una base de datos que almacena, tanto la MSC en la que se encuentra registrado cada usuario como la información de acceso a servicios de los clientes. El HLR recibe peticiones de actualización de localización y envío de registros de usuario por parte de una GMSCs (Una GMSC es una MSC capaz de interrogar al HLR) cuando un nuevo usuario entra en el área de cobertura atendida por ésta. En el caso de redes de 2.5G, con GPRS, los nodos SGSN también piden el registro de cada usuario al que atienden, y envían peticiones de actualización de localización al HLR, de igual manera que una GMSC.
Todas las peticiones de actualización y consultas que recibe el HLR, así como sus respuestas correspondientes, son señalización entre nodos, y se envían mediante una red SS7.
Normalmente un operador con más de un millón de usuarios cuenta con varios nodos HLR, ya que la capacidad de memoria y carga de procesador de los nodos HLR es limitada. Además, si falla un HLR todos los usuarios definidos en él dejarán de estar atendidos por la red, por lo que conviene contar con algún esquema de redundancia de HLRs (por ejemplo, n+1).
2.2.5 Registro de localización de visitantes (VLR)
El VLR es una base de datos que almacena los registros de los usuarios activos que se encuentran atendidos por una MSC. En la mayoría de fabricantes, el VLR es un software que se ejecuta en la propia MSC. En el VLR se copian íntegramente los registros del HLR para todos los usuarios a los que atiende la MSC, de forma que ésta no necesita realizar consultas reiteradas al HLR para determinar si un cierto usuario puede acceder un servicio concreto. De este modo se reduce el tráfico de señalización entre MSC y HLR.
Cuando un usuario se mueve y pasa a estar atendido por otra MSC, el VLR antiguo recibe del HLR la orden de borrar el registro local del usuario.
2.2.6 Centro de Servicio de Mensajes Cortos (SMSC)
Es el elemento fundamental que permite a los usuarios enviar y recibir SMSs.
Estos centros reciben los SMSs enviados por los usuarios a la red. La MSC que atiende al usuario lo envía al SMSC y allí se almacena. Para conocer la MSC en la que se encuentra el usuario destino, el SMSC debe interrogar al HLR por la posición del usuario correspondiente. Entonces comienza una secuencia de intentos de entrega del SMS a la MSC destino. Si se entrega con éxito, el SMS se borra del SMSC. Si no, se almacena hasta el siguiente reintento. Si al cabo de un número de reintentos determinado no se ha entregado el SMS, se borrará del SMSC y se perderá.
Los SMSs se transmiten entre MSCs y SMSCs en forma de mensajes de señalización, y se cursan por tanto, a través de una red SS7.
2.2.7 Enlaces de señalización SS7
Se entiende por enlace de señalización un circuito de datos bidireccional que conecta dos nodos individuales en una red SS7. El conjunto de enlaces de señalización o SLCs (de Signalling Link Circuit) que se define entre dos nodos de la red SS7 se conoce como Linkset.
2.2.8 Señalización asociada
En ocasiones, se implementan enlaces de señalización directos entre dos nodos de conmutación, sin utilizar ninguna red SS7 de tránsito. Este esquema de señalización se denomina señalización asociada.
Si bien en general es preferible enviar la señalización a través de la red SS7, por su fiabilidad, existen casos en los que no es posible implementar linksets hacia STPs. Un ejemplo puede ser la interconexión con un operador de telefonía básica pequeño, que no cuente con STPs, o que únicamente cuente con un punto de interconexión al otro operador, a través de una central.
En otros casos realmente no se pierde seguridad por no utilizar los STPs para enviar la señalización. Los nodos que únicamente envían señalización a un solo destino no necesitan una red de transmisión de señalización. Con un linkset directo es suficiente. Un ejemplo de estos nodos son las BSCs. Una BSC se conecta únicamente a una MSC, y sólo le envía mensajes de señalización a ésta. Si falla la BSC, la MSC, o la transmisión entre estos nodos, la BSC quedará fuera de servicio, por lo que no se gana seguridad estableciendo enlaces de señalización redundantes.
2.2.9 Señalización cuasi-asociada
Como contraposición a la señalización asociada, la arquitectura en la que se establecen enlaces de señalización entre los nodos de conmutación y los STPs de la red SS7 se denomina señalización cuasi-asociada.
2.3 CAPAS DEL PROTOCOLO SS7
Lo fundamental en una red SS7 es el protocolo de transferencia de mensajes de señalización (MTP). Este protocolo comprende los niveles dos y tres de la torre OSI, y sobre él se transmite toda la señalización de todas las redes de conmutación de circuitos tradicionales, tanto de operadores de telefonía fija como de telefonía móvil.
2.3.1 Nivel Físico
En general, en las redes SS7 tradicionales los enlaces de señalización se implementan mediante transmisión TDM (Multiplexación por División en el Tiempo) utilizando canales de 64 kbps dentro de tramas punto a punto de 2 Mbps (E1 normalizados)1.
1 En la norma americana las líneas punto a punto son T1s en lugar de E1s, y el ancho de banda de
Entre dos nodos de una red SS7 se pueden definir como máximo 16 canales, pero por lo general no se suelen implementar más de 8 en las redes reales, debido a limitaciones del protocolo MTP que se analizarán en el apartado 2.3.3.3. Se puede observar que de la transmisión TDM sobre enlaces punto a punto de 2 Mbps (32 canales de 64 kbps) se utiliza, en el mejor de los casos, hasta un 25%. En realidad, si se utilizan enlaces redundantes la carga de tráfico en uno de ellos no debe superar el 50%, de forma que en caso de caída de un enlace se pueda cursar todo el tráfico por el otro, por lo que el tráfico máximo que se puede cursar por los E1s, de 2Mbps, es de 256 kbps (12’5% como máximo). El consumo de recursos de transmisión en la red SS7 tradicional es claramente poco eficiente.
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Sincronismo de trama Definidos
como linkset Canales desaprovechados
32 x 64 kbps STP
STP STPSTP
Figura 2 Aprovechamiento de la transmisión TDM en una red SS7
Si se dispone de multiplexores TDM, se puede aumentar el aprovechamiento de la transmisión enviando distintos linksets entre nodos de los mismos emplazamientos por la misma trama, o incluso utilizar canales de tramas dedicadas al transporte de canales de voz para transportar los SLCs de uno o varios linksets.
2.3.2 Parte de Transferencia de Mensajes (MTP) – Nivel 2
Esta capa del protocolo se encarga de todas las tareas de nivel de enlace, de forma que se asegura que entre los dos extremos de un enlace de señalización se pueden intercambiar mensajes de forma fiable. Estas tareas son:
• Sincronismo de enlace.
• Monitorización de tasa de errores.
• Generación y comprobación de códigos de redundancia cíclica (CRC) y números de secuencia de MSUs.
• Gestión de colas de entrada y salida de MSUs y monitorización de
• Transmisión, recepción y reenvío en caso de error de MSUs.
2.3.3 Parte de Transferencia de Mensajes (MTP) – Nivel 3
Este nivel es el corazón de la red SS7. El nivel 3 de MTP (en adelante MTP-3) es el encargado de proveer conectividad entre todos los nodos de la red, de forma que asegura que dos nodos puedan intercambiar mensajes de señalización, independientemente de si están directamente conectados o no.
Las principales funciones de este nivel son:
• Identificación de todos los nodos de la red.
• Encaminamiento y reenvío de mensajes, y reparto de carga entre varios enlaces.
• Gestión del estado de enlaces.
2.3.3.1 Códigos de Punto de Señalización (SPC)
En MTP los nodos se identifican mediante al menos un código de 14 bits2 denominado Signalling Point Code (SPC). En los mensajes MTP3 se incluyen los campos OPC (Originating Point Code) y DPC (Destination Point Code), que corresponden a los SPCs de los nodos origen y destino del mensaje MTP3, respectivamente.
Existe, además, un identificador de red (NI) de dos bits que aplica al mensaje MTP entero y se utiliza para diferenciar los mensajes MTP3 intercambiados entre las redes MTP nacionales y la red MTP internacional.
El uso del campo NI, según la UIT-T es el siguiente:
• 00: Red Internacional.
• 01: Uso privado internacional.
• 10: Red Nacional.
• 11: Uso privado nacional.
De esta forma, un mismo nodo puede usar un identificador nacional para intercambiar mensajes con nodos de su mismo país (incluso de otras operadoras nacionales), y un identificador internacional para intercambiar mensajes con nodos de otros países. Sin embargo, como el identificador de red aplica tanto al OPC como al DPC, un nodo que únicamente tiene identificador nacional no puede enviar mensajes a un nodo con únicamente identificador internacional.
Así, un SPCs de 14 bits no identifica un nodo. Es necesario especificar además la red (espacio de direccionamiento) en la que se aplican. Los SPCs se representan en notación decimal junto con el campo NI, de la siguiente forma:
• NI=10 (Ámbito Nacional) en binario. 2 en decimal.
• SPC=10010001110110 en binario; 9334 en decimal.
• Notación decimal: 2-9334.
Todos los nodos de conmutación de un mismo país deben utilizar el mismo conjunto de 14 bits para identificar sus nodos en sus comunicaciones de ámbito nacional. Para comunicaciones que únicamente se dan en el ámbito de una operadora concreta (sin interconexión) se puede utilizar también un ámbito de red nacional privado (NI=11 en binario, 3 en decimal).
2.3.3.2 Encaminamiento de mensajes por SPC
El encaminamiento de mensajes basado en SPC (en realidad SPC más NI) consiste en el conjunto de reglas que se aplican en el momento en que llega un mensaje MTP al nivel de red del protocolo (nivel 3). Mediante estas reglas se decide si el propio nodo es el destino de un mensaje o, en caso de no serlo, por qué enlace de señalización (nivel 2) cursar el mensaje. El nivel MTP-3 de un nodo puede enviar mensajes hacia cualquiera de los niveles MTP-2, definidos en cada uno de sus enlaces de señalización. Encaminar los mensajes, en este nivel, es decidir por qué enlace de señalización enviarlos.
MSC HLR
Enlaces de señalización
Enlaces de voz
BSC
STPA STPA
STPB STPB
Figura 3. Ejemplo de conexión de una MSC a la Red SS7
En la Figura 3, la MSC dispone de tres linksets, por ejemplo, de cuatro SLCs hacia la BSC y de ocho SLCs hacia los STPs. La capa de Red de MTP de la MSC dispone en total de 20 enlaces de señalización a los que poder entregar mensajes. Para discriminar qué mensajes enviar por cada enlace, en primer lugar se escoge el linkset por el que se entregará el mensaje. La capa MTP-3 dispondrá de una tabla como la que se muestra a continuación:
Tabla 1. Ejemplo de encaminamientos MTP3
DPC (Destino MTP-3) Linkset de salida Prioridad Bit del SLS de reparto de carga
SPC de la BSC Linkset hacia BSC 1 -
Linkset hacia STP-A 1 3
SPC del HLR
Linkset hacia STP-B 1 3
De acuerdo con la tabla anterior, la MSC enviaría todos los mensajes MTP-3 cuyo destino es la BSC por el linkset directo hacia la BSC (aún no se ha determinado cuál de los cuatro enlaces hacia la BSC utilizar en cada mensaje concreto). Para el caso de los mensajes MTP-3 cuyo destino es el HLR, la MSC dispone de dos linksets con la misma prioridad para enviarlos. En este caso, la mitad de los mensajes los enviará por el linkset con el STP-A y la otra mitad por el linkset con el STP-B (reparto de carga). De nuevo, quedaría por determinar qué enlace dentro del linkset utilizar parar enviar un mensaje MTP concreto. Si el linkset hacia STP-B tuviera, por ejemplo, prioridad 2, se enviarían todos los mensajes hacia el STP-A, y sólo se enviarían hacia el STP-B en caso de fallo en la entrega por el linkset hacia el STP-A.
2.3.3.3 Reparto de carga entre enlaces
El protocolo MTP3 (norma UIT-T Q.704) define una serie de mecanismos normalizados de encaminamiento de mensajes con reparto de carga entre linksets y entre SLCs dentro de cada linkset. Estos mecanismos se basan en utilizar el campo SLS de los mensajes MTP-3 (Signalling Link Selection). Cada vez que se origina un mensaje MTP- 3 se le asigna un número de cuatro bits, del 0000 a 1111, en general de forma secuencial, aunque con restricciones3. Este número será el valor del campo SLS del mensaje MTP-3. Para repartir carga de señalización entre dos linksets, es decir, para enviar la mitad de los mensajes MTP-3 hacia un destino concreto por un linkset y la otra mitad por otro, el protocolo se fija en el valor de un bit del SLS determinado en la tabla de encaminamiento MTP. Los mensajes con ese bit igual a 0 se envían por un linkset y los mensajes con el bit igual a 1 se envían por el otro.
3 Todos los mensajes MTP pertenecientes a la misma transacción de nivel superior (en redes GSM ISUP o SCCP) siempre utilizan el mismo valor de SLS. De esta forma se garantiza que todos esos mensajes se envían por el mismo camino, asegurándose el orden en la entrega de mensajes para una misma transacción.
Dentro de un linkset, se utilizan los bits menos significativos del campo SLS para escoger el SLC por el que enviar el mensaje. Para repartir carga entre los enlaces de un linkset de dos SLCs se utiliza el bit menos significativo. Para repartir carga entre cuatro SLCs se utilizarán los dos bits menos significativos del SLS, y para repartir entre ocho SLCs se utilizarán los tres bits menos significativos del SLS. Ahora bien, si se define un linkset con un número de SLCs que no sea potencia de 2, no se repartirá bien la carga de señalización entre ellos.
El principal inconveniente de la utilización del campo SLS para repartir carga entre enlaces es que con cuatro4 bits sólo se puede repartir carga entre 16 caminos distintos. Si se utiliza un bit para escoger entre dos linksets, sólo quedan tres bits disponibles para elegir SLC dentro del linkset, por lo que en este caso el máximo número de SLCs en los linksets es ocho.
En cualquier caso, es decisión de los fabricantes de equipos de conmutación implementar el nivel 3 del protocolo MTP de acuerdo a la norma, ya que es posible utilizar otras estrategias de encaminamiento de mensajes MTP que garantizan el orden en la entrega de mensajes dentro de la misma transacción y que además, permiten utilizar reparto de carga entre linksets de 16 SLCs (Ver [GRAD]).
2.3.4 Parte de usuario de RDSI (ISUP)
El protocolo ISUP se encarga del establecimiento y liberación de llamadas de voz y datos sobre redes de conmutación de circuitos de 64 kbps. Para ello gestiona en cada tramo de la llamada la toma de enlace, y su correspondiente liberación posterior, dentro de las tramas disponibles entre centrales de conmutación de voz. Los mensajes ISUP se transportan directamente sobre MTP-3.
4 Según norma de la UIT-T el campo SLS se compone de cuatro bits. En norma ANSI se utilizan 5
Cuando se marca un número de teléfono, la central de conmutación de voz (en redes móviles son MSCs) decide cuál es el siguiente tramo del circuito de voz que se debe establecer entre el usuario que marca el número y el destino de la llamada. Una vez que la central decide que debe tomar un enlace hacia otra central, le envía a esta última un mensaje ISUP de petición de toma de canal, con información del número A (origen de la llamada), número B (destino de la llamada) y tipo de servicio portador solicitado (voz, datos o fax).
Aunque desde el punto de vista de la red de conmutación de voz sólo se intercambia señalización ISUP entre nodos adyacentes, estos nodos no tienen por qué ser adyacentes desde el punto de vista de la red SS7. En las redes con señalización cuasi-asociada no lo son, y por eso se necesita el protocolo MTP para encaminar los mensajes ISUP de una central de conmutación de voz a otra (Ver Figura 1).
2.3.5 Parte de Control de Conexión de Señalización (SCCP)
El protocolo SCCP provee dos funciones fundamentales de las que carece MTP.La primera de ellas es la capacidad de discriminar aplicaciones dentro de un nodo con un único punto de señalización. MTP sólo reconoce nodos completos, y no distingue entre las diferentes aplicaciones software dentro de un único nodo físico. Las aplicaciones software que se ejecutan en los nodos de conmutación se denominan subsistemas. De esta forma, una MSC puede funcionar a la vez como HLR, y distinguirá la aplicación a la que entregar los mensajes por el número de subsistema enviado en el mensaje SCCP.
2.3.5.1 Traducción de Títulos Globales
La segunda función proporcionada por el protocolo SCCP es la capacidad de realizar encaminamiento incremental de los mensajes, utilizando lo que se denomina Traducción de Títulos Globales (o GTT).
Los Títulos Globales son identificadores únicos de aplicaciones sobre nodos de conmutación. El espacio de direccionamiento de los títulos globales, como su propio nombre indica, es global. Es decir, un GT identifica unívocamente una aplicación sobre un nodo de conmutación en todo el mundo. Gracias a este espacio de direccionamiento común a todas las redes SS7 es posible enviar mensajes desde un HLR de una red a una MSC de otra red incluso en otro país.
Los GTs consisten en secuencias de dígitos decimales con formato según la norma UIT-T E.164, es decir, idénticos en su codificación a los números de teléfono habituales. Como sabemos, mediante los “números de teléfono” podemos identificar líneas de teléfono en todo el mundo. Es decir, el rango de direcciones de líneas de teléfono tiene ámbito global, y las centrales de conmutación de telefonía están diseñadas para interpretar estas secuencias. Por eso se decidió utilizar estos mismos identificadores, en lugar de para identificar líneas de teléfono, para identificar a los propios nodos de las redes de conmutación.
Puesto que se utiliza el mismo espacio de direccionamiento, cada red deberá reservar una parte de su rango de numeración de líneas de abonado, o MSISDNs, para utilizarlos como GTs de sus nodos de conmutación.
A la hora de enviar un mensaje SCCP a través de una red MTP, se debe realizar una traducción de la dirección SCCP (GT) a la dirección MTP (SPC). Sin embargo, un nodo puede realizar una traducción “parcial” del GT a SPC. La dirección MTP a la que se envía el mensaje puede corresponder con un nodo intermedio. En este caso, el nodo intermedio recibe un mensaje con su dirección MTP. Por tanto, lo abre y lo entrega a su nivel SCCP, y a este nivel la dirección destino (GT) no es el propio nodo, por lo que de nuevo se realiza una traducción de GT a SPC, pero esta vez en el nodo intermedio.
Como ejemplo de delegación de traducciones de GTs se puede pensar en una red GSM en la que todos sus HLRs deben ser capaces de enviar mensajes SCCP a las MSCs de las redes en donde sus usuarios pueden hacer roaming internacional. Lo normal es que los HLRs únicamente pertenezcan a una red MTP nacional (NI=2) y no pertenezcan a la red MTP internacional (NI=0). De esta forma, los HLRs deberán traducir el GT de la MSC destino a el SPC de un STP que pertenezca a la vez a la red nacional e internacional. El STP abrirá el mensaje MTP y realizará una segunda traducción del GT destino a una dirección MTP de la red internacional que seguramente corresponderá con los STPs internacionales de la operadora destino. Los STPs de la operadora destino volverán a abrir el mensaje MTP y realizarán una última traducción del GT al SPC de la MSC destino del mensaje.
STP MSC
STP STPSTP
HLR
MTP3 SCCP
Red MTP nacional Red MTP nacional
MTP3 MTP3 SCCP
MTP3 MTP3 SCCP
MTP3 SCCP
Red MTP internacional
Red MTP
internacional Red MTP
nacional Red MTP nacional
SPC=2-AGT=A
GT dest =B → DPC=2-C’ GT dest =B → DPC=0-D GT dest =B → DPC=2-B
OPC=2-A OPC=0-C OPC=2-D’
GT=C SPC=2-C’
SPC=0-C
GT=D SPC=2-D’
SPC=0-D
SPC=2-BGT=B
Figura 4. Traducción de GTs
En el tramo final, la red nacional destino puede enviar el mensaje SCCP tanto al GT destino como al DPC+SSN del nodo destino.
2.3.6 Parte de Aplicación de Capacidades de Transacción (TCAP)
El protocolo TCAP surge de la necesidad de disponer de un mecanismo de comunicaciones entre nodos de conmutación no orientados a la toma de circuitos de voz. Este protocolo introduce el concepto de transacción, de forma que ofrece al nivel superior el control de comunicaciones basadas en instrucciones y respuestas, relacionándolas entre sí.
Gracias a TCAP, los protocolos de nivel superior (INAP, CAMEL y MAP) pueden enviar ordenes a otros nodos, y recibir las respuestas correspondientes.
TCAP no aporta más funcionalidad aparte de la correlación entre órdenes y respuestas. Es un protocolo de transporte de instrucciones entre nodos de conmutación.
En los protocolos de nivel superior deberá implementarse la verdadera funcionalidad de consulta de bases de datos, o de control avanzado de llamadas.
2.3.7 Parte de Aplicación de Movilidad (MAP)
El protocolo MAP se utiliza en las redes de telefonía móvil para intercambiar información de gestión de la movilidad de los usuarios, controlar el traspaso de llamadas (handover) entre centrales y para enviar mensajes de texto de usuario (SMS).
MAP especifica una serie de flujos de información y servicios que posibilitan que un usuario pueda engancharse a cualquier MSC que le de cobertura, y pueda acceder a todos sus servicios independientemente de su localización. Además, MAP define mecanismos de autentificación de usuarios y terminales, derivados del acceso radio de los usuarios.
Adicionalmente, se implementó en el protocolo MAP el servicio de envío de mensajes de texto de hasta 160 caracteres (SMS) entre los usuarios de las redes GSM, así como el envío de señalización no estructurada de usuario (USSD).
2.4 TRANSACCIONES MAP EN EL SERVICIO SMS
El servicio SMS se basa en el envío de mensajes entre el usuario origen y un usuario destino a través de un nodo intermedio denominado SMSC.
Primero se establece una comunicación entre el usuario origen y el SMSC, en la cuál se envía el mensaje y se almacena en el SMSC. Este mensaje se denomina
“mensaje corto originado en móvil”. Después, el SMSC analiza el número del usuario destino del mensaje, interroga al HLR por la MSC en la que se encuentra el usuario destino y comienza un proceso de intentos de entrega. Este mensaje entre SMSC y MSC destino se denomina “mensaje corto terminado en móvil”, y es posible que se envíe más de uno para un mensaje originado, ya que el usuario destino puede encontrarse fuera de cobertura.
2.4.1 Mensaje corto originado
El envío de un mensaje corto originado desde una MSC hasta un SMSC se encapsula en el mensaje MAP Forward Short Message Mobile Originated (FSM-MO).
Este mensaje lo envía la MSC origen al SMSC destino basándose en el GT que el usuario indica en su terminal, aunque las MSCs pueden modificar este GT y enviar sus SMSs a un SMSC prefijado.
La Figura 5 muestra los mensajes MAP intercambiados en un envío de un mensaje corto originado en móvil. Dado que el envío se realiza sin analizar el número destino, únicamente analizando un GT, que corresponde siempre a un mismo nodo, no es necesario consultar al HLR.
El mensaje Forward Short Message Mobile Originated Acknowledgement (FSM- MO-ack) sirve como confirmación de entrega del mensaje corto desde la MSC al SMSC.
MSC SMSC FORWARD SHORT MESSAGE (MO)
FORWARD SHORT MESSAGE (MO) ACK
t t
Figura 5. Mensaje corto originado
2.4.2 Mensaje corto terminado
Una vez que el SMSC procesa el mensaje, comienza una serie de intentos de entrega de dicho mensaje al usuario destino. Para ello, en cada intento interroga al HLR acerca de la MSC en la que se encuentra el usuario destino. Este mensaje MAP se denomina Send Routing Information for Short Message (SRIfSM), y la respuesta también, aunque se transporta sobre un mensaje TCAP de tipo response, por lo que para distinguirlo se dice SRIfSM-response.
Una vez que el SMSC conoce la MSC destino envía un mensaje MAP denominado Forward Short Message Mobile Terminating (FSM-MT). Si el SMSC no recibe el mensaje de asentimiento correspondiente, Forward Short Message Mobile Terminating Acknowledgement (FSM-MT-ack), se inicia un proceso de reintentos sucesivos con diferentes esquemas de tiempo entre reintentos. Si después de un número prefijado de reintentos no se recibe el mensaje de asentimiento de la MSC destino, el mensaje se borra en el SMSC.
La Figura 6 muestra los mensajes MAP enviados en una transacción de mensaje corto terminado con éxito.
SMSC MSC
Send Routing Info. for SM
t t
HLR
t Send Routing Info. forSM- response
Forward Short Message Mobile Terminating Forward Short Message Mobile Terminating-ack
Figura 6. Transacciones MAP en un mensaje corto terminado
3 3
T T R R A A N N S S P P O O R R T T E E D D E E
S S E E Ñ Ñ A A L L I I Z Z A A C C I I Ó Ó N N S S S S 7 7
S S O O B B R R E E I I P P
3.1 SIGTRAN
3.1.1 Qué es el Sigtran
SIGTRAN (de signalling transport) es el nombre del grupo de trabajo del IETF encargado de definir una arquitectura para el transporte de señalización en tiempo real sobre redes IP. A raíz de ello, no sólo se creó una arquitectura, sino que se definió un conjunto de protocolos de comunicaciones para transportar mensajes SS7 sobre IP.
3.1.2 Arquitectura de los protocolos SIGTRAN
La arquitectura definida por el Sigtran [RFC2719] consta de tres componentes:
• IP estándar como protocolo de red.
• Un protocolo común de transporte de señalización. Los protocolos definidos por el Sigtran se basan en un nuevo protocolo de transporte sobre IP, llamado SCTP (Stream Control Transmission Protocol).
• Capas de adaptación específicas para cada capa de la torre SS7 que se necesite transportar. El IETF ha definido las siguientes: M2PA, M2UA, M3UA, SUA, TUA e IUA.
IP SCTP
Capa de adaptación S7UP/S7AP
Figura 7 Arquitectura de protocolos SIGTRAN.
3.1.3 Necesidad de implementar un nuevo protocolo de transporte
Los anteriores protocolos de transporte sobre IP, TCP y UDP, se diseñaron como protocolos de propósito general, y presentan ciertas limitaciones que les hacen inadecuados para transportar señalización SS7, debido a las características de este tráfico.
3.1.3.1 Inconvenientes de UDP
Las características de UDP que lo hacen inadecuado para el transporte de señalización SS7 son las siguientes:
• No soporta acuse de recibo de los mensajes (ACK).
• No garantiza entrega ordenada de los mensajes.
• No incorpora mecanismos de seguridad.
En general, aunque UDP es un protocolo que permite enviar mensajes a mayor velocidad, no es fiable ni, por tanto, adecuado para transportar tráfico con las necesidades de integridad que impone la señalización SS7.
3.1.3.2 Inconvenientes de TCP
Las siguientes particularidades de TCP hacen que éste tampoco resulte un protocolo de transporte adecuado para el tráfico SS7:
• TCP transporta un flujo de octetos (byte-stream) entre un puerto origen y un puerto destino. Dentro de este flujo monolítico, se garantiza la entrega ordenada en destino de todos los octetos, sin tener en cuenta el origen de éstos y sin diferenciar unos datos de otros.
• TCP es muy sensible a retardos provocados por un fallo de transmisión en algún mensaje TCP. Cuando esto ocurre, TCP no envía más datos del flujo de octetos hasta que se confirma la entrega correcta del mensaje que se transmitió con errores. La consecuencia de esto es que si se utiliza TCP para enviar mensajes ISUP entre dos centrales de conmutación, y uno de los mensajes, correspondiente a una llamada concreta, se transmite con errores, todos los
mensajes ISUP, correspondientes a todas las llamadas, tendrían que esperar hasta que se retransmitiera correctamente el mensaje erróneo.
• La duración de algunos temporizadores (time-outs) definidos en el protocolo, especialmente el de retransmisión, puede ocasionar retardos no aceptables en un establecimiento de llamada.
• Un problema adicional de TCP es su relativa vulnerabilidad ante ataques de negación de servicio, como los ataques por SYN5.
3.2 SCTP [RFC2960]
3.2.1 Características principales
Debido a los inconvenientes mencionados de TCP y UDP, el SIGTRAN definió el protocolo SCTP, cuyas principales características son las siguientes:
• Es un protocolo punto a punto. Se establece intercambio de datos entre dos extremos conocidos.
• Define tiempos de reintento (time-outs) mucho menores que los de TCP.
• Proporciona transporte fiable de datos de usuario, detectando y reparando los datos erróneos o fuera de secuencia.
• Se adapta a la tasa de transferencia, disminuyendo la velocidad de envío de datos en caso de congestión en la red.
• Permite definir en un mismo extremo SCTP en varios servidores físicos (multi- homing). Un único extremo SCTP se puede definir en varias direcciones IP.
Hacia cada una de ellas se encaminan los mensajes de forma independiente, de manera que si uno de los nodos físicos queda fuera de servicio, el resto de comunicaciones no se ven afectadas.
5 Para iniciar una conexión TCP, un cliente envía un mensaje SYN a un servidor. El servidor le envía un SYN ACK y espera un nuevo ACK de este último mensaje para establecer la conexión. El ataque por SYN consiste en enviar a un servidor mensajes SYN con direcciones origen aleatorias, de forma masiva. Como los ACKs de los SYN-ACKs no se reciben, se satura el buffer donde el protocolo almacena los establecimientos de conexiones en curso, de forma que se colapsa el servidor y éste no puede atender nuevas conexiones.
• Utiliza un procedimiento de inicialización basado en cookies, para evitar ataques de negación de servicio tipo SYN.
• Permite compactar varios mensajes de señalización en un mismo mensaje SCTP.
• A su vez, permite fragmentar los mensajes de señalización, de forma que un mismo mensaje se divida en varios mensajes SCTP.
• Está orientado a mensajes, y define tramas de datos estructurados, al contrario que TCP, que transporta trenes de octetos no estructurados.
• Los datos se pueden dividir en múltiples trenes (streams), cada uno con un orden de entrega de mensajes independiente.
Los dos últimos puntos son los que hacen que SCTP sea mucho más adecuado para el transporte de señalización, aparte de la mayor protección frente a ataques de este protocolo. La posibilidad de establecer múltiples trenes de datos (streams) entre dos aplicaciones permite que exista un proceso de nivel de aplicación de SCTP que gestione la señalización ISUP. Los mensajes asociados a una llamada se envían por un stream concreto. Si un mensaje ISUP no se entrega correctamente y es necesario retransmitirlo, el resto de streams no se ven afectados por el retardo (Ver Figura 8).
Llamada 1
Llamada 3
Llamada 2
Llamada 3 Llamada 1
Llamada 2
Llamada 1
Llamada 2
Llamada 3
Figura 8. Secuencia de mensajes ISUP transmitidos en varios streams de SCTP.
Si las llamadas ISUP se transmitieran mediante TCP, un fallo en un mensaje de una llamada retrasaría la entrega de los mensajes del resto de llamadas innecesariamente.
3.2.2 Funciones de SCTP
3.2.2.1 Establecimiento y liberación de Asociaciones
Una asociación SCTP es una relación de comunicación de mensajes entre dos entidades SCTP (comunicación orientada a conexión). Las asociaciones SCTP se establecen a petición del usuario de nivel superior de este protocolo.
Para proporcionar protección frente a ataques de denegación de servicio, se emplea un protocolo de establecimiento de asociaciones en cuatro pasos, basado en cookies [RFC2522].
3.2.2.2 Entrega ordenada dentro del Stream
Dentro del protocolo SCTP, se utiliza el término stream para referirse a una secuencia de mensajes de usuario que debe entregarse al nivel superior de forma ordenada.
El número de streams que se enviarán a través de una asociación se define en el establecimiento de la misma, de forma negociada entre ambos extremos de la comunicación. Los streams son unidireccionales, de forma que para una comunicación bidireccional se deberán definir al menos dos streams en una asociación SCTP.
Los mensajes de usuario se asocian a streams determinados, de forma que el extremo receptor SCTP entrega al nivel superior todos los mensajes de un mismo stream en el mismo orden en que se enviaron. Sin embargo, no existen restricciones de entrega ordenada entre mensajes de distintos streams de la misma asociación. De esta forma, los mensajes de un stream se pueden seguir entregando aunque otro esté bloqueado esperando el siguiente mensaje.
Adicionalmente, SCTP proporciona un mecanismo para no utilizar el servicio de entrega ordenada de mensajes, de forma que los mensajes enviados mediante dicho mecanismo se entregan al nivel superior del destino SCTP tan pronto como se reciben.
3.2.2.3 Fragmentación de los datos de usuario
SCTP posee mecanismos de fragmentación y re-ensamblado de mensajes de usuario para adecuarlos al tamaño requerido por el nivel inferior (IP en el caso de SS7 sobre IP).
3.2.2.4 Control de entrega de mensajes
SCTP asigna un número de secuencia de transmisión (TSN) a cada mensaje de datos de usuario, fragmentado o no. El TSN es independiente del stream por el que se envía el mensaje. El extremo receptor envía acuses de recibo (ACK) de todos los TSNs recibidos, aunque no lleguen de forma ordenada. De esta forma, la fiabilidad en la entrega de los mensajes se mantiene funcionalmente separada de la entrega ordenada dentro del stream.
Si al cabo de un cierto tiempo no se recibe un ACK de un mensaje, se retransmite, aunque con condiciones determinadas por procedimientos de control de congestión similares a los de TCP.
3.2.2.5 Formato de paquetes
Un paquete SCTP se compone de una cabecera de 24 octetos y una serie de unidades de información, denominadas chunks. Estas unidades de información pueden contener datos de usuario, o instrucciones de control del propio protocolo SCTP (establecimiento y liberación de asociaciones, control de flujo, retransmisiones, etc).
Los chunks tienen estructura propia, y presentan una serie de campos, dependiendo del tipo de chunk que sean.
En el ámbito de la planificación de una red SS7 sobre IP, el dato más relevante es el tamaño de las cabeceras de los datos de usuario. La cabecera de un chunk de datos de usuario mide 16 octetos, y pueden contener hasta 65520 octetos de información del nivel superior. Esto significa que, en principio, cualquier mensaje de cualquier operación MAP, ISUP o CAMEL cabe en un chunk de datos SCTP, incluyendo las cabeceras de los protocolos de adaptación intermedios.
Además, SCTP permite transportar varios mensajes de usuario en un único mensaje SCTP, mediante el uso de distintos chunks de datos dentro del mismo mensaje.
CABECERA CO M Ú N CABECERA CH U N K DATO S
DATO S U SU ARIO SCTP
24 octetos 16 octetos
H asta 65520 octetos
Figura 9 . Formato paquete SCTP con datos de usuario
3.2.2.6 Validación de paquetes
Dentro de la cabecera común de SCTP se incluye un campo de verificación obligatorio, aparte de otro campo de 32 bits con una suma de comprobación (checksum) frente a errores. El valor del campo de verificación obligatorio lo decide el extremo de la comunicación SCTP en el establecimiento de la asociación. De esta forma se consigue más protección frente a comunicaciones con suplantación de identidad.
La suma de comprobación se calcula a partir de los datos de la propia cabecera SCTP y la protege frente a errores en la comunicación.
3.2.2.7 Gestión de conexiones
El usuario del nivel SCTP puede manipular el conjunto de direcciones de transporte destino de los mensajes. La función de gestión de conexiones de SCTP escoge la dirección de transporte destino para cada paquete SCTP que se envía, basándose en las instrucciones del usuario de SCTP y en las direcciones disponibles alcanzables para ese destino SCTP.
En periodos de inactividad, la función de gestión de conexiones monitoriza la disponibilidad de los extremos de la comunicación mediante mensajes de comprobación (heartbeats). Si SCTP percibe algún extremo como inalcanzable informa a su usuario de nivel superior.
En el establecimiento de la asociación, se define un camino primario para cada extremo SCTP, que es el que se usa en el envío normal de paquetes.
En el extremo receptor, la gestión de conexiones se encarga de comprobar la existencia de una asociación SCTP válida a la que pertenece cada paquete SCTP recibido.
3.3 M2PA
M2PA son las siglas de MTP2-user peer-to-peer adaptation. Es un protocolo de adaptación de MTP-3 (único usuario de MTP2) a SCTP, cuya característica fundamental es que es entre pares. Esto quiere decir que un mensaje MTP3 enviado por M2PA tiene como destino otra capa MTP3 de un nodo con capa M2PA, y todas las órdenes, o primitivas, de MTP3 las procesa la capa M2PA del mismo nodo, tal como haría MTP2. Además, dos pares M2PA se pueden intercambiar información de estado e informar a sus respectivos niveles superiores.
Al ser un protocolo entre pares (peer-to-peer), es el protocolo más adecuado para transportar señalización entre dos nodos SS7 puros (sin capa IP) a través de una red IP, ya que reemplaza completamente la capa MTP2, y permite comunicación entre SGWs.
3.3.1 Funciones soportadas por M2PA
• Transmisión transparente entre pares con protocolo MTP3 a través de una conexión sobre red IP. En el protocolo SS7, MTP2 envía tres tipos de mensajes: MSUs, LSSUs y FISUs. El primero encapsula los datos provenientes de MTP3, y en M2PA se corresponden con mensajes de usuario (User Data). El segundo transporta información de estado entre dos pares MTP2. En M2PA esto se implementa mediante los mensajes de estado de enlace (Link Status). Los mensajes FISU de MTP2 sirven como asentimiento de mensajes y como comprobación de que un nodo
está activo. Ambas funciones las realiza SCTP, por lo que no se implementan en el protocolo M2PA.
• El interfaz hacia MTP3 es el mismo que el interfaz MTP3/MTP2, pero M2PA gestiona asociaciones SCTP en lugar de enlaces MTP2.
• Informa a MTP3 de los cambios de estado de forma asíncrona.
• M2PA procesa las primitivas que le indica la capa MTP3, de forma que reemplaza completamente la capa MTP2.
La Figura 10 muestra un punto de señalización SS7 conectado a una pasarela de señalización (SGW) con enlaces IP. El SGW actúa de hecho como un STP, ya que necesita realizar reenvío de mensajes MTP3.
MTP1 MTP2 MTP3 SCCP TCAP
MTP1 MTP2
IP SCTP M2PA MTP3
Enlace SS7
IP SCTP M2PA
Red IP Red IP
MTP3 SCCP TCAP
Nodo SS7 Nodo IP
SGW
Figura 10. Pasarela de señalización IP con M2PA
La especificación MTP requiere que todos los nodos con capa MTP3, incluidos los SGWs M2PA, cuenten con un punto de señalización.
Otro ejemplo de utilización de M2PA, diferenciador respecto a otros protocolos de adaptación a SCTP, es el que se muestra en la Figura 11. En ella, se utiliza una red IP para transportar señalización SS7 entre dos nodos SS7 no IP.
MTP1 MTP2 MTP3 SCCP TCAP
MTP1 MTP2
IP SCTP M2PA MTP3
Enlace SS7
Red IP Red IP Nodo SS7
SGW
MTP1 MTP2 MTP3 SCCP TCAP
Enlace SS7
Nodo SS7
IP SCTP M2PA
SGW
MTP1 MTP2 MTP3
Figura 11. Transporte de mensajes entre nodos SS7 mediante SGWs M2PA.
3.3.2 Formato de los mensajes M2PA
Existen dos tipos de mensajes M2PA, los de usuario y los de estado de enlace.
Todos los mensajes M2PA cuentan con una cabecera común, de 16 octetos. Los mensajes de usuario, de longitud variable, cuentan además con una cabecera de 2 octetos, en donde se incluye el campo SIO de MTP.
3.4 M2UA [RFC 3331]
M2UA son las siglas de MTP2 User Adaptation. El protocolo M2UA, al igual que M2PA, adapta MTP3 a SCTP, e igualmente gestiona asociaciones SCTP en lugar de enlaces MTP3. M2UA permite el intercambio de mensajes MTP3 entre dos puntos de señalización IP o entre un punto de señalización IP y una pasarela IP-SS7.
M2UA es un protocolo entre pares en caso de que la comunicación comience y termine en dos puntos de señalización IP, sin SGWs intermedios, tal como muestra la Figura 12.
IP SCTP M2UA
IP SCTP M2UA
Red IP Red IP
MTP3 SCCP TCAP Nodo IP
MTP3 SCCP TCAP Nodo IP
Figura 12. Transporte de MTP3 entre dos puntos de señalización IP, mediante M2UA
Sin embargo, M2UA no es un protocolo entre pares si se implementa en una pasarela de señalización. En ese caso, M2UA no procesa las órdenes (primitivas del protocolo) que le llegan desde la capa superior (MTP3), sino que las envía tal cual hacia un nodo remoto, mediante SCTP.
Como M2UA no procesa las primitivas de MTP3, sino que las reenvía, en caso de que se utilice un SGW se debe entender este protocolo como un medio que comunica la capa MTP3 de un nodo IP con la capa MTP2 de un SGW, tal como muestra la Figura 13. De esta forma, varios puntos de señalización IP con MTP3 sobre M2UA pueden acceder a la red SS7 tradicional a través de los mismos enlaces MTP2 físicos.
Es importante tener en cuenta que, debido a la propia naturaleza del protocolo, sólo puede existir un SGW M2UA en una misma comunicación MTP3, por lo que no se puede utilizar para transportar mensajes MTP3 entre dos nodos SS7 puros a través de una red IP. Si se utiliza M2UA, alguno de los extremos es un punto de señalización IP.
MTP1 MTP2 MTP3 SCCP TCAP
MTP1 MTP2
IP SCTP M2UA Traducción
Enlace SS7
IP SCTP M2UA
Red IP Red IP
MTP3 SCCP TCAP
Nodo SS7 Nodo IP
SGW
Figura 13. Transporte de primitivas MTP3 hacia una capa MTP2 remota, mediante M2UA.
Lo que sí es posible es que existan varios SGWs con funcionalidad de STP, es decir, con el protocolo MTP3. De esta forma, el SGW sería el fin de la comunicación MTP3 vía M2UA, por lo que en realidad el esquema sería el descrito en la Figura 12, siendo uno de los extremos un STP. Sin embargo, si se utilizan SGWs con capa MTP3, es más recomendable utilizar M2PA, ya que es un protocolo diseñado para trabajar como reemplazo de MTP2. Por otro lado, M2UA es más adecuado si no se quiere que los SGWs dispongan de nuevos puntos de señalización SS7.
El principal inconveniente de M2UA es que no es un protocolo entre pares y mantiene la capa MTP3. Por lo primero, no sirve para transportar tráfico entre nodos SS7 tradicionales, y por lo segundo resulta menos eficiente que otros protocolos SIGTRAN para puntos de señalización IP, como M3UA o SUA, ya que incluye las cabeceras de MTP3. Sin embargo, para el caso de redes con muchos nodos con linksets de señalización de larga distancia, puede que interese el transporte en IP pero sin consumir dos puntos de señalización por nodo, o utilizar SGWs más simples y baratos.
En estos casos M2UA sería un protocolo de adaptación adecuado. Este tipo de redes se da en países con separaciones entre ciudades mucho mayores que las de España, como Brasil, Chile o EEUU.
3.5 M3UA [RFC 3332]
M3UA son las siglas de MTP3-User Adaptation. M3UA es un protocolo que transporta mensajes procedentes de un usuario de MTP3 (ISUP, TUP o SCCP) a través de una red SCTP/IP hasta un nodo remoto. De forma similar a M2UA, M3UA simplemente transporta los mensajes hasta el destino, pero no realiza por sí mismo las funciones de la capa MTP3. Esto significa que M3UA no dispone de tablas de encaminamiento basadas en puntos de señalización, ni realiza ninguna otra función propia de MTP3.
En general, M3UA se utilizará como medio de transporte de primitivas entre la capa usuaria de MTP-3 (SCCP o ISUP) de un punto de señalización IP y la capa MTP3 de un SGW remoto, tal como muestra la Figura 14.
MTP1 IP MTP2 MTP3
MTP1 MTP2
Enlace SS7
SCTP M3UA
Red IP Red IP
SCCP TCAP
Nodo SS7 Nodo IP
SGW
MTP3
IP SCTP M3UA
Traducción ISUP
ISUP SCCP TCAP
Figura 14. Transporte con M3UA de primitivas ISUP o SCCP hacia una capa MTP3 remota.
Para el caso simplificado de comunicación entre dos puntos de señalización IP, mostrado en la Figura 15, M3UA sí es capaz de encaminar los mensajes SCCP o ISUP hasta su destino, ya que la red percibida por SCCP o ISUP se limita a una línea punto a punto y no se necesitan encaminamientos MTP3.