Yassine Douga
email: yassine.douga@hotmail.com

Yassine Hadjadj-Aoul

Malika Bourenane

Abdelhamid Mellouk
email: mellouk@u-pec.fr

Adaptive video streaming solution based on multiaccess edge computing advantages

Keywords: Dynamic Adaptive Video Streaming, Multi-access Edge Computing (MEC), QoE, Optimization, Congestion, User Terminal

In the last few years, video streaming traffic surpassed all the other Internet traffic. This is mainly due to the substantial and ever-increasing size of video files and the widespread popularity of streaming services. A significant portion of the traffic above originates from mobile devices, thereby increasing demands on operators' infrastructures and potentially degrading services. The content providers' response has been to adopt adaptive video streaming techniques that avoid playback interruptions, as these interruptions are the leading cause of the deterioration in the Quality Of Experience (QoE). To go beyond end-to-end approaches, the authors proposed a new strategy that utilizes the Multi-access Edge Computing (MEC) standard to optimize streaming services. Being located at the MEC level allows, indeed, to be aware of the network congestion's state, which facilitates optimizing network operations. The suggested seamless strategy considers the users' devices' parameters to prevent them from selecting video quality options that would not enhance their viewing experience. By avoiding choices that could diminish the quality or worsen the experience, our strategy optimizes network resources and reduces energy and bandwidth consumption on the mobile device side. The proposed approach was implemented and tested within an emulation environment. The findings demonstrate the suitability of this type of approach in comparison with existing strategies (YouTube service) in terms of users' satisfaction and network performance.

INTRODUCTION

With the widespread availability of affordable high-speed Internet access, Internet traffic has grown at an unprecedented rate, mainly driven by video traffic [START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF]. This evolution has led to the emergence of new stakeholders in the field of video content distribution, including video-sharing platforms such as YouTube or video distribution platforms such as Netflix and Amazon Open Connect appliances. Given the nature of the Internet as a "best effort" network, streaming frequently carries the risk of playback interruptions for end users, resulting in a decline in the Quality of Experience (QoE). These factors contributed to the rapid adoption of adaptive Hypertext Transfer Protocol (HTTP) video streaming since it can accommodate variations in network conditions by lowering the received video quality to avoid interruption, which is the most critical element of the user experience [START_REF] Schwarzmann | Estimating Video Streaming QoE in the 5G Architecture Using Machine Learning[END_REF]. Moreover, over the last few years, there has been a substantial rise in the utilization of mobile devices to access Internet services [START_REF] Mehrabi | Edge Computing Assisted Adaptive Mobile Video Streaming[END_REF]. Among these services, video streaming has appeared as one of the most prevalent and captivating fields on the Internet. Many Internet service providers, including popular platforms like YouTube, Netflix, and Amazon Prime, actively pursue an expanded client base. To achieve this objective, each provider recognizes the need to offer their customers enhanced services and superior QoE. This prevailing trend has led to considerable research efforts and the emergence of various proposals in this area, such as Dynamic Adaptive Streaming over HTTP (DASH) [START_REF] Wanxin | QoE Ready to Respond: A QoE-aware MEC Selection Scheme for DASH-based Adaptive Video Streaming to Mobile Users[END_REF], which is considered one of the most used techniques.

The QoE is defined here as the measure of the overall acceptability of an application or a service, which is perceived subjectively by the end user. Users' profiles are important metrics influencing the QoE [START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF]. Recently, many improvements to DASH have been proposed [START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF][START_REF] Yue | A Mobile Edge Computing-Based Architecture for Improved Adaptive HTTP Video Delivery[END_REF][START_REF] Roberto | A Network-Layer QoE Model for YouTube Live in Wireless Networks[END_REF][START_REF] Schwarzmann | Estimating Video Streaming QoE in the 5G Architecture Using Machine Learning[END_REF][START_REF] Vega | A Review of Predictive Quality of Experience Management in Video Streaming Services IEEE transactions on broadcasting[END_REF][START_REF] Minsu | Edge Computing Assisted Adaptive Streaming Scheme for Mobile Networks[END_REF][START_REF] Wanxin | QoE Ready to Respond: A QoE-aware MEC Selection Scheme for DASH-based Adaptive Video Streaming to Mobile Users[END_REF][START_REF] Mehrabi | Edge Computing Assisted Adaptive Mobile Video Streaming[END_REF][START_REF] Barman | QoE Modeling for HTTP Adaptive Video Streaming-A Survey and Open Challenges[END_REF][START_REF] Kim | Reinforcement Learning-Based Adaptive Streaming Scheme with Edge Computing Assistance[END_REF]. Most of these improvements are classified into two main classes. The first class represents the improvements concerning the users' side. The improvement methods are directly injected into the users' devices in this class. Users must use or install additional plugins and applications on their terminal devices to apply the improvement. Out of the fact that installing additional plugins/applications can disturb users by consuming the terminal's resources, such as the battery, Central Processing Unit (CPU), Random Access Memory (RAM), and memory storage; one must be compatible with all users' operating systems. Furthermore, most of these improvements need to consider the Quality Of Service (QoS) parameters. The main advantage of such modification is that it does not require much effort or a big budget. After realizing an improvement, the service provider needs to release a new version of the plugin or an application update.

The second class covers server-based improvements. All the upgrades occur in this class from the user's terminal devices. Implementing such improvements by the service providers requires a dedicated effort and financial resources. The other advantage of this improvement is that the users do not need to install or add any additional plugins or applications since we have to notice the progress of their QoE. In addition, this optimizes their terminal's resources. Multi-access Edge Computing (MEC) presents a promising opportunity for leveraging networking infrastructures (see Figure 1) more effectively. By offering cloud computing capabilities and Information Technology (IT) services within the Radio Access Networks (RAN) [START_REF] Minsu | Edge Computing Assisted Adaptive Streaming Scheme for Mobile Networks[END_REF], MEC enables Internet service providers to target a larger client base [START_REF] Roberto | A Network-Layer QoE Model for YouTube Live in Wireless Networks[END_REF].

Providers must enhance their services and favor QoE for their customers to achieve this goal. This situation has sparked extensive research and numerous proposals, with one of the most notable techniques being DASH [START_REF] Wanxin | QoE Ready to Respond: A QoE-aware MEC Selection Scheme for DASH-based Adaptive Video Streaming to Mobile Users[END_REF].

Fig.1 MEC environment

The MEC aims to create an agent near the mobile devices that improves the network QoS, such as good latency and ensures highly efficient network operations and service delivery while enhancing the users' experience [START_REF] Beck | A Taxonomy[END_REF]. The term "Edge" was added to refer to the radio base station and servers within the radio network (e.g., Node B, Radio Network Controller (RNC), etc.). In this new environment, the MEC agent can get the network, users, and radio parameters and information in real-time, which are not accessible to the users or the server. The MEC agent enables access to information that was previously unavailable in a traditional environment without MEC, thanks to the implementation of cross-layer solutions. In addition, the MEC agent can do some operations and treatments based on the information and parameters stored on the cloud to improve the users' experience and communication QoS since mobile users sometimes have limited computing capabilities and battery storage [START_REF] Li | Computation Offloading in Multi-UAV-Enhanced Mobile Edge Networks: A Deep Reinforcement Learning Approach[END_REF].

