Method and system for configuring initial congestion window value in user equipment

By employing an AI model to predict the initial congestion window value based on user experience and network parameters, the method optimizes network performance and user experience in UE, addressing the inefficiencies of existing methods.

WO2026100959A1PCT designated stage Publication Date: 2026-05-15SAMSUNG ELECTRONICS CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
SAMSUNG ELECTRONICS CO LTD
Filing Date
2025-09-11
Publication Date
2026-05-15

AI Technical Summary

Technical Problem

Existing methods for determining the initial congestion window value in User Equipment (UE) are inadequate, leading to suboptimal Flow Completion Time (FCT) and network performance, as they do not consider user experience parameters and UE network parameters, resulting in either underutilization of bandwidth or network congestion.

Method used

A method and system in the UE that uses a trained Artificial Intelligence (AI) model to predict the optimal initial congestion window value based on user experience parameters and UE network parameters, encoding these parameters in a structured format for accurate prediction and configuration, thereby enhancing user experience and reducing FCT.

Benefits of technology

The AI-driven approach dynamically adjusts the initial congestion window value, optimizing network performance by minimizing FCT and ensuring consistent user experience across varying network conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2025014195_15052026_PF_FP_ABST
    Figure KR2025014195_15052026_PF_FP_ABST
Patent Text Reader

Abstract

The present disclosure relates to field of wireless communication network that discloses method and system for configuring initial congestion window value in User Equipment (UE (201)). UE (201) determines for each of one or more applications running in UE (201), user experience parameters and UE (201) network parameters. Further, UE (201) predicts using trained Artificial Intelligence (AI) model (203), an optimal initial congestion window value for each of one or more applications based on correlation of user experience parameters and UE (201) network parameters corresponding to each of one or more applications. Finally, UE (201) configures optimal initial congestion window value for each of one or more applications based on prediction. The present disclosure helps in reducing Flow Completion Time (FCT) of each application by predicting optimal initial congestion window value dynamically.
Need to check novelty before this filing date? Find Prior Art

Description

METHOD AND SYSTEM FOR CONFIGURING INITIAL CONGESTION WINDOW VALUE IN USER EQUIPMENT

[0001] The present disclosure relates to field of wireless communication network. Particularly, the present disclosure relates to a method and system for configuring initial congestion window value in a User Equipment (UE).

[0002] Transmission Control Protocol (TCP) congestion control mechanisms are mainly designed for large flows to improve throughput and maintain fairness. Initial congestion window impacts the thin-streamed application Flow Completion Time (FCT) to a more considerable extent. Thin streamed applications such as messaging applications which are used for sending and receiving text messages do not use a massive traffic volume. The TCP provides a flow-control mechanism on the receiver side and a congestion control algorithm on the sender side. The congestion control algorithm uses a Congestion Window (CWND) to decide the number of packets to be transmitted. The congestion control algorithms use a slow-start mechanism, followed by the congestion avoidance phase. The CWND starts from one and grows exponentially in the slow-start phase. Once the congestion is detected, the TCP enters the congestion avoidance phase and increases the CWND in additive steps. Enhancing the initial congestion window leads to FCT reduction and throughput improvement. However, the initial congestion window cannot be raised after a specific maximum limit since it may lead to more congestion and FCT increases. Therefore, there is a need to determine the optimal initial congestion window for which FCT should be minimal without extra congestion.

[0003] The information disclosed in this background of the disclosure section is only for enhancement of understanding of the general background of the invention and should not be taken as an acknowledgement or any form of suggestion that this information forms the prior art already known to a person skilled in the art.

[0004] Disclosed herein is a method of configuring initial congestion window value in a User Equipment (UE). The method comprises determining, by a UE, for each of one or more applications running in a UE, user experience parameters and UE network parameters. Further, the method comprises predicting using a trained Artificial Intelligence (AI) model, an initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE network parameters corresponding to each of the one or more applications. Finally, the method comprises configuring the initial congestion window value for each of the one or more applications based on the prediction.

[0005] Further, disclosed herein is a UE for configuring initial congestion window value in the UE. The UE comprises a processor and a memory. The memory is communicatively coupled to the processor and stores processor-executable instructions, which on execution, cause the processor to determine for each of one or more applications running in a UE, user experience parameters and UE network parameters. Further, the processor predicts using a trained Artificial Intelligence (AI) model, an initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE network parameters corresponding to each of the one or more applications. Finally, the processor configures the initial congestion window value for each of the one or more applications based on the prediction.

[0006] The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.

[0007] The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, explain the disclosed principles. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the figures to reference like features and components. Some embodiments of system and / or methods in accordance with embodiments of the present subject matter are now described, by way of example only, and regarding the accompanying figures, in which:

[0008] FIG. 1 shows an existing architecture for communication between a User Equipment (UE) and a server which includes prediction system;

[0009] FIG. 2A shows an exemplary architecture for communication between a User Equipment (UE) and a server for configuring initial congestion window value in the UE, in accordance with some embodiments of the present disclosure;

[0010] FIG. 2B shows an exemplary flow for reinforcement of trained Artificial Intelligence (AI) model, in accordance with some embodiments of the present disclosure;

[0011] FIG. 3 shows a detailed block diagram of a User Equipment (UE) for configuring initial congestion window value in the UE, in accordance with some embodiments of the present disclosure;

[0012] FIG. 4 shows a flowchart illustrating a method of configuring initial congestion window value in a User Equipment (UE), in accordance with some embodiments of the present disclosure; and

[0013] FIG. 5 illustrates a block diagram of an exemplary computer system for implementing embodiments consistent with the present disclosure.

[0014] It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative systems embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and executed by a computer or processor, whether such computer or processor is explicitly shown.

[0015] In the present document, the word "exemplary" is used herein to mean "serving as an example, instance, or illustration." Any embodiment or implementation of the present subject matter described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments.

[0016] While the disclosure is susceptible to various modifications and alternative forms, specific embodiment thereof has been shown by way of example in the drawings and will be described in detail below. It should be understood, however that it is not intended to limit the disclosure to the specific forms disclosed, but on the contrary, the disclosure is to cover all modifications, equivalents, and alternative falling within the scope of the disclosure.

[0017] The terms "comprises", "comprising", "includes", or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a setup, device, or method that comprises a list of components or steps does not include only those components or steps but may include other components or steps not expressly listed or inherent to such setup or device or method. In other words, one or more elements in a system or apparatus proceeded by ", "comprises... a" does not, without more constraints, preclude the existence of other elements or additional elements in the system or method.

[0018] The following description with reference to the accompanying drawings is provided to assist in a comprehensive understanding of various embodiments of the disclosure as defined by the claims and their equivalents. It includes various specific details to assist in that understanding but these are to be regarded as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the various embodiments described herein can be made without departing from the scope of the disclosure. In addition, descriptions of well-known functions and constructions may be omitted for clarity and conciseness.

[0019] The terms and words used in the following description and claims are not be limited to the bibliographical meanings, but, are merely used by the inventor to enable a clear and consistent understanding of the disclosure. Accordingly, it should be apparent to those skilled in the art that the following description of various embodiments of the disclosure is provided for illustration purpose only and not for the purpose of limiting the disclosure as defined by the appended claims and their equivalents.

[0020] It is to be understood that the singular forms “a”, “an”, and “the” include plural referents unless the context clearly dictates otherwise. Thus, for example, reference to “a component surface” includes reference to one or more of such surfaces.

[0021] In various examples of the disclosure described below, a hardware approach will be described as an example. However, since various embodiments of the disclosure may include a technology that utilizes both the hardware-based and the software-based approaches, they are not intended to exclude the software-based approach.

[0022] As used herein, the terms referring to merging (e.g., merging, grouping, combination, aggregation, joint, integration, unifying), the terms referring to signals (e.g., packet, message, signal, information, signaling), the terms referring to resources (e.g. section, symbol, slot, subframe, radio frame, subcarrier, resource element (RE), resource block (RB), bandwidth part (BWP), opportunity), the terms used to refer to any operation state (e.g., step, operation, procedure), the terms referring to data (e.g. packet, message, user stream, information, bit, symbol, codeword), the terms referring to a channel, the terms referring to a network entity (e.g., distributed unit (DU), radio unit (RU), central unit (CU), control plane (CU-CP), user plane (CU-UP), O-DU -open radio access network (O-RAN) DU), O-RU (O-RAN RU), O-CU (O-RAN CU), O-CU-UP (O-RAN CU-CP), O-CU-CP (O-RAN CU-CP)), the terms referring to the components of an apparatus or device, or the like are only illustrated for convenience of description in the disclosure. Therefore, the disclosure is not limited to those terms described below, and other terms having the same or equivalent technical meaning may be used therefor. Further, as used herein, the terms, such as '~ module', '~ unit', '~ part', '~ body', or the like may refer to at least one shape of structure or a unit for processing a certain function.

