Documentos de Académico
Documentos de Profesional
Documentos de Cultura
VIRTUALIZADO
Curso 2019-20
Entre los numerosos avances tecnológicos que guían el desarrollo de las redes 5G, uno de
los más destacados guarda relación con la arquitectura del núcleo de red. La virtualización
de las funciones de red (NFV) y las redes definidas por software (SDN) son los modelos
cuya aplicación permite llevar a cabo despliegues económicos de núcleos de red modulares
y fácilmente escalables que desbloqueen el verdadero potencial de la nueva generación de
comunicaciones móviles. Este nuevo paradigma es también la clave para lograr establecer
un ecosistema abierto e interoperable de redes móviles.
Este Trabajo Final de Grado (TFG) se centra en la implementación de núcleos de red LTE
y 5G funcionales sobre equipos de propósito general mediante las plataformas de código
abierto OpenAirInterface y Open5GCore, con el objetivo de validarlos para su despliegue
en una red privada. Se analizan las posibilidades de ambas soluciones y se desarrolla el
procedimiento seguido para su configuración. Tras ello, se diseña un escenario para compa-
rar sus prestaciones, integrándolos con una red de acceso radio para conectar dispositivos
móviles comerciales y sometiéndolos a una serie de pruebas mediante la herramienta de
evaluación de núcleos de red Landslide.
Palabras clave: núcleo de red, 5G, NSA, NFV, OAI, Open5GCore
Resum
Entre els nombrosos avanços tecnològics que guien el desenvolupament de les xarxes 5G,
un dels més destacats guarda relació amb l’arquitectura del nucli. La virtualització de les
funcions de xarxa (NFV) i les xarxes definides per software (SDN) són els models l’aplicació
dels quals permet dur a terme desplegaments econòmics de nuclis modulars i fàcilment
escalables que desbloquegen el vertader potencial de la nova generació de comunicacions
mòbils. Aquest nou paradigma és també la clau per aconseguir establir un ecosistema obert
i interoperable de xarxes mòbils.
Aquest Treball Final de Grau (TFG) se centra en la implementació de nuclis LTE i 5G
funcionals sobre equips de propòsit general mitjançant les plataformes de codi obert Ope-
nAirInterface i Open5GCore, amb l’objectiu de validar-los per al seu desplegament en una
xarxa privada. S’analitzen les possibilitats de les dues solucions i es desenvolupa el procedi-
ment seguit per a la seua configuració. A continuació, es dissenya un escenari per comparar
les seues prestacions, integrant-los amb una xarxa d’accés ràdio per connectar dispositius
mòbils comercials i sotmetent-los a una sèrie de proves mitjançant l’eina d’avaluació de
nuclis Landslide.
Paraules clau: nucli 5G, NSA, NFV, OAI, Open5GCore
Abstract
Among the many technological advances that guide the development of 5G networks, one
of the most prominent relates to the architecture of the network core. Network Functions
Virtualization (NFV) and Software-Defined networking (SDN) are the models whose ap-
plication enables cost-effective deployments of modular and easily scalable network cores
that unlock the true potential of the new generation of mobile communications. This new
paradigm is also the key to establishing an open and interoperable ecosystem of mobile
networks.
This Bachelor’s Thesis focuses on the implementation of functional LTE and 5G net-
work cores on general-purpose equipment using the open source platforms OpenAirInter-
face and Open5GCore, aiming to validate them for their deployment in a private network.
The possibilities of both solutions are analyzed, and the procedure followed for their con-
figuration is developed. After that, a scenario is designed to compare their performance,
integrating them with a radio access network to connect commercial mobile devices and
subjecting them to a series of tests using the Landslide network core evaluation tool.
Keywords: core network, 5G, NSA, NFV, OAI, Open5GCore
Índice general
1. Introducción 1
1.1. Contexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4. Estructura de la memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3. Consideraciones previas 18
3.1. Descripción general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.1.1. Requisitos mínimos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.1.2. Especificaciones de la estación de trabajo . . . . . . . . . . . . . . . 20
3.2. Primeros pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3. Otros recursos hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3.1. Programación de las tarjetas USIM . . . . . . . . . . . . . . . . . . . 22
5. Despliegue de Open5GCore 41
5.1. Distribución y funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2. Instalación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.2.1. Descarga del código fuente . . . . . . . . . . . . . . . . . . . . . . . 43
5.2.2. Compilación de phoenix . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.2.3. Creación de la jaula chroot . . . . . . . . . . . . . . . . . . . . . . . 44
5.3. Ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.3.1. Primer arranque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.4. Configuración . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.4.1. Arquitectura por defecto del EPC . . . . . . . . . . . . . . . . . . . 47
5.4.2. Arquitectura por defecto del 5GC . . . . . . . . . . . . . . . . . . . 48
5.4.3. Lanzamiento de componentes y ajustes de red . . . . . . . . . . . . . 50
5.4.4. Actualización del PLMN . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.4.5. Registro de usuarios en la base de datos del HSS . . . . . . . . . . . 53
5.4.6. Conexión de estaciones base eNB/gNB físicas . . . . . . . . . . . . . 55
7. Análisis de resultados 63
7.1. Conexión de un UE simulado a Open5GCore . . . . . . . . . . . . . . . . . 63
7.2. Conexión de un UE comercial a los núcleos de red LTE . . . . . . . . . . . 65
7.3. Evaluación de los núcleos de red LTE con Landslide . . . . . . . . . . . . . 66
Bibliografía 72
7
Capítulo 1
Introducción
1.1. Contexto
1
1.1. CONTEXTO
diseñar las redes móviles del futuro en base a la misma, tanto en términos de dispositivos
conectados como de servicios ofertados [4]. Esta afirmación puede comprobarse haciendo
un repaso por las generaciones de redes celulares inalámbricas de las últimas décadas
[5], desde la aparición de la primera generación (1G), con tecnología analógica diseñada
únicamente para realizar llamadas de voz, seguida de la segunda generación (2G), que
introduce tecnología digital. Después de ellas, la tercera generación (3G) se caracteriza
por el soporte multimedia junto a mayores tasas de transmisión de datos. A continuación
nace la cuarta generación (4G), que supone una primera integración de las redes de banda
ancha móvil y fija. Tecnologías como LTE (Long Term Evolution) implementan un sistema
de red basado en Internet Protocol (IP) de extremo a extremo, pensado para dar respuesta
a las limitaciones de 3G. Mejora la calidad de servicio (QoS), las tasas de transmisión de
datos y reduce el coste de los recursos.
Actualmente, las nuevas demandas de la sociedad están planteando nuevos retos para
las redes móviles y, del mismo modo que ha venido ocurriendo hasta ahora, el sector de
las telecomunicaciones dará respuesta a las mismas con una nueva generación, la 5G. Las
redes de quinta generación prometen suponer una verdadera revolución en el ámbito de
las comunicaciones móviles, pues al permitir la interoperabilidad con otras redes móviles
e inalámbricas materializarán un auténtico mundo inalámbrico [5].
Los consumidores de hoy requieren redes móviles que ofrezcan mayores velocidades
de descarga, mayor fiabilidad y una experiencia de usuario mejorada [4]. Asimismo, cabe
esperar que en los próximos años se produzca la generalización de aplicaciones como los
vehículos autónomos, las ciudades y hogares inteligentes, la realidad virtual y aumentada,
los servicios médicos a distancia o el Internet de las cosas (IoT).
En definitiva, en los próximos años se desplegará una red nunca vista hasta el momento,
que conectará personas, máquinas e incluso ciudades y sistemas de transporte. Cuando sea
una realidad, las nuevas redes móviles que se desplieguen para dar servicio a estas nuevas
aplicaciones deberán poder hacer frente a un volumen de tráfico de datos inmenso a una
velocidad mucho mayor a la actual, permitir la conexión de dispositivos de forma masiva
sin que ello repercuta en la fiabilidad y reducir al mínimo el retardo o latencia con que se
entregarán los datos, todo ello al mismo tiempo.
No obstante, respaldar este enorme y rápido incremento en la cantidad de datos trans-
mitidos y la conectividad supone un problema para las redes 4G LTE actuales. Pese a que
se sigue trabajando en diferentes líneas de investigación para hacer frente a esta explosión
de tráfico mediante LTE, velocidades teóricas máximas de 150 Mbps o un máximo de 600
usuarios conectados por celda no parecen suficientes para que las comunicaciones de banda
ancha móvil actuales ofrezcan un servicio adecuado a las nuevas necesidades [6]. En este
contexto, el despliegue de redes móviles 5G se convierte en un pilar fundamental para el
mundo que viene.
El reciente informe de Ericsson sobre movilidad [7] permite observar el crecimiento de
aquellos factores que justifican el necesario desarrollo de la 5G. Dicho informe contiene
previsiones en línea con las realizadas por otras empresas del sector o instituciones.
Así, en la Figura 1 se puede comprobar el aumento esperado en el número de suscrip-
ciones a redes móviles. Con alrededor de 8000 millones de suscripciones en la actualidad,
se esperan cerca de 9000 millones en 2025, de los cuales unos 2800 millones serán sus-
2
1.1. CONTEXTO
cripciones de redes 5G. Este número se alcanzará a medida que se vayan produciendo a
gran escala los lanzamientos comerciales de las redes por parte de los operadores, previstos
para cuando estén completadas las especificaciones IMT-2020 de la Unión Internacional
de Telecomunicaciones (UIT) sobre 5G, hacia finales del año 2020.
Por otra parte, en la Figura 2 puede observarse el crecimiento exponencial que viene
experimentando el tráfico de datos en las redes móviles de todo el mundo hasta el momento,
tendencia que se mantendrá en los años venideros.
Figura 2: Tráfico global de datos en las redes móviles y crecimiento anual (EB/mes) [7]
3
1.2. MOTIVACIÓN
1.2. Motivación
Hasta hace unos años, conceptos como IoT, VR (realidad virtual), comunicaciones
M2M (máquina a máquina) o V2X (vehículo a todo), domótica y smart cities parecían
ideas del futuro. Sin embargo, el desarrollo tecnológico es imparable y en estos momentos
son ya una realidad.
Durante la tercera década del siglo XXI se espera un crecimiento notorio de sistemas
y dispositivos que harán uso de las numerosas posibilidades que estas nuevas tecnologías
ofrecen. El mundo se encuentra, pues, a las puertas de una nueva era que se caracterizará
por la automatización y la hiperconectividad.
Para completar con éxito la transformación descrita, las redes de banda ancha inalám-
bricas, y más específicamente las móviles, serán fundamentales, en tanto que constituirán
el soporte de toda la red de dispositivos inteligentes. Por tanto, si a día de hoy la relevancia
que las comunicaciones móviles tienen en el conjunto de las TIC es manifiesta, lejos de
disminuir, el papel de las mismas será todavía más importante en el futuro.
Dado que muchas de las tecnologías presentadas se encuentran en fase de investigación
y desarrollo, resulta especialmente interesante disponer de redes celulares desplegadas en
entornos de laboratorio y configuradas según las necesidades de cada caso, de modo que
se evite la dependencia de redes comerciales. Este proyecto se enfoca en el núcleo, uno de
los elementos críticos de una red móvil.
Si bien la tecnología LTE ha alcanzado un considerable grado de madurez, al datar
de 2008 el estándar completado por el grupo de asociaciones de telecomunicaciones 3GPP
(3rd Generation Partnership Project) en la llamada Release 8, esta sigue siendo uno de los
elementos clave en el desarrollo de las redes 5G.
La Release 15 del 3GPP, finalizada en 2018, desarrolla la tecnología conocida como
New Radio (NR) para la 5G, y ha sido adoptada en el marco de la hoja de ruta IMT-2020
de la UIT como el estándar para la nueva generación de redes móviles. Dichas especifica-
ciones contemplan dos posibles arquitecturas para las redes 5G: NSA (Non-Stand-Alone)
y SA (Stand-Alone). Ambas suponen el despliegue de una red de acceso radio (RAN) con
estaciones base gNB (gNodeB) basadas en NR, pero NSA sigue dependiendo del núcleo de
red, denominado (Evolved Packet Core), y las estaciones base eNB (eNodeB) de LTE.
Debido a que el EPC es una pieza clave en el despliegue de las primeras redes 5G,
las NSA, el presente proyecto se centra tanto en la arquitectura del núcleo de red 4G
como la de 5G (5GC, 5G Core), que constituirá la novedad de la 5G SA. Además, la
quinta generación viene acompañada de nuevos enfoques para la implementación de los
elementos de la red. Se apuesta de forma definitiva por las posibilidades que ofrece la
virtualización frente al predominio tradicional de equipos físicos propietarios diseñados
para un fin específico [8].
La respuesta a los retos que plantea la nueva generación de redes móviles pasa por
arquitecturas basadas en las redes definidas por software (SDN) y los equipos radio defi-
nidos por software (SDR) [9]. Se persigue facilitar la escalabilidad de las redes y reducir
los costes. El uso de estas tecnologías posibilita desplegar redes celulares operativas con
equipamiento de bajo coste, en comparación con las redes tradicionales.
4
1.3. OBJETIVOS
1.3. Objetivos
Este apartado pretende servir de guía al lector, exponiendo los contenidos que aborda
la presente memoria y su organización, para facilitar la búsqueda de información a lo largo
de la misma. El resto de capítulos que componen el documento son:
Capítulo 2. Estado del arte
En este capítulo se presenta la arquitectura de las redes móviles LTE y 5G y, en
particular, de sus respectivos núcleos de red, revisando el marco tecnológico que posibilita
el desarrollo de arquitecturas de núcleos de red móvil de nueva generación, además de
comentar la convergencia del sector hacia un modelo open source.
Capítulo 3. Consideraciones previas
Este capítulo constituye una descripción general de la solución propuesta, listando los
requisitos que deben satisfacer los equipos utilizados para desarrollar dicha solución.
Capítulo 4. Despliegue del núcleo de red de OpenAirInterface
Este capítulo desarrolla detalladamente el proceso seguido para el despliegue de un
núcleo de red LTE implementado mediante el software OpenAirInterface, incluyendo las
características de la plataforma y su instalación y configuración.
5
1.4. ESTRUCTURA DE LA MEMORIA
6
Capítulo 2
7
2.1. ARQUITECTURA DE REDES MÓVILES LTE
Una de las decisiones iniciales del diseño de la arquitectura del EPC fue separar la
gestión de la señalización de control del tráfico de datos generado por los usuarios. Esta
separación se realizó principalmente para optimizar la escalabilidad de las redes, en tanto
que el volumen de mensajes de señalización aumenta con el número de suscriptores móvi-
les, pero la cantidad de paquetes de datos guarda relación con la demanda y las nuevas
aplicaciones y servicios que van surgiendo.
La Figura 3 muestra la arquitectura elemental del EPC de una red LTE. Los compo-
nentes que se incluyen son los que, según las especificaciones del 3GPP, debe incluir un
núcleo de red para cumplir el estándar LTE. Sin estos componentes, no podría conseguir-
se la funcionalidad básica del núcleo de una red móvil. Además, pueden distinguirse las
entidades que gestionan mensajes de señalización (líneas punteadas) de las que manejan
el tráfico de los usuarios.
MME
El MME, Mobility Management Entity o Entidad de Gestión de Movilidad, es el ele-
mento que centraliza la señalización LTE del plano de control relacionada con las suscrip-
ciones y sesiones de los usuarios.
El MME implementa entre sus funcionalidades procedimientos de seguridad a través de
la negociación de algoritmos de cifrado y de protección de la identidad para la autenticación
del usuario. También gestiona la sesión establecida entre el terminal de usuario (UE) y la
red, siendo la entidad responsable de la señalización utilizada para negociar un contexto
8
2.1. ARQUITECTURA DE REDES MÓVILES LTE
9
2.2. ARQUITECTURA DE REDES MÓVILES 5G
Como ya se ha visto, la visión inicial del EPC fue definir una serie de nodos con
interfaces exclusivas para la gestión independiente de los mensajes de señalización y de los
paquetes de datos, respectivamente. Sin embargo, el crecimiento exponencial del tráfico
generado por los usuarios en los últimos años ha acrecentado la necesidad de facilitar
todavía más si cabe la escalabilidad de las redes [13].
Para facilitar dicho proceso, el 3GPP definió en la Release 14 un elemento que ha re-
sultado clave para los operadores: la separación del plano de control y el plano de usuario
(CUPS) de los nodos del EPC. Esta novedad en la arquitectura afecta a aquellos compo-
nentes con funciones tanto en la señalización del plano de control como la conmutación
de paquetes en el plano de usuario, como el S-GW y el P-GW.
La Figura 4 muestra la arquitectura CUPS con las interfaces que se definen para la
conexión de los nuevos nodos [13]. Aparece también el TDF, Traffic Detection Function o
Función de Detección de Tráfico, que no forma parte del resumen del EPC.
10
2.2. ARQUITECTURA DE REDES MÓVILES 5G
11
2.2. ARQUITECTURA DE REDES MÓVILES 5G
restantes.
AMF
El AMF, Access and Mobility Management Function o Función de Gestión del Acceso
y la Movilidad, es la función principal de control dentro de la red. Interactúa con la RAN
y los equipos de usuario (UE) mediante señalización encriptada a través de las interfaces
N2 y N1, respectivamente. La mayor parte del flujo de mensajes de señalización pasa por
el AMF.
12
2.2. ARQUITECTURA DE REDES MÓVILES 5G
El AMF permite a los dispositivos registrarse, autenticarse y moverse entre las distintas
celdas de la red. Sin embargo, no maneja algunas de estas atribuciones por sí mismo, sino
que las pide a otras funciones de la red (autenticación) o directamente reenvía los mensajes
de señalización a las funciones de red correspondientes (gestión de la sesión). Entre las
funciones del AMF también está activar dispositivos de la red que están en modo inactivo.
SMF
El SMF, Session Management Function o Función de Gestión de la Sesión, es la función
independiente encargada de administración de las sesiones de los usuarios. Ello incluye el
establecimiento, la modificación y la liberación de sesiones, así como la asignación de
direcciones IP por dispositivo.
El SMF se comunica indirectamente con los usuarios por medio del AMF, que reenvía
los mensajes de señalización a través de la interfaz N11 después de procesarlos (por ejemplo,
por razones de seguridad).
Además, el SMF interactúa con otras funciones de red, especialmente las Funciones
de Plano (UPF), a las que selecciona y controla través de la interfaz N4. Forma parte de
este control la configuración del direccionamiento del tráfico y para las distintas sesiones
de usuario.
UPF
El UPF, User Plane Function o Función del Plano de Usuario, tiene como tarea prin-
cipal procesar y reenvíar el tráfico del plano de usuario, y se halla bajo el control del
SMF.
El UPF es el elemento de conexión del núcleo de red con redes IP externas a través de
la interfaz N6 y actúa como un punto de fijación de la IP de los dispositivos hacia redes
externas, ocultando la movilidad. Esto significa que cualquier paquete IP cuya dirección
de destino sea un dispositivo de la red siempre se podrá encaminar hacia el UPF que sirve
al dispositivo, aunque se esté moviendo por la red.
Además, el UPF realiza varios tipos de procesamiento de los datos reenviados. Por un
lado, genera informes de uso de tráfico para el SMF, que los incluye luego en sus informes
a otras funciones de red. Por otro, puede analizar el contenido de los paquetes de datos y
que constituya un elemento más en las decisiones de políticas.
El UPF también se ejecuta en varias políticas de red o de usuario, por ejemplo, la
redirección del tráfico, la imposición de diferentes velocidades de conexión o la activación
de dispositivos (el UPF almacena los datos dirigidos a dispositivos en estado inactivo al
mismo tiempo que los fuerza a volver a conectarse para recibir sus datos).
UDM
El UDM, Unified Data Management Function o Función de Gestión de Datos Unificada,
representa la base de datos de suscriptores móviles principal. Genera las credenciales de
autenticación utilizadas para autenticar los dispositivos que se conectan a la red. También
autoriza el acceso a usuarios específicos según la información disponible en la base de datos.
Esto permite, por ejemplo, aplicar diferentes normas de acceso a clientes en itinerancia y
propios.
13
2.3. VIRTUALIZACIÓN DE FUNCIONES DE RED (NFV)
El UDM también ejecuta diversas funciones a petición del AMF, con el que se comunica
mediante la interfaz N8, así como con el SMF (interfaz N10).
AUSF
El AUSF, Authentication Server Function o Función de Servidor de Autenticación,
tiene un cometido bastante limitado a la vez que importante. Es el proveedor del servicio de
autenticación de los dispositivos, proceso en el que utiliza las credenciales de autenticación
generadas por el UDM, al que se conecta mediante la interfaz N13.
NRF
El NRF, Network Repository Function o Repositorio de Funciones de Red, es el ele-
mento del núcleo de red que registra las funciones de red productoras de servicios y los
servicios que ofrecen para posibilitar la comunicación entre las funciones consumidoras de
servicios y ellas.
14
2.3. VIRTUALIZACIÓN DE FUNCIONES DE RED (NFV)
15
2.3. VIRTUALIZACIÓN DE FUNCIONES DE RED (NFV)
Uno de los primeros documentos publicados por el ISG NFV es la especificación relativa
a los casos de uso de NFV [19]. En esa lista se incluye una de las redes sobre las que los
operadores de telecomunicaciones han mostrado un mayor interés en portar a este modelo:
los núcleos de red móvil.
El documento describe la virtualización de las entidades que conforman el EPC de
LTE y la coexistencia con redes cuyos núcleos no están virtualizados o solo lo están en
parte. Se apunta también, como ya se ha comentado anteriormente, a la escalabilidad de
elementos concretos de la red, aumentando o disminuyendo los recursos de la NFVI en
función de los patrones de tráfico y movilidad de los usuarios.
El uso de NFV para la implementación de núcleos de red permite a los operadores
móviles realizar despliegues mucho más rápidos y sencillos al evitar tener que instalar
costosos y complicados equipos hardware y recurrir a máquinas virtuales sobre nubes,
servidores o switches de propósito general. De este modo, a los operadores se les presenta
la oportunidad de alcanzar un cierto grado de independencia respecto a los proveedores
de aparatos.
Además de NFV, otro de los conceptos que ha revolucionado el marco de los núcleos
de red móvil es el de redes definidas por software (SDN, Software Defined Networks). Este
paradigma propone una estructura abstracta de las redes, aislando el plano de control del
resto de la red y centralizándolo en una o varias entidades de control (controladores SDN),
al mismo tiempo que el plano de reenvío de datos se simplifica y se dota a las aplicaciones
y servicios de capacidad de gestión de la red.
En [18] se discute la integración de estas tecnologías que, pese a ser diferentes y poner
el foco en aspectos diferentes de las redes, son altamente complementarias. NFV provee de
elementos virtualizados a las SDN, mientras que SDN ofrece la gestión de la red, entendida
como programabilidad de la misma, a las distintas funciones de red virtuales.
Así pues, NFV y SDN se presentan como el futuro de las redes móviles. Su uso, sumado
a las posibilidades que sobre todo aporta el cloud computing, supone un recorte en la in-
versión requerida (CAPEX) y los costes de operación (OPEX) de los operadores. También
permite variar la topología de la red, acercando determinadas funciones a los usuarios, lo
16
2.4. CONVERGENCIA HACIA REDES MÓVILES DE CÓDIGO ABIERTO
La apuesta decidida por tecnologías como NFV, SDN o cloud computing para el desa-
rrollo de los núcleos de red móvil del futuro ha implicado un reposicionamiento de los
actores del sector de las telecomunicaciones. Tanto los fabricantes de equipos como los
operadores de red deben trazar nuevas estrategias.
Los proveedores tradicionales de hardware para la implementación de núcleos de red
abandonaron el enfoque de equipos propietarios y comenzaron a ofrecer software licenciado
instalado en equipos de propósito general con las arquitecturas de procesadores x86-64 o
ARM. El nacimiento de la 5G ha venido acompañado de un nuevo cambio de modelo,
priorizando ahora las soluciones basadas en la nube.
Sin embargo, la tendencia en el sector es desarrollar capas software que, además de ser
plenamente independientes de cualquier tipo de aparatos hardware clásicos, sean de código
abierto u open source. Operadores de redes móviles de todo el mundo participan de forma
activa en diferentes consorcios que trabajan en esta línea ya que, como se ha apuntado
previamente, esta visión es la que permitirá a las compañías desplegar las redes de nueva
generación con mayor rapidez y reducir el tiempo de retorno de la inversión. Este es un
aspecto clave, por ejemplo, en el retraso del despliegue comercial de la 5G.
Son ejemplos de estas iniciativas sin ánimo de lucro Mosaic5G [21] y 5G-PPP (The 5G
Infrastructure Public Private Partnership) [22]. En ambas colaboran, junto con los opera-
dores de telecomunicaciones, los principales proveedores tecnológicos y diversas entidades
del ámbito académico como universidades e institutos de investigación.
Mosaic5G se funda con el propósito de desarrollar y promover un ecosistema de pla-
taformas de código abierto para la implementación de soluciones RAN y de núcleo de red
de cuarta y quinta generación. 5G-PPP es una iniciativa conjunta, tal y como su nom-
bre indica, del sector privado y el sector público, representado por la Comisión Europea,
que persigue establecer el liderazgo europeo en el desarrollo de la 5G y de las potenciales
aplicaciones que se derivan de la nueva generación.
El movimiento hacia la 5G de estándares abiertos es también la búsqueda de la inter-
operabilidad de las distintas soluciones. Haciendo uso de las tecnologías de virtualización
y programación de redes, los proveedores poseen los recursos para implementar los com-
ponentes de la red garantizando la compatibilidad con los creados por la competencia, de
modo que los operadores no se vean limitados en la configuración de sus redes [23].
17
Capítulo 3
Consideraciones previas
En este capítulo se describen las líneas generales de la solución propuesta. Entre otros
aspectos, se detallan los requisitos mínimos de los equipos usados para el despliegue de los
núcleos de red y la configuración inicial que debe realizarse en los mismos, así como las
especificaciones de la estación de trabajo utilizada en el desarrollo del proyecto. También
se presentan otros dispositivos, algunos de los cuales, si bien su configuración y uso no
son objeto de este Trabajo Fin de Grado, deben mencionarse pues se recurrirá a ellos
para completar el prototipo de red móvil y validar el funcionamiento de los núcleos de red
implementados.
Se pretende implementar dos EPC, núcleos de red de LTE, y un 5GC, núcleo de red de
5G, utilizando para ello las plataformas OpenAirInterface (OAI) y Open5GCore. Dado que
después de su implementación los núcleos de red se integrarán con una red de acceso radio
(RAN) de eNB y/o gNB, igualmente basada en software, para desplegar una red móvil 4G
o 5G funcional, se plantean dos escenarios válidos para la interconexión de ambas partes.
Estos escenarios pueden observarse en las Figuras 8 y 9.
18
3.1. DESCRIPCIÓN GENERAL
Si bien ninguna de las plataformas usadas detalla los aspectos que debe satisfacer
el equipo en el que se vaya a implementar su solución de núcleo de red, en la práctica
existe una serie de requisitos que el equipo en cuestión necesita reunir para completar la
instalación y garantizar un funcionamiento correcto. La Tabla 1 recoge dichos requisitos.
OpenAirInterface Open5GCore
Sistema operativo Ubuntu 16.04 / 18.04 LTS
Procesador 2 núcleos 4 núcleos
Memoria RAM 4 GB 16 GB
Conexiones de red Al menos una interfaz física (se recomienda Ethernet)
Puerto USB USB 3.0 (en despliegue conjunto con la RAN)
En cuanto al sistema operativo Linux que debe ejecutar la máquina, cualquiera de las
dos versiones de Ubuntu es válida. No obstante, se prefiere la más reciente 18.04 LTS,
que presenta mejor compatibilidad con OAI. El sistema operativo puede ejecutarse de
manera nativa en el equipo, siendo esta la opción más recomendable, pero también puede
crearse una máquina virtual para el despliegue de los núcleos de red. Existen múltiples
herramientas comerciales como VMWare, disponible para todos los sistemas operativos
del mercado, o de código abierto como KVM, propia de entornos Linux.
Los recursos necesarios a nivel de procesador y memoria RAM varían en función de la
implementación utilizada. De acuerdo con la documentación de OAI [24] y Open5GCore,
19
3.1. DESCRIPCIÓN GENERAL
20
3.2. PRIMEROS PASOS
Antes de iniciar la instalación de los núcleos de red, deben completarse algunos pasos
para asegurar que el sistema operativo dispone de los componentes software necesarios y
no surgen problemas en el transcurso de la misma.
En primer lugar, es recomendable verificar que el sistema operativo cuenta con las
últimas actualizaciones publicadas. Para ello, se ejecutan los siguientes comandos en una
ventana de terminal de Ubuntu (sudo indica que son necesarios permisos de superusuario):
Por otra parte, a lo largo del proceso de configuración de los núcleos de red será
necesario administrar las interfaces de red y conexiones del sistema. En este proyecto se
manejan herramientas de los paquetes net-tools y iproute2, que se pueden obtener de
la siguiente forma:
net.ipv4.ip_forward=1
Los ficheros que componen la instalación tanto del EPC de OAI como de Open5GCore
se encuentran alojados en los repositorios GitHub y GitLab, respectivamente, servicios
basados en el software de control de versiones Git. Por tanto, se instala dicho paquete:
Además del equipo de trabajo descrito previamente, que constituye el principal elemen-
to físico utilizado para el despliegue de las soluciones propuestas, a lo largo del proyecto
se emplean otros dispositivos que se presentan a continuación. Mediante ellos es posible
crear el prototipo de red móvil mostrado en las Figuras 8 y 9.
21
3.3. OTROS RECURSOS HARDWARE
Equipo SDR
La implementación de la estación base de la red móvil se lleva a cabo a través de
un equipo SDR, conectado a un ordenador que cuenta con el software adecuado para
controlar dicho equipo. En el desarrollo de este proyecto se ha hecho uso de uno de los
equipos disponibles en el laboratorio del MCG, el modelo USRP B210 de la marca Ettus
Research, que se puede observar en la Figura 11. Las características de este dispositivo
pueden consultarse en la hoja de especificaciones del fabricante [26]. Aparte, se conectarán
al equipo antenas que doten al mismo de conectividad LTE/5G.
A continuación se resume el proceso para programar una de las tarjetas USIM em-
pleadas en el proyecto con el programa de Open Cells. Cabe destacar que los parámetros
que se graban en este apartado se asignarán posteriormente a un usuario. Dichos datos
deberán registrarse en la entidad HSS de cada uno de los núcleos de red para que, de este
22
3.3. OTROS RECURSOS HARDWARE
modo, el usuario que haga uso de la tarjeta programada pueda establecer la conexión con
el prototipo de red desplegado.
El primer paso es obtener la herramienta del sitio web de Open Cells.1 . Tras descom-
primir el fichero descargado, en una ventana de terminal de Ubuntu se navega a la ruta
en la que se encuentra el mismo y se compila. En este caso la carpeta se almacena en el
escritorio:
cd ~/Escritorio/USIM/uicc-v2.1/
make
El proceso es muy rápido y debería finalizar sin errores ni advertencias. Una vez com-
pletado, se procede a conectar al equipo el lector USB con la tarjeta USIM que se desea
programar. En la Tabla 3 se detallan los parámetros más destacados que se pueden confi-
gurar y el valor asignado a cada uno de ellos.
El comando que debe ejecutarse para programar la tarjeta con dichos datos es el
siguiente:
23
3.3. OTROS RECURSOS HARDWARE
De la Figura anterior puede destacarse que, tal y como se ha explicado, el valor del OPc
se calcula con los datos facilitados para ejecutar el programa y coincide con el recogido en
la Tabla 3. Además, se informa del SQN y de otro parámetro, el MSISDN. Ambos deben
conservarse para el posterior registro del usuario en el HSS.
24
Capítulo 4
openair-cn: contiene una implementación del núcleo de red LTE de acuerdo con las
especificaciones de la Release 9 y la Release 10 del 3GPP, compuesta por un MME,
un HSS, un P-GW y un S-GW (estos últimos ejecutados como una única instancia).
25
4.2. INSTALACIÓN
etc: contiene los ficheros que configuran los componentes del EPC y la base de datos
de la que se sirven los primeros.
Algunas de las características más relevantes de la propuesta de OAI para el EPC son
el uso de freeDiameter, una implementación del protocolo de autenticación, autorización
y contabilización (AAA) Diameter, y de certificados SSL para la comunicación entre el
MME y el HSS, así como la identificación de estos dos componentes a través de FQDN
(Fully Qualified Domain Names o nombres de dominio completo).
En adición, el HSS de OAI está desarrollado para funcionar con soporte de bases de
datos. La base de datos relacional que emplea el HSS original es MySQL, mientras que
la implementación de este componente basada en las especificaciones de la Release 14
requiere el uso del sistema de gestión de bases de datos NoSQL Apache Cassandra.
Finalmente, el funcionamiento de los distintos elementos del núcleo de red, incluida
la base de datos, está regulado por ficheros de configuración en formato CONF y JSON.
Entre otros aspectos, en estos archivos se definen los parámetros que identifican la red
móvil y las interfaces de red y direcciones IP empleadas por los componentes para la
conexión entre sí, con la RAN y con Internet.
4.2. Instalación
La instalación del EPC de OAI genera una aplicación ejecutable por componente,
resultando así tres, si se despliega el núcleo con el plano de control y el plano de usuario
del SPGW bajo una sola entidad, o cuatro, si se opta por la separación de estos planos.
En principio, la plataforma está diseñada para ser desplegada en un único equipo. Por
ello, pese a ser posible ejecutar las aplicaciones anteriores en equipos separados siempre
26
4.2. INSTALACIÓN
cd ~/
sudo mkdir oai-epc
cd oai-epc/
git clone https://github.com/OPENAIRINTERFACE/openair-cn.git
cd openair-cn/
git checkout develop
Por último, los pasos anteriores se repiten con openair-cn-cups, el segundo de los
repositorios de los que se obtiene código:
cd ..
git clone https://github.com/OPENAIRINTERFACE/openair-cn-cups.git
cd openair-cn-cups/
git checkout develop
Tras completar estos pasos, todos los ficheros necesarios para la instalación del HSS
y el MME se encuentran en la ruta ~/oai-epc/openair-cn/, mientras que los archivos
propios del SPGW-C y SPGW-U se ubican en ~/oai-epc/openair-cn-cups/.
27
4.2. INSTALACIÓN
Antes de proceder con la compilación de los elementos del EPC, se debe instalar en
el equipo el software administrador de bases de datos Apache Cassandra. Cabe destacar
que entre los ficheros descargados se incluye un script que automatiza este proceso. No
obstante, las versiones de Cassandra disponibles actualmente requieren el entorno Java
versión 8, no disponible en los repositorios de Ubuntu por razones de licencia de Oracle,
la compañía propietaria. Por ello, a continuación se reproducen los comandos que hay que
ejecutar para la instalación manual del citado software:
28
4.3. CONFIGURACIÓN
cd ~/oai-epc/openair-cn/scripts/
sudo ./build_hss_rel14 -i -f
sudo ./build_hss_rel14 -c
sudo ./build_mme -i -f
sudo ./build_mme -c
cd ~/oai-epc/openair-cn-cups/build/scripts
sudo ./build_spgwc -I -f
sudo ./build_spgwc -c -V -b Release -j
sudo ./build_spgwu -I -f
sudo ./build_spgwu -c -V -b Release -j
4.3. Configuración
29
4.3. CONFIGURACIÓN
Del diagrama anterior cabe destacar el uso de la interfaz virtual loopback (lo). Su
dirección de red es 127.0.0.0/8 y las direcciones IP de este rango se utilizan cuando el
tráfico generado por una aplicación tiene como destino la propia máquina. Dado que el
despliegue se realiza sobre un único equipo, no es necesario configurar interfaces adicionales
y pueden asignarse direcciones de este rango para la comunicación entre los componentes
del núcleo de red.
En la Figura 16 también se aprecia la identificación del HSS con el servidor de Cas-
sandra que, como el resto de componentes, se despliega en el mismo equipo. Así pues, la
dirección IP de la interfaz S6A es la dirección IP del servidor de bases de datos, 127.0.0.1.
Por otro lado, la implementación de OAI de la interfaz SGi del SPGW-U definida para
el reenvío hacia redes IP externas del tráfico generado por los usuarios debe corresponderse
con una interfaz física del equipo, existiendo la posibilidad de elegir entre una interfaz
inalámbrica o un puerto Ethernet. En este caso, se asigna la interfaz eno1 de la estación
de trabajo, a través de la cual la máquina establece conexión con la red de la UPV e
Internet. La dirección IP del gateway o puerta de enlace es 158.42.160.1.
Finalmente, la configuración que se propone está pensada para el escenario de la Figura
8, en el que la RAN se halla en el mismo equipo que el EPC. En caso de querer desplegar
la solución de la Figura 9, con la RAN en otra máquina, las interfaces S1-C del MME y
S1-U del SPGW-U deben identificarse con una interfaz Ethernet de la estación de trabajo,
asignando convenientemente una dirección IP a la misma para la conexión con el otro
equipo.
30
4.3. CONFIGURACIÓN
cd /etc/cassandra/
sudo nano cassandra.yaml
Deben editarse las siguientes líneas (los puntos suspensivos indican contenido en el
fichero entre las líneas a las que se hace referencia):
...
cluster_name: "HSS Cluster"
...
listen_address: 127.0.0.1
...
start_rpc: true
rpc_address: 0.0.0.0
broadcast_rpc_address: 127.0.0.1
...
endpoint_snitch: GossipingPropertyFileSnitch
El estado que debe aparecer como respuesta al comando es active (running). Esta
comprobación, junto con el uso de nodetool status, al que debe acompañar una respuesta
como la de la Figura 14, sirve para descartar posibles problemas en la ejecución del servidor
de Cassandra. En caso contrario, no podrán registrarse usuarios en la base de datos ni
iniciará el proceso del HSS.
Si surgen problemas con Cassandra, la forma más efectiva de abordarlos es detener el
servicio y ejecutar de forma directa la aplicación (cassandra en la ventana de terminal)
para identificar los errores.
31
4.3. CONFIGURACIÓN
Las aplicaciones de OAI están programadas para obtener los ficheros de configuración
en una ruta específica, /usr/local/etc/oai/. Por ello, antes de proceder con la configu-
ración de los distintos componentes debe crearse dicho directorio, dotando al usuario de
permisos suficientes para su modificación:
Ruta='/usr/local/etc/oai'
sudo mkdir -p $Ruta
sudo mkdir $Ruta/freeDiameter
sudo chmod -R 777 $Ruta
Una vez creado el directorio se copian en el mismo las plantillas de los archivos CONF
y JSON disponibles en la carpeta etc de la instalación. Los ficheros que configuran el uso
que hacen el HSS y el MME del protocolo freeDiameter se ubican en una carpeta separada.
Los comandos a ejecutar son los siguientes:
cd ~/oai-epc/openair-cn/etc/
sudo cp acl.conf hss_rel14_fd.conf $Ruta/freeDiameter
sudo cp hss_rel14.conf hss_rel14.json oss.json $Ruta
Por tanto, son cinco los archivos de configuración del HSS. Los parámetros más im-
portantes, en cuya configuración debe intervenir el usuario, están identificados mediante
el símbolo arroba (@) en estos ficheros y el resto de los que definen el funcionamiento de
los componentes del EPC de OAI. Salvo que se busquen opciones avanzadas, el resto de
variables no requieren modificación por parte del usuario.
En el caso del HSS, estos parámetros son los siguientes y se les asignan los valores
recogidos en la Tabla 4:
OP_KEY: se informa del código OP que usa el HSS para la autenticación, por lo que
la tarjeta USIM se programa con el mismo valor (Tabla 3).
32
4.3. CONFIGURACIÓN
Variable Valor
PREFIX /usr/local/etc/oai
REALM openairinterface.org
HSS_FQDN hss.openairinterface.org
cassandra_Server_IP 127.0.0.1
OP_KEY 11111111111111111111111111111111
ROAMING_ALLOWED true
Los ficheros de registro del HSS deben crearse en la ruta especificada previamente,
para lo que se lanzan los siguientes comandos:
Finalmente, se instalan los certificados SSL del HSS requeridos para la conexión con
el MME por medio de freeDiameter:
cd ~/oai-epc/openair-cn/src/hss_rel14/bin/
sudo ./make-certs.sh hss openairinterface.org $Ruta
Añadir usuarios a la base de datos del HSS para permitir su conexión a la red móvil
desplegada es un proceso automatizado por un par de scripts programados por el equipo
de desarrollo de OAI. En primer lugar, debe crearse la base de datos en el servidor de
Cassandra instalado. Para ello, únicamente es necesario cargar el fichero que contiene las
tablas a implementar en la base de datos:
Una vez importadas las tablas, se ejecutan los scripts disponibles en el directorio del
mismo nombre en la carpeta de instalación. Este es el comando que debe ejecutarse para
añadir a la base de datos al usuario cuya tarjeta USIM tiene programados los datos de la
Tabla 3:
33
4.3. CONFIGURACIÓN
Cassandra_Server_IP='127.0.0.1'
Dominio='openairinterface.org'
cd ~/oai-epc/openair-cn/scripts/
./data_provisioning_users --apn oai.ipv4 --apn2 internet
--key 8baf473f2f8fd09487cccbd7097c6862 --imsi-first 208930000000003
--msisdn-first 000002 --mme-identity mme.$Dominio --no-of-users 1
--realm $Dominio --truncate False --verbose True
--cassandra-cluster $Cassandra_Server_IP
En el comando anterior deben indicarse, entre otros, un APN (Access Point Name)
primario y secundario asociados al usuario, el MSISDN que devuelve la herramienta de
programación de las tarjertas USIM (Figura 13) y el número de usuarios que se desea regis-
trar, añadiéndose con IMSI y MSISDN consecutivos a los indicados. La opción Truncate
configurada a False garantiza que no se borran los datos previamente existentes en la
base de datos.
Por último, se lanza el siguiente script para registrar la identidad del MME al que se
conecta el HSS:
34
4.3. CONFIGURACIÓN
La configuración del MME se establece en dos ficheros CONF, los cuales deben copiarse
en la ruta definida por OAI para los mismos:
Ruta='/usr/local/etc/oai'
sudo cp acl.conf mme_fd_sprint.conf $Ruta/freeDiameter/mme_fd.conf
sudo cp mme.conf $Ruta
Los parámetros generales del MME que deben definirse son los siguientes:
HSS_IP_ADDR: indica la dirección IP del HSS, que se corresponde con la del servidor
de Cassandra.
MCC: especifica el Mobile Country Code o código de identificación de país del operador
de red.
MNC: especifica el Mobile Network Code o código de identificación de red del operador.
TAC_0: especifica el Tracking Area Code o área de seguimiento dentro de la red móvil
a la que da servicio el MME.
35
4.3. CONFIGURACIÓN
Variable Valor
INSTANCE 1
PREFIX /usr/local/etc/oai
REALM openairinterface.org
PID_DIRECTORY /var/run
MME_FQDN mme.openairinterface.org
HSS_HOSTNAME hss
HSS_FQDN hss.openairinterface.org
HSS_IP_ADDR 127.0.0.1
OUTPUT CONSOLE
Variable Valor
MCC 208
MNC 93
MME_GID 32768
MME_CODE 3
TAC_0 600
TAC_1 601
TAC_2 602
36
4.3. CONFIGURACIÓN
Además de los cambios descritos hasta ahora, debe modificarse en el fichero mme.conf
el apartado final, WRR_LIST_SELECTION. El contenido de esta sección tras los cambios es
el siguiente (los puntos suspensivos indican contenido omitido en la línea):
{ID="tac-lb07.tac-hb00.tac.epc.mnc001.mcc001.3gppnetwork.org" ...
{ID="tac-lb58.tac-hb02.tac.epc.mnc093.mcc208.3gppnetwork.org" ...
{ID="tac-lb59.tac-hb02.tac.epc.mnc093.mcc208.3gppnetwork.org" ...
{ID="tac-lb5a.tac-hb02.tac.epc.mnc093.mcc208.3gppnetwork.org" ...
La puesta a punto del MME se completa generando los certificados SSL necesarios
para la comunicación mediante el protocolo freeDiameter con el HSS. Para ello, se lanza el
siguiente script (la ruta y el FQDN del MME deben especificarse al ejecutar el comando):
cd ~/oai-epc/openair-cn/scripts/
sudo ./check_mme_s6a_certificate
$Ruta/freeDiameter mme.openairinterface.org
Los parámetros del SPGW-C están definidos en un único fichero CONF, que debe estar
ubicado junto al resto de archivos de configuración del EPC de OAI. Por tanto, se copia
la plantilla que se encuentra en la carpeta etc de la instalación de openair-cn-cups:
cd ~/oai-epc/openair-cn-cups/etc/
sudo cp spgw_c.conf /usr/local/etc/oai/
37
4.3. CONFIGURACIÓN
Otro aspecto que es necesario configurar en el SPGW-C para que el núcleo de red
funcione correctamente es el servidor DNS (sistema de nombres de dominio) utilizado
para resolver los nombres de dominio requeridos por el usuario que navega por Internet.
La dirección o direcciones IP que se incluyan en el fichero tienen prioridad respecto a la
configuración DNS del equipo que aloja el despliegue.
OAI requiere la dirección de dos servidores, uno primario y otro secundario. Puede
indicarse la dirección IP de la red a la que está conectada la estación de trabajo, o la del
servidor DNS de Google (8.8.8.8). En la implementación llevada a cabo, se recurre a los
servidores DNS de la UPV:
DEFAULT_DNS_IPV4_ADDRESS = "158.42.248.88";
DEFAULT_DNS_SEC_IPV4_ADDRESS = "158.42.1.8";
cd ~/oai-epc/openair-cn-cups/etc/
sudo cp spgw_u.conf /usr/local/etc/oai/
38
4.3. CONFIGURACIÓN
Conviene comentar algunos aspectos de la Tabla anterior. Por un lado, puede obser-
varse que la dirección IP asignada al SPGW-U en la interfaz S1-U coincide con la fijada
para el MME en la interfaz S1-C (Tabla 7). No existe inconveniente alguno en ello, da-
do que la implementación de OAI utiliza puertos de red diferentes para cada una de las
comunicaciones. Este, además, es el esquema que se seguiría en caso de disponer de una
RAN ajena al equipo, dado que la conexión se efectuaría a través de una interfaz Ethernet
a la que se le asignaría una única dirección IP.
Por otra parte, la interfaz de red que se usa para la interfaz SGi del SPGW-U debe ser
aquella que tenga una puerta de enlace hacia la red IP externa. Como ya se ha indicado al
principio de esta sección, eno1 es el puerto Ethernet mediante el que la estación de trabajo
establece conexión con la red de la UPV y, en última instancia, con Internet, por lo que
es el escogido.
Para garantizar que el tráfico generado por los usuarios es redireccionado correctamen-
te, es necesario que el equipo realice el enmascaramiento de las direcciones IP asignadas
por el SPGW-C a los UE. Este mecanismo se denomina NAT (Network Address Transla-
tion) y se activa por separado para cada interfaz de red del equipo añadiendo la entrada
correspondiente a las tablas IP mediante el siguiente comando:
Aunque en principio este paso no es necesario si las tablas de enrutamiento del equipo
están bien definidas, ante problemas de conexión del UE puede definirse una tabla de
enrutamiento cuya única entrada sea reenviar el tráfico con dirección a la puerta de enlace
de la Figura 16. Junto a ello, se añade una regla para que el tráfico procedente del UE
siga las instrucciones de dicha tabla.
39
4.4. EJECUCIÓN
4.4. Ejecución
1. HSS
2. MME
cd ~/oai-epc/openair-cn/scripts
sudo ./run_mme -c /usr/local/etc/oai/mme.conf -s
3. SPGW-C
4. SPGW-U
En este punto, el núcleo de red LTE de OAI estará operativo con la configuración
definida por el usuario. El registro de actividad de cada uno de los componentes se puede
consultar en la respectiva ventana de terminal. Para detener la ejecución de los procesos,
se utiliza el atajo de teclado Ctrl+C como con cualquier otro proceso lanzado en dicho
entorno.
40
Capítulo 5
Despliegue de Open5GCore
phoenix: contiene todos los recursos de la plataforma del mismo nombre sobre la
que se ejecutan los distintos componentes de los núcleos de red anteriores, además
de réplicas de los archivos disponibles en las carpetas anteriores.
41
5.2. INSTALACIÓN
diferentes bases de datos gestionadas a través de MySQL, bien para almacenar determina-
dos parámetros y que puedan emplearse en los ficheros de configuración descritos o bien
para completar la funcionalidad de algún componente (por ejemplo, el HSS por su propia
definición de base de datos de usuarios).
La estructura del código fuente en el repositorio también guarda relación con las distin-
tas modalidades que se ofrecen para realizar la instalación del software. Es posible hacer
el despliegue en varios equipos interconectados, de modo que cada uno actúe como un
componente del núcleo de red, o en una única máquina. Si se opta por la segunda opción,
existen a su vez múltiples posibilidades, radicando las diferencias entre las mismas en la
herramienta de virtualización empleada para simular cada elemento:
Así pues, los paquetes preparados para instalar Open5GCore a través de alguna de
las opciones anteriores contienen el directorio correspondiente a la versión escogida junto
con los módulos de phoenix, mientras que la instalación física en varios equipos o en una
única máquina con chroot requiere la descarga de todo el código fuente disponible en el
repositorio.
Asimismo, las subredes que conectan los distintos componentes que integran los núcleos
de red están definidas de antemano. En el supuesto de llevar a cabo el despliegue mediante
contenedores o recurriendo a las posibilidades que ofrece chroot, esta arquitectura de com-
ponentes software interconectados y compartiendo recursos hardware se construye gracias
a una característica presente en el kernel Linux, los espacios de nombres de red o network
namespaces. Esta función resulta esencial y con ella se generan espacios aislados para la
ejecución de procesos y la configuración de red.
5.2. Instalación
Puesto que para la realización del proyecto se ha decidido utilizar una única estación
de trabajo, se descarta la instalación de Open5GCore en varios equipos. Por otro lado, se
ha preferido no utilizar herramientas de virtualización en la solución final, de modo que la
forma de instalación que se expone consiste en crear una jaula chroot y ejecutar dentro de
ella las distintas partes del núcleo de red en sus respectivos espacios de nombres de red.
42
5.2. INSTALACIÓN
Optar por esta forma de despliegue sobre una única máquina es factible porque el
servidor del laboratorio tiene recursos suficientes para soportar la carga computacional.
Además, renunciar a las máquinas virtuales permite, en teoría, aprovechar mejor dichos
recursos y, sobre todo, otorga la capacidad de realizar una única instalación para disponer
de ambos núcleos de red (LTE y 5G). En cambio, las otras posibilidades obligan a elegir
una de las dos implementaciones. No obstante, durante el desarrollo del proyecto se llevó
a cabo una instalación funcional de la Release 3 sobre KVM.
cd /opt/
sudo chown -R mcg /opt/
git clone https://gitlab.fokus.fraunhofer.de/phoenix/customer/<name>.git
En el comando anterior, <name> se sustituye por la etiqueta del cliente que ha adquirido
la licencia del software. A continuación, debe crearse un enlace simbólico al directorio
phoenix recién descargado en la carpeta /opt/ puesto que el código está preparado para
ser lanzado desde dicha ruta:
ln -s <name>/phoenix/ phoenix
Por tanto, a partir de este momento todos los comandos se ejecutan en rutas que
cuelgan del enlace simbólico /opt/phoenix/.
cd phoenix/
sudo ./prereq.sh
43
5.2. INSTALACIÓN
cd build/
cmake ..
make -j`nproc`
cd ../tools/ph_init/chroot/
sudo ./prepare-once.sh
44
5.3. EJECUCIÓN
5.3. Ejecución
Completada la instalación, los núcleos de red de Open5GCore están listos para ser
lanzados. La ejecución de los mismos está centralizada en el script ph_init.sh. Este
archivo es el encargado de crear los distintos espacios de nombres de red y las direcciones
IP asociadas a cada uno de los elementos del núcleo de red definidos en los ficheros de
configuración (consultar detalle en el apartado correspondiente). A continuación, inicia una
sesión de la utilidad tmux, la cual permite abrir una ventana de terminal con múltiples
pestañas.
El ejecutable ph_init.sh establece tantas pestañas como espacios de nombres de red
existen, y dentro de cada pestaña se lanza un proceso de phoenix, si el espacio de nombre
de red pertenece a una entidad o función de red del núcleo, u otro servicio, como es el caso
de los espacios de nombres de red definidos para MySQL o BIND, un software servidor
DNS.
Así pues, los comandos a utilizar para levantar el núcleo de red aparecen seguidamente.
Debe lanzarse dos veces ph_init.sh ya que la primera ejecución crea los espacios de
nombres de red y la sesión de tmux, y es la segunda la que permite ingresar a dicha sesión
para ver e interactuar con la implementación del núcleo de red.
cd /opt/phoenix/tools/ph_init/
./ph_init.sh
./ph_init.sh
El atajo de teclado Ctrl+B, seguido de alguna de las siguientes teclas, permite el manejo
de tmux:
Flecha arriba o abajo para activar la instancia de terminal superior o inferior de una
pestaña.
45
5.3. EJECUCIÓN
Para detener la ejecución del núcleo de red, solo hace falta ejecutar el siguiente comando
tras dejar en segundo plano la consola:
./ph_init.sh down
Si bien el procedimiento que se acaba de exponer es el habitual, la primera vez que vaya
a lanzarse un núcleo de red deben seguirse algunos pasos adicionales. En primer lugar, hay
que generar un fichero local.conf en el directorio de configuración de phoenix, cfg. Este
archivo contiene una variable cfgdir que el script ph_init.sh usa para lanzar una de las
dos implementaciones disponibles (EPC o 5GC). Con los siguientes comandos se define el
fichero indicado:
cd /opt/phoenix/cfg/
sudo cp 5g/local.conf.example local.conf
Se ha utilizado la plantilla para lanzar el núcleo de red 5G. Resulta conveniente editar
el archivo (sudo nano local.conf) y añadir la siguiente línea al principio del mismo:
cfgdir="/opt/phoenix/cfg/legacy/"
Añadiendo esta línea se consigue un fichero de configuración útil para lanzar ambos
núcleos de red. Si se desea arrancar el EPC, cuya configuración se encuentra en la carpeta
legacy, basta con comentar con una almohadilla (#) la variable que apunta a la configura-
ción del 5GC (carpeta 5g). Alternativamente, para iniciar el núcleo de red 5G, únicamente
hace falta dejar comentada la línea añadida al archivo en el paso previo.
Finalmente, con la primera ejecución de ph_init.sh algunos módulos de phoenix dejan
de funcionar puesto que no pueden acceder al contenido de las bases de datos que requieren.
Por ello, deben importarse las bases de datos al servidor MySQL desplegado dentro de la
jaula chroot, utilizando para ello estos comandos en la pestaña sql de la sesión tmux:
cd $cfgdir/sql
./apply-databases.sh
Los comandos anteriores referidos a MySQL necesitan ser lanzados en la primera eje-
cución de ambas implementaciones (Release 3 y Release 5), ya que las bases de datos a las
que accede cada uno de los núcleos de red son independientes. Si se han seguido todos los
pasos, en este punto Open5GCore estará desplegado.
46
5.4. CONFIGURACIÓN
5.4. Configuración
47
5.4. CONFIGURACIÓN
Open5GCore Release 3 incluye sendos módulos que emulan una estación base eNB
y un UE, así como una herramienta de evaluación (Benchmarking tool) que simula
tres eNB y hasta 1000 usuarios, permitiendo realizar diferentes pruebas y medidas.
Se incluye un IGW (Internet gateway o puerta de enlace a Internet) para redireccio-
nar el tráfico que proviene del plano de usuario y un servidor SQL.
La Figura 19 también recoge las distintas redes necesarias para interconectar las dis-
tintas entidades del núcleo de red, especificando sus nombres y direcciones IP, así como
las de los componentes conectados a ellas:
neta: esta red conecta el SPGW-U con los módulos dedicados a aplicaciones (no se
abordan en este proyecto) y es la que proporciona acceso a Internet.
netc: exclusiva para conectar el UE al eNB cuando se utilizan estos componentes
emulados (en la realidad se correspondería con señales radio).
netd: es la red sobre la que se despliega el protocolo GTP para transportar señali-
zación y datos entre el eNB, el MME y el SPGW-U, por un lado, y para comunicar
las funciones del plano de control y el plano de usuario del SGW y el PGW.
db: las entidades que requieren acceso a bases de datos se conectan al servidor MySQL
a través de esta red.
mgmt: la comunicación entre el MME y el HSS para tareas de autenticación se realiza
por esta red utilizando el protocolo Diameter; también sirve para establecer una
conexión directa con cada una de las entidades.
Parámetro Valor
MCC 001
MNC 01
TAC 1
APN default
Tabla 10: Códigos definidos en el EPC para la conexión de usuarios y estaciones base
48
5.4. CONFIGURACIÓN
La implementación refleja uno de los principios en los que se basan los núcleos de
red de 5G, con las funciones de red como servicios disponibles entre sí en el plano
de control en vez de estar interconectadas mediante interfaces punto a punto.
Open5GCore Release 5 también incluye una pareja de estaciones base gNB y usuarios
emulados, y mantiene la herramienta de evaluación presente en la Release 3 adaptada
a la 5G.
Forman parte de la implementación el IGW y el servidor SQL con las mismas atri-
buciones que en el EPC.
Pese a lanzarse por defecto un único UPF, se incluye otro archivo de configuración
para poder desplegar de forma inmediata dos si se está interesado en ello.
Desde el punto de vista de las redes que forman parte de la implementación, el método
seguido para su creación es el mismo que en la otra versión, y consiste en utilizar bridges
virtuales para interconectar los diferentes espacios de nombres de red. En este contexto se
han definido las siguientes redes, pudiendo consultarse las direcciones IP en la Figura 20:
cp: la señalización en el plano de control entre las distintas funciones de red ocurre
a través de esta interfaz.
db: las funciones de red que requieren acceso a bases de datos se conectan al servidor
MySQL a través de esta red.
49
5.4. CONFIGURACIÓN
mgmt: sirve para establecer una conexión directa con cada una de las funciones de
red, además de ser la interfaz por la que el IGW envía el tráfico de usuario hacia
Internet.
upi: esta red canaliza el tráfico de usuario desde el UPF hacia el IGW.
Parámetro Valor
MCC 001
MNC 01
TAC 117
APN default
Tabla 11: Códigos definidos en el 5GC para la conexión de usuarios y estaciones base
El fichero ip-map
Tal y como se ha visto, los núcleos de red se inician con una serie de módulos activos por
defecto. Sin embargo, es posible desactivar aquellos cuyo uso no interesa e incluso añadir
nuevos módulos configurados manualmente. El archivo que gestiona esto se denomina
ip-map y cada Release tiene en su directorio de configuración uno propio. La estructura
de este fichero puede observarse en la Figura 21.
50
5.4. CONFIGURACIÓN
Después hay que modificar las direcciones asociadas a la interfaz netd de la que dispo-
nen todos los espacios de nombres de red conectados a la red del mismo nombre. Obsérvese
que la dirección IP propuesta para la red viene definida por una máscara de red de 8 bits,
con lo que se dispone de más direcciones en la subred. Por tanto, también debe modificarse
este parámetro en las correspondientes entradas. Por ejemplo:
51
5.4. CONFIGURACIÓN
paso no es necesario en la Release 5 puesto que dicha versión no recurre a un servidor DNS
para resolver los FQDN de cada componente del núcleo de red.
La ruta del archivo de zona de DNS es cfg/open5gcore.zone. En este fichero, aparecen
los diferentes dominios con el formato <espacio de nombre de red>.<red>. Por tanto,
la entrada modificada anteriormente tendría el siguiente aspecto en este archivo:
dpsw.netd IN A 200.2.2.20
cd /opt/phoenix/cfg/
fgrep -rIsl --null '192.168.4.x' .| xargs -r -0 sed -i
's|192.168.4.x|200.x.y.z|g'
Completados todos los pasos, basta con ejecutar ph_init.sh para reconstruir el bridge
eliminado al principio y lanzar el núcleo de red con las direcciones IP de los espacios de
nombres de red actualizados.
Configuración del DNS para permitir tráfico hacia Internet
Open5GCore hace uso de los servicios DNS del equipo en el que se ha llevado a cabo
la instalación para resolver los nombres de dominio requeridos por el usuario conectado a
la red. Por ello, si se experimentan problemas de conexión, como imposibilidad de cargar
páginas web, probablemente tienen relación con el DNS.
En Linux, el archivo que gestiona la resolución DNS es resolv.conf y se ubica en
/etc/. Este fichero debe editarse para incluir un servidor DNS que responda a las pe-
ticiones del usuario. Puede establecerse la dirección IP del DNS de la red a la que está
conectada la máquina o, por ejemplo, la de Google (8.8.8.8). Se añade la siguiente línea:
nameserver x.y.z.w
El PLMN (Public Land Mobile Network) es el código que identifica de forma unívoca
a un operador de red dentro de un país. Está compuesto, por tanto, por el MCC y MNC.
Por defecto, los núcleos de red de Open5GCore tienen asignados los códigos 001 y 01, tal
y como indican las Tablas 10 y 11.
No obstante, puede llegar a resultar necesario cambiarlos ya que el MCC y el MNC
del núcleo de red y los cinco primeros dígitos del IMSI registrado en las tarjetas SIM,
52
5.4. CONFIGURACIÓN
cd /opt/phoenix/cfg/
fgrep -rIsl --null 'mnc001.mcc001.3gppnetwork.org' .| xargs -r -0 sed
-i 's|mnc001.mcc001.3gppnetwork.org|mnc093.mcc208.3gppnetwork.org|g'
cd /opt/phoenix/tools/
fgrep -rIsl --null 'mnc001.mcc001.3gppnetwork.org' .| xargs -r -0 sed
-i 's|mnc001.mcc001.3gppnetwork.org|mnc093.mcc208.3gppnetwork.org|g'
Los comandos fgrep anteriores se ejecutan en una única línea. Nótese también que el
MNC se ha rellenado con un 0 inicial. En principio, el MNC es un código de dos o tres
dígitos, pero Open5GCore toma los códigos precedidos de ceros como el mismo MNC.
Se puede observar que se ha actualizado asimismo el dominio en los archivos localiza-
dos en la ruta tools/. En este directorio se ubican diversos scripts que se utilizan para
modificar el contenido de la base de datos del HSS y los ficheros de configuración del
servicio de DNS BIND. Estos últimos se copian en el directorio /etc/bind/ de la jaula
chroot para que la resolución de nombres siga funcionando correctamente:
cd ph_init/chroot/etc/
sudo cp bind/* /opt/phoenix-chroot/etc/bind/
53
5.4. CONFIGURACIÓN
cd /opt/phoenix/tools/hsstools/
./prepare_db.sh -n 93 -c 208
Si todo transcurre sin errores aparecerán mensajes como los de la Figura 22, en el
que se puede observar el dominio con los códigos MCC y MNC actualizados. Entonces se
procede a añadir el usuario con los datos de la Tabla 3:
54
5.4. CONFIGURACIÓN
K="(UNHEX(NULL))"
OP="(UNHEX('00000000000000000000000000000000'))"
imsi_suffix="<IMSI>"
msisdn_suffix="<MSISDN>"
Tras ello, se ejecuta este último archivo con las siguientes opciones desde el espacio de
nombre de red sql. Aparecerán tantos mensajes como los de la Figura 23 como usuarios
se hayan añadido.
cd /opt/phoenix/tools/hsstools/
./mass_provision.sh -n 93 -c 208 -u <número_usuarios>
55
5.4. CONFIGURACIÓN
netd al principio del mismo, como se observa en la Figura 24. Las entradas de este tipo
permiten conectarse a las redes implicadas desde el exterior.
Figura 24: Configuración de red para aceptar conexiones de estaciones base físicas
MME AMF
192.168.4.80 192.168.16.80
56
Capítulo 6
Tras el despliegue de los núcleos de red implementados por las plataformas OpenAirIn-
terface y Open5GCore, en este capítulo se explica el procedimiento propuesto para probar
dichas soluciones. Este procedimiento se ha diseñado en torno a dos fases: la validación de
los núcleos de red y la evaluación de sus prestaciones.
Mediante la validación se pretende comprobar el funcionamiento de los núcleos de red,
desplegando el prototipo de red móvil completo con el objetivo de verificar que los usuarios
pueden inician sesión y acceder a la red IP externa conectada al sistema móvil. Por otro
lado, se lleva a cabo una evaluación de sus prestaciones a partir un conjunto de casos de
uso definidos y ejecutados con la herramienta Spirent Landslide. De este modo, se obtiene
una serie de resultados objetivos útiles para comparar el rendimiento de ambas soluciones
de forma certera.
Las dos plataformas utilizadas en este proyecto incluyen componentes que simulan
estaciones base físicas a la vez que usuarios para probar la conexión al núcleo de red. En
el caso de Open5GCore, estos elementos forman parte de la instalación junto al resto de
componentes del EPC y el 5GC. Sin embargo, OAI distribuye el simulador como parte del
módulo dedicado a la implementación software de la RAN.
Dado que el despliegue y la utilización de dicho paquete no forman parte de los objetivos
de este proyecto, únicamente se plantea la integración con la parte radio simulada de los
57
6.1. VALIDACIÓN DE LAS SOLUCIONES PROPUESTAS
La segunda parte de la validación de los núcleos de red consiste en desplegar una RAN
a través de la cual los UE comerciales disponibles para el desarrollo de este proyecto,
haciendo uso de la tarjeta USIM programada, puedan conectarse a la red. La RAN que se
utiliza en este escenario se compone de un dispositivo SDR, el USRP B210 descrito en el
Capítulo 3, controlado por el software de OAI que implementa el acceso radio LTE (4G)
y NR (5G). De esta manera puede disponerse de eNB y gNB físicos.
La principal restricción de este escenario es en realidad una limitación de la implemen-
tación de la RAN desarrollada por OAI. En el momento de la realización del proyecto, la
RAN solo admite una configuración de red 5G NSA [28], de modo que no puede plantearse
su integración con la Release 5 de Open5GCore (5GC).
Asimismo, el software para el despliegue de gNB se encuentra en estos momentos en
fase de desarrollo y no se garantiza su correcto funcionamiento. Por ello, no es posible
validar con garantías los núcleos de red LTE en un escenario 5G NSA con los recursos
disponibles para esta prueba. En definitiva, la conexión de los dispositivos móviles a la red
en este escenario solo se garantiza si se despliega un eNB; por tanto, la red resultante es
LTE.
Conexión del eNB a los núcleos de red
La integración del eNB de OAI con las soluciones de EPC desplegadas es un proceso
en el que deben coincidir ciertos parámetros para establecer la conexión de manera satis-
factoria. En primer lugar, tanto si todas las partes de la red están instaladas en un mismo
equipo como si lo están en dos, debe configurarse una dirección IP en el eNB que habilite
la conexión al MME del EPC.
Preferiblemente, el eNB y el MME deben estar en la misma subred, evitando de este
modo recurrir a las reglas de encaminamiento del sistema. La prueba se realiza sobre un
único equipo utilizando la configuración del núcleo de red de OAI propuesta para dicho
58
6.2. EVALUACIÓN DEL RENDIMIENTO DE LOS NÚCLEOS DE RED
OAI: 172.168.3.17/8
Open5GCore: 192.168.4.80/24
Por otra parte, también deben coincidir los parámetros que identifican el núcleo de
red. Estos son el MCC, el MNC y el TAC, presentados a lo largo del documento. Los
códigos que se utilizan, modificados respecto a la la configuración por defecto del MME
del EPC de Open5GCore para que el UE que haga uso de la tarjeta USIM programada
pueda autenticarse en la red, son los siguientes:
MCC: 208
MNC: 93
OAI: oai.ipv4
Open5GCore: default
Las pruebas de conexión de un UE a los núcleos de red sirven para certificar que la
configuración propuesta para sus despliegues es adecuada y que, por tanto, se cumple el
objetivo de disponer de redes funcionales. Sin embargo, estos escenarios son muy sencillos
y no reflejan la complejidad de una red móvil en la realidad, en la que múltiples estaciones
base se conectan al núcleo de red y ofrecen servicio a cientos de usuarios.
Por tanto, es importante llevar a cabo pruebas más exigentes para descubrir las presta-
ciones reales de los núcleos de red y, de esta manera, poder extraer conclusiones objetivas y
bien fundamentadas acerca de su rendimiento. No obstante, simular un escenario de estas
características en un entorno de laboratorio es una tarea difícil porque los recursos físicos
59
6.2. EVALUACIÓN DEL RENDIMIENTO DE LOS NÚCLEOS DE RED
son limitados. Por ejemplo, no es verosímil plantear ensayos con cientos de smartphones
como UE.
Para dar respuesta a esta problemática, surgen las herramientas de evaluación del
rendimiento de los sistemas de comunicaciones móviles, que ofrecen la posibilidad de poner
a prueba todas las partes de una red móvil recreando situaciones del mundo real. Estas
soluciones gozan de amplia difusión en el sector por su versatilidad y son utilizadas tanto
en el ámbito académico y de investigación como entre los proveedores para el desarrollo
de nuevos componentes de las redes.
La evaluación de las prestaciones de los núcleos de red de OAI y Open5GCore en el
laboratorio se efectúa mediante la herramienta Spirent Landslide, de la que el MCG ha
adquirido una licencia de uso.
TS (Test Server): es el nodo del sistema al que se conectan los SUT (System
Under Test) y en el que se ejecutan las pruebas, pudiendo desplegarse hasta 32 bajo
60
6.2. EVALUACIÓN DEL RENDIMIENTO DE LOS NÚCLEOS DE RED
61
6.2. EVALUACIÓN DEL RENDIMIENTO DE LOS NÚCLEOS DE RED
correctamente las direcciones IP de las interfaces a través de las cuales la estación base se
conecta al núcleo de red, teniendo en cuenta que, a diferencia del caso anterior, ahora se
adapta la configuración de los núcleos de red.
A continuación se expone el procedimiento a seguir suponiendo que se utiliza la interfaz
eno2 del equipo para la conexión al router y a Landslide. En el caso del núcleo de red de
OAI, se escoge la dirección IP 200.16.6.3/8. Esta interfaz y dirección IP deben utilizarse
para la interfaz S1-C del MME y la interfaz S1-U del SPGW-U.
Para crear una interfaz VLAN eno2.2 se utiliza el siguiente comando:
Por último, para activar la interfaz VLAN creada se emplea el siguiente comando:
Tras estos pasos, el EPC de OAI es visible para Landslide y puede empezar a probarse
siempre que los usuarios emulados por el sistema estén registrados en la base de datos del
HSS.
En las implementaciones de núcleos de red de Open5GCore, el procedimiento es simi-
lar. En primer lugar debe modificarse la dirección de red de los componentes que tienen
conexión con la RAN, de acuerdo con las indicaciones del apartado de configuración del
Capítulo dedicado al despliegue de la plataforma.
Seguidamente, se crea y se activa la interfaz VLAN utilizando los comandos anteriores,
pero en este caso no se le asigna una dirección IP, sino que se añade al bridge correspon-
diente al que se conectan las estaciones base, tal y como se explica en la mencionada
sección.
62
Capítulo 7
Análisis de resultados
La arquitectura inicial de los núcleos de red que implementa Open5GCore ofrece una
serie de componentes que simulan equipos de usuario (UE) y el acceso radio LTE y NR.
Se pretende comprobar que, en las condiciones iniciales, estos UE pueden conectarse a la
red y acceder a Internet.
Conexión del UE emulado al EPC
Para realizar esta prueba se lanza la Release 3 de Open5GCore con los componentes
ue y enb. De manera inmediata puede observarse en la pestaña del MME el intercambio
de señalización entre este y el eNB. También se puede utilizar el comando mme.enb.print
con el mismo propósito.
A continuación, desde la pestaña definida para el UE se ejecuta el siguiente comando
para conectar al usuario a la red. Si el UE se vincula con éxito a la red, en la consola del
MME aparecen los mensajes de la Figura 26.
ue.connect_l3 1 LTE-N1
Regresando a la pestaña del UE, se envían mensajes ICMP mediante la utilidad ping
al servidor en el que se aloja la página de inicio de Google para verificar la conexión a
Internet. El resultado satisfactorio se muestra en la Figura 27, comprobando de paso el
correcto funcionamiento del servicio DNS si se han seguido los pasos descritos en la sección
de configuración de red de Open5GCore.
63
7.1. CONEXIÓN DE UN UE SIMULADO A OPEN5GCORE
ue.disconnect_l3 1 LTE-N1
ue_5g_nas_only.registration_and_pdu_connection
ue_5g_nas_only.deregistration_request
64
7.2. CONEXIÓN DE UN UE COMERCIAL A LOS NÚCLEOS DE RED LTE
Con esta prueba se quiere verificar que los EPC se integran correctamente con un eNB
físico y ambos elementos están configurados correctamente para admitir la conexión de un
usuario a través de los dispositivos móviles disponibles.
Una vez que se lanza la implementación del eNB y este establece conexión con el núcleo
de red, puede iniciarse la conexión del UE. Con la tarjeta SIM insertada en el mismo, se
selecciona el APN correspondiente a cada EPC y tras ello el usuario se conecta al prototipo
de red móvil, pudiendo consultar en el dispositivo la dirección IP que le asigna el SPGW-
C. En las consolas de los núcleos de red puede revisarse el intercambio de mensajes de
señalización que tiene lugar entre el usuario, la estación base y el MME.
En la Figura 29 se muestra este intercambio de mensajes, pudiendo identificar el IMSI
del usuario, que es el registrado en la tarjeta USIM, así como el túnel de comunicación
para el plano de usuario (GTP-U) que se establece entre el UE, cuya dirección IP es
192.168.3.1, y el eNB, configurado con la dirección 192.168.4.8.
Mensajes similares aparecen en la ventana de terminal en la que se ejecuta el MME
del EPC de OAI, donde destaca el cuadro de estadísticas de la Figura 30 que recoge los
eNB y UE con sesión establecida.
En esta solución se ha podido comprobar que, a pesar de utilizar siempre la misma
tarjeta USIM cuyos parámetros están registrados en la base de datos del HSS, la red
rechaza la conexión del smartphone Galaxy A90 5G de Samsung. Tras investigar el por
qué de dicho rechazo, se ha encontrado que el motivo por el que se deniega la conexión se
debe a algunas licencias del fabricante que OAI no incluye.
Asimismo, un fallo detectado en el software, que puede observarse, es la no inclusión
de las bearers (portadoras), a pesar de que las mismas existen ya que se establece correcta-
mente la conexión en el plano de usuario. Una vez conectado el UE, este puede conectarse
a la red IP externa a la que dé acceso el núcleo de red.
65
7.3. EVALUACIÓN DE LOS NÚCLEOS DE RED LTE CON LANDSLIDE
En esta sección se comentan los resultados de las pruebas realizadas al núcleo de red
de OAI y a la Release 3 de Open5GCore para comparar su rendimiento. Cabe destacar que
el acceso radio emulado por Landslide es ideal y no tiene errores, por lo que las diferencias
se deben exclusivamente a los núcleos de red.
Por otro lado, el sistema presenta los resultados utilizando slots (intervalos de tiempo)
de 15 segundos. De esta manera, además de obtener una media de la variable que se esté
midiendo, pueden comprobarse las prestaciones del sistema examinado a lo largo de la
prueba. Esta forma de operar también se tiene en cuenta a la hora de diseñar las pruebas.
Prueba de capacidad o establecimiento de sesión
El objetivo de esta prueba es determinar la capacidad del núcleo de red para gestionar
peticiones de inicio de sesión. Se pretende averiguar el tiempo medio que transcurre desde
que un UE envía la petición hasta que se establece el plano de usuario y puede comenzar
a utilizar los recursos de la red.
Para la prueba se definen cuatro casos: la conexión de 50 y 100 usuarios en 45 y
90 segundos (3 y 6 intervalos). Se modifica la tasa de activación convenientemente para
garantizar que todos los usuarios pueden conectarse durante el tiempo que dura la prueba
66
7.3. EVALUACIÓN DE LOS NÚCLEOS DE RED LTE CON LANDSLIDE
y que las peticiones de inicio de sesión se reparten uniformemente entre los intervalos.
La Figura 31 muestra una gráfica con las prestaciones del EPC de OAI. Las curvas
roja y azul corresponden a la conexión de 50 UE, mientras que la negra y la amarilla son
el resultado de la conexión de 100 UE. Puede identificarse un incremento en el tiempo
medio de inicio de sesión de los usuarios en cada intervalo, de modo que con una base de
usuarios conectados, el núcleo de red gestiona con más lentitud las nuevas peticiones.
Asimismo, la pendiente de las curvas es mayor cuando la conexión de los usuarios se
realiza en 45 segundos. Esto denota que el núcleo de red experimenta mayores complica-
ciones si tiene que gestionar un número determinado de peticiones de inicio de sesión en
un lapso de tiempo más corto.
Figura 31: Tiempo medio de inicio de sesión por intervalo del EPC de OAI
Los resultados del EPC de Open5GCore pueden verse en la Figura 32. Las curvas roja
y negra se refieren a la conexión de 50 UE, mientras que la azul y la amarilla corresponden
a la conexión de 100 UE.
67
7.3. EVALUACIÓN DE LOS NÚCLEOS DE RED LTE CON LANDSLIDE
En primer lugar, se observa una tendencia opuesta a la del caso anterior, puesto que el
tiempo medio de inicio de sesión en el último intervalo de la prueba es inferior al tiempo
registrado al principio de la misma. Además, puede considerarse la variable prácticamente
estable, dado que experimenta un incremento de apenas 1 milisegundo al aumentar el
número de usuarios que se conectan o la duración de la prueba. Finalmente, debe destacarse
la diferencia en la magnitud del tiempo medio de inicio de sesión, mucho mayor en el núcleo
de red de OAI.
En el marco de esta prueba también se ha comprobado el comportamiento de los
núcleos de red con el número máximo de UE admitidos según sus configuraciones por
defecto (rango de direcciones IP asignables a los UE disponibles). Son 126 usuarios en el
caso de OAI y 253 en el caso de Open5GCore.
En ambos casos se mantiene la tendencia de las figuras anteriores, por lo que se intenta
forzar el crecimiento en el tiempo medio de inicio de sesión del segundo núcleo de red. Se
modifica la configuración definiendo una subred con muchas direcciones IP disponibles,
logrando conectar alrededor de 1500 usuarios sin que varíe la gráfica.
Finalmente, también se prueba en este escenario la conexión de varios eNB a los núcleos
de red para ver el número de asociaciones que admite el MME de cada uno. Se establece
en 2 para el EPC de OAI y 10 para el de Open5GCore, aumentando en ambos casos el
tiempo medio de inicio de sesión si cada usuario está conectado a un eNB distinto.
Prueba de carga de sesión
Mediante esta prueba se consigue determinar la capacidad del núcleo de red para pro-
cesar una sucesión de activaciones y desactivaciones de usuarios en un tiempo prolongado.
Se diseña la prueba de forma que se alterna la conexión y la desconexión de todos los UE
en cada intervalo.
Se establecen dos casos, con 25 y 100 usuarios, y una duración de 210 segundos (14
intervalos), con la mitad de intervalos reservados para conexión y la otra mitad para
desconexión. En cada intervalo de conexión se mide, por un lado, el impacto de la carga
en el tiempo medio de inicio de sesión. Por el otro, se comprueba el número de usuarios
que realmente consiguen establecer una sesión con el núcleo de red y disponer del plano
de usuario.
La Figura 33 muestra la gráfica del tiempo medio de inicio de sesión en el EPC de
OAI de un UE en cada uno de los intervalos de conexión. Puede observarse que tanto si
se realiza la prueba con 25 usuarios como con 100 el tiempo medio de inicio de sesión en
cada intervalo aumenta. La progresión en el caso de conectar 100 UE es más irregular y
mucho mayor en magnitud (segundos frente a milisegundos).
En cuanto a los usuarios que logran establecer sesión en cada intervalo de conexión, los
resultados se presentan en la Tabla 13. En la prueba con 25 usuarios, se conectan en cada
intervalo 22. No obstante, se producen los 175 inicios de sesión esperados a lo largo de la
prueba, ya que los inicios de sesión restantes se producen en los intervalos de desconexión.
En el caso de conectar 100 UE, el rendimiento del núcleo de red es notablemente peor y
no se establecen los 700 inicios de sesión esperados.
68
7.3. EVALUACIÓN DE LOS NÚCLEOS DE RED LTE CON LANDSLIDE
25 UE 100 UE
140 25
120
20
100
Tiempo (ms)
Tiempo (s)
80 15
60 10
40
5
20
0 0
1 2 3 4 5 6 7 1 2 3 4 5 6 7
Intervalo de tiempo (15 s) Intervalo de tiempo (15 s)
Figura 33: Tiempo medio de inicio de sesión en la prueba de carga del EPC de OAI
1 2 3 4 5 6 7
Prueba con 25 UE 23 22 22 22 22 22 22
Prueba con 100 UE 97 80 43 20 53 2 24
Tabla 13: UE iniciando sesión en cada intervalo de la prueba de carga (OAI EPC)
Por su parte, las prestaciones del EPC de Open5GCore se pueden observar en la gráfica
de la Figura 34. Como era de esperar tras la prueba de capacidad, los tiempos medios de
inicio de sesión son notablemente inferiores a los del núcleo de red de OAI, y apenas
varían a lo largo del examen. Por tanto, este núcleo de red completa con solvencia la
prueba. Respecto a los inicios de sesión que se producen en cada intervalo (Tabla 14),
ocurre lo mismo que en el caso anterior. Sin embargo, a diferencia de aquel, en la prueba
con 100 UE consiguen establecerse los 700 inicios de sesión esperados.
25 UE 100 UE
8,9
8,7
8,5
Tiempo (ms)
8,3
8,1
7,9
7,7
7,5
1 2 3 4 5 6 7
Intervalo de tiempo (15 s)
1 2 3 4 5 6 7
Prueba con 25 UE 20 20 20 20 20 19 19
Prueba con 100 UE 83 82 81 80 80 80 79
69
Capítulo 8
Conclusiones y propuestas de
trabajo futuro
70
costes para los operadores y, por tanto, de los precios para los consumidores. Además,
disponer de un código abierto también permite comprobar las condiciones de seguridad de
la solución implementada, lo que acaba suponiendo una mayor tranquilidad para usuarios
y Estados, especialmente preocupados en el contexto geopolítico actual.
Respecto a la comparativa entre Open5GCore y el EPC de OAI, todas las pruebas
realizadas corroboran que la solución de OAI es muy poco robusta y no es una opción para
despliegues reales de los que se espere una funcionalidad estable. Por su parte, Open5GCore
soporta más de 100 usuarios por intervalo de acceso y un total de más de 1500 usuarios
conectados, más que suficientes para muchas de las aplicaciones de despliegue de redes
privadas 5G que se están barajando en la actualidad. Puede concluirse, por tanto, que
Open5GCore es la mejor opción para el despliegue del Campus 5G.
Como líneas futuras de trabajo, se plantean las siguientes:
Investigar alternativas para la creación de Network Slices que permitan aislar dis-
tintas redes dentro del mismo despliegue. Estudiar sus prestaciones.
71
Bibliografía
72
[13] Peter Schmitt, Bruno Landais y Frank Yong Yang. Control and User Plane Se-
paration of EPC nodes (CUPS). 2017. URL: https : / / www . 3gpp . org / news -
events/1882-cups (visitado 10-09-2020).
[14] Stefan Rommer y col. 5G Core Networks: Powering Digitalization. Academic Press,
2020. ISBN: 9780081030097.
[15] GSMA. «5G Implementation Guidelines: NSA Option 3». En: February (2020). URL:
https://www.gsma.com/futurenetworks/wp- content/uploads/2019/03/5G-
Implementation-Guidelines-NSA-Option-3-v2.1.pdf.
[16] Margaret Chiosi y col. Network Functions Virtualisation - Introductory White Paper.
Inf. téc. 2012. URL: http://portal.etsi.org/NFV/NFV_White_Paper.pdf.
[17] Jim Doherty. SDN and NFV Simplified: A visual guide to understand Software De-
fined Networks and Network Function Virtualization. Addison-Wesley Professional,
2016. ISBN: 9780134306407.
[18] Van-Giang Nguyen y col. «SDN/NFV-Based Mobile Packet Core Network Archi-
tectures: A Survey». En: IEEE Communications Surveys and Tutorials 19.3 (2017),
págs. 1567-1602. ISSN: 1553877X. DOI: 10.1109/COMST.2017.2690823.
[19] ETSI ISG NFV. «Network Functions Virtualisation (NFV); Use Cases». En: (2013).
URL: https://www.etsi.org/deliver/etsi_gs/nfv/001_099/001/01.01.01_
60/gs_nfv001v010101p.pdf.
[20] Faqir Zarrar Yousaf y col. «NFV and SDN-Key technology enablers for 5G net-
works». En: IEEE Journal on Selected Areas in Communications 35.11 (2017),
págs. 2468-2478. ISSN: 07338716. DOI: 10.1109/JSAC.2017.2760418.
[21] Mosaic5G. Home. URL: http://mosaic-5g.io/ (visitado 08-09-2020).
[22] 5G-PPP. About us. URL: https://5g-ppp.eu/ (visitado 08-09-2020).
[23] Taesang Choi y col. «Agile Management and Interoperability Testing of SDN/NFV-
Enriched 5G Core Networks:» en: ETRI Journal 40.1 (2018), págs. 72-88. ISSN:
22337326. DOI: 10.4218/etrij.2017- 0236. URL: http://doi.wiley.com/10.
4218/etrij.2017-0236.
[24] OpenAirInterface. OpenAirSoftwareSupport | GitHub. 2020. URL: https://github.
com / OPENAIRINTERFACE / openair - cn / wiki / OpenAirSoftwareSupport (visitado
05-09-2020).
[25] Super Micro Computer Inc. 1029P-WTRT | 1U | SuperServers | Products. URL:
https : / / www . supermicro . com / en / products / system / 1U / 1029 / SYS - 1029P -
WTRT.cfm (visitado 05-09-2020).
[26] Ettus Research. USRP B210 USB Software Defined Radio (SDR). 2019. URL:
https://www.ettus.com/all-products/ub210-kit/ (visitado 05-09-2020).
[27] Open Cells. SIM cards – 4G and 5G reference software. URL: https : / / open -
cells.com/index.php/sim-cards/ (visitado 05-09-2020).
[28] OpenAirInterface. TESTING GNB W COTS UE · openairinterface5G · GitLab.
2020. URL: https://gitlab.eurecom.fr/oai/openairinterface5g/- /blob/
develop/doc/TESTING_GNB_W_COTS_UE.md (visitado 10-09-2020).
73
[29] Spirent Communications. Landslide Core Network Testing. URL: https : / / www .
spirent . com / products / core - network - test - 5g - lte - ims - wifi - diameter -
landslide (visitado 09-09-2020).
[30] Spirent Communications. Spirent Landslide™ Virtual Functional and performance
testing for Mobile, Wi-Fi, IMS and Diameter networks. Inf. téc. 2018. URL: https:
//tinyurl.com/y4ax5j82.
[31] Spirent Communications. Spirent Landslide™ C100-M4. Inf. téc. 2019. URL: https:
//tinyurl.com/y2hfgcwz.
74