Network Quality of Service Assessment Implementation Using a Microcontroller Board

Network Quality of Service (QoS) assessment plays an important role in managing network resources and ensuring that various applications receive an appropriate prioritisation or sufficient resources. Therefore, developing a portable hand-held device that accurately assesses QoS for different applications is very valuable. In this study, a QoS monitoring system was designed and evaluated. The QoS assessment was based on regression modelling that was implemented on the MCB2300 KEIL ARM microcontroller board. The system analysed the QoS requirements (delay, jitter and packet loss ratio) of multimedia applications to determine their overall QoS. The QoS assessment results were compared with other assessment methods (e.g. Fuzzy Inference System and Neural Network based QoS monitoring). The study indicated the effectiveness of the developed system in monitoring multimedia QoS accurately. | Quality of Service Assessment | Multimedia Networks | KEIL ARM MCB2300 | ® 2013 Ibnu Sina Institute. All rights reserved. http://dx.doi.org/10.11113/mjfas.v9n2.83


INTRODUCTION
The growth in multimedia networks has led to the need for finding efficient ways to monitor Quality of Service (QoS) accurately.QoS can be achieved by either (i) prioritising time sensitive applications (such as video conferencing and voice over internet protocol) over time insensitive applications (such as file transfer), or (ii) reserving network resources (such as bandwidth) for the time sensitive applications prior to their transmission.The latter approach guarantees QoS.
In this study, a mechanism that assesses QoS is implemented on a portable microprocessor board.The use of embedded systems in recent years has increased in such a way that impinged into various mobile and multimedia applications.An efficient environment for microcontroller applications is KEIL MDK-ARM [1].The features of KEIL MDK-ARM are its ease of use, and the manner it can be redesigned based on application's requirements without incurring major non-recurring engineering (NRE) costs.
The contribution of this paper is the implementation of the regression modelling to assess QoS that was reported in [2] on the MCB2300 KEIL ARM microcontroller board.
MDK-ARM Microcontroller board has been used in a number of studies to implement different applications.For instance, the digital implementation of a prototype DC motor control system was performed based on MCB 2300 KEIL microcontroller [3].
In [4], a new algorithm was proposed to reduce the KEIL ARM memory requirement needed by an application program.The proposed algorithm enhanced ARM microprocessor performance.The remainder of this paper is organized as follows : in Section 2 the theory of the regression model that was used to assess QoS is explained.Section 3 outlines how the QoS assessment technique was devised based on regression modelling and its implementation on the MCB2300 KEIL ARM microcontroller board.Section 4 describes the process of modelling the transmitted traffics over the simulated network.The results are discussed in section 5. Finally, the conclusions are presented in Section 6.

Regression Models
Regression models provide an exploration of the relationships between several variables.One variable is the dependent or response variable and the others are independent or descriptive variables [5].Equation (1) defines the regression model between the dependent variable ( ) and independent variables ( , , … ., ),

⋯ 1
In matrix notation, the regression model can be written as in equation ( 2).

Or
Y=Xb + e where , , , … is a vector of the regression coefficients that are determined from recorded data and is a vector of n error terms.The regression coefficients are calculated using equation (3).

3
The vector of residual (i.e.error terms) is given by equation ( 4). 4 In order for the regression model to be valid as an accurate predictor, there are some assumptions that need to be met [6].These are: X and Y need to be linearly related, X needs to be non-stochastic and measure without error, the error needs to be independent and normally distributed.
The prediction accuracy of regression model can be measured using correlation coefficient.The magnitude of correlation coefficient (R) is between 0 and 1.The values close to 1 indicate a high correlation, whereas values less than 0.5 indicate a low correlation.The correlation between the actual values ) and predicted values can be calculated using equation (5).
where is the actual value, is the mean of the actual values, is the predicted value, and is the mean of the predicted values.