[0023] Further, throughout the disclosure, an expression, such as e.g., 'above' or 'below' may be used to determine whether a specific condition is satisfied or fulfilled, but it is merely of a description for expressing an example and is not intended to exclude the meaning of 'more than or equal to' or 'less than or equal to'. A condition described as 'more than or equal to' may be replaced with an expression, such as 'above', a condition described as 'less than or equal to' may be replaced with an expression, such as 'below', and a condition described as 'more than or equal to and below' may be replaced with 'above and less than or equal to', respectively. Furthermore, hereinafter, 'A' to 'B' means at least one of the elements from A (including A) to B (including B). Hereinafter, 'C' and / or 'D' means including at least one of 'C' or 'D', that is, {'C', 'D', or 'C' and 'D'}.

[0024] The disclosure describes various embodiments using terms used in some communication standards (e.g., 3rd Generation Partnership Project (3GPP), extensible radio access network (xRAN), open-radio access network (O-RAN) or the like), but it is only of an example for explanation, and the various embodiments of the disclosure may be easily modified even in other communication systems and applied thereto.

[0025] As outlined in the background section, the initial congestion window cannot be raised after a specific maximum limit since it may lead to more congestion and Flow Completion Time (FCT) increases. FCT is a metric to measure overall efficiency and performance of the network which may indicate total time taken for a packet to travel from source to destination and be acknowledged. Setting the initial congestion window value too low will put less data on the line and not utilize the available bandwidth. On the other hand, setting the initial congestion window value too high might cause congestion and drastically increase the flow completion time due to re-transmissions. Further, in the existing methods, the Artificial Intelligence models are deployed in the server and the AI models utilize server related parameters to determine the initial congestion window value. As illustrated in FIG. 1A, the prediction system 105A and 105B, which may be the AI models are deployed in the server associated the applications running in the UE. Therefore, in the existing system the initial congestion window value is determined for the server. As an example, if the server 103A is associated with video streaming application, then initial congestion window determined by the prediction system 103B will be for the server 103A considering the parameters related to the server 103A. The determined initial congestion window will be configured in each User Equipment (UE) associated with the server 103A. Therefore, irrespective of the parameters related to each UE, the initial congestion window will be configured which may affect the user experience such as Quality of Experience (QoE) and Quality of Service (QoS). To overcome the problems in the present disclosure provides a method and a system for configuring initial congestion window value in the UE. The system in context of the present disclosure may be the UE or any computing system which may be configured to perform the method disclosed in the present disclosure. According to the present disclosure, the UE may be configured to determine for each of one or more applications running in a UE, user experience parameters and UE network parameters. The user experience parameters may include, without limitation, one or more Quality of Experience (QoE) parameters and one or more Quality of Service (QoS) parameters related to the one or more applications. The user experience parameters and the UE network parameters are discussed further in detail below. Further, the UE, using a trained AI model, an optimal initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE network parameters corresponding to each of the one or more applications. As an example, the trained AI model may be a supervised AI model and unsupervised AI model. Finally, the UE may configure the optimal initial congestion window value for each of the one or more applications based on the prediction.

[0026] The present disclosure predicts the optimal initial congestion window value based on the user experience parameters and the UE network parameters which helps in predicting an accurate based on each UE requirements. Further, the optimal initial congestion window value is predicted based on the UE network parameters which helps in considering real-time network conditions. This also helps in reducing the FCT. Further, for predicting the optimal initial congestion window value, the trained AI model receives the user experience parameters and the UE network parameters in an encoded vector format i.e., one hot encoded vector format. This helps in providing the input to the trained AI model in a structured format which helps in an accurate view about the performance, availability, scalability, and serviceability of the network connections. Also, encoding according to the one or more QoE parameters and the one or more QoS parameters help in enhancing the precision of the trained AI model for fine tuning the optimal initial congestion window value. As the optimal initial congestion window value is predicted for each application running in the UE, the optimal initial congestion window value may vary depending on type of application. This helps in enabling short lived communications which helps in faster FCT, which also helps in utilizing minimum network resources. The optimal initial congestion window value is configured in the UE which helps in enhancing the user experience while the application is running in the UE. The present disclosure dynamically adjusts the optimal initial congestion window value based on change in the user experience parameters and the UE network parameters. This helps in ensuring constant user experience based on the real-time user experience parameters and the real-time UE network parameters. The Table A below provides an comparison of FCT for a thick streamed application and a thin streamed application, when the initial congestion window value fixed using existing methods and the optimal initial congestion window value predicted according to the present disclosure.

[0027] [Table A]

[0028]

[0029] According to the values in the Table A, the FCT time is comparatively less when the optimal initial congestion window value is predicted based on the user experience parameters and UE network parameters of each of the one or more applications running in the UE.

[0030] In the following detailed description of the embodiments of the disclosure, reference is made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments in which the disclosure may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the disclosure, and it is to be understood that other embodiments may be utilized and that changes may be made without departing from the scope of the present disclosure. The following description is, therefore, not to be taken in a limiting sense.

[0031] FIG. 2A shows an exemplary architecture for communication between a User Equipment (UE) and a server for configuring initial congestion window value in the UE, in accordance with some embodiments of the present disclosure.

[0032] Exemplary architecture illustrates a User Equipment (UE) 201 associated with server 2051to server 205N(also referred as one or more servers 205 or servers 205) through a communication network (not shown in figure). As an example, the communication network may be a wireless telecommunication network such as Long-Term Evolution (LTE) network, 5thGeneration (5G) network and the like. In an embodiment, the one or more servers 205 are associated with one or more applications running in the UE 201. The one or more applications may include, at least one of, thin streamed application and thick streamed application. In an embodiment, the thin streamed applications may be applications which may not require significant amount of traffic volume to transmit and receive data. As an example, the thin streamed applications may be without limitation, chat applications, gaming applications, voice calling applications, and video calling applications. In an embodiment, the thick streamed applications may be applications which may require significant amount of traffic volume to transmit and receive data. As an example, the thick streamed applications may be without limitation, video streaming applications, video downloading applications, and video uploading applications.

[0033] In an embodiment, each of the one or more applications in the UE 201 may be configured to interact with the corresponding one or more servers 205 based on configurations in each of the one or more applications. As an example, the UE 201 may include, without limitation, any device used by a user to communicate and / or access content such as, but not limited to, mobile phones, smartphones, laptops, wearables, Internet of Things (IoTs), and the like with LTE / 5G / 6thGeneration (6G) capabilities. As an example, the one or more applications may interact with the corresponding one or more servers 205 when the application is opened / running in the UE 201. In an embodiment, each application in the one or more applications may periodically set corresponding initial congestion window value while the application is running in the UE 201. As an example, the application may be running in foreground in the UE 201 or in background in the UE 201.

[0034] In an embodiment, for each of one or more applications running in the UE 201, the UE 201 may be configured to determine user experience parameters and UE network parameters. The user experience parameters may include, without limitation, one or more Quality of Experience (QoE) parameters and one or more Quality of Service (QoS) parameters related to the one or more applications. The one or more applications may be identified using their corresponding application Identifiers (IDs). The one or more QoE parameters and one or more QoS parameters may include, without limitation, at least one of, Signal to Interference Noise Ratio (SINR), Data Radio Bearers (DRBs), throughput, latency, Radio Access Technology (RAT), Channel Quality Indicator (CQI) and Received Signal Strength Indicator (RSSI).

[0035] The UE network parameters may include, without limitation, at least one of a type of protocol and Round-Trip Time (RTT) parameters related to packet transmission between the UE 201 and network. As an example, the type of protocol may be at least one of, Transmission Control Protocol (TCP) and QUIC (Quick User Datagram Protocol (UDP) Internet Connections). In an embodiment, the UE 201 may be configured to perform a correlation analysis of one or more Key Performance Indicators (KPIs) of the UE 201 and one or more KPIs of network associated with the UE 201 to determine a correlation coefficient between each of the one or more KPIs of the UE 201 and one or more KPIs of the network. The one or more KPIs may include, without limitation, at least one of, an Application identifier (ID), propagation delay, queuing delay, transport protocol, processing delay and encoding delay. Further, the UE 201 may select the one or more KPIs of the UE 201 and the one or more KPIs of the network whose determined correlation coefficient is greater than a predefined correlation coefficient, as the RTT parameters.

