The concept of next-generation cellular networks such as fifth-generation (5G) is becoming popular, since they can help to accommodate the indomitable increase of data traffic currently being experienced by the mobile network operators (MNOs) [1,2,3]. The leading MNOs are highly motivated to incorporate the virtualization concept of cloud computing in their networks, giving birth to the Cloud Radio Access Network (CRAN) . In CRAN, the traditional base station (BS) is split into the radio frequency (RF) unit, referred to as the remote radio head (RRH) and the baseband processing unit (BBU) that provides the computational resources [4,5]. Although the RRHs are distributed over a wide geographic region located at each cell site, the BBUs are now pooled and moved into a centralized cloud named the BBU pool, where the RRHs and BBUs are connected via fronthaul link. The virtualization of Radio Access Networks (RANs) is acknowledged as one of the important use cases of network function virtualization (NFV). It is considered to be the best candidate solution for supporting the next generation mobile communication network (5G) [1,6], which embodies real-time cloud-computing, collaborative radio and centralized baseband processing features in cellular networks.
By virtualization, the computing resources in the BBU pool can be dynamically shared among all the cells in the network. However, due to the heterogeneity of the incoming service requests from the RRHs to BBU pool, mapping an appropriate computational resource in the BBU pool to a particular request is still an important research challenge for the next-generation CRAN systems. Since in the CRAN architecture, mobile operators are dependent on cloud service providers for computational resources, service providers’ profit must also be taken into account. The maximization of user Quality-of-Experience (QoE) in the competitive market must also be addressed. In this paper, we have developed a resource allocation scheme for mapping heterogeneous requests from RRHs to BBUs so that user QoE and service providers’ profit is maximized under optimal resource utilization. Figure 1 shows the CRAN service architecture and its components.
Resource allocation and the RRH-BBU mapping problem in 5G CRAN has been addressed in a number of research works in the literature [6,7,8,9]. However, focusing on the Quality-of-Service (QoS), Khan et al.  developed a dynamic RRH-BBU mapping algorithm in CRAN architecture where the service provider’s profit is not a focus of attention. By employing the news-vendor game model, a resource allocation problem with a bargaining solution is investigated in  with the ability to reconfigure its resources with varying traffic conditions. This scheme requires additional time for resource reconfiguration, which can cause violation of QoS requirements. A renewable energy-based user association and power allocation is proposed in . They have addressed the QoS requirement in terms of achievable rate, and completely disregard user QoE and service provider profit. Meeting up the QoS requirements of heterogeneous requests with the limited computational resources as well as enhancing service provider profit should be the prerequisite of a working CRAN environment.
An integrated priority metric is developed so that the priority of an incoming request to a suitable BBU can be identified.
Computational resource allocation problem for incoming requests is formulated as multi-objective non-linear programming optimization problem focusing on maximization of end-user QoE as well as service provider profit.
Tradeoff between profit and customer satisfaction while selecting the BBUs for service provisioning in CRAN is made by two scheduling algorithms which are computationally viable to be deployed.
To enhance system performance and resource utilization, the duration of the scheduling interval is determined dynamically according to the incoming requests and available resources.
The rest of the paper is organized as follows. Section 2 describes some related works in our topic of interest. In Section 3, the system model and assumptions for execution environment of different requests are presented. The functional components of the proposed system architecture are described in detail in Section 4. In Section 5, the performance of our proposed scheduling system is analyzed, and Section 6 concludes the paper.
2. Related Works
CRAN technology is one suitable candidate for 5G systems; the advantages and challenges for various candidate architectures and their performance capacities are reviewed in . Provisioning and allocation methods of virtual base stations (VBSs) in the base band unit (BBU) are proposed in . The advantages, challenges, and future directions of CRAN technology are also studied in this survey paper. However, in , using integer linear programming (ILP) cells are optimally assigned to different BBU pools. It focuses on minimizing the capital expenditure (CAPEX) of CRAN deployment, although the operational expenditure (OPEX) is not taken into account. In , the Virtual Radio Access Networks (VRAN) Placement and Assignment Problem (VRAN-PAP) is formulated as a binary integer linear program (BILP) where the center of attention is only to minimize the server and front haul link setup cost rather than considering other cost issues.
Cooperative interference mitigation and handover management issues are addressed in , which did not analyze user QoS requirement and resource allocation schemes. The authors of  address the RRH to BBU assignment problem as a bin-packing problem which requires a significant amount of computational complexity, where the end-user QoE is not traced. In , even though QoS of requests are considered, service provider profit is not studied. In , the authors introduce a clustering mechanism to maximize user satisfaction and enhance network energy efficiency. Another noteworthy study  proposes a user association, and power allocation in mmWave-based ultra-dense bands is considered with load balancing and energy efficiency. Nevertheless, in both of the mentioned contributions, service provider profit in terms of executing a request on the cloud server is not discussed.
To exploit next-generation CRAN operations, a main challenging issue is how to properly control system resources. To address this, one article  employs the news-vendor game model for resource allocation. Here, the two-stage game-based resource management approach can practically adapt current system conditions. However, an optimal tradeoff between service provider profit and customer satisfaction are not concentrated here as well as in the state-of-the-art works.
In our proposed work, a QoE and Profit-Aware optimal Resource Allocation scheme in a Cloud Radio Access Network has been developed. Here, focusing on maximization of user QoE and service provider profit, the computational resource allocation problem for the incoming requests is formulated as a multi-objective non-linear programming optimization problem. While allocating resources, the amount of data to be processed, the maximum allowable service delay per request, and received signal strength of the connected device of the user are also taken into account for identifying the priority. In this work, a tradeoff is made between profit and customer satisfaction for service provisioning in 5G CRAN architecture. For efficient resource utilization and enhancement of system performance, the scheduling interval of the system is dynamically determined according to the request arrival rate and service rate. To the best of our knowledge, this work is the first to address the problem of maximizing user QoE as well as service provider profit under optimal resource utilization.
A comparative study among the state-of-the-art works focusing on different aspects of CRAN and our proposed Quality-of-Experience and Profit-aware Resource Allocation scheme or QEPRA system is given in Table 1. In the literature, several mechanisms [12,13,16] basically focus on infrastructure development of CRAN architecture. Another noteworthy paper  addresses QoS-aware scheduling and based on the service provider profit  allocates resources for incoming requests. However, our proposed system makes a tradeoff between user QoE as well as service provider profit while utilizing resources efficiently.
3. System Model and Assumptions
In this section, the overall system architecture and the assumptions as well as the system components which make the allocation of computational resources for the incoming requests more efficient are well explored.
The 5G Cloud Radio Access Network (CRAN) refers to the virtualization of base station (BS) functionalities by means of cloud computing . In this work, a fully centralized CRAN architecture  is assumed where all the baseband functions are assembled in BBUs (base band units) and the signals are centrally processed. The request management and resource allocations of BBUs of macro-cell and small-cell are co-located in the BBU pool. Remote radio heads (RRHs) integrate the radio functionalities where the RRHs and BBU pool communicate over CPRI (Common Public Radio Interface) protocol. We are considering that the overall system supports 2G, 3G, and 4G networks, and is designed for future 5G network.
In CRAN architecture, the mobile subscribers are directly connected to the RRHs of the mobile operators with heterogeneous service requests and Service Level Agreements (SLA), via supported mobile network communication protocols (e.g., GSM-Global System for Mobile communication, 3GPP-3rd Generation Partnership Project, LTE-Long Term Evolution, LTE Advanced, etc.). With the help of BBUs, residing in a BBU pool, the incoming workloads of the RRHs are processed. As a consequence, these computational resource requests are sent from RRHs to a Request Receiver (RR) located in the cloud service provider (CSP)’s side, as shown in Figure 2. The RR receives all the incoming requests with the corresponding service requirements. It then extracts the major attributes (data size, tolerable service delay, signal strength) of the requests from the requirements and sends those to the Request Prioritizer (RP). The RP calculates the weight for each arrived request according to the requirements which denote the priority of each incoming request in a certain scheduling interval. The RP then sends the requests with their weights to the BBU Pool Manager which is responsible for managing the resource allocation process.
The optimal mapping of incoming requests to BBUs in a pool is done by the QoE and Profit-aware Resource Allocator. With the help of Pricing Policy Maker and Resource Manager, the QoE and Profit-aware Resource Allocator allocates BBUs for selected requests from the incoming requests in a scheduling interval in order to maximize the total user QoE and service provider profit. As limited computational resources are available for heterogeneous incoming requests with various requirements, these resources are allocated with the help of several scheduling intervals. The scheduling interval can be defined as in . Here, the Resource Monitor monitors the incoming load and the Resource Manager creates appropriate virtual base stations (VBSs) according to the requirements. In addition, the Pricing Policy Maker provides the per-unit prices according to the work load and priority of incoming service requests. These unit prices are dynamically adjustable, as explained in [19,20]. After that, the Request Executor executes a particular request on the allocated computational resource, provided by the BBU Pool Manager. The execution result of each request is then sent via the Response Sender to the RRH. The relevant notations and definitions used for modeling the system are listed in Table 2.
4. Proposed Resource Allocation Scheme
In this section the working principle and functional methodologies of our proposed system are presented in detail. As the mechanisms used in the Request Prioritizer (RP) and the QoE and Profit-aware Request Scheduler greatly control the system performance, we address these two components in the whole system to enhance the efficiency. Here, the Request Prioritizer (RP) helps to identify the priority of the incoming service requests so that resources can be allocated for a request with higher priority first. The multi-constraint problem of resource allocation for the incoming service requests is formulated as a multi-objective non-linear programming (MONLP) optimization problem in the QoE and Profit-aware Resource Allocator. As this is an NP-Hard problem, two heuristic solutions are provided here considering a single objective at a time. Two algorithms called First Fit Satisfaction (FFS) algorithm focusing on the maximization of user QoE while maintaining the unit profit threshold and the First Fit Profit (FFP) algorithm targeting the maximization of service providers’ profit while satisfying the QoS requirements are introduced here. As limited computational resources are available for heterogeneous incoming requests with various requirements, these resources are allocated with the help of several scheduling intervals in the whole system. To enhance the system performance, dynamic determination of scheduling intervals for resource allocation is also addressed here.
4.1. Incoming Request Prioritization
Amount of data to be processed,
The tolerable service delay,
Received signal strength of the connected device, .
The values acquired by the Attribute Value Extractor in the Request Receiver (RR) of each incoming request, , are sent to the Attribute Repository, which keeps the attribute values in reserve. As the values of the considered attributes differ in terms of norms and units, the Normalization function normalizes the values within a range in association with the Attribute Repository, so that the heterogeneity of the attributes can be alleviated. The normalized values of each attribute of a request are then fed into the Priority Generator
The first subsection is devoted to the presentation of an IoT layered model, which is frequently adopted for the development of cloud-based platforms. The second subsection reviews the QoE definitions and provides an analysis of the past works that have touched the topic of QoE evaluation for IoT platforms, as well as those based on the layered approach for QoE modeling.
2.1. IoT Reference Model
The IoT refers to a network of interconnected objects that are able to acquire information from the physical world and to make this information available on the Internet. It is possible to basically identify three generations of IoT on the basis of the involved technologies . The first one was developed around RFID tags, which were typically used for monitoring, logistics and tracking applications. The second generation was enhanced by sensors and actuators, which permitted acquiring various physical characteristics from the real world and brought to birth of Wireless Sensor Networks (WSN), which consist of a certain number of sensing and/or actuating nodes communicating in a wireless multi-hop fashion . The third (and current) IoT generation is mostly developed around the association of a virtual object to each physical object. The virtual object has the role of virtualizing the functionalities of the physical object, which is then part of the IoT. Everyday physical objects become “smart” objects and are integrated within the global cyber-physical infrastructure . Furthermore, the storage of the data and running of the application have been moved to the cloud.
From the second generation forward, multimedia devices have been playing a more and more important role in the IoT as the physical devices augmented with the virtual counterparts have become more powerful in the generation, processing and transmission of multimedia data.
Even if there is not a reference IoT architecture, we may say that a general four-layer model is generally followed as illustrated in Figure 1. A major feature of this model is the use of the virtual object, which is a digital representation of the physical object. One specific implementation that follows this architecture is the iCore solution , which exploits and leverages the adaptation capabilities offered by the platform in terms of virtualization, aggregation and abstraction properties.
Real-world layer: refers to the Real-World Objects (RWOs), i.e., the physical sensing devices that acquire the information that will be used by the IoT application;
Virtualization layer: creates the Virtual Objects (VOs), which virtualize the functionalities of the associated RWOs;
Aggregation layer: different VOs can be combined in order to create Composite Virtual Objects (CVOs) capable of providing a determined service that a single VO cannot accomplish;
Application layer: plans and understands what requested services are needed by the IoT application. As such, it determines the strictly needed Service Level Agreement (SLA) that the platform is to execute by means of its CVO (and VO); this layer also exports all of the system’s functionalities to the final user.
A specific implementation of an IoT solution that follows this model is . With regard to quality assurance, the iCore architecture considers an SLA assurance function at the CVO level. Based on available policies, this function may observe if the matching CVO for a certain service execution request is deployable and executable based on the current and predicted availability of resources for SLA fulfillment. However, a module for evaluating the final quality provided to the end-user of the IoT application is not considered.
It is worth mentioning that since 2008, the MPEG group has been working on a standard called MPEG-V (ISO/IEC (International Organization for Standardization/International Electrotechnical Commission) 23005) [6,7,8], which aims to define a standard way of representing the data from sensors and actuators in the real world, as well as a common interface to virtual worlds. As a result, each proprietary virtual world will not be isolated from the other virtual worlds. In particular, MPEG-V defines the XML schema for the information about sensor/actuator capabilities, user preferences, sensed information and data types used by actuator commands. These data type elements correspond to descriptions of devices and messages for “talking to” and “adapting to” either devices or services in the IoT. In addition, the Part16 of MPEG Exploration (called Internet of Media Things and Wearables (IoMT & W)) is trying to understand IoT requirements that are not yet satisfied by MPEG-V . Therefore, in this draft, the media-centric Internet of Things is defined, as “the collection of interfaces, protocols and associated media-related information representations that enable advanced services and applications based on human to device and device to device interaction in physical and virtual environments”. Furthermore, the definition of media thing is introduced, as “a Thing with at least one of audio/visual sensing and actuating capabilities”. The scope of IoMT & W is to standardize a set of interfaces, protocols and associated media-related information representations. However, to date, only media thing requirements and some use cases have been defined.
Although the architecture proposed by MPEG-V is of interest, especially with the integration of the media things, in this work, we mainly refer to the four-layer model in Figure 1, since it is a general architecture that can be used as a reference for any type of IoT application. Furthermore, MPEG-V does not consider any module for the evaluation of the quality provided by its proposed framework. However, the concepts defined by the MPEG-V standard will also be considered for the definition of the proposed QoE management framework.
2.2. QoE Evaluation and Management
In the Qualinet White Paper on Definitions of Quality of Experience , the QoE is defined as “the degree of delight or annoyance of the user of an application or service. It results from the fulfillment of his or her expectations with respect to the utility and/or enjoyment of the application or service in the light of the user’s personality and current state”. Such a definition of QoE is valid for general multimedia applications and services; therefore, it can also be extended to IoT applications. However, currently, there is no reference model for evaluating the QoE of IoT applications, probably due to the lack of a reference IoT architecture and to the different requirements of IoT applications belonging to different domains of utilization. Indeed, there are only a few works that have started addressing this issue.
In , the authors focused on the perceived quality in actuators connected to the IoT. They developed a test bed that consisted of an electro-mechanical arm controlled over a packet switched unreliable link. The experiment required users to direct a fixed laser attached to the fixed arm’s grabber towards a set of targets. The experimental factors were the average one-way delay, the packet loss and the number of degrees of freedom of the arm. From the subjective quality results, in terms of the Mean Opinion Score (MOS), the authors defined a parametric QoE model that estimates the QoE as a function of the considered experimental parameters. While  focused on a specific IoT application, other studies proposed a QoE model for general IoT systems. Due to the lack of a reference IoT architecture, each work proposes its own vision of the IoT and of the consequent quality evaluation model. In , the authors defined the Cognitive Internet of Things (CIoT), a new network paradigm where physical and virtual things or objects are interconnected and behave as agents, with minimum human intervention. The CIoT framework measures three different qualities: Quality of Data (QoD), i.e., the quality of sensed data; Quality of Information (QoI), i.e., the information that meets a specific user’s need for a specific time, place and social setting; QoE, focused on factors belonging to four levels: access, communication, computation and application. While  considered both QoS and QoE parameters, [13,14] only focused on QoS evaluation. In fact, the authors defined an IoT architecture composed of three layers (i.e., sensing, networking and application), and for each of these, a monitoring module manages the resource allocation as a function of the measured QoS metrics: information accuracy, sensing precision and energy consumption at the first layer; bandwidth, delay, throughput and coverage at the network layer; service performance cost, performance time, load and reliability at the application layer. Although QoS parameters are important for the performance evaluation of an IoT platform, they should be considered as a function of the quality perceived by the end-user and not only as a fulfillment of SLAs.
However, it can be noticed that these works follow a layered approach to consider different influence factors within each layer. In fact, many different QoE influence factors exist and are defined as “any characteristic of a user, system, service, application, or context whose actual state or setting may have influence on the QoE for the user” . In the literature, several works grouped “related” QoE influence factors into well-defined domains, spaces or layers. For example, the ARCU (Application Resource Context User) proposal models QoE influence factors as falling into one of four multi-dimensional spaces: application, resource, context and user . Points from the ARCU space are then mapped (with objective models or subjective evaluations) to points in a QoE space, which is composed of dimensions representing different quantitative and qualitative quality metrics, which can be perceived by an end-user (e.g., MOS, ease-of-use, efficiency, comfort). The theoretical approach defined by the ARCU model was used in  to define an operational approach: the QoE layered model. The six layers defined by this model basically respect the spaces defined by the ARCU model. However, two spaces were further modeled: the context space is represented by the interface and the context layers, while the user space is represented by the human and the user layers. In , the hourglass model is proposed, which is composed of four layers: QoS; Quality of Delivery (QoD), i.e., the quality of data delivered by both the application and the network; quality of presentation; QoE. As is common for layered approaches, each quality estimation is in turn implemented utilizing the quality estimation provided by the previous bottom layers. Therefore, starting from the QoS, the authors defined the functions brought to the estimation of the QoE. We also investigated in a past study the utilization of a layered approach for modeling the QoE in multimedia services . The objective was to integrate the results of different modeling activities in order to solve un-interoperability issues between different models.
The layered approach was also used in  to model their proposed QoE management framework into the data acquisition, monitoring and control levels. Besides providing a thorough analysis of the most relevant QoE management works available in the literature, the authors proposed a generic QoS/QoE framework for enabling quality control in packet-switched networks. They mainly focused on the management component of the framework to show how data collected from a network can be refined into knowledge of quality perceived by users and how to take corrective measures when necessary. Although QoE management frameworks have been also proposed for cloud applications  and future Internet architectures , to the best of the authors’ knowledge, no studies have focused on QoE management for IoT applications, which is the objective of this paper. We aim at defining a specific framework for the evaluation and management of the QoE provided by IoT applications and specifically of multimedia IoT applications; on the basis of a layered IoT architecture, we consider at each layer the most relevant QoE influence factors and combine them at the higher layers to provide a measure of the overall QoE provided by the IoT application to the end-users.