Currently, there is a significant increase in data consumption as a result of an increasing number of mobile devices. The current costs of building and operating a new infrastructure capable of providing the required data rates are higher than the revenue growth rate .
As a consequence, the concept of Cloud Radio Access Network (C-RAN) is faced as a cost-efficient approach, which aims to implement the mobile networks in a centralized way. Through cloud technologies, such as virtualization and elastic resource management, it is expected that the operators can reduce the network deployment and operating costs, as well as simplify deployment and management of increasingly heterogeneous radio access networks (RANs) . To further reduce costs, the baseband processing resources in the cloud center could be shared among several antennas.
Therefore, to evaluate C-RAN virtualization, we used OpenAirInterface (OAI), an open source LTE software developed by EURECOM . OAI offers modules that emulate the User Equipment (UE), eNodeB and Evolved Packet Core (EPC). OAI can be used to implement a network by itself or can be used together with commercial modules . This paper describes a C-RAN test network created using the OAI platform together with the virtualization technology in Docker containers, evidencing its efficiency in the deployment.
2 Architecture of OAI C-RAN
OAI is an open-source software-defined implementation of Evolved Packet Core (EPC) and Evolved Base Station (eNodeB). EPC is the core network, and it includes a Serving Gateway (S-GW), a Packet Data Network Gateway (P-GW), a Mobility Management Entity (MME) and a Home Subscriber Server (HSS). S-GW and P-GW are responsible for routing user data traffic, while MME and HSS are responsible for controlling signaling messages. eNodeB handles the communication between the UE (User Equipment) and EPC. It is consists of two parts: the distributed RRHs (Remote Radio Heads) more antennas deployed at the remote site and the centralized BBU (Base Band Unit) pool hosted in a cloud data center.
3 Virtualization of OAI
Virtualization is a process that allows abstraction of computing resources, so the total capacity of a physical machine can be shared among many users, environments or applications. Through virtualization with flexible resource management, network deployment and operation costs can be reduced, as well as it can simplify deployment and management of RANs .
Virtualization in Containers, which can also be defined as containerization , is an operating system level virtualization method for deploying and running distributed applications without starting an entire virtual machine (VM) for each use. A container is a lightweight operating system running inside the host system, running instructions native to the core CPU, eliminating the need for instruction level emulation or just in time compilation. Containers provide savings in resource consumption without the overhead of virtualization, while also providing isolation .
Moreover, the operation tasks are reduced with the use of containers, there is less effort to maintain environments for the application. Creating an environment is automated. Therefore, fewer manual actions are required. This reduces the risks and increases reliability. Manually keeping a consistent environment across multiple servers is prone to errors and can be a trouble. With containers, it’s easy to create multiple instances of an environment because just run the image on the servers. In this way, it is easy to add more nodes to a cluster and scale them horizontally.
4 Implementation of OAI
The implementation of OpenAirInterface modules in Docker containers was based on the OAI tutorial in . Two machines were used, which run with Linux Ubuntu LTS 14.04. The kernel 3.19.0-61-low-latency package is also installed to reduce the packets processing latency. Many configurations have been made to allow the execution of OAI RAN, such as disable any power management features in the BIOS, and CPU frequency scaling, such that OAI can operate at maximum 100% CPU clock in performance mode and avoid staggering.
To deploy all OAI modules in Docker containers, Dockerfiles were created with the packages and builds needed to compile and run the application. Two Docker images were designed to run OAI, one for the RRH and another for the BBU. For EPC, all three modules mentioned in section II were compiled and run in a virtual machine.
It is possible to automate the testbed creation of RRH and BBU containers using Docker compose , a tool that defines and runs Docker applications with multiple containers. Also, it is possible to define the behavior that Docker will have if one of the containers fails, so in case the RRH or BBU container fails, the Docker will be able to upload another immediately.
For the execution of the containers, it is necessary to give them extended privileges. By default, Docker containers are unprivileged and cannot access any device external device, but a privileged container is provided access to all .
Besides, you need to configure the network of the containers, the Docker network subsystem is pluggable, using drivers. Several drivers exist by default and provide core networking functionality. We use the host driver because when given the option network host at container launch, Docker does not place the container into a separate network namespace; it, therefore, provides the container with full access to the host’s network stack (enabling network sniffing, reconfiguration, and so on) .
Figure 1 shows the implemented C-RAN testbed scenario. In testbed, the RRH receives a signal from the UE via USRP B210 board connected to USB 3.0 on the physical machine and sends to the BBU pool.
OpenAirInterface was used to create an LTE network, and two containers were built on different machines, which represent the RRH and the BBU. USRP Radio was used to communicate with a smartphone ready for use. Figure 2 shows The fronthaul rate varies according to the UE rate.
The results of the above figure were produced according to the access to videos on YouTube by the smartphone. Thus, we had an easy deployment of OAI LTE components with better use of resources using containers, in addition to generating a flexible testbed that could it easier to started to make researches. Finally, it is possible to test new features on 4G/5G experimental networks in a way fast and efficient.
This work presented an automated creation of a virtualized C-RAN test environment using OpenAirInterface. The work aims to provide an automated way to configure an RRH and BBU containers which connects with a commercial UE. Our situation was validated by the use of the smartphone connected to the network generating traffic in fronthaul when accessing videos on YouTube. Finally, it has some advantages over virtual machines, especially about the ability to consume real computing resources to implement the network.
-  E. Dahlmanet et al., 4G LTE/LTE-Advanced for Mobile Broadband. Academic Press, UK, 2011.
-  Y. Luo et al., “A computation workload characteristic study of c-ran,” International Conference on Distributed Computing Systems (ICDCS), pp. 1599–1603, 2018.
-  C. Y. Yeoh et al., “Performance study of lte experimental testbed using openairinterface,” Performance study of LTE experimental testbed using OpenAirInterface, pp. 617–622, 2016.
-  C. Nahum et al., “Emulation of 4G/5G network using openairinterface,” SBrT XXXV Simpósio Brasileiro de Telecomunicações e Processamento de Sinais, 2017.
-  A. Checko et al., “Cloud ran for mobile networks a technology overview,” International Conference on Advanced Communication Technology (ICACT), pp. 405–426, 2015.
-  “Docker.” [Online]. Available: https://www.docker.com/
-  R. Dua et al., “Virtualization vs containerization to support paas,” IEEE International Conference on Cloud Engineering, pp. 610–614, 2014.
-  “The OpenAirInterface Platform - how to use oai to setup c-ran.” [Online]. Available: https://gitlab.eurecom.fr/oai/openairinterface5g/wikis/how-to-connect-cots-ue-to-oai-enb-via-ngfi-rru
-  S. K. Pentyala, “Emergency communication system with docker containers, osm and rsync,” International Conference On Smart Technologies For Smart Nation (SmartTechCon), pp. 1064–1069, 2017.
-  H. Chang et al., “Performance evaluation of open5gcore over kvm and docker by using open5gmtc,” IEEE/IFIP Network Operations and Management Symposium, pp. 1–6, 2018.
-  A. M. T. Combe and R. D. Pietro, “To docker or not to docker: A security perspective,” IEEE Cloud Computing, vol. 3, no. 5, pp. 54–62, 2016.