[0036] In an embodiment, upon determining the user experience parameters and UE network parameters, the UE 201 may be configured to predict using a trained Artificial Intelligence (AI) model, an initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE network parameters corresponding to each of the one or more applications. In an embodiment, the trained AI model 203 may be at least one of, a supervised learning model and unsupervised learning model.

[0037] Further, in an embodiment, the user experience parameters may be encoded in a vector format prior to providing the user experience parameters to the trained AI model 203 for the prediction. In an embodiment, the vector format may be encoded by identifying a class of QoS and QoE for each of the one or more applications from one or more predefined classes based on a predefined feature map. The predefined feature map may include a mapping of the one or more QoS parameters and the one or more QoE parameters applicable for each of the one or more applications with the class of QoS and QoE. The class of QoS and QoE is represented as an encoded vector. As an example, the encoded vector may have five binary values which may be indicated based on the one or more QoS parameters and the one or more QoE parameters, which may be represented as [0, 0, 0, 0, 0]. The process of encoding the user experience parameters in the vector format is discussed in detail in FIG. 3 of the present disclosure. As an example, a class based on a specific QoS and QoE requirement may be represented as “[1, 0, 0, 0, 0]”, the values in the class may vary based on the QoS and the QoE requirement.

[0038] In an embodiment, for predicting the optimal initial congestion window value, the UE 201 may determine one or more initial congestion window values based on the correlation of the user experience parameters and the UE network parameters of the corresponding one or more applications. Upon determining the one or more initial congestion window values, the UE 201 may determine Flow Completion Time (FCT) and congestion parameters for each of the one or more initial congestion window values. The FCT may be a metric to measure overall efficiency and performance of the network which may indicate total time taken for a packet to travel from source to destination and be acknowledged. The congestion parameters may be used to determine level of traffic in network and used to manage network performance to ensure optimal data transmission. As an example, the congestion parameters may include, without limitation, slow start threshold, Round Trip Time (RTT), retransmission timeout, additive increase and multiplicative decrease mechanism. Upon determining the FCT, the UE 201 may predict the initial congestion window value among the one or more initial congestion window values based on the FCT and the congestion parameters. In an embodiment, the initial congestion window value providing least FCT and without extra congestion may be predicted as the optimal initial congestion window value. The extra congestion may be determined based on values of the congestion parameters.

[0039] In an embodiment, upon predicting the initial congestion window value, the UE 201 may be configured to configure the initial congestion window value for each of the one or more applications based on the prediction. In an embodiment, each of the one or more applications may transmit data packets according to the optimal initial congestion window value. As discussed earlier, the UE 201 may configure the optimal initial congestion window value periodically depending on the configuration of each of the one or more applications. In an embodiment, the UE 201 may adjust socket connection of each of the one or more applications with the optimal initial congestion window value. As an example, the socket may be Extended Berkeley Packet Filter (eBPF).

[0040] In an embodiment, the UE 201 may update the trained AI model 203 with change in FCT and congestion parameters for each of the one or more applications upon configuring the optimal initial congestion window value for each of the one or more applications.

[0041] In some embodiments, the trained AI model 203 discussed in the context of the present disclosure may be a neural network model which may be without limitation, a Dense Neural Network (DNN), Convolutional Neural Network (CNN) and Recurrent Neural Network (RNN). In an embodiment, an appropriate neural network may be selected based on deployment scenario, computational complexity, memory constraints, inference time and computational resources at server 205. As an example, if the input to the neural network is a simple feature map, DNN may be used, however, if the feature map is of greater dimension, then CNN may be used and if there is a requirement of time series analysis of input parameters then RNN may be used. Output of such neural network model in the context of the present disclosure is the optimal initial congestion window value, whose computation may be performed in a hidden layer of the neural network. In some embodiments, the trained AI model 203 may be trained on one or more servers 205 using federated learning model that uses data from multiple servers 205 while maintaining privacy of the data.

[0042] As an example, when the trained AI model 203 is a DNN, the DNN may have 5 layers, each layer having 32, 64, 32, 16 and 1 node respectively. Consider each layer uses batch normalization for averaging out the learnt weights. Table B below provides architecture layer wise details for such DNN model.

[0043] [Table B]

[0044]

[0045] In the context of the present disclosure, the last layer of the DNN having one node is the predicted optimal initial congestion window value. Further, the input vector provided to the DNN of the above-mentioned layered architecture consists of the input KPIs- QoS / QoE class and the KPIs having high correlation coefficients such as Application ID, protocol, propagation, queuing, processing and encoding delay. In this example, the size of the input vector is 9, QoS / QoE class has one hot encoding of 5 units, application ID has 3 units, protocol has 1 unit and RTT parameters are represented by 4 units each having a float value denoting the propagation, queuing, processing and encoding delay respectively, based on which the DNN predicts the optimal initial congestion window value. Upon predicting the optimal initial congestion window value, the model is updated using back propagation by taking the mean squared error between the one or more initial congestion window values and the predicted optimal initial congestion window value. During back propagation, the weights of the neural network model are updated.

[0046] Furthermore, as illustrated in FIG. 2B, when the trained AI model 203 is a Reinforcement Learning (RL) model, the UE 201 may provide the change in the FCT and the congestion parameters for each of the one or more applications to the trained AI model 203 which may be used to reward or punish the trained AI model 203. Referring to FIG. 2B, at step 221, RL agent is able to perceive and interpret the user experience parameters and the UE network parameters for each of the one or more applications, take actions and learn through trial and error. As an example, the RL model may be a deep Q learning. In an embodiment, a neural network may be used to approximate the Q value function in deep Q learning. At step 223, the network receives the state as an input and outputs the Q values for all possible actions. The action referred in the present disclosure is tuning of initial congestion window i.e., predicting optimal initial congestion window value. At step 225, the action is executed i.e., the optimal initial congestion window value is configured and the change in the FCT is observed. At step 227, the RL model may calculate reward based on the FCT changes. For instance, if the FCT value is reduced i.e., the flow is completed at a faster rate, then the RL model may receive a reward. Alternatively, if the FCT value is increased i.e., the flow is completed at a slower rate, then the RL model may receive a punishment. The RL model evolves the prediction of the optimal initial congestion window value in such a way that the reward is maximized. Since the model continuously learns and predicts there is no traditional replay buffer that trains in batches. A map may be used to store the state for each request. After the flow completion, the state and next state are fetched again from the map. Therefore, the training step is done. On large changes to state, the last couple of layers are reinitialized, and the model is retrained to make the model adaptive. As an example, steps of implementing the Q learning algorithm is discussed below. These are example steps and should not be construed as a limitation of the present disclosure.

[0047] 1. State Representation: The state contains the input KPIs having a vector of size 9. QoS / QoE class having one hot encoding of 5 units, application ID has 3 units, protocol has 1 unit and RTT parameters are represented by 4 units each having a float value denoting the propagation, queuing, processing and encoding delay respectively.

[0048] 2. Q-Table: Initialize a Q-table with dimensions (number of states, number of actions). Initially, the Q-values can be randomly initialized or set to zeros.

[0049] 3. Action Selection: Choose an action based on the current state. This can be done using an ε-greedy policy, where with probability ε, a random action is chosen, and with probability 1-ε, the action with the highest Q-value for the current state is selected. Action is to select the IW value.

[0050] 4. Action Execution: Execute the chosen action in the environment and observe the next state and reward.

[0051] 5. Update Q-Table: Update the Q-value for the current state-action pair using the Q-learning update rule:

[0052] Q(s, a) = Q(s, a) + ∝ ( r + γ maxQ(s', a') - Q(s, a) ]

[0053] where:

[0054] - (Q(s, a)) is the Q-value of state-action pair (s, a).

[0055] - (r) is the reward received after taking action (a) in state (s).

