1. Introduction
Nowadays, user equipment terminals, such as smart mobile phones, smart sensors, smart bands, virtual reality (VR) glass, wearable devices, smart watches, and smart cameras are growing in popularity [
1,
2,
3,
4]. The high-demanding applications and services, such as mobile augmented reality, gesture and face recognition, intelligent transportation, smart healthcare, interactive gaming, human heart-rate monitoring, voice recognition, natural language processing, and wearable virtual reality streaming are undergoing tremendous developments [
5,
6,
7,
8,
9]. With the enormous enhancement of smart user devices and the emergence of recent innovative applications and high-demanding services, data traffic is rising exponentially [
10,
11]. Therefore, storing, processing big data, and supporting real-time as well as computation-intensive tasks and applications is a big challenge. Additionally, owing to the confined processing capability and battery-life time, the execution of latency-sensitive and computation-intensive applications in user devices will undoubtedly affect the QoS and performance. To overcome these limitations, the applications are offloaded to the conventional remote cloud for execution. Although conventional remote cloud has unlimited storage and computing capacity, it has some difficulties in executing latency-sensitive and real-time applications because of the distance between the end users and the central cloud as well as unpredictable network latency [
11]. To deal with these challenges, diverse approaches such as mobile cloud computing (MCC) [
12], cloudlet [
13], fog Computing [
14], and multi-access edge computing (MEC) [
15], can be used as complementary solutions to cloud computing by employing services adjacent to the edge network. The comparison among the MCC, fog computing, and the MEC based on the technical aspect is shown in
Table 1.
MEC has emerged as a promising approach to cope with growing computing demands in 5G networks, where the traditional base stations are upgraded to MEC-enabled small base stations (SBS-MEC) [
18]. The SBS-MEC provides higher bandwidth, low latency, location awareness, dramatic reduction of energy consumption, and real-time radio network information [
17]. One of the major limitations of the SBS-MEC server is that it does not allow continuous offloading service for all tasks which are offloaded from the end user because of its confined computation resources. However, if the number of mobile user’s increases, the QoS will be depreciated for service interruptions, larger execution, and waiting time. Therefore, it is necessary to deal with the resources of SBS-MEC effectively for better system performance. Moreover, without providing proper information on the task-arrival time and sizes, MEC faces some challenges in a dynamic and rapidly changing environment to determine where the offloaded task will be processed. Due to the incomplete information, it is difficult to predict the demand of end users in advance. As a result, the quality of experience (QoE) will conspicuously degrade and negate the advantages of MEC. With this need in mind, several authors are trying to solve this problem using optimization techniques, but when the number of constraints is larger, multi-constraint optimization becomes a difficult task. In the MEC system, multiple constraints are engaged and these come from its infrastructure, end user device, and different application characteristics. Meanwhile, due to lack of proper advance information about task offloading requests, traditional offline optimization is not suitable for the collaborative task offloading problem.
To solve the above-mentioned issues, we have introduced a novel collaborative task offloading scheme among multiple SBS–MEC servers to boost the computation offloading service. By using the proposed system, we can easily reduce the load of local SBS-MEC servers and the execution time as the tasks are distributed among neighboring SBS-MEC servers. Meanwhile, with the accelerated growth of 5G technologies and the current development of emerging applications, it can be thought that the densely deployed small-cell networks (DDSCNs) will be the mode of future 5G communication networks which will have the capacity to deal with the requirements of excessive data traffic [
19]. Generally, in sparse edge deployment, a user can only connect to the local SBS-MEC server, and it is not always the best decision to connect this server; however, in densely deployment environment [
20,
21], there will be multiple SBS-MEC servers in the nearest places such as user residences, airports, and workplaces. The user may, therefore, have multiple options to connect to neighboring SBS-MEC servers for the services. In DDSCNs, the access nodes are deployed close to the end users and the access nodes are densified per unit area with immense probability of line-of-sight transmission [
22].
In a novel collaborative task offloading scheme, fuzzy logic is used because it has already been significantly applied for congestion mitigation, handoff control, network, and workload-management related problems [
23,
24,
25,
26,
27,
28]. In this study, a fuzzy-logic based technique is proposed to deal with the collaborative task offloading problem in MEC-enabled SCNs. When the exact mathematical model is difficult to develop in a rapidly changing system that is dynamic and uncertain, fuzzy logic is the most employed method because its computation complexity is lower with respect to different decision-making algorithms [
29,
30,
31]. In [
32], we consider the collaboration approach between mobile device with the SBS-MEC server and the collaboration between SBS-MEC servers with the cloud; however, in our proposed work, the collaboration approach adopts the fuzzy rules to determine the task offloading location among the SBS-MEC servers.
In particular, the main contributions of this study are summarized as follows:
We investigate an innovative collaborative task offloading framework for MEC-enabled DDSCNs that can easily compute various service requests based on the user’s demand.
We develop a fuzzy-based algorithm, called fuzzy-based collaborative task offloading (FCTO), that analyzes the under-utilized and over-utilized SBS-MEC servers. Based on the fuzzy rules which select a target SBS-MEC server that can efficiently process dynamic flow of service requests, each task can be assigned among SBS-MEC servers.
By employing our proposed fuzzy-based model, one can handle uncertainty in rapidly changing environments. Our proposed model also helps in solving the dynamic resource management problem as well as the overload problem of a single SBS-MEC server.
To analyze the performance of our proposed collaborative task offloading scheme, we conducted some experiments. The experimental results validate that our proposed model achieves outstanding performance in terms of reducing the average task duration and task failure and also provides more server utilization when compared to other two reference schemes.
The rest of this study is organized as follows. In
Section 2, we review some relevant research works. The motivational scenario, different collaborative execution models, and our proposed collaborative architecture are narrated in
Section 3.
Section 4 introduces fuzzy logic and the proposed FCTO algorithm.
Section 5 explains the performance evaluation with necessary discussions of the proposed schemes. Finally, we conclude this study in
Section 6.
2. Related Work
MEC is a leading technology in satisfying the end user’s demands for service requirements [
33,
34]. In MEC, the main research points are the task offloading strategy and resource allocation. In recent years, some researchers have focused on these points and considered different scenarios such as a single user or multiple users, single or multiple MEC servers in a single base station, partial or full offloading for task computation, and computation offloading for dynamic as well as static environments. Bi and Zhang [
35] have optimized the computing mode for a multi-user scenario of a single cell BS. On the other hand, Deng et al. [
36] have used adaptive sequential offloading game approach to avert the unpredictable queuing delay for multi-user and multi-cell MEC scenario. To enhance efficiency, some researchers have concentrated on reducing the processing time and consumption of energy by using full offloading approach [
37,
38]. Labidi et al. [
37] have proposed a jointly optimized offloading and scheduling strategy for enhancing the QoE and efficiently reducing the energy consumption. Moreover, in wireless mesh networks [
38], by using collaborative edge computing, the saturated backhaul bandwidth will be reduced. However, after analyzing the full offloading and partial offloading technique, Wang et al. [
39] concluded that partial offloading is much better and it is more practical as it uses a parallelism approach. Meanwhile, Mao et al. [
40] proposed Lyapunov optimization which is an online based algorithm and it is used for reducing energy consumption. Moreover, in case of resource utilization, dynamic resource allocation approach [
41,
42] is more efficient than static approach [
43]. In [
43], the game-theoretic approach has been proposed to increase computation offloading performance in a distributed manner, but the insufficiency of computation resources was not considered. Chen and Hao [
41] proposed an iteration-based algorithm based on software-defined network (SDN) concept for resolving the issues of task offloading and dynamic resource allocation problem. Meanwhile, Xiao and Krunz [
42] reduced the energy consumption as well as processing delay by using the cooperation of edge cloud approach.
Nevertheless, most of the previous works focus on a single MEC server and Tran and Pompili [
44] considered the multi-server MEC scheme, but they did not consider the dense deployment of SBS-network environment. MEC and dense deployment of SBSs are the key technologies for 5G mobile communication networks and they provide enormous access capacities for the user because the nearby SBS-MEC servers can create a computation resource pool collaboratively [
10,
45]. Research has been conducted to integrate the MEC with SCN, which has attracted the researcher’s attention. For balancing the computation workload, Refs. [
46,
47] utilized the cooperation between servers to balance the load. Zhang et al. [
48] used device-to-device (D2D) collaboration for load balancing in densely deployed small-cell network environments. Sun et al. [
49] have proposed a novel mobility management approach for MEC in ultra-dense network; however, for reducing latency and energy consumption, Guo et al. [
50] introduced a two-tier game-theoretic greedy approach in ultra-dense IoT Networks.
MEC-enabled DDSCNs are facing some challenges. In a densely deployed environment, there are many SBS-MEC servers that have limited computing resources. Meanwhile, existing research mostly focuses on end-user-to-local SBS-MEC offloading while the computing capability of local SBS-MEC server is ignored. Therefore, efficiently handling the resources of the distributed SBS-MEC server is a challenging issue. Furthermore, the end user does not have the information about the network traffic, capacity of the SBS-MEC server, etc., when they offload their task to the network. To overcome the above-mentioned challenges, we developed an FCTO scheme for MEC-enabled DDSCN environment. For many years, fuzzy logic has been the best solution that has been widely used in rapidly changing unpredictable environments. Hosseini et al. [
51] have used fuzzy logic for offloading mobile data because of its simplicity, which produces more efficient results compared to its competitors. For measuring the sender’s vehicle trust level, Soleymani et al. [
52] used fuzzy -logic in vehicular ad hoc networks environment which was based on experience and plausibility. To ensure the authenticity of the received information from the authorized vehicles, this model performed a series of security checks. Furthermore, in case of a security service selection, a soft hesitant fuzzy rough set (SHFRS) approach was used to choose the appropriate decision from multi-criteria decision-making problem [
53]. Moreover, Sonmez et al. [
54] proposed a workload orchestration based decision engine for task offloading by using fuzzy logic to determine the offloading location for executing the tasks which will be either edge or remote cloud, whereas we used fuzzy logic for collaborative task offloading scheme, which will decide where to offload the incoming task among SBS-MEC servers. Our proposed fuzzy-logic based system is employed to determine the location of the offloaded task which will either be the local or neighboring SBS-MEC servers. The novelty of our work is to utilize the neighboring SBS-MEC server which has spare computing resources to reduce the number of task failures and application response time. To the best of our knowledge, an FCTO scheme for DDSCNs has not yet been studied for this domain.
3. Motivational Scenario and System Model
3.1. Problem Statement
The system under consideration consists of a three-tier hierarchy: end users, small-cell base stations, and a remote cloud. SBSs are typically deployed in very densely populated urban areas where many people use mobile devices, i.e., shopping centers, sports venues, airports, and train stations. Moreover, mobile devices are operated with various applications and data packet information such as pictures, email, web browsing, video, gaming, and live streaming. When the mobile device user’s density is high, a single SBS-MEC server will face many challenges in handling a large number of service requests because of its confined computing resources. As a result, a single SBS-MEC server is overloaded which degrades the QoE.
To explore the neighboring small-cell base stations, we observed the following:
It is possible to utilize a nearby SBS-MEC server which has spare computing resources or is lightly loaded to overcome the overloaded problem of a single SBS-MEC server.
There is a function that is a trade-off of the resource capacities of all the SBS-MEC servers. We should then decide whether it should be offloaded to the remote cloud.
By sharing the resource capacity among the SBS-MEC server, the total processing time can be reduced.
Figure 1 shows the limited capacity and the overload problem that exists in the SCNs. User
has two tasks: one task,
, can be processed locally; the remaining task,
, needs to be offloaded for processing in another place. Generally, user
will offload this task for performing its computation to the SBS-MEC server
, SBS-MEC-1. However, in that time, SBS-MEC-1 cannot handle this server as it is already overloaded. Consequently, task
will fail. Meanwhile, user
has three tasks which need to offload because of the confined capacity and weak performance, namely,
,
, and
. Basically, all the tasks will be offloaded to SBS-MEC server
. Nevertheless, SBS-MEC server
can handle two tasks, i.e.,
and
. Therefore, task
will fail.
3.2. Collaborative Execution Model
To solve the limited capacity and the overload problems, a mobile device user can offload their tasks to the target server for processing. We assume that mobile device users always offload their computation tasks to their corresponding local SBS-MEC server, but if a set of SBS-MEC servers works collaboratively, user devices can experience better edge services. Otherwise, the computation task will be further offloaded to the remote cloud. According to the connections between mobile device user, SBS-MEC server, and remote cloud, there are three types of collaboration models: mobile device user to SBS-MEC server, SBS-MEC server to remote cloud, and SBS-MEC server to SBS-MEC server. The notations used throughout this paper are summarized in
Table 2.
Let represent the SBS-MEC server’s computational capacity of small-cell base station , respectively. Let be the amount of received mobile workload from various mobile device users , respectively. Note that the collaboration model occurs if and only if a mobile device user cannot execute the task(s) locally. For user , we consider the workload which cannot be processed locally by itself. By comparing and , there are three possible ways to process as follows:
Case 1:
is less than
. This computation task will be executed in SBS-MEC 1, as shown in
Figure 2a, where some of the tasks will be computed locally by themselves and the remaining tasks will be offloaded to the SBS-MEC 1 server for execution.
Case 2:
Figure 2b shows
is greater than
and there are no collaborations between neighboring SBS-MEC servers or the total processing time is minimized if there are collaborations between neighboring SBS-MEC servers. In this case, this offloaded task
will be divided according to
into two parts: one is processed in the SBS-MEC server 1; the remaining task,
, will be sent to the remote cloud for processing.
Case 3:
is greater than
and there are collaborations between neighboring SBS-MEC servers. The minimized total processing time will elapse if this task is processed in neighboring SBS-MEC servers, as shown in
Figure 3. Similar to case 2, this offloaded task
will be divided according to
into two parts: one is processed in SBS-MEC server 1; the remaining task,
needs to be helped.
will be offloaded to the target neighboring SBS-MEC server to minimize the total processing time.
3.3. System Model
The key is to collect information from all SBS-MEC servers, and, according to the fuzzy rules, it decides the task handling location. Therefore, we design the architecture of the fuzzy based collaborative task offloading scheme for MEC-enabled SCN.
Figure 4 shows our designed architecture: mobile device users, SBS with MEC server and remote cloud. The first layer consists of different end users who want to compute their tasks either locally or offload to the local SBS. The second layer is made up of a number of SBSs in which a single MEC server is deployed to each BS. Virtualization technology, such as virtual machine (VM), is used by the MEC server to create execution environments. The distributed SBS-MEC server is connected to the fuzzy-based edge orchestrator. The fuzzy edge orchestrator module acts as a coordination point of the system to collect information from all SBS-MEC servers and, according to the fuzzy rules, it decides the task handling location. Finally, the core network is attached to the remote cloud for providing centralized cloud computing services.
According to above consideration, we define
, which represents the number of SBS-MEC servers deployed to the small-cell network. Let
be the number of mobile device users, who are covered by
N SBS. We assume that the computation task,
, is generated from each mobile device user
at each time slot
t following the Poisson processing. The total arrival computation tasks in one SBS in time slot
t,
, is given as:
Moreover, each mobile device user can execute a task at time
t. The local-executed computation task is defined as:
where
denotes the size of the input data for computation,
represents the number of CPU cycles that need to process the task
, and
describes the highest allowable latency for accomplishing the computation task.
Considering each SBS, let
be the number of mobile device users in the SBS-MEC server
i. The total arrival computation task,
, will be offloaded to the SBS-MEC server,
i, and it can be computed as follows:
The number of computation tasks cannot be executed in SBS-MEC server
i and is given as shown below:
where
is the maximum task arrival rate that can be handled by the SBS-MEC server,
i. If
, the SCN needs collaboration to execute all remaining computation tasks for minimization of the total processing time. Otherwise, the system can run according to the baseline scheme.
The total computation tasks arriving at all SBS-MEC servers in the SCN at time slot
t,
is computed as:
The problem under consideration is: how to design decisions for all tasks which are executed at local SBS-MEC servers or offloaded to neighboring SBS-MEC servers. Thanks to the fuzzy-based edge orchestrator, each task will be decided based on fuzzy-logic approach, which will be described in the next section.
5. Performance Evaluation
To evaluate the efficiency of our proposed FCTO mechanism for MEC-enabled DDSCNs, we used EdgeCloudSim simulator [
58] for simulating different scenarios. This simulator extends the CloudSim toolkit [
59] by including additional features that allow for modeling the virtualized resources, mobility model, network modeling, and edge orchestrator module to enable accurate simulations of the physical edge infrastructure environment. We used this environment to evaluate how different offloading techniques affect the task failure rate, average service time, and server utilization for different numbers of devices and task sizes. For simulation, we used an augmented reality (AR) application which represents the realistic real-life scenarios. Here, the offloaded tasks of mobile devices are considered as a set of AR applications. For example, a user can offload some pictures to the server by wearing smart glasses for face recognition service. The characteristics of the AR application and its respective values, which are used during simulation, are represented in
Table 6. In this simulation, we considered the number of mobile devices to be within 100 and 1000 and the number of SBSs to be 16. During task generation, the system is considered to be in active mode during which the mobile device generates the task. Thereafter, it will be in idle mode for some period. We set 40 s for the active mode and 20 s for the idle mode. For sending the data to the server or receiving the data from the server, we selected the data size 1500 KB for uploading and 25 KB for downloading. The uploaded data size is large compared with the downloaded data because the AR application needs to upload the image in the server and the server responds with a text metadata which requires a smaller data size during downloading. The offloaded task can be either real time or not and it can be determined using delay sensitivity. Moreover, to determine the frequency for sending the task to the edge, the inter-arrival time of the task is used in our simulation.
To verify the effectiveness of the FCTO performance, we compared the average task completion time and the average server utilization corresponding to the average task sizes based on three task offloading schemes: local SBS-MEC offloading, workload orchestration based task offloading (WOTO) between the SBS-MEC server with cloud, and our proposed FCTO among SBS-MEC servers.
Figure 8a,b represents the results of comparing the performance, where the
x-axes indicate the scalability of task sizes varying from 2 to 20 GI (Giga Instructions), and the
y-axes denote the average task completion time and average server utilization, respectively. From
Figure 8a, it can be seen that, when the average task size is small, i.e., 2 GI, then the average task completion time is almost similar for local SBS-MEC offloading and the proposed FCTO scenario. Meanwhile, when the task size is between 2 and 14 GI, the proposed FCTO scheme will require a lower completion time compared with WOTO and local SBS-MEC offloading schemes. This is because, for small and medium task sizes, it is easy to handle the task among SBS-MEC servers, but when the task size becomes large, such as at 16 GI, the WOTO scheme will require lower completion time compared with the other schemes. This is because this scheme forwards the task to the cloud for processing, which has unlimited computing capacity. In this simulation, we considered the number of mobile devices to be 100.
From the analysis in
Figure 8b, it is observed that, when the average task size is between 2 and 10 GI, the local SBS-MEC offloading and the proposed FCTO scheme provide almost similar results, while the WOTO scheme provides lower server utilization compared with the other schemes. Meanwhile, if the task size is 16 GI, then the average server utilization for local SBS-MEC offloading, WOTO, and the proposed FCTO schemes are 8.43%, 1.23%, and 10.52%, respectively. Thus, the proposed FCTO scheme accomplishes a server utilization that is 2.09% more than that of local SBS-MEC offloading and 9.29% more than that of the WOTO scheme. Therefore, from the review, it can be concluded that our introduced offloading scheme will provide more server utilization than others. This is because our proposed system can make a dynamic decision as it analyzes the CPU usage of all VMs on the SBS-MEC servers and the VM with the least CPU usage is selected to compute the task. On the contrary, the WOTO scheme requires offloading some tasks to the remote cloud for processing.
Moreover, to validate the significance of the proposed FCTO scheme, we conducted another experiment considering the average task failure rate and task completion time with respect to the number of mobile devices is shown in
Figure 9a and
Figure 9b respectively, where both the
x-axes indicate the scalability of the mobile device and the
y-axes represent the average task failure rate and task completion time, respectively. In these experiments, we have assigned eight VMs in each MEC server. In case of a lightly loaded system, for example, if the number of mobile devices is up to 200, the performance of the above-mentioned three approaches will provide a similar result and the average task failure rate will be approximately 0, which is represented in
Figure 9a.The average task failure rate tends to increase in all three scenarios, with an augmentation of the number of mobile devices; however, when the number of mobile devices is more than 200, the proposed FCTO scheme will provide less task failure compared with the other two schemes, as these tasks are distributed and offloaded easily to the neighboring SBS-MEC server. Meanwhile, the local SBS-MEC offloading scheme cannot handle more tasks when the number of mobile devices is more, and, due to the congestion of VMs in the local SBS-MEC server, the WOTO scheme sends the incoming task to the remote cloud. Because of the WAN bandwidth, the average task failure will be increased in the WOTO scheme. From
Figure 9b, it can be observed that, when the system is heavily loaded due to the growing number of mobile devices, the completion time of the tasks, as well as network delay, will be increased in all scenarios because of the congestion. For example, when the number of mobile users is 600, then the average task completion time for local SBS-MEC offloading, WOTO, and the proposed FCTO schemes are 1.54, 2.72, and 0.68 s, respectively. Thus, the proposed FCTO scheme reduces the task completion time by 0.86 s when compared with the local SBS-MEC offloading and by 2.04 s when compared with WOTO scheme. Therefore, by comparing with the other two approaches, we can confirm that our introduced scheme will provide a lower task completion time. This is because our proposed collaborative approach can distribute the arrival user requests among SBS-MEC servers, and it can improve the system performance to handle a large number of mobile devices.
Finally, the last simulation result shows the impact of the VM number on the SBS-MEC server. In this simulation, we assigned eight VMs to the extremely powerful MEC server, four VMs to the least powerful one, and six VMs to the other. From
Figure 10a,b, it can be observed that the average task completion time tends to reduce as the number of VM increases. Compared to the WOTO scheme, the proposed FCTO scheme outperforms among all the scenarios. For example, when the number of the mobile devices is 700 and the number of VMs is four per SBS-MEC server, the average task completion time is 3.07 s in the WOTO scheme. In the same scenario, the average task completion time is 1.17s in our proposed FCTO scheme. Thus, the proposed FCTO scheme reduces the task completion time by 1.9 s when compared with the WOTO scheme. Throughout the analysis, as observed from
Figure 10a,b, the proposed FCTO scheme with four VMs can alleviate the average task duration at almost 60.52% more than the WOTO scheme.
Furthermore, in
Figure 10c,d, we performed another experiments to investigate the effect of SBS-MEC server capacity for the task failure rate and server utilization by varying the number of mobile devices. From
Figure 10c, it can be observed that the average task failure rate tends to increases as the number of mobile device increases. The SBS-MEC server while considering four VMs, increases the task failure rate after 200 mobile devices, whereas, with six VMs, it increases the task failure rate after 500 mobile devices, and the SBS-MEC server with eight VMs can handle more than 700 mobile devices without task failure. From
Figure 10d, it can be seen that the server utilization tends to increase if the number of mobile devices is also increased; however, if the number of VMs is increased, the server utilization will be decreased. When the number of mobile device is between 100 and 500, the SBS-MEC server with four VMs utilizes more servers than others. However, when the number of mobile device is more than 500, server utilization is a little lower than the six VMs because of increasing task failure rate. Therefore, it can be summarized that, when the number of VMs is higher, the average task completion time is reduced, and it can handle more mobile devices. This result is expected and the main motivation of this simulation is to explain the necessity of the collaborative task offloading scheme.