所述协议的目标是通过基于VPN的覆盖网络架构,支持将5G实验基础设施灵活地整合到多站点NFV生态系统中。此外,该协议还定义了如何验证集成的有效性,包括使用具有NFV功能的小型飞行器进行多站点垂直服务部署。
网络功能虚拟化(NFV)被认为是第 五代移动网络(5G)的关键推动因素之一。这种模式可以减少对专用硬件的依赖,以部署电信和垂直服务。为此,它依靠虚拟化技术来软化网络功能,简化其开发并减少部署时间和成本。在此背景下,马德里卡洛斯三世大学,西班牙电信和IMDEA网络研究所在5TONIC内部开发了一个NFV生态系统,这是一个专注于5G技术的开放式网络创新中心,能够在一组分布式NFV基础设施中创建复杂,接近现实的实验场景,这些场景可以由不同地理位置的利益相关者提供。本文介绍了为将新的远程 NFV 站点合并到基于 5TONIC 的多站点 NFV 生态系统中而定义的协议,描述了现有和新合并的基础结构的要求、它们通过覆盖网络体系结构的连接性以及包含新站点所需的步骤。该协议通过向5TONIC NFV生态系统中合并外部站点来举例说明。之后,协议详细说明了验证成功站点集成所需的验证步骤。其中包括使用远程NFV基础设施和小型无人机(SUAV)部署多站点垂直服务。这有助于展示该协议在实现分布式试验方案方面的潜力。
自本世纪初以来,第五代移动网络(5G)的引入意味着电信行业的革命性变化,要求电信运营商解决在5G保护伞下开发的新网络服务和应用的更苛刻的规范1,2.这些新规范包括但不限于数据速率提高、无线传输延迟改进和运营成本降低。在构成新一代改进基础的技术中,网络功能虚拟化3(NFV)已成为其主要推动因素之一。NFV 提供了软加密网络功能的能力,传统上通过使用通用物理设备(如数据中心中的服务器计算机)在专用硬件上进行中继。通过这种新模式,电信运营商和垂直行业可以将网络功能和服务部署为一组软件组件,节省业务部署和维护成本,并促进更高的网络基础设施弹性。这种方法减轻或消除了对大多数网络和垂直特定功能使用专用(通常更复杂且可重用性较低)设备的必要性,并支持更高和更密集的操作自动化程度,从而降低部署和维护成本。
考虑到NFV环境能够提供的所有优势,来自电信行业的大量相关利益相关者自然越来越多地参与在NFV环境中测试新的服务理念。在此背景下,Telefónica和IMDEA网络研究所创建了5TONIC4,这是一个专注于5G技术的开放式研究和创新实验室。该实验室位于马德里(西班牙),拥有广泛的技术可供研究和合作伙伴使用,以促进5G服务的开发和验证。特别是,该实验室有一个实验性的NFV平台,开发人员可以在符合ETSI标准的NFV生态系统5上部署和测试他们新的基于NFV的应用程序和服务。因此,关于设计选择和技术建议的实验结论可以在比生产网络更灵活的现实环境中得出。该平台旨在支持跨多个外部站点的实验活动,这些站点可以使用明确定义的协议灵活地互连到5TONIC。
为5TONIC NFV生态系统采用的技术解决方案考虑了单个NFV编排器的利用率,该编排器使用ETSI托管的开源MANO(OSM)软件6实现。这是负责管理和协调网络服务 (NS) 生命周期的元素。这些服务可以构建为虚拟化网络/垂直功能(VNF)的组合,可以部署在NFV平台上集成的任何站点上。5TONIC NFV生态系统的设计是在H2020 5GINFIRE项目7,8的背景下完成的,其中该平台用于支持超过25个实验的执行,这些实验是通过竞争性的公开呼叫过程选择的,跨越位于欧洲的八个垂直特定实验基础设施和一个位于巴西的实验基础设施,后者通过跨洋链路连接。此外,该平台还用于在西班牙建立国家规模的分布式NFV测试平台,支持西班牙5GCity项目9,10中的实验活动。最近,另一个巴西站点已被整合到该平台中,以支持巴西和欧洲之间建立的研究和创新合作背景下的联合示范活动(即5GRANGE项目11,12)。最后但并非最不重要的一点是,该基础设施已用于支持5G-VINNI项目13,14范围内的第三方实验。NFV平台的地理分布如图1所示。
托管自己的 NFV 基础设施的相关组织可以灵活地连接到 5TONIC NFV 生态系统,但须经 5TONIC 指导委员会批准,成为分布式生态系统内的测试平台提供商,并参与联合实验和演示活动。为此,它们必须具有符合 OSM 软件堆栈的 VIM(虚拟基础架构管理器)。5TONIC NFV 编排器能够与给定服务部署中涉及的站点上的 VIM 进行交互,协调构成网络服务的 VNF 实例化和互连所需的计算、存储和网络资源的分配和设置,并控制其生命周期(从载入到最终退役)。
为了管理所有互连站点内的控制和数据流量交换,5TONIC NFV生态系统利用基于虚拟专用网络(VPN)的覆盖网络架构。这种方法提供了对集成到5TONIC生态系统中的外部站点的安全基于PKI的访问,允许在OSM软件堆栈和分布在测试台上的不同VIM之间交换NFV控制信息,以及交换管理和配置所有VNF所需的信息。此外,该覆盖网络支持在部署在不同站点的VNF之间传播数据流量。
在此上下文中,本文详细介绍了旨在将外部站点合并到NFV生态系统的协议。该协议假定生态系统由安装在中央站点的单个 NFV 编排器控制,并且外部站点具有符合编排器软件堆栈的 VIM 解决方案。拟议的协议允许通过灵活地整合NFV站点和垂直特定基础设施来增加实验生态系统的资源组合。这使得能够创建一个分布式MANO平台,该平台能够在单个NFV编排器的控制下跨多个站点测试和验证新的网络和垂直服务。为了说明协议的内部操作,该过程将通过向当前的5TONIC NFV生态系统添加外部NFV站点来举例说明,描述外部站点和5TONIC上所需的组件,以及在集成过程中要采取的所有步骤。 图 2 概述了集成的目标,通过中央站点与其他外部基础架构之间的 VPN 连接,将新的基于 NFV 的测试平台连接到 5TONIC 平台,从该平台可以部署网络服务。
此外,为了展示该协议的有效性,将展示使用5TONIC生态系统和具有NFV功能的小型无人机(SUAV)的外部站点部署简单的垂直服务。垂直服务的设计受到Vidal等人9中提出的实验的启发,该实验已为本文的插图目的进行了简化。 图3 概述了该服务,旨在帮助偏远地区的智能农业活动。该服务考虑了一个智能农业服务提供商,该服务提供商使用SUAV收集和传播散布在农田上的气象传感器产生的数据。为简单起见,本文中提出的实验考虑了单个SUAV和传感器,能够提供温度,湿度和压力测量。在实验中,外部 NFV 站点托管一个 Wi-Fi 接入点,该接入点通过 SUAV 部署为 VNF。此 VNF 提供与传感器的网络访问连接,将检测到的数据转发到网关功能。后者作为VNF部署在地面设备(迷你ITX计算机)上。将数据从传感器传播到网关功能遵循基于消息队列遥测传输 (MQTT) 协议15的发布/订阅方法。网关功能处理数据,然后将其传播到物联网(IoT)服务器,该服务器基于Mainflux16 开源平台,在NFV生态系统的中心站点上作为VNF提供。最后,该方案假设一个远程区域,其中 Internet 连接由蜂窝非 3GPP 接入网络提供。因此,该服务包括两个附加的VNF:1)接入路由器VNF,其实现连接到非3GPP接入网络17的3GPP用户设备的用户面协议栈;2)5G核心网的基线实现,支持接入路由器和物联网服务器VNF之间的信息转发。为此,5G核心VNF提供了非3GPP互通功能和用户面功能的用户面的简化实现,如3GPP17所定义。
最后, 图 4 表示协议开发过程中涉及的最相关的流程,突出显示了它们的逻辑互连以及负责其执行的实体。
前面描述的协议最重要的方面之一是它具有出色的灵活性,可以将新的计算基础设施整合到NFV生态系统中,而不管它们在地理位置方面的分布如何(只要与远程站点的网络通信的带宽和延迟支持它)。这可以通过基于VPN的覆盖网络架构来实现,该架构允许建立虚拟链路以将远程站点连接到NFV生态系统的中心场所。这种方法能够提供有效和安全的通道,以支持 NFV 生态系统站点之间的 NFV 和数据通信,从而降低外部各方访问和/或修改有关 NFV 编排流程和已部署服务数据的敏感信息的可能性。在这种情况下,该协议还描述了一种与外部站点安全地共享 VPN 凭据的特定方法,这些站点将启用新基础结构的集成。该协议已经使用马德里卡洛斯三世大学,西班牙电信和IMDEA网络研究所在5TONIC提供的NFV生态系统进行了例证,尽管它是通用的,用于其他NFV环境,满足该协议步骤1中提到的先决条件。
此外,值得强调的是,开源工具和软件在协议实现中的独占使用。尽管不同的专有解决方案(例如 Fortinet35)可以提供潜在的有益功能,但开源开发的使用由于其固有的特性(例如成本效益,开源社区提供的广泛软件支持以及高水平的可靠性)促进了协议所包含的所有元素的集成, 仅举几例。此外,利用开放源码技术还可以促进类似性质的组成部分之间的协同作用。例如,为了监视使用该平台的客户端的VPN连接状态,在整个协议中实现的VPN服务可以依赖于open-vpn监视工具36( 一种能够与OpenVPN服务器互操作的基于python的监视工具)。
另一方面,协议规范考虑跨不同站点的网络服务的实例化以进行验证。在这方面,重要的是要强调,在给定站点上部署服务取决于站点上的计算,存储和网络资源的可用性,以及执行部署可能需要的专用设备(例如,启用NFV的SUV)。这不是协议的限制,有兴趣重现本文中描述的实验的利益相关者应考虑到这一点。
此外,应该注意的是,执行网络服务部署所需的时间在很大程度上取决于几个因素,例如编排器和不同VIM之间的网络路径,VIM与其托管计算节点之间的数据通信性能,以及这些计算节点的固有性质(不仅因为它们的可用计算资源, 以及用于执行网络功能虚拟化的技术)。
最后,鉴于该平台及其VPN服务在欧洲项目和迄今为止使用的协作作品(例如,本文档介绍中提到的5GINFIRE,5GRANGE或5GCity)上的出色表现,它将被视为马德里卡洛斯三世大学新兴欧洲项目中的重要元素, Telefónica和IMDEA Networks Institute参与其中,例如Horizon 2020 LABYRINTH,或TRUE-5G等国家项目。
The authors have nothing to disclose.
这项工作得到了欧洲H2020迷宫项目(资助协议H2020-MG-2019-TwoStages-861696)和TRUE5G项目(PID2019-108713RB-C52PID2019-108713RB-C52 / AEI / 10.13039 / 501100011033)的部分支持。此外,Borja Nogales,Ivan Vidal和Diego R. Lopez的工作部分得到了欧洲H2020 5G-VINNI项目(赠款协议编号815279)的支持。最后,作者感谢亚历杭德罗·罗德里格斯·加西亚在实现这项工作期间的支持。
Bebop 2 | Parrot | UAV used in the experiment to transport the RPis and thus, provide mobility to the compute units of external site. | |
BME280 Sensor | Bosch | Sensor capable of providing readings of the environmental conditions regarding temperature, barometric pressure, and humidity. | |
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 extternal aite. In addition, another unit of this equipment (along with the RPis) conforms the computational resources of the NFV insfrastrucure included in that site. | |
Iptables | Netfilter – Open source tool | (Software) An open source command line utility for configuring Linux kernel firewall rulset. Source-code available online: https://www.netfilter.org/projects/iptables/ | |
Lithium Battery Pack Expansion Board. Model KY68C-UK | Kuman | Battery-power supply HAT (Hardware Attached on Top) for the UAV computation units composing the NFV infrastructure of the external site. | |
MacBook Pro | Apple | Commodity laptop utilized during the experiment to obtain and gather the results as described in the manuscript. | |
Mainflux | Mainflux Labs – Open source platform | (Software) Open source Internet of Things (IoT) platform used in the experiment for implementing the virtual network function called as IoT Server VNF. In addition, this platform includes an open-source software based on Grafana which allows the visualization and formatting of the metric data. Source code available online: https://www.mainflux.com/ | |
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/docs/user-guide/ | |
OpenStack – Release Ocata | OpenStack – Open source community | (Software) Open source software used for setting up both the NFV infrastrucure of the central site and the NFV infrastructure of external site within the experiment. Source-code available online: https://docs.openstack.org/ocata/install-guide-ubuntu | |
OpenVPN – Version 2.3.10 | OpenVPN – Open source community | Open source software implementing the VPN service presented in the experiment for the creation of the overlay network that will enable the operations of the NFV ecosystem (providing connectivity among all the sites comprising the ecosystem). Source-code available online: https://openvpn.net/ | |
Openvpn-monitor | Python – Open source software | (Software) Open source program based on Python code that allows the visualization of the state of the VPN service, as well as the representation of the sites that are connected at every instant. For this purpose, the program check priodically the information provided by the VPN server implemented with OpenVPN. Source-code available online: https://github.com/furlongm/openvpn-monitor | |
Paho-mqtt 1.5.0 | Python – Open source library | (Software) Open source library developed in Python code that enables the trasmission of the data read by the sensor through the use of MQTT standard Source-code available online: https://pypi.org/project/paho-mqtt/ | |
Ping | Debian – 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 central site presented in the experiment. | |
Power Edge R430 | Dell | High-profile computer server in charge of hosting the virtual private network (VPN) service. Note that the computing requirements for provisioning this service are high due to the resource consumption of the encryption operations present in the service. | |
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 of the central site 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. | |
Raspberry PI. Model 3b | Raspberry Pi Foundation | Selected model of Single Board Computer (SBC ) used for providing the computational capacity to the experiment's external site. In addition, this SBC model is used during the deployment of the included realistic service for interpreting and sending the data collected by a sensor. | |
RPi.bme280 0.2.3 | Python – Open source library | (Software) Open source library developed in Python code that allows to interface the sensor Bosch BME280, and interpret the readings offered by that sensor. Source-code available online: https://pypi.org/project/RPi.bme280/ |