[0056] - (s') is the next state.

[0057] - ( ∝ ) is the learning rate (0 < α ≤ 1), determining the extent to which new information overrides old information.

[0058] - (γ ) is the discount factor (0 < γ ≤ 1), representing the importance of future rewards.

[0059] - (max Q(s', a')) is the maximum Q-value for the next state (s')

[0060] 6. Repeat: Repeat steps 3-5 for a number of episodes or until convergence.

[0061] In an embodiment, the UE 201 may be configured to predict the optimal initial congestion window value for each of the one or more applications with mixed traffic, i.e., both thick stream traffic and thin stream traffic in same application. In an embodiment, when the application running in the UE 201 may be used for more than one purpose, the trained AI model 203 may consider the user experience parameters and UE network parameters and predict the optimal initial congestion window value. As an example, when a chat application is running in the UE 201, which is a thin streamed application and at the same time, a video is downloaded / uploaded in the same chat application, which is thick streamed application. This will contribute to mixed traffic which has both thin streamed and thick streamed applications. In some embodiment, when a video streaming application and a gaming application is running simultaneously in the UE 201, the trained AI model 203 may determine user experience parameters and UE network parameters for both applications and predict optimal initial congestion window value for both the applications. In some embodiments, when similar type of applications are running simultaneously in the UE 201, the trained AI model 203 may determine user experience parameters and UE network parameters for both applications and predict the optimal initial congestion window value for both the applications individually. Here similar type of applications may be a video streaming application, a gaming application, a messaging application and the like. In an example scenario, when video streaming application “A” and video streaming application “B” are running simultaneously in the UE 201, the trained AI model 203 may determine user experience parameters and UE network parameters for the video streaming application “A” and the video streaming application “B” individually. Further, the AI model may predict the optimal initial congestion window value for the video streaming application “A” and the video streaming application “B” individually. Though, the type of application is same, the optimal initial congestion window value predicted for both the applications may be different, as the optimal initial congestion window is predicted based on the user experience parameters and the UE network parameters corresponding to each of the one or more applications dynamically.

[0062] FIG. 3 shows a detailed block diagram of the UE 201 for configuring initial congestion window value in the UE 201, in accordance with some embodiments of the present disclosure.

[0063] In some implementations, the UE 201 may include an I / O interface 301, a processor 303 and a memory 305. In an embodiment, the memory 305 may be communicatively coupled to the processor 303. The processor 303 may be configured to perform one or more functions of the UE 201 for configuring initial congestion window value in the UE 201, using the data 307 and the one or more modules 309 of the UE 201. In an embodiment, the memory 305 may store the data 307.

[0064] In an embodiment, the data 307 stored in the memory 305 may include, without limitation, user experience parameters data 311, UE network parameters data 313 and other data 315. In some implementations, the data 307 may be stored within the memory 305 in the form of various data structures. Additionally, the data 307 may be organized using data models, such as relational or hierarchical data models. The other data 315 may include various temporary data and files generated by the one or more modules 309.

[0065] In an embodiment, the user experience parameters data 311 may store the values of user experience parameters. In an embodiment, the user experience parameters may include, without limitation, one or more Quality of Experience (QoE) parameters and one or more Quality of Service (QoS) parameters related to the one or more applications. The one or more QoE parameters and one or more QoS parameters may include, without limitation, at least one of, Signal to Interference Noise Ratio (SINR), Data Radio Bearers (DRBs), throughput, latency, Radio Access Technology (RAT), Channel Quality Indicator (CQI) and Received Signal Strength Indicator (RSSI). In an embodiment, the one or more QoS parameters and the one or more QoE parameters are determined for each of one or more applications running in the UE 201. The one or more QoS parameters and the one or more QoE parameters may indicate the desired QoS and QoE to be provided by an application. The one or more QoS parameters and the one or more QoE parameters may vary for each of the one or more applications. In an embodiment, the user experience parameters are encoded in a vector format prior to providing the user experience parameters to the trained AI model 203 for the prediction. In an embodiment, the class of QoS and QoE for each of the one or more applications may be identified from one or more predefined classes based on a predefined feature map. The predefined feature map may include, without limitation, a mapping of the one or more QoS parameters and the one or more QoE parameters applicable for each of the one or more applications with the class of QoS and QoE.

[0066] In an embodiment, the UE network parameters data 313 may store values of the network parameters. The UE network parameters may include, without limitation, at least one of a type of protocol and Round-Trip Time (RTT) parameters related to packet transmission between the UE 201 and network. As an example, the type of protocol may be at least one of, Transmission Control Protocol (TCP) and QUIC (Quick User Datagram Protocol (UDP) Internet Connections). In an embodiment, correlation analysis of one or more Key Performance Indicators (KPIs) of the UE 201 and one or more KPIs of network associated with the UE 201 may be performed to determine a correlation coefficient between each of the one or more KPIs of the UE 201 and one or more KPIs of the network. The one or more KPIs may include, without limitation, at least one of, an Application ID, propagation delay, queuing delay, transport protocol, processing delay and encoding delay. Further, the UE 201 may select the one or more KPIs of the UE 201 and the one or more KPIs of the network whose determined correlation coefficient is greater than a predefined correlation coefficient, as the RTT parameters.

[0067] In an embodiment, the data 307 may be processed by one or more modules 309 of the UE 201. In some implementations, the one or more modules 309 may be communicatively coupled to the processor 303 for performing one or more functions of the UE 201. In an implementation, the one or more modules 309 may include, without limiting to, a determining module 317, a predicting module 319, a configuring module 321 and other modules 323.

[0068] As used herein, the term module may refer to an Application Specific Integrated Circuit (ASIC), an electronic circuit, a hardware processor 303 (shared, dedicated, or group) and memory that execute one or more software or firmware programs, a combinational logic circuit, and / or other suitable components that provide the described functionality. In an implementation, each of the one or more modules 309 may be configured as stand-alone hardware computing units. In an embodiment, the other modules 323 may be used to perform various miscellaneous functionalities on the UE 201. It will be appreciated that such one or more modules 309 may be represented as a single module or a combination of different modules.

[0069] In an embodiment, the determining module 317 may be configured for determining for each of one or more applications running in the UE 201, user experience parameters and UE network parameters. In an embodiment, the determining module 317 may be configured to encode the user experience parameters in a vector format prior to providing the user experience parameters to the trained AI model 203 for the prediction. In an embodiment, categorization according to the one or more QoS parameters and the one or more QoE parameters will enhance the precision of the trained AI model 203 for fine tuning the optimal initial congestion window value. In an embodiment, the determining module 317 may be configured to identify a class of QoS and QoE for each of the one or more applications from one or more predefined classes based on a predefined feature map. The predefined feature map may include a mapping of the one or more QoS parameters and the one or more QoE parameters applicable for each of the one or more applications with the class of QoS and QoE. As an example, the feature maps may include the information about the one or more QoS parameters and the one or more QoE parameters. For example, parameters such as throughput and latency have continuous values. For parameters with continuous data, the feature map uses the parameter values directly. For parameters like CQI which have discrete value, one hot encoding is performed and included in the feature map. In an embodiment, feature map may be used to categorize the one or more QoS parameters and the one or more QoE parameters in a predefined number of CQI classes. As an example, the predefined number of CQI classes may be 5 classes. The class of QoS and QoE is represented as an encoded vector. As an example, a class based on a specific QoS and QoE requirement may be represented as “[1, 0, 0, 0, 0]”, the values in the class may vary based on the QoS and the QoE requirement. In an embodiment, as the CQI classes are generated based on the user experience parameters that may vary for each application, this may change the CQI classes and the change in the CQI classes can be identified based on change in value of the encoded vector. As an example, for a gaming application which requires less latency during gameplay, the class may be [0, 1, 0, 0, 0] which may indicate that the requirement of the application is low latency along with other expected network requirements. In another example, for a video streaming application which requires high throughput and low latency during video streaming, the class may be [0, 1, 1, 0, 1] which may indicate that the requirement of the application is high throughput and low latency along with other expected network requirements. As stated earlier, the values in the class may vary based on the QoS and the QoE requirement and the number of CQI classes may vary.

[0070] The UE network parameters may include, without limitation, at least one of a type of protocol and Round-Trip Time (RTT) parameters related to packet transmission between the UE 201 and network. In an embodiment, the determining module 317 may be configured to perform a correlation analysis of one or more Key Performance Indicators (KPIs) of the UE 201 and one or more KPIs of network associated with the UE 201 to determine a correlation coefficient between each of the one or more KPIs of the UE 201 and one or more KPIs of the network. The one or more KPIs may include, without limitation, at least one of, an Application ID, propagation delay, queuing delay, transport protocol, processing delay and encoding delay. As an example, the correlation analysis may be Pearson correlation. Further, the determining module 317 may be configured to select the one or more KPIs of the UE 201 and the one or more KPIs of the network whose determined correlation coefficient is greater than a predefined correlation coefficient, as the RTT parameters. The following provides the one or more exemplary KPIs of the UE 201 and the one or more exemplary KPIs of network associated with the UE 201, which may be considered while determining the RTT parameters.

[0071] 1. UE Parameters:

[0072] ●RTT (Round Trip Time):

[0073] ○A critical metric that represents the time taken for a signal to travel from the UE 201 to the server 205 and back.

[0074] ○TCP adjusts the retransmission timers based on RTT estimates.

[0075] ●Buffer Size:

[0076] ○The UE's 201 TCP receive buffer affects how much data can be buffered before it needs to acknowledge received packets.

[0077] ○Larger buffer sizes can improve throughput in high-latency networks but might also lead to increased latency if misconfigured.

[0078] ●Signal Strength (Reference Signal Received Power (RSRP) / Reference Signal Received Quality (RSRQ)):

[0079] ○Signal quality (Reference Signal Received Power (RSRP) and Reference Signal Received Quality (RSRQ)) influences link stability.

[0080] ○Poor signal strength can lead to packet loss, which in turn impacts TCP congestion control and retransmissions.

[0081] ●Mobility Patterns:

[0082] ○If the UE 201 is highly mobile, the handover between cells can lead to variations in network quality, which affects TCP performance.

[0083] ○Frequent handovers might trigger TCP retransmissions due to perceived congestion.

[0084] ●Jitter:

[0085] ○The variation in delay caused by the network can impact the consistency of TCP throughput, leading to variations in performance.

[0086] 2. Network Parameters:

[0087] ●Bandwidth / Throughput:

[0088] ○The available network bandwidth impacts how much data TCP can push through the network without overwhelming it.

[0089] ○TCP adjusts its congestion window based on the effective bandwidth.

[0090] ●Packet Loss Rate:

[0091] ○High packet loss can cause TCP to reduce its sending rate (as it interprets loss as a sign of network congestion).

[0092] ○Networks with higher loss rates will force TCP to operate in conservative modes, reducing throughput.

[0093] ●Congestion Window (CWND) Behaviour

[0094] ○This parameter limits the number of unacknowledged packets that can be in flight, and it dynamically adjusts based on perceived network congestion.

[0095] ○TCP congestion control algorithms (like Reno, Cubic, or BBR) react to network congestion and adapt accordingly.

[0096] ●Latency / Delay:

[0097] ○End-to-end delay between UE and the server is considered, impacting TCP's timeout settings and retransmission behaviour.

[0098] ○High latency can reduce TCP throughput due to the time it takes for acknowledgments to return.

[0099] ●Radio Link Control (RLC) Parameters:

[0100] ○The underlying RLC layer in LTE / 5G networks manages error recovery (e.g., retransmissions at the link level), impacting the overall performance seen by TCP.

[0101] ○In reliable mode, RLC might hide packet losses from TCP by handling them locally, thus not triggering TCP congestion mechanisms.

[0102] ●Handover Latency:

[0103] ○When the UE 201 moves between cells (handover), the network's response time can temporarily degrade, affecting TCP performance.

[0104] ○If TCP detects packet loss during a handover, it may reduce the congestion window unnecessarily.

[0105] ●Network Congestion:

[0106] ○TCP interprets packet loss or long delays as signs of congestion. When network buffers are full, it adjusts its sending rate to avoid overwhelming the network.

[0107] ○Explicit Congestion Notification (ECN) might also be used to signal impending congestion without packet loss.

[0108] ●Radio Access Technology (RAT):

[0109] ○The type of RAT in use (e.g., LTE, 5G) impacts the underlying parameters like latency, jitter, and available bandwidth, which TCP needs to account for.

[0110] The determining module 317 may be configured to perform the correlation analysis (For example: Pearson correlation) of the one or more KPIs of the UE 201 and the one or more KPIs of the network associated with the UE 201 to determine a correlation coefficient between each of the one or more KPIs of the UE 201 and one or more KPIs of the network. Upon performing the correlation analysis, the determining module 317 may be configured to select the one or more KPIs of the UE 201 and the one or more KPIs of the network whose determined correlation coefficient is greater than the predefined correlation coefficient, as the RTT parameters. In this example, the predefined correlation coefficient is 0.85. The one or more KPIs in the below Table C having correlation coefficient more than 0.85 are selected as the RTT parameters. Based on the values in Table C, one or more KPIs may include Application ID, propagation delay, queuing delay, transport protocol, processing delay and encoding delay.

[0111] [Table C]

[0112]

[0113] In an embodiment, the predicting module 319 may be configured for predicting using a trained AI model 203 an optimal initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE network parameters corresponding to each of the one or more applications. In an embodiment, the predicting module 319 may determine one or more initial congestion window values based on the correlation of the user experience parameters and the UE network parameters of the corresponding one or more applications. Further, the predicting module 319 may determine Flow Completion Time (FCT) and congestion parameters for each of the one or more initial congestion window values. Thereafter, the predicting module 319 may predict the optimal initial congestion window value among the one or more initial congestion window values based on the FCT and the congestion parameters.

[0114] In an embodiment, the configuring module 321 may configure the optimal initial congestion window value for each of the one or more applications based on the prediction. In an embodiment, each of the one or more applications may transmit data packets according to the optimal initial congestion window value. In an embodiment, the configuring module 321 may adjust socket connection of each of the one or more applications with the optimal initial congestion window value. As an example, the socket may be Extended Berkeley Packet Filter (eBPF).

[0115] FIG. 4 shows a flowchart illustrating method of configuring initial congestion window value in a User Equipment (UE) 201, in accordance with some embodiments of the present disclosure.

[0116] As illustrated in FIG. 4, the method 400 may include one or more blocks illustrating a method of configuring initial congestion window value in a User Equipment (UE) 201 using the UE 201 illustrated in FIG. 3. The method 400 may be described in the general context of computer executable instructions. Generally, computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, and functions, which perform specific functions or implement specific abstract data types.

[0117] The order in which the method 400 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method. Additionally, individual blocks may be deleted from the methods without departing from the scope of the subject matter described herein. Furthermore, the method can be implemented in any suitable hardware, software, firmware, or combination thereof.

[0118] At block 401, the method 400 includes determining, by a processor 303 of the UE 201, for each of one or more applications running in a UE 201, user experience parameters and UE network parameters. The one or more applications may include, without limitation, at least one of, thin streamed application and thick streamed application. The user experience parameters may include, without limitation, at least one of, one or more Quality of Experience (QoE) parameters and one or more Quality of Service (QoS) parameters related to the one or more applications. The one or more applications are identified using their corresponding application Identifiers (IDs). The one or more QoE parameters and one or more QoS parameters may include, without limitation, at least one of, Signal to Interference Noise Ratio (SINR), Data Radio Bearers (DRBs), throughput, latency, Radio Access Technology (RAT), Channel Quality Indicator (CQI) and Received Signal Strength Indicator (RSSI). In an embodiment, the user experience parameters are encoded in a vector format prior to providing the user experience parameters to the trained AI model 203 for the prediction. In an embodiment, to encode the vector format, the processor may identify a class of QoS and QoE for each of the one or more applications from one or more predefined classes based on a predefined feature map. The predefined feature map comprises a mapping of the one or more QoS parameters and the one or more QoE parameters applicable for each of the one or more applications with the class of QoS and QoE. The class of QoS and QoE is represented as an encoded vector. The UE network parameters comprises at least one of a type of protocol and Round-Trip Time (RTT) parameters related to packet transmission between the UE 201 and network. In an embodiment, to select the RTT parameters for the prediction, the processor may perform a correlation analysis of one or more Key Performance Indicators (KPIs) of the UE 201 and one or more KPIs of network associated with the UE 201 to determine a correlation coefficient between each of the one or more KPIs of the UE 201 and one or more KPIs of the network. Further, the processor may select the one or more KPIs of the UE 201 and the one or more KPIs of the network whose determined correlation coefficient is greater than a predefined correlation coefficient, as the RTT parameters.

[0119] At block 403, the method 400 includes predicting, by the processor 303, using a trained Artificial Intelligence (AI) model, an initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE network parameters corresponding to each of the one or more applications. The processor may obtain the initial congestion window value for each of the one or more applications. The processor may determine one or more initial congestion window values based on the correlation of the user experience parameters and the UE network parameters of the corresponding one or more applications. Further, the processor may determine Flow Completion Time (FCT) and congestion parameters for each of the one or more initial congestion window values. Thereafter, the processor may predict the initial congestion window value among the one or more initial congestion window values based on the FCT and the congestion parameters.

[0120] At block 405, the method 400 includes configuring, by the processor 303, the initial congestion window value for each of the one or more applications based on the prediction. The processor may be further configured to update the trained AI model 203 with change in FCT and congestion parameters for each of the one or more applications upon configuring the initial congestion window value for each of the one or more applications. The processor may transmit data packets to a server corresponding to each of the one or more applications in accordance with the initial congestion window value for each of the one or more applications.

[0121] Computer System

[0122] FIG. 5 illustrates a block diagram of an exemplary computer system 500 for implementing embodiments consistent with the present disclosure. In an embodiment, the computer system 500 may be User Equipment (UE) 201 illustrated in FIG. 3. The computer system 500 may include a central processing unit (“central processing unit (CPU)” or “processor” or “memory controller”) 502. The processor 502 may comprise at least one data processor for executing program components for executing user- or system-generated business processes. A user may include a network manager, an application developer, a programmer, an organization, or any system / sub-system being operated parallelly to the computer system 500. The processor 502 may include specialized processing units such as integrated system (bus) controllers, memory controllers / memory management control units, floating point units, graphics processing units, digital signal processing units, etc.

[0123] The processor 502 may be disposed in communication with one or more Input / Output (I / O) devices (511 and 512) via I / O interface 501. The I / O interface 501 may employ communication protocols / methods such as, without limitation, audio, analog, digital, stereo, IEEE®-1394, serial bus, Universal Serial Bus (USB), infrared, PS / 2, BNC, coaxial, component, composite, Digital Visual Interface (DVI), high-definition multimedia interface (HDMI), Radio Frequency (RF) antennas, S-Video, Video Graphics Array (VGA), IEEE®802.n / b / g / n / x, Bluetooth, cellular (e.g., Code-Division Multiple Access (CDMA), High-Speed Packet Access (HSPA+), Global System For Mobile Communications (GSM), Long-Term Evolution (LTE) or the like), etc. Using the I / O interface 501, the computer system 500 may communicate with one or more I / O devices 511 and 512.

[0124] In some embodiments, the processor 502 may be disposed in communication with a network 509 via a network interface 503. The network interface 503 may communicate with the network 509. The network interface 503 may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10 / 100 / 1000 Base T), Transmission Control Protocol / Internet Protocol (TCP / IP), token ring, IEEE®802.11a / b / g / n / x, etc.

[0125] In an implementation, the preferred network 509 may be implemented as one of the several types of networks, such as intranet or Local Area Network (LAN) and such within the organization. The preferred network 509 may either be a dedicated network or a shared network, which represents an association of several types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol / Internet Protocol (TCP / IP), Wireless Application Protocol (WAP) etc., to communicate with each other. Further, the network 509 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, etc. Using the network interface 503 and the network 509, the computer system 500 may communicate with one or more servers 205.

[0126] In some embodiments, the processor 502 may be disposed in communication with a memory 505 (e.g., RAM 513, ROM 514, etc. as shown in FIG. 5) via a storage interface 504. The storage interface 504 may connect to memory 505 including, without limitation, memory drives, removable disc drives, etc., employing connection protocols such as Serial Advanced Technology Attachment (SATA), Integrated Drive Electronics (IDE), IEEE-1394, Universal Serial Bus (USB), fiber channel, Small Computer Systems Interface (SCSI), etc. The memory drives may further include a drum, magnetic disc drive, magneto-optical drive, optical drive, Redundant Array of Independent Discs (RAID), solid-state memory devices, solid-state drives, etc.

[0127] The memory 505 may store a collection of program or database components, including, without limitation, user / application interface 506, an operating system 507, a web browser 508, and the like. In some embodiments, computer system 500 may store user / application data 506, such as the data, variables, records, etc. as described in this invention. Such databases may be implemented as fault-tolerant, relational, scalable, secure databases such as Oracle®or Sybase®.

[0128] The operating system 507 may facilitate resource management and operation of the computer system 500. Examples of operating systems include, without limitation, APPLE®MACINTOSH®OS X®, UNIX®, UNIX-like system distributions (E.G., BERKELEY SOFTWARE DISTRIBUTION®(BSD), FREEBSD®, NETBSD®, OPENBSD, etc.), LINUX®DISTRIBUTIONS (E.G., RED HAT®, UBUNTU®, KUBUNTU®, etc.), IBM®OS / 2®, MICROSOFT®WINDOWS®(XP®, VISTA® / 7 / 8, 10 etc.), APPLE®IOS®, GOOGLETMANDROIDTM, BLACKBERRY®OS, or the like.

[0129] The user interface 506 may facilitate display, execution, interaction, manipulation, or operation of program components through textual or graphical facilities. For example, the user interface 506 may provide computer interaction interface elements on a display system operatively connected to the computer system 500, such as cursors, icons, check boxes, menus, scrollers, windows, widgets, and the like. Further, Graphical User Interfaces (GUIs) may be employed, including, without limitation, APPLE®MACINTOSH®operating systems' Aqua®, IBM®OS / 2®, MICROSOFT®WINDOWS®(e.g., Aero, Metro, etc.), web interface libraries (e.g., ActiveX®, JAVA®, JAVASCRIPT®, AJAX, HTML, ADOBE®FLASH®, etc.), or the like.

[0130] The web browser 508 may be a hypertext viewing application. Secure web browsing may be provided using Secure Hypertext Transport Protocol (HTTPS), Secure Sockets Layer (SSL), Transport Layer Security (TLS), and the like. The web browsers 508 may utilize facilities such as AJAX, DHTML, ADOBE®FLASH®, JAVASCRIPT®, JAVA®, Application Programming Interfaces (APIs), and the like. Further, the computer system 500 may implement a mail server stored program component. The mail server may utilize facilities such as ASP, ACTIVEX®, ANSI®C++ / C#, MICROSOFT®, .NET, CGI SCRIPTS, JAVA®, JAVASCRIPT®, PERL®, PHP, PYTHON®, WEBOBJECTS®, etc. The mail server may utilize communication protocols such as Internet Message Access Protocol (IMAP), Messaging Application Programming Interface (MAPI), MICROSOFT®exchange, Post Office Protocol (POP), Simple Mail Transfer Protocol (SMTP), or the like. In some embodiments, the computer system 500 may implement a mail client stored program component. The mail client may be a mail viewing application, such as APPLE®MAIL, MICROSOFT®ENTOURAGE®, MICROSOFT®OUTLOOK®, MOZILLA®THUNDERBIRD®, and the like.

[0131] Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present invention. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., non-transitory. Examples include Random Access Memory (RAM), Read-Only Memory (ROM), volatile memory, nonvolatile memory, hard drives, Compact Disc (CD) ROMs, Digital Video Disc (DVDs), flash drives, disks, and any other known physical storage media.

[0132] In light of the technical advancements provided by the disclosed method, the claimed steps, as discussed above, are not routine, conventional, or not well-known aspects in the art, as the claimed steps provide the aforesaid solutions to the technical problems existing in the conventional technologies. Further, the claimed steps clearly bring an improvement in the functioning of the system itself, as the claimed steps provide a technical solution to a technical problem.

[0133] The terms "an embodiment", "embodiment", "embodiments", "the embodiment", "the embodiments", "one or more embodiments", "some embodiments", and "one embodiment" mean "one or more (but not all) embodiments of the invention(s)" unless expressly specified otherwise.

[0134] The terms "including", "comprising", “having” and variations thereof mean "including but not limited to", unless expressly specified otherwise.

[0135] The enumerated listing of items does not imply that any or all the items are mutually exclusive, unless expressly specified otherwise. The terms "a", "an" and "the" mean "one or more", unless expressly specified otherwise.

[0136] According to embodiments in the disclosure, a method of configuring initial congestion window value in a User Equipment (UE) (201)is provided. The method comprises determining, by a UE (201), for each of one or more applications running in a UE (201), user experience parameters and UE (201) network parameters; predicting, by the UE (201), using a trained Artificial Intelligence (AI) model (203), an initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE (201) network parameters corresponding to each of the one or more applications; and configuring, by the UE (201), the initial congestion window value for each of the one or more applications based on the prediction.

[0137] For example, the user experience parameters comprises at least one of, one or more Quality of Experience (QoE) parameters and one or more Quality of Service (QoS) parameters related to the one or more applications, wherein the one or more applications are identified using their corresponding application Identifiers (IDs).

[0138] For example, the one or more QoE parameters and one or more QoS parameters comprises at least one of, Signal to Interference Noise Ratio (SINR), Data Radio Bearers (DRBs), throughput, latency, Radio Access Technology (RAT), Channel Quality Indicator (CQI) and Received Signal Strength Indicator (RSSI).

[0139] For example, the user experience parameters are encoded in a vector format prior to providing the user experience parameters to the trained AI model (203) for the prediction.

[0140] For example, the vector format is encoded by identifying, by the UE (201), a class of QoS and QoE for each of the one or more applications from one or more predefined classes based on a predefined feature map, wherein the predefined feature map comprises a mapping of the one or more QoS parameters and the one or more QoE parameters applicable for each of the one or more applications with the class of QoS and QoE, wherein the class of QoS and QoE is represented as an encoded vector.

[0141] For example, the UE (201) network parameters comprises at least one of a type of protocol and Round-Trip Time (RTT) parameters related to packet transmission between the UE (201) and network.

[0142] For example, the RTT parameters are selected for the prediction by performing a correlation analysis of one or more Key Performance Indicators (KPIs) of the UE (201) and one or more KPIs of network associated with the UE (201) to determine a correlation coefficient between each of the one or more KPIs of the UE (201) and one or more KPIs of the network; and selecting the one or more KPIs of the UE (201) and the one or more KPIs of the network whose determined correlation coefficient is greater than a predefined correlation coefficient, as the RTT parameters.

[0143] For example, predicting the initial congestion window value comprises determining one or more initial congestion window values based on the correlation of the user experience parameters and the UE (201) network parameters of the corresponding one or more applications; determining Flow Completion Time (FCT) and congestion parameters for each of the one or more initial congestion window values; and predicting the initial congestion window value among the one or more initial congestion window values based on the FCT and the congestion parameters.

[0144] For example, the method further comprises updating, by the UE (201), the trained AI model (203) with change in FCT and congestion parameters for each of the one or more applications upon configuring the initial congestion window value for each of the one or more applications.

[0145] For example, the one or more applications comprise at least one of, thin streamed application and thick streamed application.

[0146] According to embodiments in the disclosure, a User Equipment (UE) (201) for configuring initial congestion window value in the UE (201) is provided. the UE (201) comprises a processor; and a memory, communicatively coupled to the processor, wherein the memory stores processor executable instructions, which, on execution, causes the processor to determine for each of one or more applications running in a UE (201), user experience parameters and UE (201) network parameters; predict using a trained Artificial Intelligence (AI) model (203), an initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE (201) network parameters corresponding to each of the one or more applications; and configure the initial congestion window value for each of the one or more applications based on the prediction.

[0147] For example, the user experience parameters comprise at least one of, an application Identifier (ID), one or more Quality of Experience (QoE) parameters and one or more Quality of Service (QoS) parameters related to the one or more applications, wherein the one or more applications are identified using their corresponding application Identifiers (IDs).

[0148] For example, the one or more QoE parameters and one or more QoS parameters comprises at least one of, Signal to Interference Noise Ratio (SINR), Data Radio Bearers (DRBs), throughput, latency, Radio Access Technology (RAT), Channel Quality Indicator (CQI) and Received Signal Strength Indicator (RSSI).

[0149] For example, the user experience parameters are encoded in a vector format prior to providing the user experience parameters to the trained AI model (203) for the prediction.

[0150] For example, to encode the vector format, the processor is configured to identify a class of QoS and QoE for each of the one or more applications from one or more predefined classes based on a predefined feature map, wherein the predefined feature map comprises a mapping of the one or more QoS parameters and the one or more QoE parameters applicable for each of the one or more applications with the class of QoS and QoE, wherein the class of QoS and QoE is represented as an encoded vector.

[0151] For example, the UE (201) network parameters comprises at least one of a type of protocol and Round-Trip Time (RTT) parameters related to packet transmission between the UE (201) and network.

[0152] For example, to select the RTT parameters for the prediction, the processor is configured to perform a correlation analysis of one or more Key Performance Indicators (KPIs) of the UE (201) and one or more KPIs of network associated with the UE (201) to determine a correlation coefficient between each of the one or more KPIs of the UE (201) and one or more KPIs of the network; and select the one or more KPIs of the UE (201) and the one or more KPIs of the network whose determined correlation coefficient is greater than a predefined correlation coefficient, as the RTT parameters.

[0153] For example, for predicting the initial congestion window value, the processor is configured to determine one or more initial congestion window values based on the correlation of the user experience parameters and the UE (201) network parameters of the corresponding one or more applications; determine Flow Completion Time (FCT) and congestion parameters for each of the one or more initial congestion window values; and predict the initial congestion window value among the one or more initial congestion window values based on the FCT and the congestion parameters.

[0154] For example, the processor is further configured to update the trained AI model (203) with change in FCT and congestion parameters for each of the one or more applications upon configuring the initial congestion window value for each of the one or more applications.

[0155] For example, the one or more applications comprise at least one of, thin streamed application and thick streamed application.

[0156] According to embodiments in the disclosure, a method performed by a user equipment (UE) for configuring initial congestion window value is provided. The method comprises determining, by the UE, for each of one or more applications running in the UE, user experience parameters and UE network parameters; obtaining, by the UE, using a trained Artificial Intelligence (AI) model, an initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE network parameters corresponding to each of the one or more applications; and transmitting, by the UE (201), data packets in accordance with the obtained initial congestion window value for each of the one or more applications.

[0157] For example, the user experience parameters comprise at least one of, one or more Quality of Experience (QoE) parameters and one or more Quality of Service (QoS) parameters related to the one or more applications, wherein the one or more applications are identified using their corresponding application Identifiers (IDs).

[0158] For example, the one or more QoE parameters and one or more QoS parameters comprises at least one of, Signal to Interference Noise Ratio (SINR), Data Radio Bearers (DRBs), throughput, latency, Radio Access Technology (RAT), Channel Quality Indicator (CQI) and Received Signal Strength Indicator (RSSI).

[0159] For example, the user experience parameters are encoded in a vector format prior to providing the user experience parameters to the trained AI model.

[0160] For example, the vector format is encoded by: identifying, by the UE, a class of QoS and QoE for each of the one or more applications from one or more predefined classes based on a predefined feature map, wherein the predefined feature map comprises a mapping of the one or more QoS parameters and the one or more QoE parameters applicable for each of the one or more applications with the class of QoS and QoE, wherein the class of QoS and QoE is represented as an encoded vector.

[0161] For example, the UE network parameters comprise at least one of a type of protocol and Round-Trip Time (RTT) parameters related to packet transmission between the UE and network.

[0162] For example, the RTT parameters are selected by: performing a correlation analysis of one or more Key Performance Indicators (KPIs) of the UE and one or more KPIs of network associated with the UE to determine a correlation coefficient between each of the one or more KPIs of the UE and one or more KPIs of the network; and selecting the one or more KPIs of the UE and the one or more KPIs of the network whose determined correlation coefficient is greater than a predefined correlation coefficient, as the RTT parameters.

[0163] For example, obtaining the initial congestion window value comprises determining one or more initial congestion window values based on the correlation of the user experience parameters and the UE network parameters of the corresponding one or more applications; determining Flow Completion Time (FCT) and congestion parameters for each of the one or more initial congestion window values; and obtaining the initial congestion window value among the one or more initial congestion window values based on the FCT and the congestion parameters.

[0164] For example, the method further comprises updating, by the UE, the trained AI model with change in FCT and congestion parameters for each of the one or more applications upon configuring the initial congestion window value for each of the one or more applications.

[0165] For example, the one or more applications comprises at least one of, thin streamed application and thick streamed application.

[0166] According to embodiments in the disclosure, a user equipment (UE) for configuring initial congestion window value is provided. The UE comprises at least one processor comprising processing circuitry; and memory comprising one or more storage media storing instructions that, when executed by the at least one processor individually or collectively, cause the UE to determine for each of one or more applications running in the UE, user experience parameters and UE network parameters; obtain using a trained Artificial Intelligence (AI) model, an initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE network parameters corresponding to each of the one or more applications; and transmit data packets in accordance with the obtained initial congestion window value for each of the one or more applications.

[0167] For example, the user experience parameters comprise at least one of, an application Identifier (ID), one or more Quality of Experience (QoE) parameters and one or more Quality of Service (QoS) parameters related to the one or more applications, wherein the one or more applications are identified using their corresponding application Identifiers (IDs).

[0168] For example, the one or more QoE parameters and one or more QoS parameters comprises at least one of, Signal to Interference Noise Ratio (SINR), Data Radio Bearers (DRBs), throughput, latency, Radio Access Technology (RAT), Channel Quality Indicator (CQI) and Received Signal Strength Indicator (RSSI).

[0169] For example, the user experience parameters are encoded in a vector format prior to providing the user experience parameters to the trained AI model.

[0170] For example, to encode the vector format, the instructions, when executed by the at least one processor individually or collectively, cause the UE to identify a class of QoS and QoE for each of the one or more applications from one or more predefined classes based on a predefined feature map, wherein the predefined feature map comprises a mapping of the one or more QoS parameters and the one or more QoE parameters applicable for each of the one or more applications with the class of QoS and QoE, wherein the class of QoS and QoE is represented as an encoded vector.

[0171] A description of an embodiment with several components in communication with each other does not imply that all such components are required. On the contrary, a variety of optional components are described to illustrate the wide variety of possible embodiments of the invention.

[0172] When a single device or article is described herein, it will be clear that more than one device / article (whether they cooperate) may be used in place of a single device / article. Similarly, where more than one device / article is described herein (whether they cooperate), it will be clear that a single device / article may be used in place of the more than one device / article or a different number of devices / articles may be used instead of the shown number of devices or programs. The functionality and / or features of a device may be alternatively embodied by one or more other devices which are not explicitly described as having such functionality / features. Thus, other embodiments of invention need not include the device itself.

[0173] For one or more embodiments, at least one of the components set forth in one or more of the preceding figures may be configured to perform one or more operations, techniques, processes, and / or methods as set forth herein. For example, a processor (e.g., baseband processor) as described herein in connection with one or more of the preceding figures may be configured to operate in accordance with one or more of the examples set forth herein. For another example, circuitry associated with a UE, base station, network element, etc. as described above in connection with one or more of the preceding figures may be configured to operate in accordance with one or more of the examples set forth herein.

[0174] Any of the above described embodiments may be combined with any other embodiment (or combination of embodiments), unless explicitly stated otherwise. The foregoing description of one or more implementations provides illustration and description, but is not intended to be exhaustive or to limit the scope of embodiments to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of various embodiments.

[0175] The methods according to various embodiments described in the claims and / or the specification of the disclosure may be implemented in hardware, software, or a combination of hardware and software.

[0176] When implemented by software, a computer-readable storage medium storing one or more programs (software modules) may be provided. One or more programs stored in such a computer-readable storage medium (e.g., non-transitory storage medium) are configured for execution by one or more processors in an electronic device. The one or more programs include instructions that cause the electronic device to execute the methods according to embodiments described in the claims or specification of the disclosure.

[0177] Such a program (e.g., software module, software) may be stored in a random-access memory, a non-volatile memory including a flash memory, a read only memory (ROM), an electrically erasable programmable read only memory (EEPROM), a magnetic disc storage device, a compact disc-ROM (CD-ROM), digital versatile discs (DVDs), other types of optical storage devices, or magnetic cassettes. Alternatively, it may be stored in a memory configured with a combination of some or all of the above. In addition, respective constituent memories may be provided in a multiple number.

[0178] Further, the program may be stored in an attachable storage device that can be accessed via a communication network, such as e.g., Internet, Intranet, local area network (LAN), wide area network (WAN), or storage area network (SAN), or a communication network configured with a combination thereof. Such a storage device may access an apparatus performing an embodiment of the disclosure through an external port. Further, a separate storage device on the communication network may be accessed to an apparatus performing an embodiment of the disclosure.

[0179] In the above-described specific embodiments of the disclosure, a component included therein may be expressed in a singular or plural form according to a proposed specific embodiment. However, such a singular or plural expression may be selected appropriately for the presented context for the convenience of description, and the disclosure is not limited to the singular form or the plural elements. Therefore, either an element expressed in the plural form may be formed of a singular element, or an element expressed in the singular form may be formed of plural elements.

[0180] Meanwhile, specific embodiments have been described in the detailed description of the disclosure, but it goes without saying that various modifications are possible without departing from the scope of the disclosure.

[0181] Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the invention be limited not by this detailed description, but rather by any claims that issue on an application based here on. Accordingly, the embodiments of the present invention are intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.

[0182] While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.

Claims

1.A method performed by a user equipment (UE) for configuring initial congestion window value, the method comprising:determining, by the UE, for each of one or more applications running in the UE, user experience parameters and UE network parameters;obtaining, by the UE, using a trained Artificial Intelligence (AI) model, an initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE network parameters corresponding to each of the one or more applications; andtransmitting, by the UE (201), data packets in accordance with the obtained initial congestion window value for each of the one or more applications.2.The method of claim 1, wherein the user experience parameters comprise at least one of, one or more Quality of Experience (QoE) parameters and one or more Quality of Service (QoS) parameters related to the one or more applications, wherein the one or more applications are identified using their corresponding application Identifiers (IDs).3.The method of claim 2, wherein the one or more QoE parameters and one or more QoS parameters comprises at least one of, Signal to Interference Noise Ratio (SINR), Data Radio Bearers (DRBs), throughput, latency, Radio Access Technology (RAT), Channel Quality Indicator (CQI) and Received Signal Strength Indicator (RSSI).4.The method of claim 1, wherein the user experience parameters are encoded in a vector format prior to providing the user experience parameters to the trained AI model.5.The method of claim 4, wherein the vector format is encoded by:identifying, by the UE, a class of QoS and QoE for each of the one or more applications from one or more predefined classes based on a predefined feature map, wherein the predefined feature map comprises a mapping of the one or more QoS parameters and the one or more QoE parameters applicable for each of the one or more applications with the class of QoS and QoE, wherein the class of QoS and QoE is represented as an encoded vector.6.The method of claim 1, wherein the UE network parameters comprise at least one of a type of protocol and Round-Trip Time (RTT) parameters related to packet transmission between the UE and network.7.The method of claim 6, wherein the RTT parameters are selected by:performing a correlation analysis of one or more Key Performance Indicators (KPIs) of the UE and one or more KPIs of network associated with the UE to determine a correlation coefficient between each of the one or more KPIs of the UE and one or more KPIs of the network; andselecting the one or more KPIs of the UE and the one or more KPIs of the network whose determined correlation coefficient is greater than a predefined correlation coefficient, as the RTT parameters.8.The method of claim 1, wherein obtaining the initial congestion window value comprises:determining one or more initial congestion window values based on the correlation of the user experience parameters and the UE network parameters of the corresponding one or more applications;determining Flow Completion Time (FCT) and congestion parameters for each of the one or more initial congestion window values; andobtaining the initial congestion window value among the one or more initial congestion window values based on the FCT and the congestion parameters.9.The method of claim 1, further comprising:updating, by the UE, the trained AI model with change in FCT and congestion parameters for each of the one or more applications upon configuring the initial congestion window value for each of the one or more applications.10.The method of claim 1, wherein the one or more applications comprises at least one of, thin streamed application and thick streamed application.11.A user equipment (UE) for configuring initial congestion window value, the UE comprising:at least one processor comprising processing circuitry; andmemory comprising one or more storage media storing instructions that, when executed by the at least one processor individually or collectively, cause the UE to:determine for each of one or more applications running in the UE, user experience parameters and UE network parameters;obtain using a trained Artificial Intelligence (AI) model, an initial congestion window value for each of the one or more applications based on correlation of the user experience parameters and the UE network parameters corresponding to each of the one or more applications; andtransmit data packets in accordance with the obtained initial congestion window value for each of the one or more applications.12.The UE of claim 11, wherein the user experience parameters comprise at least one of, an application Identifier (ID), one or more Quality of Experience (QoE) parameters and one or more Quality of Service (QoS) parameters related to the one or more applications, wherein the one or more applications are identified using their corresponding application Identifiers (IDs).13.The UE of claim 12, wherein the one or more QoE parameters and one or more QoS parameters comprises at least one of, Signal to Interference Noise Ratio (SINR), Data Radio Bearers (DRBs), throughput, latency, Radio Access Technology (RAT), Channel Quality Indicator (CQI) and Received Signal Strength Indicator (RSSI).14.The UE of claim 12, wherein the user experience parameters are encoded in a vector format prior to providing the user experience parameters to the trained AI model.15.The UE of claim 14, wherein to encode the vector format, the instructions, when executed by the at least one processor individually or collectively, cause the UE to:identify a class of QoS and QoE for each of the one or more applications from one or more predefined classes based on a predefined feature map, wherein the predefined feature map comprises a mapping of the one or more QoS parameters and the one or more QoE parameters applicable for each of the one or more applications with the class of QoS and QoE, wherein the class of QoS and QoE is represented as an encoded vector.