The fifth generation of mobile networks (5G) is expected to provide diverse and stringent improvements such as greater connectivity, bandwidth, throughput, availability, improved coverage, and lower latency. Considering this, drones or Unmanned Aerial Vehicles (UAVs) and Internet of Things (IoT) devices are perfect examples of existing technology that can take advantage of the capabilities provided by 5G technology. In particular, UAVs are expected to be an important component of 5G networks implementations and support different communication requirements and applications. UAVs working together with 5G can potentially facilitate the deployment of standalone or complementary communications infrastructures, and, due to its rapid deployment, these solutions are suitable candidates to provide network services in emergency scenarios, natural disasters, and search and rescue missions. An important consideration in the deployment of a programmable drone fleet is to guarantee the reliability and performance of the services through consistent monitoring, control, and management scheme. In this regard, the Network Functions Virtualization (NFV) paradigm, a key technology within the 5G ecosystem, can be used to perform automation, management, and orchestration tasks. In addition, to ensure the coordination and reliability in the communications systems, considering that the UAVs have a finite lifetime and that eventually they must be replaced, a scheduling scheme is needed to guarantee the availability of services and efficient resource utilization. To this end, in this paper is presented an UAV scheduling scheme which leverages the potential offered by NFV. The proposed strategy, based on a brute-force search combinatorial algorithm, allows obtaining the optimal scheduling of UAVs in time, in order to efficiently deploy network services. Simulation results validate the performance of the proposed strategy, by providing the number of drones needed to meet certain levels of service availability. Furthermore, the strategy allows knowing the sequence of replacement of UAVs to ensure the optimal resource utilization.
Recent evolution in Unmanned Aerial Vehicles (UAV) boosted by the miniaturization of electronic and sensors have allowed the use of UAVs in different civilian applications. Their shrinking size in combination with price reductions has increased the popularity of these devices both in the amateur community as well as in professional applications. Accordingly, we are now witnessing the fast deployment of a new categorization in the UAV area: Small Unmanned Aerial Vehicles (SUAV), commonly known as drones (that will be the preferred name in this article), which are low-cost devices with reduced payload capacities, restricted communication range, and limited battery time, but still powerful enough so as to carry small computers on board.
Drone applications are spreading throughout a plethora of different fields covering from smart agriculture scenarios to road traffic monitoring, public safety, sensor information retrieving, or even unmanned cargo. In general, these use cases are normally scheduled as relatively fixed missions of standalone drones [
This research work has been done within the framework of the Spanish research project 5G-City (5GCity is a coordinated national project (2017-2019), funded by the Spanish Ministry of Economy and Competitiveness with the following partners: Universidad Carlos III de Madrid, Universidad de Granada, Fundacio i2Cat, Universitat Politecnica de Catalunya, Universidad de Vigo, and Universidad del Pais Vasco) that focuses on the provisioning of solutions for unpredictable critical events such as natural disasters or crowded events that produce damage and faults in the conventional network infrastructure (i.e.
For this reason, this article presents a strategy for the efficient management of resources in a communications system that provides services or network functions through the deployment of drones. The proposed solution leverages the potential offered by NFV and the 5G capabilities. In the context of the proposal, 5G technology is used to meet connectivity requirements, such as very low latency and high bandwidth in order to guarantee a correct migration procedure and also to provide communication between the different components in the system. Instead, NFV is in charge of the management tasks in the system. Specifically, in order to carry out the management tasks related to the replacement of drones and allocation of drones to services, an energy-aware scheduling algorithm has been developed, which is the main contribution of this paper.
The proposed algorithm, based on a brute-force search combinatorial method, explores all possible combinations of drones and service with the aim of providing the exact or optimal scheduling of drones to execute services. This exact allocation of drones over time ensures the continuity of services during a finite time interval, while leading to the optimal resource utilization. Apart from the replacement sequence, the algorithm can inform the total number of drones (or batteries) to use to reach a certain level of availability. In addition, within an NFV scope, the drone scheduling strategy can be considered as a network service.
To validate the performance of our solution, two small-scale scenarios have been analyzed, one Generic and one Realistic, whose results can be applied in the planning of design stages in a variety of real use cases, such as services in emergency or natural disasters and relief services in search and rescue missions. In addition, the information obtained with our implementation is also useful as a baseline to develop mathematical models and faster suboptimal or heuristics methods for real-time practical implementations.
The rest of the article is organized as follows: Section
In the last years, drone uses have evolved from the basic on-board video camera applications to a wide range of novelty functions such as drones acting as first responders in an accident or drone swarming intelligence to provide network services. To conduct these assignments efficiently, on account of drones’ limitations, the use of 5G technologies such as NFV or SDN seems essential as they will enable an accurate operation. In particular, in this article, NFV is used to exemplify the execution of the proposed algorithm. There are several examples of the use of NFV in the UAV domain in the literature. In [
Different alternatives for drone communication have been proposed in [
The main focus of this paper is set on the battery power consumption. All the drones are normally equipped with a Single Board Computer as payload (Raspberry Pi 3B (
Regarding power consumption in mobile and portable devices, there are different examples studying the impact of hardware components on the energy consumption [
In addition, in order to efficiently manage the available resources (e.g., energy), various techniques, mechanisms, and procedures have been developed. One of the most widely used is the combinatorial analysis, in which all possible combinations of resources to be used are analyzed. In this proposal, this mechanism is used to analyze all possible combinations of drones to run services. Considering a procedure similar to that described in [
In this section, first the statement of the problem is formally presented in Section
Maintaining a certain degree or level of availability can become an important and even critical consideration in the deployment of network services. Especially in communication systems provided by drones, whose capacities in terms of processing and energy may have limitations, the efficient use and management of resources must be guaranteed in order to provide or maintain a desired level of availability. Therefore, this metric is an important factor in the design, planning, and deployment phases, considering that some applications may demand specific values for their operation.
In order to provide network services, by leveraging the connectivity capabilities offered by 5G networks and within an NFV context, a set of programmable drones can run VNFs, and, thus, provide the required services. In this sense, a fleet of programmable drones can offer different network services simultaneously, such as routing tasks, Internet connectivity, video surveillance services, telemetry, and multimedia services. To ensure proper coordination and management of the devices that implement the VNFs or services, it is necessary for an entity or component to perform the corresponding management tasks. In this way, and in an NFV environment, the core management entity, i.e.
Besides, because the provision of services provided by drones is constrained to their autonomy or battery duration, an efficient energy management scheme is of paramount importance in both short- and long-term applications. In this regard, a policy or scheme that allows the coordination and replacement of drones, to keep the service in an active state while ensuring a certain level of availability, is essential. As a result of all aforementioned, this work presents a scheme or management system for the deployment and replacement of drones, in which an optimal scheduling algorithm is implemented in order to guarantee the continuity of services, i.e., a level of availability, during a finite time interval.
The proposed scheme is shown in Figure
Overview of the proposed approach.
The goal of the proposed algorithm is to carry out an optimal drone scheduling over time, in order to maximize the use of available resources, drones, while providing a reliable communications system guaranteeing continuity in the execution of services. In addition, the information provided by the algorithm can be used as a toolkit in mission planning. Apart from the replacement sequence, the algorithm can inform the services availability level obtained with the deployment of a given number of drones, or in turn the results can be used to know the number of drones that must be deployed to obtain a given service level.
The proposed scheme is characterized based on two different states, which are described as follows.
In the proposed approach, the drones can execute the VNFs or services while they are in flight, as shown in the example of Figure
In the proposal, the management system located at GCS has all information about available resources (drones and batteries) and service requirements (power demanded by each service and the total required availability time) because all is provided by the users of the system. Through the execution of a scheduling algorithm, the system is able to provide the optimal allocation of drones to cover the demanded services. The scheduling algorithm is executed in the NFV domain, specifically in the NFV orchestrator as depicted in Figure
For the computation of the optimal allocation of drones, the algorithm considers both the consumption related to the service (
In order to guarantee the continuity of the services in the proposed system, the service migration process starts when the drone that is going to be replaced is active; i.e., when it is running the service, specifically, the migration process begins at the end of the
According to the aforementioned, in the system, the replacement time is sufficient to guarantee the transition of the services as well as the launching and landing of the drones. In addition, regarding the migration process, among the important aspects to consider are the service hand-off processes, from one drone to another, and the exchange of information associated with this procedure. Regarding the latter, in the proposal the exchange of information is accomplished thanks to features such as high connectivity and low latency time provided by 5G technology. Instead, the procedure related to the service transition is a process linked to the type and features of each service; therefore, although this is an interesting topic, it is not addressed in the article since it is out of scope of the proposal. However, it is worth mentioning that Section
At all times, the management system coordinates the resources that must be allocated (drones to be launched from the ground), because based on the initial information of services and drones, as well as the computations performed by the algorithm, the system is able to estimate the number of available drones, the status of the services, the sequence of replacement to be performed, and the availability level reached. Hence, the characterization of the system through the
For a better description and understanding of the different states of the proposed energy management scheme, an example is presented below. In Figure
During all the time of operation of the service, all the actions both on land and in the air are coordinated by the management and orchestration systems. In summary, the replacement state includes the launching of the new drone (with high battery level) from the ground station, the return of the old drone (with low battery level) to the ground station, and the service migration process (VNF migration).
In addition, from the example described above, it can be observed that to guarantee a continuous execution of the service and a total availability level (100%), the number of available drones must be at least one unit greater than the number of services. In the example it is verified that, to guarantee the continuous operation of VNF1 and VNF2, it is necessary to use 3 drones, drone 1 (VNF1), drone 2 (VNF2), and drone 3 (VNF2).
Also, as aforementioned, the replacement state may include the battery replacement or recharge of it. In the first case, the battery replacement is a process that can generally take less time; for example, in a search or rescue mission, it is possible to use a limited number of drones and a large number of batteries. Meanwhile, in the second case, the battery charging commonly is a slower process, but necessary if the drone is tampering resistant, or if the number of available batteries is limited.
In the proposal, regarding the replacement state, for practical reasons, has been considered the battery replacement procedure. Nonetheless, the algorithm developed has the flexibility to consider a battery charging procedure. In fact, within the characterization of the system, the battery charging phase could be considered as an additional state, the
In summary, the proposed strategy bases its operation on a drone scheduling algorithm, which allows knowing how many drones are going to be used, how they should be replaced, and when the replacement should be made.
The drone scheduling algorithm is intended for providing the information of the optimal drone scheduling over time. In the proposal, the time variable has been divided into time slots, as shown in Figure
Time representation.
Time variables of the drone scheduling strategy.
A summary of notations that describe the drone scheduling strategy is shown in Table
System parameters.
Parameter | Description | Comments/Units |
---|---|---|
| Expected availability time | Time units |
| Reached availability time | Time units |
| Service availability | Percentage, |
| Service availability per services | Percentage, |
| Number of services (VNFs) | Integer number |
| Service identifier | |
| Initial time of service | Time units |
| Power demanded by the service | Power units |
| Number of available drones | Integer number |
| Drone identifier | |
| Battery capacity of drone | Power x Time units |
| Battery lifetime of drone | Time units |
| Battery replacement time of drone | Time units |
This time variable represents the time interval linked to the A pictorial representation of the time variables related to the two states that characterize the system is shown in Figure
To assess the performance of the drone scheduling algorithm, two metrics have been defined.
The service availability per services is defined by
The following assumptions are made for the practical implementation of the algorithm: In practical implementations each programmable drone can execute more than one VNF concurrently. However, to simplify the analysis, in the proposed scheduling scheme, each drone Similar to the previous consideration, the strategy considers that a service In the proposed system, any drone has the ability to execute any VNF. Likewise, any battery can power any available drone. In this sense, all available resources, drones and batteries, can be reused when demanded. It is clear that the services execution is limited to the capabilities of drones and the features of services, as previously discussed in Section In the proposal it is considered that all services work simultaneously, i.e., all services are available as long as the system has the resources for their execution. The In the In the proposal it is assumed that communication requirements such as very low latency and high bandwidth capabilities are provided by 5G technology. Moreover, the level of connectivity provided by 5G allows for proper communication and coordination between the different components within the system.
In this section, first the drone scheduling procedure is presented in Section
The drone scheduling strategy consists of systematically computing the optimal set of available of drones to execute the services. To this end, the strategy follows the guidelines described in the
The scheduling process starts with the individual analysis of the execution of each service for each available drone The analysis of the available resources is carried out in the following phase, while the analysis of availability per services is part of this phase and corresponds to the services evaluation, which is a procedure performed in order to reach the highest possible
In an iterative process, the algorithm follows the phases described above and continuously calculates the best scheduling of drones to execute services. This procedure is carried out constantly until any of the two stopping criteria is met. The first criterion is the
The developed algorithm guarantees the best drone scheduling for services execution over time, by analyzing all possible drones-services combinations. However, the problem tends to growth as the
The phases discussed above are implemented in the algorithm through different steps. The drone scheduling algorithm is explained in Figure
Parameters related to the processing of combinations and drones in the scheduling algorithm.
Parameter | Description |
---|---|
| Pair of a drone and a service. A pair is used to describe the individual analysis of the execution of a service |
| Total number of pairs of drones and services |
| Combination of a set of drones to run a set of services. A combination of drones and services, which is commonly referred to as a combination, is composed of different pairs of drones and services |
| Set of all possible combinations of drones and services |
| Total number of all possible combinations. This number is given by ( |
| Set of valid combinations of drones and services. The |
| Total number of valid combinations. This number is given by ( |
| Sorted list of the identifiers of the analyzed combinations. To obtain this list, the combinations are sorted in descending order according to the |
| Set of drones whose battery must be replaced |
| Set of drones that have neither been used nor allocated in the system |
| Set of drones whose battery has been replaced. These drones can be used for a new allocation process |
| Total number of drones that are available in the system. This number is given by ( |
Algorithm for drone scheduling.
Example of the drone scheduling algorithm.
Required network service
Drone scheduling to execute the services
First drone allocation per service,
Second drone allocation per service,
Third drone allocation per service,
Fourth drone allocation per service,
Information of services and drones.
Information of services
| | |
---|---|---|
| | |
| | |
Information of drones
| | |
---|---|---|
| | |
| | |
| | |
| | |
Information of drones, services, and combinations.
Information about battery lifetime of drones for services
| | |
---|---|---|
| | |
| | |
| | |
| | |
Information of pairs of drones and services and drone lifetime per time slot
| | | |
---|---|---|---|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| |||
| |
Combinations among available drones to run the services
| | | |
---|---|---|---|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
In the proposed example, with
The information of each
The
In accordance with the criteria adopted for the drone scheduling strategy, see Section
In the example,
Computation of metrics for
Computation of
| | | |
---|---|---|---|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
Information of pairs of drones and services belonging to the best combination
| | | |
---|---|---|---|
| | | |
| | | |
| |||
| |
where the
Progressive allocation of drones to fulfill the network services.
Initial drone allocation
| |
---|---|
| |
| |
| |
| |
Second drone allocation
| |
---|---|
| |
| |
| |
| |
Third drone allocation
| |
---|---|
| |
| |
| |
| |
Final drone allocation
| |
---|---|
| |
| |
| |
| |
The priority information of the services is used in the computation of the combinations and in the selection of the best combination, from the second allocation. This process is carried out to guarantee an efficient and uniform allocation of the drones; otherwise, a specific service could achieve a
The priority level of services is also useful in the case that
The total number of available drones (
After the second iteration has been completed, the algorithm checks the total number of available drones. At this point, given that
A summary of the complete drone allocation procedure is depicted in Figure
The
The steps 3 and 4 define the growth of the algorithm. This growth rate as a function of
where the second term is the dominant term within the expression. As described in Section
Thus, according the Big-O classification [
To validate the resource planning algorithm proposed in the previous section, it is necessary to define reasonable scenarios that can integrate all the different parameters that should be assessed and provide the complex environment where this type of algorithms is normally applied. The evaluation will then be carried out through extensive simulations using these scenarios. Section
The drone scheduling strategy is evaluated in two different application scenarios: a
Summary of simulation parameters.
Scenario | | | | | | | |
---|---|---|---|---|---|---|---|
Generic | 10 hours | 1-7 | 0-11 | 0, for all j | uniform distributed random value | uniform distributed, random value | 10 [min], for all k |
| |||||||
Realistic | 5, 10, 15 hours | 7 | 0-10 | 0, for all j | 3 [Ah], for all k | S1 Router: 292.02 [mA] | 10 [min], for all k |
S2 Router: 292.35 [mA] | |||||||
S3 AP + Router: 371.82 [mA] | |||||||
S4 AP + Router: 373.62 [mA] | |||||||
S5 Telemetry TX: 288.76 [mA] | |||||||
S6 Telemetry TX: 288.23 [mA] | |||||||
S7 Flying: 9000 [mA] |
The
Meanwhile, the
This scenario corresponds to a very general application environment with the intention of performing an initial validation of the proposed solution. To this end, it is assumed that the different drones can execute the services in the air (with a much higher power consumption), a subset can land on the ground after its launch from the ground control station, or even a hybrid situation can also be possible (different cases are discussed in Section
The scenario is not particularized for specific applications and it is considered that applications can vary from the provision of video surveillance services to the provision of connectivity services, etc. (this is modeled in the scenario by considering the power demanded by the different services
Considering the parameters described above, a
In particular the scenario that will be described in this section (Figure
Drone swarm providing network connectivity in a disaster situation.
In this scenario the energy consumption for a particular drone may depend on many diverse factors. In first place there are two different types of batteries and also drones that are flying and drones that are landed (so depending on the situation the battery that limits the service maybe either one or the other). For the drones that are not flying (the drone battery is not presenting any limitations for them and only the RPi battery is used) the measurements must consider the different WiFi interfaces, the WiFi communications (different traffic including video, telemetry, routing messages, etc.), CPU load, external hardware, etc.
As it can be appreciated it is not easy in this environment to evaluate how the energy consumption curve will perform for the different drones and how many drones are in fact needed in order to guarantee that the service can be maintained over time (considering a certain replacement time), etc. This is considered to be a suitable scenario so as to validate the combinatory algorithm and the rest of the section will provide more details on the scenario itself and about the validation methodology.
A total of seven drones have been considered in this scenario that may represent a natural disaster use case (e.g., earthquake, fire, flood) where drones can enable communications between emergency services islands; as seen in Figure
Drones s1 to s6 are landed and the energy demanded is only related to the network services while drone s7 is flying (Figure
The power consumption will be directly measured using a real RPi and a specific power meter. In order to do so, it is required that the RPi resembles the real conditions as stated in the scenario definition in terms of traffic and CPU load and considers the necessary hardware to enable wireless communication since the consumption depends heavily on these parameters.
To calculate all these values, a simulation using ns-3 (ns-3:
Simulation details.
Parameter | Values |
---|---|
Traffic | CBR |
Telemetry Transmission Rate | 32 Kbps |
Video Transmission Rate | 200 Kbps |
Network Protocol | UDP |
Routing Protocol | OLSR |
Simulation Time | 3600 seconds |
Number of Drones | 7 |
Mobility Model | Static |
After this simulation, it will be possible to calculate the traffic that will be processed by each drone, including all the different components that have been previously mentioned.
To be able to properly analyze the traffic at each drone, the following characterization has been done for the traffic depending on the source and the destination as represented in Figure
Figure
Average throughput for Realistic Scenario.
Power consumption measurements methodology.
In order to perform these measurements, the testbed depicted in Figure
The RPi source generates two flows, one of them consumed by the RPi hosting the VNF and the second one consumed by the RPi destination. The RPi that accommodates the VNF is also generating another flow that is consumed by the RPi destination. In this way, we can emulate the traffic involved with each device on the network, to generate this traffic, the Iperf (Iperf:
The RPi VNF is then powered by the Monsoon (Vout voltage of 4.2 V) main channel and then the average power is derived from instantaneous current (Figure
Average Current for Realistic Scenario.
Performance evaluation of the drone scheduling strategy, Generic Scenario.
Total services availability
Service availability per services
Performance evaluation of the drone scheduling strategy, Realistic Scenario.
Total services availability
Service availability per services
In both scenarios,
Regarding the
Another relevant result that can be extracted from the results provided by the algorithm (Figure
In addition, the results obtained help corroborate the criteria that were considered in the design of the algorithm. For example, as discussed in Section
In the
On the other hand, in Figure
In this paper, an optimal drone scheduling algorithm is developed, which by leveraging 5G and NFV capabilities is able to perform an efficient energy-aware management of resources for network services provisioning. Through this strategy, it is possible to calculate the required number of drones for a certain degree of service, to be used in real scenarios. The scheduling strategy, based on two states,
The algorithm can perform the optimal scheduling in both short- and long-term applications, and it can be used as a resource/availability planner in a wide variety of real scenarios, such as emergency scenarios, relief disaster services, and search and rescue tasks.
Simulations results validate the performance of the proposal and provide the metrics achieved, as well as the amount of resources needed for the execution of services in different scenarios.
The results provided by the simulations can be used to know the level of availability for a certain number of services and available drones. Likewise, these results allow knowing the number of drones needed to run services to guarantee 100% of availability level.
Finally, the paper presents the evaluation of the proposal for scenarios up to
Based on information provided by the implemented strategy, the future works also include the modeling of the services availability as a mathematical function, in terms of the number of services, their power consumed, the capacity of the batteries, and the number of drones.
The data and results used to support the findings of this study are included within the article.
The authors declare that they have no conflicts of interest.
This work has been supported by the Ministerio de Economía y Competitividad of the Spanish Government under projects TEC2016-76795-C6-1-R and TEC2016-76795-C6-3-R and also AEI/FEDER, UE. Christian Tipantuña acknowledges the support from Escuela Politécnica Nacional (EPN) and from Secretaría de Educación Superior, Ciencia, Tecnología e Innovación (SENESCYT) for his doctoral studies at Universitat Politécnica de Catalunya (UPC).