In this paper, the authors focus on a particular adaptive streaming approach that uses users' terminal parameters such as screen size, screen resolution, battery availability, and user feedback to improve their experience. This approach was based on DASH and adapted to a MEC environment. Similarly, this adaptation provides a better QoE and service by optimizing the resources of the user terminals by using the adaptation process in the MEC station instead of the user terminals. The paper proposes enhancing our previous idea, described in [START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF], by adding a congestion control function that allows improved QoS and QoE results.

The rest of the paper was organized as follows: Section 2 describes related works. Section 3 focuses on things that can be improved in [START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF] and the problem formulation. Section 4 describes the proposed adaptation and its advantages. The emulation environment scenarios and results are discussed in section 5. Finally, we conclude the paper with a conclusion.

RELATED WORKS

Video streaming services over HTTP have become widespread, with various approaches proposed to enhance the QoS and improve the overall QoE. In main objective of this section is to address the issue of QoE improvement in video streaming. A comparative analysis of these solutions is performed in a way to provide insight into their effectiveness and limitations. Examining these related works aims to contribute to the advancement of video streaming technology by suggesting a new solution to the identified problems.

Among the proposed solutions to improve video streaming quality, adaptive video streaming over HTTP stands out as a popular and widely adopted method [START_REF]The Standard for Multimedia Streaming Over Internet[END_REF]. The core idea behind adaptive video streaming was to store a video sequence with different quality levels. When a user requests a video, the system dynamically adjusts the streaming quality based on the user's network parameters. This approach mitigates video streaming issues and provides improved QoS and QoE outcomes.

In [START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF], the authors introduced a novel solution to enhance the users' QoE in adaptive video streaming over HTTP. They proposed integrating the user's terminals' parameters and their feedback as additional criteria in the adaptation process. A vital component of this approach was the creation of a virtual interface that manages all incoming video streaming flows with maximum bandwidth capacity calculated based on newly added metrics. The considered user parameters encompass the leading terminal's displaying resolution, screen size, and battery availability. These parameters are weighted using factors such as the Resolution Factor (FR), the Battery Factor (FB), and the Screen Size Factor (FS) and contribute to the calculation of a global User Factor (UF) that represents the user's terminal. Each UF value corresponds to a specific received video quality, thereby determining the allocated bandwidth for the virtual interface (see Tables 5 and6 for more details).

To evaluate the user's satisfaction, the Mean Opinion Score (MOS) was employed in [START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF] as a rating system ranging from one to five, capturing the overall sentiment towards the service. In this approach, named TCP Based-User Control For Adaptive video streaming (TBUC), this value was used to update table values, which attribute for each UF value a video quality using a reinforcement learning solution with Markov Decision Process (MDP) [START_REF] Elgendy | Joint computation offloading and task caching for multi-user and multi-task MEC systems: reinforcement learning-based algorithms[END_REF], as shown in Figure 2. TBUC was tested in a LINUX environment with various scenarios, showing superior QoE results compared to a conventional adaptive video streaming service. Fig. 2 TBUC approach [START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF] In [START_REF] Kim | Reinforcement Learning-Based Adaptive Streaming Scheme with Edge Computing Assistance[END_REF], the authors proposed an adaptive streaming solution that leverages reinforcement learning in a MEC environment. This user-centric solution aims to enhance the users' QoE by employing machine learning techniques, specifically the MDP. The MEC agent utilizes information provided by edge computing assistance about the users to generate a multi-client adaptive streaming policy. Each user's measured bandwidth, buffer level, and requested bitrate in the proposed system serve as states. These states are input to a neural network, which determines the user's most suitable video bitrate. Additionally, the QoE metric was employed as a reward, which plays a crucial role in the neural network's decisionmaking process. We noticed the superiority of the proposed solution in terms of QoE against existing solutions from the obtained results.

In [START_REF] Yue | A Mobile Edge Computing-Based Architecture for Improved Adaptive HTTP Video Delivery[END_REF], the authors propose a novel architecture for adaptive HTTP video streaming services in a MEC context. The basis of this solution was to improve the users' QoE by reducing the probability of network congestion. To achieve this goal, the authors proposed an algorithm that dynamically controls the video representations available at the clients' side according to the current network status, thereby improving the clients' video adaptation mechanism. In a normal situation, when a particular user requests a video to a DASH server, the server sends back a Media Presentation Description (MPD) file, which includes information about the available bitrates, the timing, and the supported format/codec, as well as the Uniform Resources Locator (URL) of the video Scheme along with Edge Computing Assistance and audio segments. In case of congestion, the proposed algorithm automatically intercepts all MPD files at the MEC level and decides which video representations should be removed from the MPD file to relieve network congestion [START_REF] Yue | A Mobile Edge Computing-Based Architecture for Improved Adaptive HTTP Video Delivery[END_REF]. A video representation (i.e., a video quality) is suppressed by deleting the URI pointing to it in the MPD file. The proposed solution was tested through emulation. The study's findings indicate that the suggested solution gives a better MOS when overloading the network. Where S is a set of available video qualities on the MPD file.

Regarding the complexity of the solution [START_REF] Kim | Reinforcement Learning-Based Adaptive Streaming Scheme with Edge Computing Assistance[END_REF], the proposed approach used a neural network model, which is generally a complex solution which consumes time (for training).

Table 1 compares the various states-of-the-art strategies, and situates the proposed approach more clearly in relation to the other approaches, as it enables actions to be taken not only at the user level, but also at the network level. Moreover, our approach was QoE-oriented and based on a MEC architecture.

TCP BASED-USER CONTROL FOR ADAPTIVE VIDEO STREAMING OVER MEC ENVIRONMENT 3.1 Problem context

One of the benefits of 5G and MEC architecture is its potential to enhance Internet services, especially Over The Top (OTT) video streaming services. We assign a default feedback value of 4. As video streaming traffic occupies the most important part of global traffic, improving the performances of such services highly impact the global Internet and its users [START_REF] Gao | Deep Reinforcement Learning based Node Pairing Scheme in Edge-chain for IoT Applications[END_REF]. However, most of the existing solutions for video streaming improvement focus on, either, the user side or the server side, but not both simultaneously.

The purpose of the proposed solution was to suggest an approach which considers the user side and the server side at the same time in order to achieve better results.

Proposed approach

The idea behind the proposed TBUC approach was to centralize all operations, treatment and data that were previously collected and gathered by the TBUC solution on one point -MEC agent. This relieves the users' devices from executing additional operations like calculating the UF of the device, adapting the maximum quality and creating a virtual interface. This improves devices' resource consumption and network latency. Moreover, in TBUC, the data gathered from all users is employed to enhance the network QoS, directly improving the users' QoE.

TBUC can be divided in three main steps. The first step corresponds to the adaptation of the received video quality based on the user's terminal parameters. The second step is responsible for improving the global QoS of the network using data gathered in the first step. The third step makes use of a Machine Learning (ML) algorithm based on the user's MOS to adapt and improve the obtained results.

In the first step of the proposal, each time a user makes a video request from an adaptive video streaming server, the MEC agent intercepts it (HTTP request), extracts the user device parameters and calculates the UF of the device, then estimates the video quality that corresponds to the UF. The calculated UF and video quality of each device are stored into a database with devices' multimedia access control address (MAC) as the primary key. Once the adaptive video streaming server receives the user video request, it responds by sending the video MPD file to the user, which contains different links to video segments stored in multiple qualities. Before the MPD file reaches the user, the MEC agent intercepts it, removes all video's qualities superior to the estimated maximum, then sends it to the user's video player.