KEIL MCB2300 Evaluation Board
The hardware components and interfaces of the MCB2300 board are shown in Figure (1).The connectors on the MCB2300 board provide an easy access to the onchip peripherals [1].The MCB2300 Evaluation Kit uses the µVision IDE software tool.
The MCB2300 Evaluation Board is a USB-powered device.The MCB2300 Evaluation Board can be connected directly to the KEIL µVision Debugger installed on the PC using the KEIL ULINK USB-JTAG Adapter, and no additional software is required on the board.The µVision IDE software is used to create, compile, download, debug and run a program on the MCB2300 board.When the program is downloaded and ran successfully, the MCB2300 board could work independently as a standalone device.
The advantage of KEIL MCB2300 Evaluation Board is the ease of generating, testing, and redesigning application programs.

An Overview of QoS Parameters
In this study, VoIP application was considered to assess its overall QoS.VoIP is sensitive to network QoS parameters such as delay, jitter, and packet loss ratio.Table 1 indicates the QoS requirements of VoIP, where delay, jitter, and packet loss ratio requirements are listed [7].High (poor quality) >400 >3 >4

QOS ASSESSMENT IMPLEMENTATION USING KEIL MCB2300 ARM
A schematic diagram of the proposed regression model based computer network QoS monitoring system using the KEIL ARM microcontroller board is shown in Figure 2.
The QoS parameters (i.e.delay, jitter, and packet loss ratio) were obtained from the generated trace files of the simulated network.The extracted QoS parameters were then used as inputs to KEIL MCB2300 microcontroller to quantify the overall QoS.The following subsections explain the QoS assessment technique using regression model and the digital implementation of the devised QoS assessment technique using MCB2300 KEIL ARM board microcontroller

Regression Model Based QoS Assessment
In the devised regression model, the values of independent variables ( , , ) were represented by delay, jitter, and packet loss ratio respectively, while the values of dependent variable ( ) were represented by the overall QoS.The values of QoS parameters of VoIP (i.e.delay, jitter, and packet loss ratio) were normalised in order to have the same contribution for measuring overall QoS.The normalisation process considered the limits for QoS parameters, where the overall QoS is poor.For VoIP, these limits are 600 ms for delay, 5 ms for jitter, and 6% for packet loss ratio.
The regression formula was produced based on QoS requirements listed in Table 1 in order to provide the outputs that reflected the overall QoS.The QoS parameters shown in Table I were categorized as: Low, Medium, and High.The overall QoS on the other hand was classified as Good, Average, and Poor quality corresponding to the categories of QoS parameters.The overall QoS spans between (0%-100%).Low QoS parameters (i.e.delay  150 ms, jitter 1 ms, and packet loss ratio  2%) corresponded to good overall QoS which ranged between (67%-100%), medium QoS parameters (i.e. 150 < delay  400 ms, 1 < jitter 3 ms, and 2% < packet loss ratio 4%) corresponded to average QoS (i.e.33% < QoS  67%), whereas high QoS parameters (i.e.delay > 400 ms, jitter > 3 ms, and packet loss ratio > 4%) corresponded to poor QoS (i.e.QoS  33%).
The QoS parameters and the overall QoS were then arranged in matrices to feed them to the regression model as follows: … , are delay, jitter, packet loss ratio, and overall QoS respectively.The regression coefficients , , , were determined from the recorded data using equation (3).The vector of residual (i.e.error terms) was then calculated using equation ( 4).The calculated errors were normally distributed indicating that the mean of error terms , 1,2, … , was zero.This implies that the estimated regression model determined was as in equation ( 6): … , are the overall QoS delay, jitter, packet loss ratio for packet respectively.

Implementation of QoS Assessment Method using the KEIL MCB2300 ARM Microcontroller
The code for implementing the developed QoS assessment technique using regression model was written in the C language so that it could be implemented on MCB2300 board.The KEIL µVision was used to create, compile, download, debug, and run the C program on the MCB2300 board.Once the program operation was successfully verified, the MCB2300 board worked as a standalone device.
Figure 3 shows the pseudo code of the program implemented on the MCB2300 board.The QoS parameters (i.e.delay, jitter, and packet loss ratio) were inputted into the QoS monitoring device (i.e.programmed MCB2300 board) through the SD connector.The liquid crystal display of the QoS monitoring device indicated when that the SD card was inserted and data processing was initiated.The device processed the QoS parameters file, read the values of delay, jitter, and packet loss ratio, and then assessed the QoS using equation (6).
The device created an output file and recorded the values of delay, jitter, and packet loss ratio, and their corresponding QoS value.
As soon as the QoS monitoring device completed the data processing, the overall network QoS was displayed on the display screen of the device.

