# Dynamic QoS Management for a Flexible 5G/6G Network Core: A Step toward a Higher Programability
## 5 Testbed Design
### Methodology Implementation
An SQL database consists of only two QoS policies that slice controllers use to create instructions to manage specific SDN components;
* Scenario 2--introduces a third slice that requires the dynamic creation of queues and the redistribution of total link capacity with still enough bandwidth for all slice requirements;
* Scenario 3--introduces congestion in the testbed environment by limiting the link bandwidth that service groups share; thus, we initiate bandwidth reallocation and test the proposed methodology;
* Scenario 4--applies different QoS policies showing the dynamic nature of policy adjustment in a reduced-capacity setup;
* Scenario 5--aims to show the solution's behavior when needed to perform dynamic release of service group resources. The resource release is necessary if the service group is no longer active, and the dynamic reconfiguration of free resources can be performed for active service groups. \begin{table}
\begin{tabular}{l c c c} \hline \hline
**Slice** & **SliceID** & **Traffic Type** & **Evaluation Tool** \\ \hline Internet (NET) & 11111 & HTTP TCP & Apache/PHP \\  & & script [54] \\ \hline Multimedia (MM) & 22222 & UDP Stream & D-ITG [55] \\ \hline Security (SEC) & 33333 & UDP Stream & D-ITG \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Slice traffic parameters. The testing process is automated so that each test scenario is active for 60 s. After that, we switch to the next scenario. Recording the performance of the set testbed was performed using the following tools:

* _bvm-ng_ tool--used to monitor and log the active throughput of physical interfaces [56] on the CarClient site (for download-monitoring purposes) and the Distribution-Network switch ( for upload-monitoring purposes);
* _D-ITG_ tool [51]--used for logging and analyzing QoS parameters (delay, jitter, and packet loss) for UDP streaming on receiver pages on CarClient and SP3 server;
* _tcpdump_ tool--used to collect complete traffic logs in the testing process on the DistributionNetwork switch. For each slice's SDN controller, we initiate one instance of a developed script for dynamic QoS management (Section 4.2), which only monitors the SQL table for one service group (slice ID). If using multiple services in one slice, or multiple vendors of the same service, it is necessary to run multiple instances with a different SliceID. In our test case, these instances have been initiated with an SQL pool interval of every second to achieve a faster response. ## 6 Results and Evaluation

The testing process aims to evaluate resource utilization of the proposed dynamic QoS management method in a realistic environment. As a proof of concept, we perform multiple cycles to verify the correct operation of each aspect of the proposed solution. Applying database QoS policies (Section 4.2.2) on the proposed testing scenarios, we obtained Table 4. The implemented solution calculated Download and Upload max-rates for each slice and scenario by following the proposed allocation procedure. The majority of max-rate values were allocated using the first criteria in (1). In Scenarios 3 and 4, where link capacity is reduced below slice requirements, we can observe the use of second and third (bolded and underlined in Table 4, respectively) allocation criteria from (1)). Calculated max-rates are then dynamically applied to the appropriate SDN in queue modification.