Mobile Probe for Cellular Network Coverage and Quality Measurement Mobile Probe for Cellular Network Coverage and Quality Measurement

This article describes a proposal of the probe application used for 2G–4G mobile net- work coverage and speech quality measurement. It is based on Android platform, most commonly used operation system for mobile phones. Measured results are visualized in the form of a map using GPS location. There are few tests available focusing on the applications that are most often used: test of the network coverage, speed of the websites loading, data rate test and voice quality test. The results are analyzed directly in the application and are also available over the web interface form. Individual results can be exported to standard output .csv, .json and .xml formats for further analysis.


Introduction
The last decades were in the name of development, improvement and expanding of telecommunication capabilities. Mobile networks are no exception, because they went through a gradual improvement and can be divided into several generations based on the used technologies and parameters. These networks are characteristic by their users who require to use their services and devices on different places always expecting the adequate quality no matter on the current mobile network coverage or technology. By an appropriate quality signal, we can imagine when the item or in this case a service is perceived positively. It acts and works how it is supposed to. It is in the line with specifications which service producer advises and also with the customer demands and expectations. However, the real coverage of mobile network is most of the time different from the ideal mathematical models and it is very hard to take into account all the factors that affect the spreading signal characteristics. Due to this fact, mobile operators use data from real measurements to make their models accurate. These measurements are realized using the special vehicles made for these situations and the measurement of the signal progress in a predetermined area. This method is very expensive and time consuming and thus opens the field for a cheaper alternative directly using the end user devices.
The role of our project has laid on the proposal and implementation of the mobile measuring probe using the open-source technologies. This probe collects location information, signal strength and speech quality in a given place and time for all commonly used networks from 2G to 4G while sending measured data to the central server, where the data are then analyzed and visualized using graphs and interactive maps. One of the main goals of this application was also performing individual and periodic remote measurements without any user interaction, in both the open areas and indoors.

Review of the current applications
Nowadays, there are a lot of tools available for the mobile network monitoring and most of them can be found on the Android platform market. Each of this application is different, but the goal is the same-trying to get the information and parameters from the mobile network. Most of these apps also allow a preview about the LTE sites, using the plotting graphs and maps, or are able to export the results.
The available downloadable applications on the Google Play Store are G-NetTrack [1], NetworkSignal Info [2], Network Cell Info [3] and others. However, few of them are able to offer other measuring tools such as downloading speed test, speech quality test and more. For these purposes, there is a need to download a secondary application which discourages users from regular use. Therefore, there was a request to develop and create an application that would unite available measuring tools on the market into one application, creating a fullfledged tool for comprehensive testing of mobile networks.
Developed mobile probe application was created for OS Android from version 4.0.3 IceCreamSandwich to 6.0 Marshmallow and was tested mainly on Samsung phones with Android TouchWiz and Google Nexus phones with pure android. Following chapters describe the algorithms and methods used for the selective tests, and the technology for data visualization is also mentioned.
A diagram of the mobile probe functionality is shown in Figure 1.

Available in-app tests
It has been mentioned above that besides the testing of a network quality parameters, the mobile probe is able to run the speed test of loading web pages, data rate test and voice quality test. Each of these tests can be run once or repeatedly in a user-specified interval.

Coverage test
The main goal of this test is to get the gettinf parameters from 2G, 3G and 4G networks. From the available information, in parameters point of view, we are able to divide the mobile networks into two categories: non-LTE networks (GSM, EDGE, UMTS, HSPA, and HSPAP) and LTE networks. The non-LTE networks provide mainly RSSI, BER, ASU, EnodeB, TAC, LAC, Cell-ID and operator information parameters, and from the LTE, we can get RSRP, RSRQ and SINR. Most of these parameters are obtained from the TelephonyManager android class. This one allows the access to information about telephone services.
Each of the obtained parameters is dependent on the GPS position. Without this information, the whole test is giving inaccurate information. Because of the functionality of the mobile probe even in the indoor mode, where the GPS is often unavailable, there is a feature to insert the coordinates manually or clicking on the map.

Web page load speed test
The purpose of this test is the measuring of a loading speed of the web pages, where the application collects primarily the size of the downloaded data, how long they are being loaded, time interval between the download request and the beginning of downloading itself, the number of downloaded files and the number of displayed files on one page.
This test uses a developed WebView class, which is a fully functional web client, who is reading the website, and generates the measurements in the same time. The measurements are realized by overloading the WebView class methods and maintaining a list of all resources on the client when downloading the website. The records are later used to determine the size of the data on the page. After completion of the loading process, the timer is stopped automatically by calling an overloading onPageFinished method.

