El objetivo del protocolo descrito es doble: configurar un entorno de virtualización de funciones de red utilizando vehículos aéreos no tripulados como entidades computacionales que proporcionan la estructura subyacente para ejecutar funciones de red virtualizadas y utilizar este entorno para apoyar el despliegue automatizado de un servicio funcional de telefonía de protocolo de Internet a través de los vehículos aéreos.
El paradigma de virtualización de funciones de red (NFV) es una de las tecnologías habilitadoras clave en el desarrollo de la5a generación de redes móviles. Esta tecnología tiene como objetivo disminuir la dependencia del hardware en la provisión de funciones y servicios de red mediante el uso de técnicas de virtualización que permiten la softwarización de esas funcionalidades a través de una capa de abstracción. En este contexto, existe un interés creciente en explorar el potencial de los vehículos aéreos no tripulados (UAV) para ofrecer una plataforma flexible capaz de permitir operaciones de NFV rentables en áreas geográficas delimitadas.
Para demostrar la viabilidad práctica de utilizar tecnologías NFV en plataformas UAV, se presenta un protocolo para establecer un entorno NFV funcional basado en tecnologías de código abierto, en el que un conjunto de pequeños UAV suministran los recursos computacionales que soportan la implementación de servicios de red moderadamente complejos. A continuación, el protocolo detalla los diferentes pasos necesarios para admitir la implementación automatizada de un servicio de telefonía de protocolo de Internet (IP) a través de una red de UAVs interconectados, aprovechando las capacidades del entorno NFV configurado. Los resultados de la experimentación demuestran el funcionamiento correcto del servicio después de su implementación. Aunque el protocolo se centra en un tipo específico de servicio de red (es decir, telefonía IP), los pasos descritos pueden servir como una guía general para implementar otro tipo de servicios de red. Por otro lado, la descripción del protocolo considera equipos y software concretos para configurar el entorno NFV (por ejemplo, ordenadores específicos de placa única y software de código abierto). La utilización de otras plataformas de hardware y software puede ser factible, aunque el aspecto de configuración específico del entorno NFV y la implementación del servicio puede presentar variaciones con respecto a las descritas en el protocolo.
Uno de los objetivos más codiciados dentro de la nueva era de las comunicaciones móviles (más comúnmente conocida como lageneración móvil 5 o 5G) es poder proporcionar servicios de tecnología de la información robustos en situaciones en las que la infraestructura de telecomunicaciones primaria puede no estar disponible (por ejemplo, debido a una emergencia). En este contexto, los UAV están recibiendo una atención cada vez mayor de la comunidad investigadora debido a su versatilidad inherente. Hay numerosas obras que utilizan estos dispositivos como piedra angular para la prestación de una gran variedad de servicios. Por ejemplo, la literatura ha analizado la capacidad de estos dispositivos para construir una infraestructura de comunicación aérea para dar cabida a los servicios multimedia1,2,3. Además, investigaciones previas han demostrado cómo la cooperación entre varios UAV puede ampliar la funcionalidad de diferentes servicios de comunicación como vigilancia4,búsqueda colaborativa y rescate5,6,7,8,o agronegocio9.
Por otro lado, la tecnología NFV ha adquirido gran importancia dentro de los operadores de telecomunicaciones como uno de los habilitadores clave 5G. NFV representa un cambio paradigmático con respecto a la infraestructura de telecomunicaciones al aliviar la dependencia actual de los dispositivos de red en hardware especializado a través de la softwarization de las funcionalidades de la red. Esto permite una implementación flexible y ágil de nuevos tipos de servicios de comunicación. Para ello, el Instituto Europeo de Normas de Telecomunicaciones (ETSI) formó un grupo de especificaciones para definir el marco arquitectónico NFV10. Además, el ETSI actualmente aloja el grupo11de Mano de código abierto (OSM), que se encarga de desarrollar una pila de software NFV Management and Orchestration (MANO) alineada con la definición del marco arquitectónico ETSI NFV.
Teniendo en cuenta todas las consideraciones antes mencionadas, la convergencia sinérgica entre los UAV y las tecnologías NFV se está estudiando actualmente en el desarrollo de nuevas aplicaciones y servicios de red. Así lo ilustran varios trabajos de investigación en la literatura que señalan las ventajas de este tipo de sistemas14,15,16,identifican los retos de esta convergencia y sus aspectos faltantes, destacan futuras líneas de investigación sobre este tema17,y presentan soluciones pioneras basadas en tecnologías de código abierto.
En particular, la integración de las tecnologías NFV en el ámbito UAV permite el despliegue rápido y flexible de servicios de red y aplicaciones sobre áreas geográficas delimitadas (por ejemplo, un servicio de telefonía IP). Siguiendo este enfoque, se pueden implementar varios UAV en una ubicación específica, transportando plataformas informáticas como carga útil (por ejemplo, computadoras de placa única de tamaño pequeño). Estas plataformas informáticas proporcionarían una infraestructura de red programable (es decir, una infraestructura NFV) sobre el área de implementación, soportando la creación de instancias de servicios de red y aplicaciones bajo el control de una plataforma MANO.
A pesar de las ventajas, la realización de esta vista presenta un conjunto de desafíos fundamentales que deben abordarse cuidadosamente, como la integración adecuada de estas plataformas de proceso como una infraestructura NFV, utilizando una pila de software NFV existente, para que un servicio de orquestación NFV pueda implementar funciones virtuales en los UAV; las limitaciones en términos de los recursos computacionales proporcionados por las plataformas de computación, ya que los UAV que los transportan pueden normalmente presentar limitaciones en términos de tamaño, peso y capacidad informática de los equipos de carga útil; la colocación adecuada de las funciones virtuales en los UAV (es decir, seleccionar al mejor candidato UAV para desplegar una función virtual en particular); el mantenimiento de las comunicaciones de control con los UAV con el fin de gestionar el ciclo de vida de los VMF a pesar de la disponibilidad potencialmente intermitente de las comunicaciones de red con ellos (por ejemplo, causada por la movilidad y las restricciones de la batería); el tiempo de funcionamiento limitado de los UAVs debido a su consumo de batería; y la migración de las funciones virtuales cuando un UAV necesita ser reemplazado debido a su agotamiento de la batería. Estos beneficios y desafíos se detallan en trabajos anteriores18,19 que incluye el diseño de un sistema NFV capaz de soportar el despliegue automatizado de funciones y servicios de red en plataformas UAV, así como la validación de la viabilidad práctica de este diseño.
En este contexto, este documento se centra en describir un protocolo para permitir la implementación automatizada de servicios de red moderadamente complejos a través de una red de UAVs utilizando los estándares NFV y tecnologías de código abierto. Para ilustrar los diferentes pasos del protocolo, se presenta una reelaboración de un experimento presentado en Nogales et al.19, que consiste en el despliegue de un servicio de telefonía IP. Para ayudar a la reproducibilidad de este trabajo, el vuelo real se considera opcional en el procedimiento presentado, y los resultados de rendimiento se obtienen con los dispositivos UAV en el suelo. Los lectores interesados deben ser capaces de replicar y validar la ejecución del protocolo, incluso en un entorno de laboratorio controlado.
El cuadro 1 ilustra el servicio de red diseñado para este procedimiento. Este servicio de red se construye como una composición de unidades de softwarization específicas (categorizadas dentro del paradigma NFV como Virtual Network Functions, o VNFs) y proporciona la funcionalidad de un servicio de telefonía IP a los usuarios cercanos a los UAV. El VNF que compone el servicio se define de la siguiente manera:
Además, la Figura 1 presenta los dispositivos físicos utilizados para el experimento, cómo están interconectados y la asignación específica de VNF a los dispositivos.
Uno de los aspectos más importantes de este experimento es el uso de tecnologías de virtualización y estándares NFV con plataformas UAV. NFV presenta un nuevo paradigma con el objetivo de desacoplar la dependencia de hardware de las funcionalidades de red, permitiendo así el suministro de estas funcionalidades a través de la softwarización. En consecuencia, el experimento no depende del uso del equipo de hardware especificado en el protocolo. Alternativamente, se pueden seleccionar diferentes modelos de computadoras de placa única, siempre y cuando estén en línea con las dimensiones y la capacidad de transporte de los UAVs y admitan contenedores Linux.
A pesar de esta flexibilidad en términos de selección de hardware, todo el contenido proporcionado para la reproducibilidad del experimento está orientado hacia el uso de tecnologías de código abierto. En este contexto, los aspectos de configuración y las herramientas de software están condicionados al uso de Linux como sistema operativo.
Por otro lado, el experimento considera la interoperación de dos plataformas computacionales diferentes (es decir, la plataforma en la nube UAV y la plataforma de nube principal) para proporcionar un servicio de red moderadamente complejo. Sin embargo, esto no es estrictamente necesario, y el protocolo podría seguirse para admitir escenarios en los que solo está implicada la plataforma en la nube UAV.
Además, la solución presentada podría utilizarse potencialmente en otros entornos, donde las plataformas de hardware con recursos limitados podrían estar disponibles con la capacidad necesaria para ejecutar contenedores de virtualización (por ejemplo, el Internet de las cosas o IoT, entornos). En cualquier caso, la aplicabilidad de esta solución a diferentes entornos y sus posibles adaptaciones requerirá un estudio cuidadoso caso por caso.
Por último, cabe señalar que los resultados presentados se han obtenido en un entorno de laboratorio y con los dispositivos UAV conectados a tierra o siguiendo un plan de vuelo limitado y bien definido. Otros escenarios que implican despliegues al aire libre pueden introducir condiciones que afectan a la estabilidad del vuelo de los UAV y, por lo tanto, al rendimiento del servicio de telefonía IP.
The authors have nothing to disclose.
Este trabajo fue apoyado parcialmente por el proyecto europeo H2020 5GRANGE (acuerdo de subvención 777137), y por el proyecto 5GCIty (TEC2016-76795-C6-3-R) financiado por el Ministerio de Economía y Competitividad de España. La obra de Luis F. González fue apoyada parcialmente por el proyecto europeo H2020 5GinFIRE (acuerdo de subvención 732497).
AR. Drone 2.0 – Elite edition | Parrot | UAV used in the experiment to transport the RPis and thus, provide mobility to the compute units of the UAV cloud platform. | |
Bebop 2 | Parrot | UAV used in the experiment to transport the RPis and thus, provide mobility to the compute units of the UAV cloud platform. | |
Commercial Intel Core Mini-ITX Computer | Logic Suppy | Computer server which hosts the OpenStack controller node (being executed as a VM) of the experiment's UAV cloud platform. In addition, another unit of this equipment (along with the RPis) conforms the computational resources of the UAV cloud platform. | |
Linux Containers (LXC) | Canonical Ltd. | (Software) Virtualization technology that enables the supply of the Virtual Network Functions detailed in the experiment. Source-code available online: https://linuxcontainers.org | |
Lithium Battery Pack Expansion Board. Model KY68C-UK | Kuman | Battery-power supply HAT (Hardware Attached on Top) for the computation units of the UAV cloud platform (i.e., the Raspberry Pis). In addition, this equipment encompasses the case used to attach the compute units (i.e., the Raspberry PIs or RPis) to the UAVs. | |
MacBook Pro | Apple | Commodity laptop utilized during the experiment to obtain and gather the results as described in the manuscript. | |
ns-3 Network Simulator | nsnam | (Software) A discrete-event simulator network simulator which provides the underlying communication substrate to the emulation station explained in the "Protocol" section (more specifically in the step "2. Validate the functionality of the softwarization units via Emulation"). Source-code available online: https://www.nsnam.org | |
Open Source MANO (OSM) – Release FOUR | ETSI OSM – Open source community | (Software) Management and Orchestration (MANO) software stack of the NFV system configured in the experiment. Source-code available online: https://osm.etsi.org/wikipub/index.php/OSM_Release_FOUR | |
OpenStack – Release Ocata | OpenStack – Open source community | (Software) Open source software used for setting up both the UAV cloud platform and the core cloud within the experiment. Source-code available online: https://docs.openstack.org/ocata/install-guide-ubuntu | |
Ping | Open source tool | (Software) An open source test tool, which verifies the connectivity between two devices connected through a communications network. In addition, this tool allows to assess the network performance since it calculates the Round Trip Time (i.e., the time taken to send and received a data packet from the network). Source-code available online: https://packages.debian.org/es/sid/iputils-ping | |
Power Edge R430 | Dell | High-profile computer server which provides the computational capacity within the core cloud platform presented in the experiment. | |
Power Edge R630 | Dell | Equipment used for hosting the virtual machine (VM) on charge of executing the MANO stack. In addition, the OpenStack controller node is also executed as a VM in this device. Note that the use of this device is not strictly needed. The operations carried out by this device could be done by a lower performance equipment due to the non-high resource specifications of the before mentioned VMs. | |
Prestige 2000W | ZyXEL | Voice over IP Wi-FI phone, compatible with the IEEE 802.11b wireless communications standard. This device is utilized to carry out the VoIP call through the network service hosted by platform described for the execution of the experiment. | |
Raspberry PI. Model 3b | Raspberry Pi Foundation | Selected model of Single Board Computer (SBC) used for providing the computational capacity to the experiment's UAV cloud platform. | |
SIPp | Open source tool | (Software) An open source test tool, which generates SIP protocol traffic. This tool allows to verify the proper support of the signalling traffic required in an IP telephony service such as the one deployed in the experiment. Source-code available online: http://sipp.sourceforge.net | |
Tcpdump | Open source tool | (Software) An open source tool that enables the capture and analysis of the network traffic. Source-code available online: https://www.tcpdump.org | |
Trafic | Open source tool | (Software) An open souce flow scheduler that is used for validating the capacity of the network service deployed to process data traffic generated during an IP telephony call. Source-code available online at: https://github.com/5GinFIRE/trafic |