TOPOLOY AND TRAFFIC SCENARIO CHARACTERISTICS
To validate the performance of QoS monitoring system, a wireless-cum-wired network topology illustrated in Figure 4 was simulated using the Network Simulator-2 (ns-2) [8].The network topology consisted of 8 wireless nodes, 2 wired nodes, and 2 base stations.The bandwidth of wired connections was 5 Mbps and 2 ms propagation delay.The wireless local area network (WLAN) was based on IEEE 802.11e standard and implemented enhanced distributed channel access (EDCA) technique.
The queue management mechanism was Drop-Tail and the queue size was 50 packets.A number of traffic types were transmitted over the simulated network.These were; VoIP, video-conferencing and best effort traffic.Constant Bit Rate (CBR) traffic was adapted to model VoIP, videoconferencing, and data.VoIP modelled as G.711 voice encoding scheme with 160 packet size and 64 kbps generation rate.The packet size of the video traffic was 512 bytes and the inter-packet interval was 10 ms.This generated a packet transmission rate of 384 kbps.The best effort traffic was modelled using different packet sizes and the generation rates that corresponded to non-videoconferencing or VoIP usage.All traffic were transmitted using UDP.
The simulation time was 500 seconds and was repeated 10 times for each experiment.Each time a different initial seed was used in order to randomly manage which node transmitted first as all the nodes were requested to transmit at a given time.The randomness introduced using the different seeds avoided the bias of random number generation.The transmitted traffic (VoIP, video-conferencing, and best effort traffic) were mapped into three access categories (ACs) to represent the three priorities levels as shown in Table 2. VoIP had the highest priority, whereas best effort traffic had the lowest priority [9].However, due to the high sensitivity of VoIP quality to the QoS parameters as shown in Table 1, in this study, the quality of VoIP traffic was evaluated.

RESULTS AND DISCUSSION
After the traffic was configured and the network topology was simulated, the QoS parameters (i.e.delay, jitter, and packet loss ratio) of VoIP were extracted from the generated trace files of the simulated network.The QoS parameters were then used as inputs to KEIL MCB2300 microcontroller to quantify the overall QoS.
Table 3 shows the results from the devised QoS monitoring system.From the table, it can be observed that the QoS values reflected the corresponding QoS parameters.In other words, as the values of QoS parameters increased, the values of overall QoS decreased accordingly.
The results obtained were compared with other QoS assessment methods (i.e. the developed fuzzy inference system FIS [10], distance measure [11], and neural network [12]).The values of the correlation coefficients between QoS determined using the monitoring tool, and the other QoS assessment methods were: 0.97 (for FIS), 0.99 (for distance measure), and 0.99 (for neural network).From the values of evaluated QoS provided in Table 3, it can be concluded that all approaches provided results which were closely comparable.Although some outputs were slightly different, they were in the same QoS region (i.e.poor, average, or good).The discrepancies are due to the fact that each method follows a different scheme to determine QoS.However, the values of QoS obtained from the proposed monitoring device spanned between (1%-100%), whereas the range of QoS values produced by FIS was between (10%-90%).This indicates that the QoS monitoring tool could be more effective.

CONCLUSION
In this study, a portable hand-held device to assess the QoS for multimedia applications was designed and evaluated.Our developed QoS assessment technique which was based regression model published in previous work was implemented on the MCB2300 KEIL ARM microcontroller board.The proposed device analysed the QoS parameters for multimedia applications to measure the overall QoS.The QoS parameters (i.e.delay, jitter, and packet loss ratio) were fed into the proposed device which in turn produced a single value that represented the overall QoS.
The QoS assessment results were highly correlated with results obtined from a number of previously developed QoS assessment methods.This indicated the effectiveness of the developed system in monitoring QoS.