The value of UF was calculated according to the user's device parameters. The considered device parameters are screen size, screen resolution and battery availability.

To calculate the first value of UF authors use the formula 1

UF = FR + FB + FS (1)
The values of FR, FB and FS are obtained from the tables 2, 3 and 4: 1970 The values of the tables 2, 3, 4, 5, 6 and 7 are obtained from TBUC solution [START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF].

To obtain the video quality that goes with the UF, one may also refer to table 5 of the TBUC solution.

The organizational chart on the figure 3, explains how the first step works (MEC agent side):

Fig.3 Flow diagram of the first step

In the second step, we adjust the QoS parameters to optimize bandwidth consumption and avoid network congestion. This was achieved by estimating the global required bandwidth value of all active and connected adaptive video streaming users to the same MEC agent.

To obtain the global required adaptive video streaming bandwidth value we summed up all maximum required bandwidth values corresponding to each UF (from the database) of connected and active users.

VSRB = ∑ 𝑉𝑆𝑈𝑅𝐵 ! "#$ (𝑖) (2)
With VSRB: adaptive video streaming required bandwidth n: number of connected and active users VSURB: Adaptive video streaming user required bandwidth

The obtained adaptive video streaming global required bandwidth value was used as a reference to limit the bandwidth value allocated by the operator to adaptive video streaming services.

The closer the global available bandwidth value of the access point is to the global adaptive video streaming required bandwidth value, the higher the risk of network congestion. To solve this, when the difference between these two bandwidth values reaches a threshold, the MEC agent automatically removes temporarily the highest video quality links available in each MPD file destined for users.

In the last step, we applied a machine learning mechanism that adapts the video quality corresponding tu the UFs values according to the average MOS values across all users. This operation was performed periodically.

Formalism of the proposed models:

a. First model: Adaptation according to the terminal parameters:

The adaptation problem can be formulated as an MDP, which is defined as a tuple (S, A, P, R), where S and A denote state and action spaces, P (St+1|St, a) represents the transition probability from state st ∈ S to st+1 ∈ S when taking action a ∈ A, and R denotes the reward by taking action a at state s. [START_REF] Gao | Deep Reinforcement Learning based Node Pairing Scheme in Edge-chain for IoT Applications[END_REF] When the MEC agent intercepts the MPD file (in its destination to the user) after a video request, it modifies it according to the values of tables 2, 3, and 4. The MEC agent updates the values of Ufs using a finite MDP. Let's suppose that K users are connected to the edge. Form K connected users, N users are using adaptive video streaming services. Each user was identified by his MAC address, US= {MAC1, MAC2… MACN}. For each user from US, a value of UF was calculated and attributed. The Ufs are indexed by I= 1, 2, 3…. L. We called this set A where A= {A l i / i= MAC1, MAC2… MACN & l= 1, 2, 3…. L}.

In addition, we have a set of users' feedbacks F indexed by j= 1, 2, ……, M where F= {F j i / i= MAC1, MAC2… MACN & j= 1, 2, 3….M}.

Authors proposed a framework based on a MDP to choose the adequate video qualities. We consider that each user Q has a maximum authorized video quality X, X was index by S= 1, 2, 3,…..X and Q= {Q s i / i= MAC1, MAC2… MACN & S= 1, 2, 3….X}.

• MDP formulation:

System states: The system state at time t was defined as St (UFt l , VQt l ), where the vector represents the allowed VQt l that go with a specific UF at time t. The allowed set of VQt l changes according to users' feedbacks and network condition, so the system state set S= {S1, S2, S3, ….., St} keeps changing in time.

System actions: A sequence of action was defined by {act} where t= {1, 2, 3,…..*}. The action act is a decision made at time t. The action set of a specific state was given by AC(s) = {ACUFVQ, ACup} where ACUFVQ was the action that deletes all video qualities that are superior to the video quality that goes with the UF according to the table 5. The ACup was the action that updates the values of Ufs according to the average value of the users' feedbacks.

State transition:

The transition between St and St+1 was determined by the available video quality of the video and the value of UF at time t.

The transition probability was obtained by this formula:

PAct(St, St+1) = Pr{St+1 | St, ACt} = Pr {(UFt l , VQt+1 l ) | (Rt, VQt l ), ACt} = Pr {(UFt+1 l | UFt l , UFt+1 l = ACt} Pr{ VQt+1 l , VQt l } (3)
Pr{VQt+1 l , VQt l } was obtained as follows:

Knowing the set of allowed video quality that goes with a specific UF in time t, we can estimate the probability to transit to the set of allowed video quality of a specific UF at time t+1 using the transition matrix of the Markov Model: Pr = {Rt+1| Rt, Rt+1= ACt}, the decision was made according to the action ACt.

Reward function:

The reward is the obtained payoff after executing an action ACt to transit from a state St to St+1. In our case, we want to get a QoE reward function to consider the users' satisfaction. The reward value was obtained according to the average of obtained MOS of users. Each value of MOS was obtained while executing action ACt to transit from state St to St+1.

R t+1= 𝑓+𝐴𝑉𝐺(𝑅 %& ! (𝑆 ' → 𝑆 '($ )/ (4)
Where AVG ( 𝑅 %& ! (𝑆 ' → 𝑆 '($ )) is the average value of obtained MOS values while executing action 𝐴𝐶 ' to transit from St to St+1.

The 𝑓 function takes its values from the next table (Table 7): 0 The obtained reward value will be added to the value of UF of each connected user. The idea behind adding the reward value to the UF was to improve the maximum authorized video quality when most of the users are not satisfied or to keep the system state as it is when the users are satisfied.

The MOS, was obtained directly from the end users. The authors asked a group of about 15 participants to watch different videos with varying quality levels and rate their subjective quality perception on a scale from 1 (bad) to 5 (excellent), following the ITU-T P.800 recommendations. The MOS for each video was then computed as the arithmetic mean of the individual ratings.

It is important to mention that the MOS value for each user was initialized at 4, so if a user does not provide a MOS value, we consider they were satisfied.

Algorithm 1: Adding/updating user's information

b. Second model: adaptation according to network conditions

A second finite MDP was used to formulate this adaptation process. It uses the same resources as the first process.

Periodically, the MEC agent checks the sum of the required bandwidths according to the maximum video quality of all connected and active users. The difference between the sum of the bandwidths and the bandwidth allocated to the adaptive video streaming service will be used to estimate the probability of network congestion.

To estimate the probability of congestion we use the following formula:

𝑃𝑐 ' = ∑ *+, " #$% (") *+/0 ! ( 5
)
Where Pc is the probability of congestion, 'n' the number of connected and active users, BWQ (i) the required bandwidth to display the maximum authorized quality of a user (i) and BWVS is the adaptive video streaming service allocated bandwidth.

Since the value of Pc is under a threshold value, the adaptation system remains inactive. When the Pc reaches the threshold, the adaptation system reacts by temporarily removing the best video quality on each MPD file in its destination of users and modifying the values of UFs.

We also proposed a framework based on an MDP to prevent network congestion.

• MDP formulation:

System states: The system state at time t was defined as SSt (UFt l , Prt), where the vector represents the probability of network congestion Prt along with the value of UF of each user at time t. The network congestion probability changes according to the value of active UFs, so the system state set SS= {SS1, SS2, SS3, ….., SSt} keeps changing in time.

System actions: A sequence of action was defined by {att} where t= {1, 2, 3,…..*}. The action act was a decision made at time t. The action set of a specific state was giving by AT(s) = {ATcg, ATuf} where ATcg was the action that calculates the congestion probability, compares it to the threshold values and deletes all video qualities that are superior to the video quality that goes with the threshold value. The ATuf was the action that updates the values of UFs according to the values of network congestion probability.

State transition:

The transition between SSt and SSt+1 was determined by the value of network congestion probability at time t.

Reward function (G):

The reward was the obtained payoff of executing an action ATt to transit from a state SSt to SSt+1. In our case, we want to get a reward function that modifies the values of UFs according to network congestion probability to prevent network congestion in the future.

r t+1= 𝐺(𝑃𝑟 ' ) (6)
We suppose that Y is the value of the network probability congestion threshold. Where the values of x, y and z are obtained from table 8. In adaptive video streaming over HTTP , the server sends and updates the MPD files periodically. In Netflix, for example, this corresponds to 30 seconds [START_REF] Adhikari | Unreeling netflix: Understanding and improving multi-CDN movie delivery[END_REF]. Thus, in case of poor network condition, the proposed solution removes the highest video qualities from the newly received MPD file according to the user's parameters and network condition. For subsequent MPD file segments, if the network conditions remain the same, the solution removes the same video qualities from the second part of the MPD file, but if the network condition gets better, it only removes the video qualities according to terminal parameters.

EMULATION AND RESULTS

Emulation environment

The proposed solution has been tested and validated on a Linux environment. We developed four different scripts. The script execution is independent of user and server operations. We tested the solution across three device types -smartphones, laptops, and smart TVs -whose parameters are defined in Table 9. YouTube has been chosen as the adaptive video streaming service because its popularity and the fact that it is based HTTP [START_REF] Roberto | A Network-Layer QoE Model for YouTube Live in Wireless Networks[END_REF]. Another adaptive video streaming services-based HTTP could have been chosen. At the beginning of each emulation scenario, all terminals (working under a battery) were fully charged.

Emulation topology

To emulate a MEC architecture, we used a computer equipped with a wireless network interface. This computer uses a wired link to access to the Internet. The computer Wireless interface gives access to the Internet and YouTube server while sharing at the same time the wired Internet connection. The computer represents the MEC mobile agent. Users with different kinds of terminals were connected to the wireless interface instead of 5G Node B in real life. The scripts were executed on the computer (MEC mobile agent). The maximum speed of the wireless interface was 500mb/s and the Internet speed that links the computer (MEC agent) to the Internet is 100mb/s.

The Figure 4 illustrates emulation our topology.

Fig.4 The Emulation topology

During all emulation scenarios, the value of congestion probability threshold 'Y' was set at 0.75 and the value of adaptive video streaming maximum reserved bandwidth 'BWVS' at 9000kb/s (using QoS parameters tuning).

Emulation scenarios

We began the emulation with 3 users, each using a randomly assigned device type. Every 30 minutes, additional users were added with randomly assigned devices. After each 30-minute period, all active users rated their video streaming experience. The system checks the congestion probability and react to it (avoid network congestion). It also takes in consideration the user's feeling average mark (MOS) before applying it.

All users watch the same video from YouTube encoded in (240p, 360p, 480p, 720p, 1080p, 1440p, 2160p).

The same emulation was done without the proposed solution with YouTube service.

The table 10 shows the obtained results using our solution.

The table 11 shows the obtained results without using our solution.

The figure 5 shows the evolution of the sum of UFs according to the number of users. The figure 6 shows the evolution of congestion probability according to the number of users. The figure 7 shows the evolution of bandwidth consumption evolution according to time but without using our solution.

The figure 8 shows the evolution of the average value of MOS according to the number of users with and without using our solution. The obtained results on table 10 (while using our solution) show how the bandwidth consumption and congestion probability evolve according to the number of users and how far this evolution impacts the average value of MOS. We can notice that the number of users was not the only factor that impacts the network parameters. In time (30min) we had five users that consumed 5285kb/s and in time (1h) we had seven users that consumed 5040 kb/s. The parameters of the user terminal are a factor that determine bandwidth consumption in addition to the number of users. We can also mention that with the same number and type of users we had 6480 kb/s as bandwidth consumption in time (1h30) and 3870kb/s in time (2h), this was due to the congestion control mechanism that reduces the maximum received video quality when congestion probability reaches the threshold value. The table 11 represents the obtained results of the emulation without using our solution. We can notice that the bandwidth consumption and the congestion probability have a direct relationship with the number of users and the type of device. Bandwidth consumption was more important with our solution because there was no mechanism that optimizes it according to the device parameters. When the congestion probability reaches a threshold value, no system exists that can help to avoid network congestion. Consequently, the congestion occurs faster compared to the one in our proposed solution.

Emulation results and discussion

Fig.5 Sum of UFs evolution according to the number of users

The figure 5 shows how the sum of UFs changes according to the number of users. We notice that the evolution was not linear, due to the different type of terminals and their parameters. This shows that the value of users' feedback sum cannot be directly estimated according to the number of users without considering the type of devices used. It is important to remind that this value will be used later to estimate the network's congestion probability.

Fig. 6 Congestion probability evolution according to the number of users with and without applying the solution

The figure 6 shows the evolution of network congestion probability with and without applying our solution. We can observe that our solution avoids early network congestion and keeps the network working for a longer time using the optimization mechanism (with users' devices parameters) and the congestion avoidance mechanism through the removal of the highest video qualities when the

Congestion probabiliry

Number of users

With solution Witout solution congestion value reaches the threshold. However, without the use of the proposed solution, once congestion occurs, negative impacts on the video streaming service and the users' satisfaction are observed because of the absence of a mechanism that may reduce those negative impacts.

Fig.7 Adaptive video streaming bandwidth consumption evolution with and without applying the proposed solution

The comparison between the evolution of the bandwidth consumption with and without applying the proposed solution was described in figure 7. Our solution offers less bandwidth consumption, which gives users better data optimization. This bandwidth optimization is the results of adapting the maximum received video quality with the terminal parameters and taking into consideration the user's feeling while choosing the best video quality. Finally, figure 8 shows the differences between the MOS average value between the two conditions (with and without applying the solution). When network parameters are good, both solutions give good users satisfaction with a little advantage to our solution due to the adaptation with users' parameters which optimize users' resources. However, when the network parameters begin to fail, the gap between the studied solutions become more and more important. This is due to the congestion avoidance mechanism. In time (1h 30) when our solution was not used, the network became congested, the video streaming stopped and the users started showing signs of dissatisfaction. But with our solution (time :1h30) the video streaming kept working even though a weak performance was observed. However, the users were less satisfied than if they were in a good network condition but at least the video streaming kept working.

Conclusion

Across this paper, we presented an improvement of an existing adaptive video streaming solution. The improvement was realized in a MEC architecture. The main idea behind this proposal was to relieve users and servers from any additional tasks. All additional tasks are adapted and transferred to the MEC mobile agent to optimize users and servers' resources. A new congestion control mechanism was integrated. Emulation was used to test our proposal. The obtained results show how far our proposal improves the user's QoE and network QoS. As perspectives, we plan to improve the user manager system and their parameters, fix batteries impact update in our system, add more user's parameters and finally do more tests with additional terminals and more users (emulation with real cases).

Fig. 8

 8 Fig.[START_REF] Mehrabi | Edge Computing Assisted Adaptive Mobile Video Streaming[END_REF] Average value of MOS evolution according to the number of users with proposed solution applied and without

  services. His main research interests concern the fields of wireless networking, multimedia streaming architectures and protocols, congestion control protocols and QoS provisioning, and satellite and space communications. Dr. Hadjadj has been on the technical program committee of different IEEE conferences, including Globecom, ICC, VTC, PIMRC and IWCMC. His work on multimedia and wireless communications has led to more than 40 technical papers in journals and international conference proceedings. Malika Bourenane received her diploma (doctorate of state) in computer science from University Es-Senia Oran Algeria. Since 1984 she has been a permanent teacher at department of computer science. She is a researcher in the computer science laboratory and her main research interests include mobile ad-hoc networks, quality of service networks, queuing and scheduling theory, dynamic routing and Networks policy-based management and Real Time Application. She is member of international scientific committees of international conferences and journal.Abdelhamid Mellouk is Full Professor at University of Paris-Est C-VdM (UPEC), Networks & Telecommunications (N&T) Department and LiSSi Laboratory, France. Head of several executive national and international positions, he was the founder of the Network Control Research activity at UPEC with extensive international academic and industrial collaborations. His general area of research is in adaptive real-time control for high-speed new generation dynamic wired/wireless networks in order to maintain acceptable Quality of Service/Experience for added-value services. He is an active member of the IEEE Communications Society and has held several offices including leadership positions in IEEE Communications Society Technical Committees.

Table 1 .

 1 Comparison between different solutions Studied

	Solution	Based side	Improvement criteria	Complexity	Architecture
	Solution [1]	User	QoE	O(S)	Not MEC
	Solution [2]	Network	QoS	O(|S|)	MEC
	Solution [17]	User	QoE	-	MEC
	Proposed solution	User/Network	QoE	O(S)	MEC

Table 2 .

 2 Values of FS[START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF]

	Screen Size (SS) in Inch	FS =
	55≤SS	7
	42≤SS<55	6
	32≤SS<42	5
	15≤SS<32	4
	15≤SS<7	3
	SS≤7	2

Table 3 .

 3 Values of FR[START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF]

	Screen Resolution (TR) in Pixel	FR =
	2160≤TR	7
	1440≤TR<2160	6
	1080≤TR<1440	5
	720≤TR<1080	4
	480≤TR<720	3
	240≤TR<480	2

Table 4 .

 4 Value of FB[START_REF] Douga | TCP based-user control for adaptive video streaming[END_REF]

	Available battery in %	FB =
	40≤BC	6
	20≤BC<40	4
	0≤BC<20	2
	To obtain the video quality that corresponds to UF, one needs to refer to table 5.

Table 5 .

 5 Values of Video Quality -(VQ)

	UF	VQ
	8	240p
	9	360p
	10	360p
	11	420p
	12	420p
	13	420p
	14	720p
	15	720p
	16	1080p
	17	1440p
	18	1440p
	19	2160p
	20	2160p
	To estimate DASH adaptive video streaming bandwidth consumption according to video quality, one
	may refer to

Table 6 Table 6 .

 66 The required bandwidth according to video quality

	VQ	Required Bandwidth (RB) in Kb/s
	240p	57
	360p	128
	420p	245
	720p	430
	1080p	720
	1440p	1057
	2160p

Table 7 .

 7 The relationship between average value of MOS and reward value𝐴𝑉𝐺(𝑅 %& ! (𝑆 ' → 𝑆 '($ ) 𝑓+𝐴𝑉𝐺(𝑅 %& ! (𝑆 ' → 𝑆 '($ )/= Reward t+1

	1≤ and >2

end if Algorithm 2: Adaptation according to user's information

	Input: M, a, TR, BC Output: M, UF, VQ, MBW If ( video_request ==1 ) then // user request a video from the server Mß Get_source_mac (video_request) // get user's mac address a ß Select mac from database, where mac=M If ( a==NIL ) then //if new user TRß Get_TR(video request) // get user's terminal resolution BCß Get_BC(video request)// get user's available battery UFß user_factor(TR,BC,SS) //calculating the user factor VQß choose_quality(UF) // Select the video quality that goes with the user factor MBWß choose_bandwidth(VQ) // Select the required bandwidth MBW that goes with the maximum video quality of the user Save_database(M, UF, VQ, MBW) end if Output: MPD, ms If ( video_answer == 1 ) then // Intercept MPD file msßGet_destination_mac(video_answer) //get destination user's mac address vqßSelect vq from database where mac=ms // get the maximum video quality of the user mpdßGet_mpd(video answer) Update (mpd,vq) // delete all MPD video segments links with video quality superior to vq Send (mpd, ms) end if Algorithm 3: Updating the value of UF according to user's feedbacks 1 2 3 4 5 6 7 8 9 10 11 1 2 3 4 5 6 7 Input: fb, r, mpd Output: UF, r 1 While ( service == 1 ) do // while our system is on 2 fbß Select avg(feedback) from database; // calculate average feedback 3 rß Get_reward(fb) // get the reward value that goes with the average feedback value 4 mpdß Get_mpd(video answer) 5 Update (UF,r) // add the value of r to all values of UF on the database 6 Sleep (t) 12 Input: MPD, ms 7 end while

Table 8 .

 8 Relation between network congestion probability and the reward valueAfter each transition between St and St+1 a reward value was calculated and applied according to table 8. The reward value will be added to the values of UFs of connected and active users.

	(Prt -Y)	Reward t+1
	≤0.05	0
	>0.05 and ≤0.1	-0.5
	>0.1 and ≤0.2	-1
	>0.2	-2
	Algorithm 4:

Updating the value of UFs according to congestion probability

		Input: bw, bwvs, y, x, z
		Output: UF
	1 While ( service==1 ) do // while the system is on
	2	bw ß Select_Sum (MBW) from database; //calculate the global bandwidth consumption of all users
	3	pr ß bw/bwvs; //calculate the network congestion probability
	4	aß pr-y; //y is the congestion probability threshold
	5	While ( a>=0 ) do
	6	If ( a > x and a=<y ) then
	7	Update database set UFß UF-0.5 // Sum the value of 'a' to all database user factors
	8	Else If ( a > y and a=<z ) then
	9	Update database set UFß UF-1 // Sum the value of 'a' to all database user factors
	10	Else If a > z then
	11	Update database set UFß UF-2 // Sum the value of 'a' to all database user factors
	12	end if
	13	end if
	14	end if
	15	end while
	16 end while

Table 9 .

 9 Emulation according to terminal parameters

	Device	Screen size (inches)	Resolution	Battery life (hour)	Max number of users	Default UF
	Smartphone	6.7	1440p	22	5	14
	Laptop	15.5	1080p	2.5	5	16
	Smart TV	55	2160p	-	5	20

Table 10 .

 10 Emulation results when applying the proposed solution

	Time	Number of users	UFs Sum	Congestion probability	Bandwidth consumption	Average value of MOS
	0h	3	56	0,453	3171	4
	30min	5	86	0,755	5285	5
	1h	7	116	0,72	5040	4
	1h30min	9	148	0,92	6480	5
	2h	9	148-18	0,55	3870	3
	2h30min	12	172+6	0,73	5160	2
	3h	15	218+15	0,92	6450	3

Table 11 .

 11 Emulation results without applying the proposed solution

	Time	Number of users	Congestion probability	Bandwidth consumption	Average value of MOS
	0h	3	0,53	3747	4
	30min	5	0,755	5285	4
	1h	7	0,96	6774	3
	1h30min	9	Congestion	8551	1
	2h	9	Congestion	8551	1
	2h30min	12	Congestion	12298	1
	3h	15	Congestion	16045	1

Conflict of interest statement: We have no conflicts of interest to disclose.

DATA AVAILABILITY STATEMENT: Data sharing not applicable to this article as no datasets were generated or analyzed during the current study


Zahraa El Attar
email: zahraa.elattar@univ-rennes1.fr

Yassine Hadjadj
email: yassine.hadjadj-aoul@irisa.fr

Géraldine Texier
email: geraldine.texier@imt-atlantique.fr

Monitoring Network Slices with a Genetic Algorithm Approach

Keywords: 5G, Slice, Network monitoring, Tomography, Genetic algorithm

Network virtualization enables 5G slicing, a technique for sharing physical resources among isolated slices managed by different actors. However, monitoring slices' performance is becoming challenging due to the significant network overhead associated with direct measurements. To overcome this problem, we propose using network tomography to estimate slices' delays in the network. In particular, we investigate the problem of finding the minimal combination of end-to-end simple monitoring paths needed to minimize the estimation error of the slices' delays in a network. We proposed a new genetic algorithm to identify the optimal monitoring paths required to achieve network tomography and minimize their number. To improve the search for the optimal solution, we investigated both a fixed mutation approach and our proposed adaptive mutation approach. Our evaluations show the effectiveness of both approaches; however, the adaptive mutation method outperforms the fixed method by exploring new solutions and avoiding local minima, leading to faster convergence and better results.

I. INTRODUCTION

In order to meet customers' demands, networks are evolving and embracing virtualization, which enables the idea of network slicing introduced by 5G networks. Each slice is a logical network with distinct needs and requirements hosted on the same physical infrastructure. As a result, monitoring network slices is essential to assess performance, identify failures, and intervene when necessary [START_REF] Mijumbi | Network function virtualization: State-of-the-art and research challenges[END_REF], [START_REF] Al-Falahy | Technologies for 5g networks: Challenges and opportunities[END_REF].

Monitoring 5G slices is complex due to the potential overload of direct measurement traffic and physical topology abstraction. In addition, the various stakeholders involved in different network slices may only have a partial view of the infrastructure [START_REF] Tsai | Network monitoring in software-defined networking: A review[END_REF]. To overcome these challenges, [START_REF] Lawrence | Network tomography: A review and recent developments[END_REF] proposes network tomography as a solution for network monitoring. In network tomography, we infer the internal state of a network from a few end-to-end measurements. The choice of measurement paths is critical in developing a network tomography solution, as these paths are used to estimate network metrics and evaluate performance.

Our contribution consists in proposing a new meta-heuristic that allows finding the optimal paths to be used by network tomography. Moreover, we suggested a new adaptive mutation strategy to improve the exploration of the space of solutions. By leveraging our approach, we were able to identify the op-timal measurement paths and their numbers for more accurate network tomography.

The paper is structured as follows. Section II covers slices' monitoring, including prior work and contributions. Section III presents the problem statement and the model developed to address such a challenge. Section IV outlines our proposed solution. In Section V, we evaluate the performance of our approach. Section VI concludes the paper.

II. RELATED WORK

Slices' monitoring is a problem that emerged with 5G and network slicing. Although the problem is recent, it may refer to an older issue, the monitoring of overlay networks [START_REF] Chen | Tomography-based overlay network monitoring[END_REF].

Network tomography is probably one of the most promising solutions to this problem. Network tomography has been studied extensively from 1996 [START_REF] Vardi | Network tomography: Estimating source-destination traffic intensities from link data[END_REF] to the present day [START_REF] Ma | Inferring link metrics from end-to-end path measurements: Identifiability and monitor placement[END_REF], [START_REF] Duffield | Network delay tomography from end-to-end unicast measurements[END_REF], with a review presented in [START_REF] Lawrence | Network tomography: A review and recent developments[END_REF] and [START_REF] Kakkavas | A review of advanced algebraic approaches enabling network tomography for future network infrastructures[END_REF].

A typical network tomography solution involves nodes selection for data collection, measurement paths selection, and tomography techniques to infer network metrics. Previous work has focused on one of the steps and considered the others as given. In our work, we concentrate on the second phase, which involves selecting measurement paths while choosing monitors and the tomography methodology as predetermined factors.

In the following, we summarize prior work to support our decisions in the first and the third steps of network tomography and review previous work on the paths' selection problem.

Starting with the first step of devising a network tomography solution, which involves selecting nodes for data collection, several studies offer insights into optimal monitor selection. For instance, in [START_REF] Gopalan | On identifying additive link metrics using linearly independent cycles and paths[END_REF], the authors propose an algorithm to determine the minimal number of needed monitors. In [START_REF] Ma | Link identifiability in communication networks with two monitors[END_REF], the authors studied the problem of identifying additive link metrics from end-to-end measurements using only two monitors. Their findings suggest that only two monitors can effectively determine most links. Inspired by this outcome, we employed two nodes as our monitoring points.

In the third step of constructing a network tomography solution, current tomography techniques include algebraic, statistical, and heuristic approaches. Algebraic methods model the tomography problem as a system of linear equations and solve it using linear algebra techniques to find an exact solution [START_REF] Golub | Singular value decomposition and least squares solutions[END_REF]- [START_REF] Chen | An algebraic approach to practical and scalable overlay network monitoring[END_REF]. For instance, the Single Value Decomposition (SVD) method is presented as an algebraic approach in [START_REF] Golub | Singular value decomposition and least squares solutions[END_REF], which utilizes matrix decomposition to reduce the dimensionality of data and simplify the monitoring process. As for statistical approaches, network metrics are modeled as a random variable with a partially unknown probability distribution, and endto-end measurements are used as input to do the estimation. Statistical methods, such as the Fourier transform, were also proposed to estimate the link metric's distribution [START_REF] Chen | Network tomography: Identifiability and fourier domain estimation[END_REF]. More recently, machine learning techniques have been introduced as a statistical solution for network tomography [START_REF] Rahali | Tom: a self-trained tomography solution for overlay networks monitoring[END_REF], [START_REF] Rkhami | On the use of machine learning and network tomography for network slices monitoring[END_REF], and [START_REF] Sartzetakis | Machine learning network tomography with partial topology knowledge and dynamic routing[END_REF]. In [START_REF] Rahali | Tom: a self-trained tomography solution for overlay networks monitoring[END_REF], the authors used a neural network to infer underlay resources from overlay network measurements, achieving accurate estimation. A neural network was also implemented in [START_REF] Rkhami | On the use of machine learning and network tomography for network slices monitoring[END_REF] to infer slices' metrics. The authors show that their approach outperforms existing state-of-theart methods in terms of accuracy and efficiency. In [START_REF] Sartzetakis | Machine learning network tomography with partial topology knowledge and dynamic routing[END_REF], the authors use Support Vector Regression and neural networks as solutions to estimate end-to-end path parameters, achieving significantly improved estimation accuracy compared to other approaches. The network tomography problem has also been modeled using heuristics. In [START_REF] Qazi | Evaluation of performance of genetic algorithms for network tomography[END_REF], the paper proposes to use genetic algorithms as an optimization technique. The results show that genetic algorithms can effectively solve the network tomography problem, especially when dealing with large-scale networks or complex objective functions. As part of our monitoring task, we needed to select an appropriate tomography technique. We decided to use an algebraic method, specifically SVD, due to its powerful capabilities and ease of implementation in our monitoring case. By using SVD, we aimed to avoid further complexity in the monitoring process. It's worth noting that all the previously cited studies treat the issue of measurement path selection-the problem we are focusing on-as a predetermined factor. Now, regarding the problem of measurement paths' selection, the authors in [START_REF] Chen | Tomography-based overlay network monitoring[END_REF] treat the problem of finding the minimal subset of paths from which to infer loss rates and latencies for all other paths. To do so, they use end hosts as monitors and derive an algebraic method to solve the problem. This work has been improved in [START_REF] Chen | An algebraic approach to practical and scalable overlay network monitoring[END_REF], where the authors work on the same general problem but manage to make the solution adaptive and scalable. Compared to our work, and inspired by [START_REF] Chen | An algebraic approach to practical and scalable overlay network monitoring[END_REF], we are using only two nodes as monitors. Multicast and unicast probing methods were tested in [START_REF] Liu | Multicast vs. unicast for loss tomography on tree topologies[END_REF], [START_REF] Lawrence | Network delay tomography using flexicast experiments[END_REF]. Using multicast and unicast probing dictates the paths we will use to monitor. The work presented in [START_REF] Liu | Multicast vs. unicast for loss tomography on tree topologies[END_REF], [START_REF] Lawrence | Network delay tomography using flexicast experiments[END_REF] showed slow convergence times and was only tested on tree topologies. Compared to our work, our solution is particularly suitable for highly connected topologies.

To summarize, previous papers have assumed the paths are given, and to the best of our knowledge, no previous article explored using a genetic algorithm to find the combination of measurement paths.

III. PROBLEM FORMULATION

As previously stated, our goal is to find the set of paths between two monitors that minimizes the estimation error for all slices' metrics while minimizing the number of paths.

We assume that the topology of the physical network is known and modeled by an undirected graph G = (V, L), where V and L represent, respectively, the sets of physical nodes and links. P denotes the set of all simple measurement paths in the network, and S is the set of slices we want to monitor and which are deployed on top of the physical network G.

We select the number of measurement nodes, set at two, along with their specific locations, and identify the slices that require monitoring. For the scope of this work, we focus exclusively on additive metrics. Under this assumption, we can express the metrics of slices Y s , and paths Y p can be expressed as linear combinations of the metrics of the links X as follows:

Y s = A s X (1)
Y p = A p X (2)
A s and A p are boolean matrices. A s (i, j) = 1 if the link j ∈ L belongs to the slice i ∈ S. A p (k, j) = 1 if the link j ∈ L belongs to the path k ∈ P and 0 otherwise. This said, knowing links metrics leads us to slices' metrics.

Given this formulation, it becomes clear that accurate knowledge of the link metrics X is crucial for determining the metrics of the slices Y s . Therefore, our analysis will focus on estimating the metrics of all links in the network.

Let H 1 , H 2 , . . . , H n be the subsets of paths to be selected from P to estimate all links' metrics. The cardinality of each subset H i is denoted as |H i |, which represents the number of paths in H i . We use the SVD method to solve Equation ( 2) and find X. The performance of each subset of paths is evaluated using the Mean Absolute Percentage Error (MAPE):

MAPE = ( 100% l )Σ l t=1 X real -X estimated X real (3)
X real is the real value of links' delays, X estimated is their estimated value and l = |L| is the number of links in the physical network.

Our optimization problem can be formally stated as:

For H i in {H 1 , H 2 , . . . , H n }, Minimize 100% l l t=1 X real -X estimated X real (4)
Subject to if two subsets H i and H j yield the same MAPE select the one with the smaller cardinality Note that although we consider only the measurement of delays in what follows, this is generalizable to other additive or multiplicative metrics (such as loss) via the logarithms of the latter.

IV. PROPOSED SOLUTION

To solve the problem introduced above, we propose a genetic algorithm combined with network tomography. The former generates path combinations, while the latter evaluates each combination. The different blocks needed in this work are defined above.

A. Creation of the initial population

We build the initial population of individuals using a random combination of measurement paths. Each individual is represented as an integer list, where each integer is a monitoring path. The length of the list varies, resulting in different combinations of monitoring paths and the number of paths in each individual. The population is evaluated and evolved using a genetic algorithm.

B. Evaluation of the population quality

The error of estimation of the links in the network is characterized by a fitness function that uses the Single Value Decomposition method (SVD) [START_REF] Golub | Singular value decomposition and least squares solutions[END_REF] and the Mean Absolute Percentage Error [START_REF] Tsai | Network monitoring in software-defined networking: A review[END_REF].

Having paths' delays and knowing the construction of paths in terms of links (A p ). We can find the delays on all links in the network using Equation ( 5) to compute the pseudo-inverse matrix using the SVD method. Applying SVD to a matrix with an incomplete range results in an infinite number of solutions. We chose to find an average of 500 solutions. The following equation yields links' metrics:

X = A -1 p Y p (5)
We calculate MAPE using [START_REF] Tsai | Network monitoring in software-defined networking: A review[END_REF]. The real values of X were used to initially train our algorithm using SVD to determine the best paths. However, these values are not needed once the paths are determined. Additionally, other tomography techniques can be used, some of which do not require knowledge of X [START_REF] Rahali | Tom: a self-trained tomography solution for overlay networks monitoring[END_REF].

We calculate a fitness value for each individual in the population, we will use it to appraise the quality of individuals.

C. Evolving the population

The initial population will undergo a selection process, a crossover process, and a mutation process. These operations will be repeated for a certain number of generations to eventually converge to the final global solution.

• Selection: To evolve the population, we implement tournament selection [START_REF] Blickle | Tournament selection[END_REF] as our selection method, where a small group of individuals (size of 3) is selected from the current population, and the fittest individual is chosen as the first parent. The fittest individual is the one that minimizes estimation error. If we have two or more individuals having the same fitness value, we select the one having the minimum number of paths. The process is repeated to find the second parent, and these two parents are crossed and mutated to generate a new child for the next generation. • Crossover: The process of crossover involves combining two parents to generate a new offspring. We randomly selected two crossover points and swapped the paths between the parents, resulting in two new offsprings. • Mutation: Mutation, in our case, is the operation of replacing one monitoring path with another one. We implement two approaches for mutation: a classical fixed mutation approach and a proposed adaptive mutation approach.

D. Fixed mutation rate

For fixed mutation, we fix a mutation probability and assign a probability to each element in the individual. If the probability of the individual is less than the mutation probability, we replace the path with another path, randomly chosen from the set of monitoring paths, and without repetition. However, the fixed mutation approach may not provide enough diversity to explore a wide range of solutions, leading the algorithm to get stuck in a local minimum. To address this issue, we suggest implementing an adaptive mutation rate.

E. Adaptive mutation rate

The main idea behind the proposal of this approach is to ensure sufficient diversity in the population and, hence, a good exploration of the solution space.

To start the algorithm, we set an initial mutation rate and calculate the similarity index for each generation. The similarity index represents the similarity between individuals within the same population and is computed as follows: we create an N ×N matrix, where N is the size of the population, and identify the common links between individuals in the population. We then normalize the values in the matrix by dividing by the number of links in the graph and finding the average of the values below the diagonal of the matrix, which represents the similarity score.

Next, we set a fixed similarity threshold and compare it with the similarity index value. If the similarity index is less than the threshold, indicating a diverse set of solutions, we adapt the initial mutation rate by decreasing it one step at a time. On the other hand, if the similarity index is greater than the threshold, indicating similar solutions, we adapt the initial mutation rate by increasing it one step to make the solutions more diverse.

V. PERFORMANCE EVALUATION

We test the performance of our algorithm on two topologies. The Topology A, taken from [START_REF] Rkhami | On the use of machine learning and network tomography for network slices monitoring[END_REF] and represented in Fig. 1, is formed of 9 nodes, 22 links, and a minimum node degree of 2. The second topology is the Gridnet network, taken from Zoo Topology 1 and represented in Fig. 2, is formed of 9 nodes, 20 links and has a minimum node degree of 4.

Two nodes are selected to exchange monitoring traffic; for topology A, nodes 1 and 4 are the monitoring nodes. The monitors for Gridnet are nodes 0 and 5. We identify all the direct paths between the monitoring nodes for each topology. A straight line with no loops that begins and ends at two different nodes is referred to as a simple path. We assign a number to each path.

The population size of the topologies A and B are, respectively, 30 and 50, and we'll run the algorithms for 100 generations.

In the following, we assess how well our solution performs regarding different parameters.

A. Comparing fixed and adaptive mutation approach

First, we conduct a comparison between the approaches of fixed mutation and adaptive mutation to determine whether the strategy of adaptive mutation leads to an improvement in the solution. To do so, we start with one initial population and evolve it using the two strategies.

For topology A, in Fig. 3, the fitness value graph for the best individuals over 100 generations is shown. The blue graph represents the fixed mutation rate approach, while the green graph represents the adaptive mutation rate approach. The orange and magenta graphs represent the similarity score and associated mutation rate, respectively. Over the 100 generations, both the fixed and adaptive mutation strategies reduce the estimation error, with the adaptive mutation strategy converging to the solution faster. The orange and magenta graphs show that the adaptive mutation approach starts with a highly diverse population (similarity index < 0.5) and adjusts the mutation rate with each generation based on the similarity score. When the similarity score increases, indicating less diversity, the mutation rate is increased to ensure more diversity, and when it decreases, indicating sufficient diversity, the mutation rate gradually decreases to a lower limit. We run the same tests on the Gridnet topology. Fig. 4 shows the fitness value of the best individuals throughout 100 generations. The estimation error in both approaches is decreasing. In adaptive mutation approaches, we reached a smaller error faster than in the fixed mutation approach.

Estimation errors for topology A and Gridnet were compared, with topology A having a higher error of 14% and Gridnet having a lower error of 8%. The difference in error can be attributed to the variation in connectivity between the topologies. In topologies with a minimum degree of three, monitoring paths share more links, which increases correlation and reduces estimation error. However, in topologies with numerous nodes of degrees 1 and 2, correlation is less present, making us more vulnerable to inaccuracies. Even with network tomography, we are unable to precisely estimate link delays in such topologies.

It should be noted that an important step we did in this work to put the solution into practice is fine-tuning by experiment the mutation rate, lower and upper bounds of the adaptive mutation, size of the population, number of generations, and The number of simple paths between monitors.

B. Individuals length

The length of the best individuals in each strategy and each topology is also tested and visualized, and it is contrasted with the length of the individuals of the first generation. In Fig. 5 and Fig. 6, we plotted the evolution of the best individuals' lengths of topology A and B, respectively. In topology A, the population initially has a mean individual length of 4, and both fixed and adaptive mutation methods are used to evolve it. As generations progress, the individual length increases, and the resulting population has a mean individual length of 20 and 25 for fixed and adaptive mutation approaches, respectively. In Gridnet, the initial population has a mean individual length of 5, and the individual length expands to a mean of 17 paths and 19 paths with the fixed and adaptive mutation approaches, respectively.

The average individual length is expected to be higher in adaptive mutation strategies than in fixed mutation strategies because adaptive mutation explores a wider solution space, resulting in better outcomes and more measurement paths. However, the number of paths in the combination of measure-

C. Confidence interval

A confidence interval is an interval within which we are reasonably confident to discover the true value of the variable we are measuring. We usually search for the 95% confidence interval. To calculate the confidence interval, we used the following formula:

[m -t s √ N ; m + t s √ N ] (6)
where m is the mean value, s is the sample standard deviation, N is the sample size, and t is a parameter that is related to the level of confidence we want. The genetic algorithm was repeated 50 times to study the variability of the solutions generated. The final solution from each iteration was saved, and the mean and standard deviation were calculated. The confidence interval was then calculated using these values (equation ( 6)). The moving average of the 50 best solutions was plotted for topology A and Gridnet, and a confidence interval was drawn around it in Fig. 7 and Fig. 8, respectively.

As shown in Fig. 7, in blue, we have the fixed mutation approach, and in green, we have the adaptive mutation one. The blue line shows more variability compared to the green line, which produced consistent values throughout the executions. Both approaches have a narrow confidence interval. For Gridnet, Fig. 8, both lines start with high fitness values, indicating that the initial population is not very fit. However, as the algorithm repetitions increase, both lines decrease, indicating that both approaches are becoming more effective in minimizing the fitness value.

The fixed mutation approach is initially slightly better than the adaptive mutation approach, as the blue line decreases faster than the green line. However, as the number of repetitions increases, the blue line levels off while the green line continues to decrease. This suggests that the adaptive mutation approach is better at exploring new solutions and avoiding local minima than the fixed mutation approach.

Around repetition 30, the green line crosses the blue line, indicating that adaptive mutation is more effective in minimizing the fitness value. After that point, the green line continues to decrease faster than the blue line.

VI. CONCLUSION AND FUTURE WORK

In this work, we aimed to minimize the estimation error and the number of paths used to estimate slices' delays. We modeled slices as a linear combination of links in the network and proposed a genetic algorithm solution combined with network tomography. We compared two approaches, fixed mutation rate and adaptive mutation rate, and evaluated the algorithm's convergence, length of individuals in the population, and confidence interval. Our results suggest that when the optimal solution is difficult to find and requires extensive exploration, a fixed mutation rate may not be sufficient. In contrast, the adaptive mutation rate is more effective in exploring the search space by increasing the mutation rate when the population stagnates and decreasing it when the population is diverse.

Future work will include testing additional network tomography methods, such as machine learning techniques. Additionally, an objective function will be added to the optimization problem.

Fig. 2 .

 2 Fig. 1. Topology A

Fig. 3 .

 3 Fig. 3. Topology A: Evolution of best individuals

Fig. 4 .Fig. 5 .

 45 Fig. 4. Gridnet network: Evolution of best individuals

Fig. 6 .Fig. 7 .

 67 Fig. 6. Gridnet network: Evolution of best individuals' length

Fig. 8 .

 8 Fig. 8. Gridnet network: Algorithm performance with 95% CI