Data speed test/FTP test
One of the main tests from the list also includes a download speed tests. There is a need to obtain objective measurements, and it can be done, for example, with a file transfer test between the client and FTP server. This measurement should conform to the recommendations set out in the specification ETSI TR 102 678 [4]. According to this specification, it is necessary to measure a fixed transmission time when the downloading and uploading are on progress. This time is fixed for both directions and is set to 10 seconds. After this time interval, data transfer is analyzed, calculating the transmission rate. This test is able to determine the download data speed, upload data speed, response time and possibly even other additional parameters that are useful in determining the quality of mobile network services.
Additional parameters include minimum and maximum speed data transfer in both directions and whose values were obtained by subtracting the amount of the data transferred every second during the transmission time and access to the FTP server, that is, the time between signing and starting the actual transfer.

Voice quality test
The speech quality evaluation is measured by the Mean Opinion Score (MOS), which is a fivedegree scale developed by ITU-T [5]. This scale is shown in Figure 2. The objective methods are trying to be as precise as possible to gain adequate MOS value as it would be obtained by subjective methods with sufficient number of participants for adequate statistical analysis. The objective methods are divided to intrusive and nonintrusive methods. The intrusive methods use the original sound sample as it has entered the communication channel and compare it with the degraded signal in the output. One of the most known intrusive methods is the Perceptual Evaluation of Speech Quality (PESQ) method according to ITU-T P.862 [6,7].
Due to the fact that the PESQ algorithm is currently widely used, we decided to use this algorithm as the keystone of our measurement. The intrusive method is used to determine the quality of the speech, when the test system compares the original signal x(t) with the degraded signal y(t) taken at the other end of the transmission chain. Subsequently, reached The PESQ method first computes several series of delays between the original and degraded signals, where each of these series corresponds to one interval of signal. The delay for each interval is different because of ensuring proper functioning of the PESQ algorithm. For each interval, start point and end point of time are also determined. Based on these series of delays, the PESQ algorithm compares the original and degraded signals using the perceptual model. The resulting PESQ-MOS score is expressed as a range of values from -0.5 to 4.5. This score has to be converted to more accurate scope, more accurate for human subjective evaluation. Therefore, it is necessary to use complementary ITU-T P.862.1, which will provide scale transfer from MOS-PESQ to MOS-LQO. Scale MOS-LQO provides a range of values from 1 to 5. Conversion from PESQ-MOS to MOS-LQO is defined by Eq. (1) [6,7,9].
where the variable x represents the value of the MOS-PESQ scale and y represents MOS-LQO score. Inverse score (MOS-PESQ) from LQO is shown in Eq. (2) [7]. (2)

Remote access
From the need for remote monitoring of individual devices, a Firebase Cloud Messaging (FCM) service [10], formerly known as Google Cloud Messaging (GCM), has been implemented into our mobile probe. This service allows a remote server to run individual tests and services in different devices using incoming notifications to the device. This is achieved  by registration of each mobile device by its unique identifier and generating a security token. Each registered device is then allowed to run individual tests from a remote server to either once or periodically with a specified interval.
In the mobile device, FCM works as a background service without a graphical user interface (GUI) and it allows to run all the services and tests without user interaction and without need of having the application open.

Result visualization
Collections of the measured results from individual probes are stored on the central server using the SQL database. From there, the data can be further processed and analyzed for the need of the visualization on the individual probes or for the production of statistics from a selected data samples. These data are separated based on different tests, and there is also a filter option available. The synchronization of data with central server is realized using the REST data-oriented interface [11].
For easier overview of the acquired data, a graphical interface maps are built using a webbased mapping applications Leaflet/OpenLayers, which provide a complete picture of the real network levels and signal quality of mobile cells. Each level of that signal is subsequently separated by individual color markers and allows to reveal the blind spots of the received signal in the individual areas.
The measured results in each test are displayed in a clear list and divided into categories according to individual tests that were conducted. Each displayed test is interactively active and allows the user to display a GPS position from which the test has been taken.
Map data on the mobile application are realized by the OpenStreetMap licensed under the Open Database License (ODbL) [12]. These maps show all the results of individual measurements graphically divided according to the various tests and by the various levels of the received signal.

Conclusion
From scientific point of view, this project does not come with new thoughts and ideas, but it comes with the very progressive implementation on the field of the measuring of quality and coverage on the mobile networks. Also, thanks to our developed mobile probe, the mobile operators can improve their services based on the real data measuring and mobile subscribers are encouraged to run these measurements to increase the customer satisfaction with the improved services as well. Our proposed solution brings time-and cost-effective alternative for mobile service providers with the possibility of actively or passively engaging their customers in improving services. Although this project is still being developed, it is already able to be fully deployed in the real world.