Las redes 5G dependen en gran medida de la gestión y el procesamiento basados en software. Las redes
definidas por software (SDN) y la virtualización de funciones de red (NFV) forman parte del núcleo de estas. Los servicios ofrecidos dentro de este entorno se componen de varias funciones de red virtuales (VNF) que deben ejecutarse en un orden (normalmente) estricto. Esto se conoce como Service Function Chaining (SFC) y, dado que esas VNFs podrían estar ubicadas en diferentes nodos a lo largo de la red, además de la baja latencia esperada en el procesamiento de los servicios 5G, hace que el SFC sea un problema de optimización difícil de resolver. En un trabajo anterior, los autores presentaron un algoritmo de Optimización de
Colonias de Hormigas (ACO) para la minimización del coste de enrutamiento de la composici´on de la cadena de servicios, tratándose de una aproximación preliminar capaz de resolver instancias simples y 'estáticas'; es decir, aquellas en las que la topología de la red permanece invariable durante la resolución. Esto dista mucho de la situación real de las redes, en las que normalmente los nodos (y los enlaces)
aparecen y desaparecen continuamente. Así, en este trabajo describimos una evolución de nuestra propuesta anterior, que considera un modelo dinámico del problema, más cercano al escenario real. De manera que, en las instancias, los nodos y enlaces pueden ser eliminados o activados repentinamente.
El algoritmo ACO será capaz de adaptarse a estos cambios y seguir ofreciendo soluciones óptimas. Dicho método ha sido probado en tres instancias dinámicas de diferentes tamaños, obteniendo resultados muy prometedores.
Optimización Adaptativa basada en Colonias de Hormigas para la Composición de Cadenas de Funciones Virtuales en una Red 5G Dinámica
1. Optimización Adaptativa basada en
Colonias de Hormigas para la
Composición de Cadenas de Funciones
Virtuales en una Red 5G Dinámica
1
Segundo Moreno, Antonio Mora
Universidad de Granada
27-29 DE OCTUBRE DE 2021
2. Problema a resolver
2
Virtualización y redes software
➢SDN (Software Defined Networks)
➢NFV (Network Function Virtualization)
➢ VNF (Virtual Network Functions)
SFC (Service Function Chaining)
➢ Uno de los mayores desafíos en NFV
➢ Composición de una lista ordenada de
funciones virtuales de red (VNFs) para
ejecutar servicios avanzados.
➢ Optimización de los recursos de red.
Optimización de Routing para SFC (OR-SFC)
➢ Construir la ruta más corta que deben seguir los datos entre funciones de red adyacentes
para componer u ofrecer un servicio de red determinado entre un origen y un destino en la
red.
Fuente: Estimating VNF resource requirements using machine learning techniques
(Jmila, Houda,Khedher; Mohamed Ibn; El Yacoubi, Mounim A.)
J
I
T
E
L
2
0
2
1
3. Motivación y contribución
OR-SFC es un problema de optimización NP-Completo.
Propuestas existentes:
➢ Métodos exactos: modelos basados en implementaciones de programación lineal.
➢ Heurísticas: conjuntos de reglas a seguir. Obtienen resultados cercanos al óptimo.
Propuesta de este trabajo :
➢ Solución basada en la aplicación de un Algoritmo de Optimización Basada en
Colonias de Hormigas (OCH) para resolver el problema OR-SFC (optimización del coste
de routing para composición de cadenas de servicios), llamado Dynamic Ant-SFC
(DAnt-SFC).
➢Componente dinámico: dado que las redes son sistemas en continuo cambio (nodos y
enlaces se activan y desactivan continuamente).
➢Es la primera propuesta hasta la fecha que resuelve este problema con este método
(incluso la primera propuesta que aplica de manera efectiva una metaheurística).
3
J
I
T
E
L
2
0
2
1
4. ➢ Inspirada en el comportamiento de las
hormigas naturales cuando buscan
alimento.
➢ Ellas cooperan para obtener las rutas más
cortas entre el hormiguero y la fuente de
alimento.
ESTIGMERGIA:
➢ Utilizan una sustancia química llamada
feromona para definir ‘rastros’.
➢ Las hormigas tienden a seguir las
concentraciones más altas de feromona.
➢ La feromona se va evaporando.
4
Fuente: WIKIPEDIA CC BY-SA 3.0
Optimización basada en Colonias de Hormigas
J
I
T
E
L
2
0
2
1
5. HORMIGA ARTIFICIAL:
➢ Conjunto de agentes llamados hormigas.
➢ Todas se mueven en un grafo con pesos en los arcos,
depositando y siguiendo rastros de feromona.
➢ Usan feromona e información heurística.
➢ Colaboran para encontrar una solución (cada
hormiga construye una solución completa).
➢ Fórmulas aplicadas:
➢ Regla de transición de estados (RTE) → determina el
siguiente nodo al que moverse para cada hormiga.
➢ Actualización de feromona → aporte y evaporación.
➢ Función de evaluación → asigna un coste a cada solución.
5
Optimización basada en Colonias de Hormigas
J
I
T
E
L
2
0
2
1
6. 6
SISTEMA DE HORMIGAS PROPUESTO:
➢ Considera una RTE:
➢ La actualización de feromona se hace una vez que todas las hormigas han
terminado de construir sus soluciones:
➢ Evaporación: se hace en todos los arcos/enlaces.
➢ Aporte: se hace únicamente en los arcos/enlaces de la mejor solución.
if
otherwise
Optimización basada en Colonias de Hormigas
J
I
T
E
L
2
0
2
1
7. 7
➢ Conexión: nodo origen, nodo destino, demanda de tráfico, cadena de funciones.
➢ Enlaces: tienen un ancho de banda limitado (capacidad).
➢ Nodos: ofrecen una o más funciones virtuales de red (VNFs), cada una con unos
recursos requeridos. Cada nodo tiene unos recursos disponibles para consumir.
Modelado del problema
J
I
T
E
L
2
0
2
1
8. 8
RESTRICCIONES
➢Los nodos origen y destino deben ser los
indicados en la conexión (servicio
demandado).
➢Las funciones de red deben ser servidas en el
orden indicado.
➢Los enlaces deben disponer de suficiente
capacidad.
➢Los nodos deben tener suficientes recursos
disponibles.
➢Debido al componente dinámico considerado,
los nodos seleccionados deben estar activos.
Modelado del problema
J
I
T
E
L
2
0
2
1
9. 9
Implemented ACO: Dynamic Ant-SFC
ALGORITMO ADAPTADO
➢ Inicialización de la red.
➢ Nodos alcanzables.
➢ Heurística (nodos con más recursos
primero).
➢ Ruleta de probabilidades.
➢ Restricciones (capacidad y
recursos).
➢Actualización por dinamismo
(nodos y enlaces)
➢Restricción de camino completo.
➢Actualización de feromona
(evaporación en todos y actualización
en los enlaces de la mejor).
➢ Coste de una conexión (num. saltos).
➢ Coste global (suma costes conexiones).
J
I
T
E
L
2
0
2
1
11. 11
CONFIGURACIÓN
➢Se harán 10 ejecuciones del algoritmo con cada instancia.
➢Los parámetros de configuración considerados son:
Parámetro Valor considerado
α (peso de la feromona) 1,2
β (peso de la heurística) 2
ρ (tasa de evaporación) 0,3
Num. Hormigas Doble del número de nodos (12, 38 y 104)
Num. Iteraciones Igual al número de nodos (6, 19 and 52)
Experimentos
J
I
T
E
L
2
0
2
1
12. 12
CONFIGURACIÓN
➢ Habrá tres versiones de dinamismo:
➢Versión 1: un nodo crítico, que forma parte de la mejor solución, es
eliminado.
➢Versión 2: Se eliminan dos nodos críticos de la mejor solución hasta el
momento.
➢Versión 3: Se elimina un nodo crítico de la mejor solución hasta el
momento y luego se reactiva.
Experimentos
J
I
T
E
L
2
0
2
1
13. 13
INSTANCIA 1 – 6 NODOS
Requisitos de Conexiones:
Conexión 1: (A, F, 2, [3,5,6])
Conexión 2: (A, E, 8, [1,2,4])
Conexión 3: (A, D, 5, [2,4,5])
Experimentos
J
I
T
E
L
2
0
2
1
14. 14
INSTANCIA 1 – 6 NODOS
Versión 3: Un nodo eliminario (C) en la iteración 2
después se reactiva (C) en la iteración 6
Versión 1: Un nodo eliminado (C) en la iteración 2
* Versión 2 no ha sido simulada, porque al eliminar dos nodos en esta instancia se haría imposible que funcionase.
Tiempo medio de
ejecución:
71,5ms
Experimentos
J
I
T
E
L
2
0
2
1
15. 15
INSTANCIA 2 – 19 NODOS
Connection 1: (A, F, 2, [3,5,6])
Connection 2: (A, E, 8, [1,2,4])
Connection 3: (A, D, 5, [2,4,5])
Experimentos
J
I
T
E
L
2
0
2
1
16. 16
INSTANCIA 2 – 19 NODOS
Requisitos de conexiones:
Conexión 1: (H, J, 8, [5,1,2]) Conexión 3: (Q, B, 1, [2,3,1])
Conexión 2: (B, D, 8, [4,3,1]) Conexión 4: (S, K, 3, [5,2,3])
Conexión 5: (J, S, 8, [4,1,3])
Tiempo medio de ejecución: 281 ms
Experimentos
J
I
T
E
L
2
0
2
1
17. 17
INSTANCIA 2 – 19 NODOS
Versión 1: un nodo eliminado (N) en la iteración 4
Experimentos
J
I
T
E
L
2
0
2
1
18. 18
INSTANCIA 2 – 19 NODOS
Versión 3: dos nodos eliminados (M y N) en las iteraciones
4 y 10, y después uno de ellos es reactivado (M) en la
iteración 16.
Versión 2: dos nodos eliminados (M y N) en las
iteraciones 4 y 10 respectivamente
Experimentos
J
I
T
E
L
2
0
2
1
19. 19
INSTANCIA 3 – 52 NODOS
La descripción de la instancia se puede consultar
en:
- Enlaces:
https://doi.org/10.6084/m9.figshare.14483592.v2
- Nodos:
https://doi.org/10.6084/m9.figshare.14771067.v1
Experimentos
J
I
T
E
L
2
0
2
1
20. 20
INSTANCIA 3 – 52 NODOS
Requisitos de conexiones:
Conexión 1: (AQ, L, 16, [3,1,2]) Conexión 6: (AB, AE, 14, [4,3,1])
Conexión 2: (Q, P, 6, [2,3,1]) Conexión 7: (T, J, 11, [4,2,1])
Conexión 3: (S, AV, 11, [4,1,2]) Conexión 8: (Y, AF, 10, [3,2,1])
Conexión 4: (AU, F, 16, [3,2,1]) Conexión 9: (L, S, 7, [1,3,2])
Conexión 5: (AG, AF, 5, [1,3,2]) Conexión 10: (AH, AY, 18, [3,1,2])
Tiempo medio de ejecución: 4,885 s
Experimentos
J
I
T
E
L
2
0
2
1
21. 21
INSTANCIA 3 – 52 NODOS
Versión 1 y Versión 2: Resultados para la instancia de 52 nodos con 10
conexiones. Coste en número de saltos indicado junto a cada solución.
Experimentos
J
I
T
E
L
2
0
2
1
22. 22
INSTANCIA 3 – 52 NODOS
Versión 3: Dos nodos se eliminan (V y
X) en las iteraciones 4 y 8, después
uno de ellos (V) es reactivado en la
iteración 13.
Mejor solución encontrada:
Experimentos
J
I
T
E
L
2
0
2
1
23. 23
➢Se ha implementado un Algoritmo OCH para la resolución del problema
de Optimización de Routing para SFC (Service Function Chaining).
➢Los resultados de las pruebas son muy satisfactorios, considerando tres
instancias (modelos de despliegues) de diferente complejidad, así como
tres versiones distintas de dinamismo en cada una de ellas..
➢Tiempo de ejecución cercano al tiempo real (OCH obtiene soluciones
válidas desde la primera iteración).
TRABAJO FUTURO
➢Se adaptará el algoritmo a restricciones de tiempo más estrictas.
➢ Se aplicará una heurística major para guiar la construcción de soluciones (dirigiéndola
a nodos que sirvan la siguiente función en cada caso, por ejemplo).
➢Se implementarán modelos de OCH más sofisticados.
➢Se optimizarán otros objetivos, como el coste energético.
Conclusiones y Trabajo futuro
J
I
T
E
L
2
0
2
1