Detecting microburst sessions in a communications network

WO2026177642A1PCT designated stage Publication Date: 2026-08-27TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/SE2025/050158
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-02-20
Publication Date
2026-08-27

Smart Images

  • Figure SE2025050158_27082026_PF_FP_ABST
    Figure SE2025050158_27082026_PF_FP_ABST
Patent Text Reader

Abstract

The present disclosure relates to a method of a radio access network (RAN) device (113) of detecting a microburst session, and a RAN device (113) performing the method. In an aspect, a method of a RAN device (113) of detecting a microburst session is provided. The method comprises receiving (S101) data and in response to a time period having elapsed since a last data reception being determined (S102) to be below a lower duration threshold value (T1): adding (S103) a size of the received data being detected to be part of an ongoing microburst to a microburst size indicator, and in response to the time period having elapsed since a last data reception being determined (S104) to be equal to or above the lower duration threshold value (T1) and equal to or below an upper duration threshold value (T2): detecting (S105) start of a new microburst and computing an exponential moving average of time period having elapsed since the last data reception, and an exponential moving average of the microburst size of the previously received microburst as indicated by the microburst size indicator and setting (S106) the microburst size indicator to a size of the received data being detected to be part of a new microburst, and in response to the time period having elapsed since a last data reception being determined (S104) to be above the upper duration threshold value (T2): detecting (S107) that the microburst session is completed.
Need to check novelty before this filing date? Find Prior Art

Description

DETECTING MICROBURST SESSIONS IN A COMMUNICATIONS NETWORKTECHNICAL FIELD

[0001] The present disclosure relates to a method of a radio access network (RAN) device of detecting a microburst session, and a RAN device performing the method. Further disclosed are computer programs and computer program products.BACKGROUND

[0002] Over-the-Top (OTT) media services such as e-gaming, voice- and video calls are extensively used today, creating a need to accurately detect sessions of these OTT services in order to apply specific service optimizations to enhance quality. Examples of such optimizations include implementing more conservative link adaptation strategies and disabling use of secondary radio base stations in regions where operators have inadequate radio coverage for a service. However, the increasing use of end-to-end encryption and anonymous network technologies complicates the identification of particular types of services merely by protocol eavesdropping and analysis.

[0003] Various research efforts have been made e.g. to explore the use of neural networks to identify OTT voice and video sessions. While these methods are promising, they often demand substantial computing and memory resources, which are typically unavailable on radio base stations. Consequently, using these methods, traffic classifiers need to be deployed higher up in the network, for instance in the core network, to which radio access networks of the radio base stations are connected, many times also necessitating transmission of purpose-specific signals to the radio base stations. This approach introduces delays and increases complexity of the system.SUMMARY

[0004] One objective is to solve, or at least mitigate, this problem in the art and thus to provide an improved method of detecting a microburst session in a RAN.

[0005] This objective is attained in a first aspect by a method of a RAN device of detecting a microburst session. The method comprises receiving data, and in response to a time period having elapsed since a last data reception being determinedto be below a lower duration threshold value: adding a size of the received data being detected to be part of an ongoing microburst to a microburst size indicator, and in response to the time period having elapsed since a last data reception being determined to be equal to or above the lower duration threshold value and equal to or below an upper duration threshold value: detecting start of a new microburst and computing an exponential moving average of time period having elapsed since the last data reception, and an exponential moving average of the microburst size of the previously received microburst as indicated by the microburst size indicator, and setting the microburst size indicator to a size of the received data being detected to be part of a new microburst, and in response to the time period having elapsed since a last data reception being determined to be above the upper duration threshold value: detecting that the microburst session is completed.

[0006] This objective is attained in a second aspect by a RAN device configured to detect a microburst session. The RAN device comprises a processing unit and a memory, which memory contains instructions executable by the processing unit, whereby the RAN device is operative to receive data, and in response to a time period having elapsed since a last data reception being determined to be below a lower duration threshold value: add a size of the received data being detected to be part of an ongoing microburst to a microburst size indicator, and in response to the time period having elapsed since a last data reception being determined to be equal to or above the lower duration threshold value and equal to or below an upper duration threshold value: detect start of a new microburst and computing an exponential moving average of time period having elapsed since the last data reception, and an exponential moving average of the microburst size of the previously received microburst as indicated by the microburst size indicator, and reset the microburst size indicator to a size of the received data being detected to be part of a new microburst, and in response to the time period having elapsed since a last data reception being determined to be above the upper duration threshold value: detect that the microburst session is completed.

[0007] Advantageously, microburst sessions, such as e.g. e-gaming, voice and video call sessions, are effectively detected by analysing network traffic patterns in terms of an inter arrival time (IAT) for, and size of, received microbursts.

[0008] In an embodiment, in response to the computed exponential moving averages of the time period having elapsed since the last data reception and the microburst size of the previously received microburst being determined to match a time period and microburst size being characteristic to a specific service type, determining that the ongoing microburst session corresponds to said specific service type for which there is a match.

[0009] In an embodiment, the exponential moving averages to be computed are initialized with values for the time period having elapsed since the last data reception and the microburst size of the previously received microburst being characteristic to a selected service type.

[0010] In an embodiment, the exponential moving averages to be computed are initialized with values for the time period having elapsed since the last data reception and the microburst size of the previously received microburst not being characteristic to a specific service type.

[0011] In an embodiment, the lower duration threshold value is set to 10ms and the upper duration threshold value being set to 500ms.

[0012] In an embodiment, a characteristic time period having elapsed since the last data reception is i5-30ms for an e-gaming microburst session, 50-i20ms for a voice call microburst session and 2O-6oms for a video call microburst session, while a characteristic microburst size of the previously received microburst is 100-600 byte for an e-gaming microburst session and a voice call microburst session, and 1000-6000 byte for a video call microburst session

[0013] In an embodiment, sigmoid functions are computed for the time period having elapsed since the last data reception and the microburst size of the previously received microburst and a raw score is formed based on a combination of the two computed sigmoid functions followed by forming of a service score computed as a set minimum score value plus said formed raw score multiplied by a difference between a set maximum score value and said set minimum score value, wherein a single score range of each formed service score is associated with a matching service type.

[0014] In an embodiment, sigmoid functions are computed for the exponential moving average of the time period having elapsed since the last data reception and the exponential moving average of the microburst size of the previously receivedmicroburst and a filtered raw score is formed based on a combination of the two computed sigmoid functions followed by forming of a filtered service score computed as a set minimum score value plus said formed filtered raw score multiplied by a difference between a set maximum score value and said set minimum score value, wherein a single score range of each formed filtered service score is associated with a matching service type.

[0015] In an embodiment, the data is received and the method further comprises, in response to the time period having elapsed since a last data reception being determined to be equal to or above the lower duration threshold value and equal to or below an upper duration threshold value: counting each received microburst and in response to the microburst size being determined to be between a lower microburst size threshold value and an upper microburst size threshold value, a microburst counter being determined to be below a microburst threshold value and the time period having elapsed since a last data reception being determined to be below a third duration threshold value: increasing microburst counter by a weight designed to have the microburst counter reach the microburst threshold value within a set observation window.

[0016] In an embodiment, in response to the time period having elapsed since a last data reception being determined to be equal to or above the third duration threshold value: adjusting the microburst counter based on degree of change in the time period having elapsed since a last data reception as compared to the computed an exponential moving average of time period having elapsed since the last data reception.

[0017] In an embodiment, in response to the microburst counter being determined to be below the microburst threshold value: adjusting the microburst counter by a fraction of the difference between the formed filtered service score and a current value of the microburst counter.

[0018] In an embodiment, in response to the microburst size being determined to be between a lower microburst size threshold value and an upper microburst size threshold value: decreasing the microburst counter by an adjustment value proportional to the microburst size.

[0019] In an embodiment, a new service type is assigned to a detected microburst session upon the absolute difference between the formed service score and the filtered service score is less than or equal to a set first value, the absolute difference between the filtered service score and the microburst counter is less than or equal to the set first value, and the microburst counter exceeds a predefined boundary value for the new service type by more than a set hysteresis value.

[0020] In an embodiment, the detection of a microburst session causes the RAN device to apply a network configuration that reduces inter-node transitions and user plane interactions during mobility.

[0021] In an embodiment, a predictive grant is issued for the specific service type.

[0022] In an embodiment, the detection of a microburst session causes the RAN device to apply a more conservative link adaptation by applying a different modulation and coding scheme (MCS) or a lower block error rate (BLER) target.

[0023] In a third aspect, a computer program is provided comprising computerexecutable instructions for causing a RAN device to perform steps recited in the method of the first aspect when the computer-executable instructions are executed on a processing unit included in the RAN device.

[0024] In a fourth aspect, a computer program product is provided comprising a computer readable medium, the computer readable medium having the computer program according to the third aspect embodied thereon.

[0025] Generally, all terms used in the claims are to be interpreted according to their ordinary meaning in the technical field, unless explicitly defined otherwise herein. All references to "a / an / the element, apparatus, component, means, step, etc." are to be interpreted openly as referring to at least one instance of the element, apparatus, component, means, step, etc., unless explicitly stated otherwise. The steps of any method disclosed herein do not have to be performed in the exact order disclosed, unless explicitly stated.BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Aspects and embodiments are now described, by way of example, with reference to the accompanying drawings, in which:

[0027] Figure 1 illustrates an ongoing microburst session;

[0028] Figure 2 shows a wireless communication system in which embodiments may be implemented;

[0029] Figure 3 shows a flowchart illustrating a method of detecting a microburst session according to an embodiment;

[0030] Figure 4 shows a flowchart illustrating a method of detecting a microburst session according to a further embodiment;

[0031] Figure 5 shows a flowchart illustrating a method of detecting a microburst session according to still a further embodiment; and

[0032] Figure 6 shows a RAN device according to an embodiment.DETAILED DESCRIPTION

[0033] The aspects of the present disclosure will now be described more fully hereinafter with reference to the accompanying drawings, in which certain embodiments of the invention are shown.

[0034] These aspects may, however, be embodied in many different forms and should not be construed as limiting; rather, these embodiments are provided by way of example so that this disclosure will be thorough and complete, and to fully convey the scope of all aspects of invention to those skilled in the art. Like numbers refer to like elements throughout the description.

[0035] A distinctive characteristic of e-gaming, video- and voice call sessions established for the Over-the-Top (OTT) media services is that information is transferred at a relatively constant rate throughout the session. These sessions can be identified by a series of microbursts that occur at regular intervals, where each microburst generally is defined as having an inter arrival time (IAT) of equal to or exceeding 10ms. That is, the time period elapsing between two sequential microbursts within a microburst session is typically at least 10ms.

[0036] Typical characteristic figures for e-gaming, video- and voice call sessions are listed in the following:IAT for continuous microburst sessions: e-gaming i5-3oms, voice call 50- 120ms, video call 2O-6oms, and• Data size of each microburst: e-gaming / voice call 100-600 byte, video call 1000-6000 byte.

[0037] These figures apply to sessions both for downlink (DL) and uplink (UL) traffic, although they are more commonly observed for DL traffic as compared to normal mobile broadband (MBB) activities such as e.g. video streaming or web browsing.

[0038] Figure 1 illustrates an ongoing microburst session where a first short microburst mBi is followed by a second slightly longer microburst mB2 and a final third microburst mB3 being the longest. As discussed, it is desirable to be able to determine, for a microburst session, the specific type of service performing the microburst session, i.e. whether the microburst session is associated with e-gaming, video calls or voice calls. In practice, a microburst session may contain hundreds or thousands of individual microbursts, where each microburst in its turn may contain hundreds or thousands of data packets.

[0039] Figure 2 illustrates a schematic illustration of a wireless communication system 100 in which embodiments may be implemented. In the wireless communication system 100, a first set of devices 110, 111, 112 in the form of User Equipment (UE), e.g. smart phones, tablets, desktops, gaming consoles, connected vehicles, Internet-of-Things (loT) devices, etc., are served by a network node 113 which in this example is embodied in the form of a radio base station (RBS).

[0040] The RBS 113 is connected to a core network 130, such has e.g., a 3rd Generation Partnership Project (3GPP) 5th generation core (5GC) network, and the 5GC network 130 is typically in turn connected to the Internet, in this example illustrated with the 5GC network connected to a cloud server 150. In a 5G wireless communication system, the radio base station is commonly referred to as gNodeB.

[0041] The RBS 113 may further be split into a plurality of entities such as suggested in 3GPP and in various Open RAN initiatives such as O-RAN from the O-RAN Alliance. In the O-RAN case, the RBS 113 maybe split into a plurality of O-RUs (O-RAN Radio Units or remote radio unit), an O-DU (O-RAN Distributed / Digital / Baseband Unit), an O-CU (O-RAN Centralized Unit), a Near Real-Time RAN Intelligent Controller. Other architectures for RAN are also possible, including proprietary ones.

[0042] As an example, an OTT service may be provided by having the UEs 110-112 stream data from the server 150, hosted e.g. by a streaming service provider, viq the core network 130 and the RBS 113.

[0043] Figure 3 illustrates a flowchart of an embodiment of a method of detecting a microburst session. The method may be performed by a device in a radio access network (RAN) such as the RBS 113. In the exemplifying embodiment, it is assumed that the RBS 113 receives downlink data to be transmitted to one or more of the UEs 110-112 served by the RBS 113. It is also assumed that the RBS 113 can distinguish the context in which this downlink data applies, and in particular to which UE it applies. For example, the RBS 113 may commonly instantiate one protocol entity per UE for certain layers of the RAN protocol stack, for instance for the packet data convergence protocol (PDCP) or the radio link control (RLC) protocol. The RBS 113 may then apply an embodiment of the method at the PDCP or RLC level.

[0044] Now, assuming that the RBS 113 receives the first microburst mBi in S101, and at reception of a second data packet of the received first microburst mBi, the RBS 113 determines in S102 that a time period having elapsed since receiving the last data - i.e. the first data packet of the first microburst mBi - is below a predetermined lower duration threshold value Ti, and thus detects the currently received data packet as being part of an ongoing microburst.

[0045] As previously mentioned, the time period elapsing between two sequential microbursts within a microburst session, i.e. the IAT, is typically at least 10ms. Thus, the time period elapsing between any two data packets within a microburst is less than 10ms, and the predetermined lower threshold value Ti may thus in an example advantageously be set to 10ms.

[0046] For each following data packet contained in the first microburst mBi, the time period elapsing from the immediately received data packet will be below Ti = 10ms and for each received data packet of the first microburst mBi, a size of each received packet is added in S103 to a microburst size indicator referred to as sizeMicroBurst (typically initialized to zero). As an effect, once the first microburst mBi has been received in full, sizeMicroBurst will reflect the size of the microburst. For instance, in case the microburst session is performed during e-gaming or a voice call, the microburst size indicator sizeMicroBurst may e.g. indicate that 300 byte has been received for the first microburst mBi.

[0047] Again, with reference to Figure 1, once the full first microburst mBi has been received, there is a time period where no data is received (i.e. the time period referred to as the IAT1) before the second microburst mBi of the session arrives at the RBS 113. As previously discussed, IAT1 > 10ms.

[0048] Now, upon receiving a first data packet of the second microburst mB2, the RBS 113 thus determines in S102 that the time period having elapsed since the last data reception (i.e. the very last data packet of the first microburst mBi) indeed exceeds the predetermined lower duration threshold value Ti of 10ms.

[0049] By further determining in S104 that the time period having elapsed since the last data reception also is lower than or equal to a predetermined upper duration threshold value T2, set e.g. to 500ms, the RBS 113 concludes that the received data is the start of a further microburst (i.e. the second microburst mB2) within the same session.

[0050] As is understood, should the elapsed time period have exceeded the upper predetermined upper threshold value T2, the RBS 113 would have concluded in S107 that the received microburst was part of another subsequent microburst session rather than forming part of the current session.

[0051] In this example, assuming that IAT1 is determined to be, say, 80ms, the RBS 113 may at this stage - on the basis of the currently determined parameters sizeMicroBurst = 300 byte and IAT1 = 80ms - conclude that the detected microburst session is a voice call session and act accordingly (as will be described later on).

[0052] Upon detecting the start of the second microburst mB2 (i.e. upon receiving the first data packet of the second microburst), the RBS 113 computes in S105 an exponential moving average (EMA) of the elapsed time period, i.e. the IAT since the last received microburst, giving greater weight to recently elapsed time periods than historically elapsed time periods.

[0053] In an embodiment, the EMA of the elapsed time period may be computed as:filteredMicroBurstlAT = filteredMicroBurstIAT*(i- forgettingFactori) + IAT* forgettingF acton, Equation (1 )

[0054] Thus, the IAT is gradually updated (i.e. smoothed) over time as indicated by filteredMicroBurstlAT, giving more weight to recent observations of the IAT while not completely discarding historically observed IATS.

[0055] The parameter referred to as forgettingFactori controls the weight given to the new observation of the IAT in relation to the previously smoothed value filteredMicroBurstlAT and typically lies in the range [o, 1].

[0056] A higher forgetting factor (closer to 1) makes the computation adapt more quickly to recent changes by giving more weight to the new observation, while a lower forgetting factor (closer to o) causes a higher degree of smoothing and thus makes the computation less sensitive to recent changes by more strongly emphasizing past observations.

[0057] Thus, with the parameter referred to as filteredMicroBurstlAT, the IAT of the currently ongoing microburst session is advantageously updated in real time in S104 and further emphasizes a long-term IAT computed over many microbursts. In practice, a microburst session may contain hundreds or thousands of individual microbursts.

[0058] Further in S105, the RBS 113 computes an EMA of the microburst size indicator sizeMicroBurst acquired for the previous microburst (i.e. the first microburst mBi).

[0059] In an embodiment, similar to the EMA computed for the elapsed time period, the EMA of the microburst size may be computed as:filteredMicroBurstSize = filteredMicroBurstSize*(i-forgettingFactor2) + sizeMicroBurst* forgettingFactor2, Equation (2 )

[0060] Thus, with the parameter referred to as filteredMicroBurstSize, the microburst size of the previous session is advantageously updated in real time (as reflected by filteredMicroBurstSize), and again emphasize is made on long-term computation over many microbursts.

[0061] After having computed the filteredMicroBurstSize in S105, the microburst size indicator sizeMicroBurst is set to a size of the first data packet of the second microburst mB2 in S106, since the size of the new microburst mB2 now is to be determined.

[0062] Thereafter, upon receiving the second data packet of the second microburst mB2 in Sioi, the RBS 113 again determines in S102 that - since the time period that has elapsed since the first data packet is below Ti = 10ms - the second data packet is part of a new ongoing microburst (i.e. the second microburst mB2), and a size of the received packet is added to the microburst size indicator sizeMicroBurst in S103 (which was reset to zero in S106).

[0063] This process is repeated for all data packets in the second microburst mB2, which has as an effect that sizeMicroBurst ultimately will reflect the size of the second microburst mB2 when the second microburst mB2 has been received in full.

[0064] Again, once the complete second microburst has been received, there is a time period where no data is received (i.e. the time period referred to as the IAT2) before the third microburst mB3 of the session arrives at the RBS 113.

[0065] Now, upon receiving a first data packet of the third microburst mB3, the RBS 113 determines in S104 that the time period having elapsed since the last data reception (i.e. the very last data packet of the second microburst mB2) is in the range io-5ooms and updates filteredMicroBurstlAT with the currently determined IAT (i.e. IAT2) between the second microburst mB2 and the third microburst mB3 according to Equation (1), and further updates filteredMicroBurstSize with the current sizeMicroBurst reflecting the total size of the second microburst mB2.

[0066] This process is repeated for all received microbursts of the ongoing microburst session, which is considered to end once a data packet is received where the time period having elapsed since the last data reception exceeds the upper predetermined upper threshold value T2 of 500ms. Thus, the RBS 113 concludes in S107 that the microburst session is completed.

[0067] Thus, the RBS 113 will continuously during the ongoing microburst session update both the determined IAT and the microburst size of the session. For example, assuming that the size of the microbursts received during the session is in the range of 200-500 byte, the RBS 113 can advantageously conclude that the detected microburst session is either an e-gaming session or a voice call session.

[0068] Further, assuming that the IAT of the microbursts are determined to be somewhere in the range of 6o-iooms, the RBS 113 can advantageously conclude that the session indeed is a voice call session (and not an e-gaming session).

[0069] Hence, with reference to the flowchart of Figure 4, by comparing the continuously updated IAT and microburst size values (being computed in S105 as filteredMicroBurstlAT and filteredMicroBurstSize) to a time period and microburst size being characteristic to a specific service type in S108, the RBS 113 will determine in response to the comparison resulting in a match that the ongoing microburst corresponds to said specific service type in S109. If not, a further comparison may be performed with characteristics of another specific service type. Thus, with reference to the above example, with IAT in the range of 6o-iooms and the microburst size in the range of 200-500 byte, the comparison in S108 will result in the ongoing session being determined to be a voice call session in S109.

[0070] Advantageously, the embodiment described with reference to the flowchart of Figure 3, e-gaming, voice and video call sessions are effectively detected by analysing network traffic patterns in terms of IAT and size of received microbursts.

[0071] Further, using an EMA approach, storing and processing large amounts of historical data is not required, since with Equations (1) and (2), the computed average value is updated using only the latest value of the IAT and the size of received microbursts, respectively, and the previous smoothed value.

[0072] In an embodiment, the EMA computations of Equations (1) and (2) may be initiated with selected values, since carefully selected initial values may impact detection time.

[0073] In one exemplifying embodiment, the detection time for a specific type of service is prioritized, the filteredMicroBurstlAT and the filteredMicroBurstSize is initialized to the normal values that can be expected for the specific service.

[0074] For example, to prioritize detection of a voice call session, filteredMicroBurstlAT = looms and filteredMicroBurstlAT = 234 byte, since most voice calls starts with a relatively long silent period (i.e. resulting in a relatively long IAT).

[0075] In another exemplifying embodiment, the initial values are not selected to prioritize a specific type of service, but rather using a “middle ground” approach, resulting e.g. in filteredMicroBurstlAT = 50ms and filteredMicroBurstlAT = 800 byte.

[0076] Thus, with the determined IATS and microburst sizes reflected by the computed EMA parameters filteredMicroBurstlAT and flit eredMicro BurstSize, a specific service type can be determined based on the typical IAT and microburst size characteristics, as described hereinabove.

[0077] However, due to the inherently unpredictable nature of UE traffic behaviour, occasional variations in IAT and microburst size are expected to occur in real-world traffic scenarios. These variations may result from specific user activities, such as suddenly sending a picture during a voice call, or background applications transmitting data. To ensure robust and stable service type identification, it may be advisable to observe filteredMicroBurstlAT and filteredMicroBurstSize over an observation window (typically 1-2 seconds). A session should only be classified as a specific service type if the majority of the filteredMicroBurstlAT and filteredMicroBurstSize values within the observation window fall within the defined IAT and microburst size ranges for that service type as previously described above.

[0078] There are various approaches to implement this observation mechanism, and the choice largely depends on the available memory of the target implementation element. In the following, an embodiment will be described introducing a method that utilizes a microburst counter to efficiently resolve this issue.

[0079] First, a service score mapping will be performed based on IAT and microburst size.

[0080] The service score is designed to classify different types of services by mapping their unique IAT and microburst size characteristics to a specific score range. The primary objective is to represent each service type with a single, identifiable score range, facilitating easier service type identification.

[0081] The service score is computed by combining the computed IAT and microburst size values using sigmoid functions, which facilitates normalizing the data and emphasizing key relationships between these two parameters.

[0082] The sigmoid function is used to transform both the IAT and microburst size values into a bounded range, allowing for smoother transitions and reducing the impact of outliers.

[0083] A general sigmoid function may be defined as:scale x (x-center)z -100This expression represents a logistic sigmoid transformation of x, with parameters for scaling and centering the input. The scale factor controls the steepness of the sigmoid curve, while the center parameter shifts it along the x-axis.

[0084] In terms of score emphasis, for low microburst size values, the score is more influenced by the IAT, reflecting importance of timing in low-volume interactions. As the microburst size values increase, the score becomes more dependent on the microburst size, aligning with the significance of data volume in high-throughput services.

[0085] When performing score calculation, the IAT contribution is taken into account by computing the IAT score using the sigmoid function with the corresponding IAT values iat, iat_scale, and iat_center as variables in the sigmoid function.

[0086] The computed raw IAT score may be defines as:iat_raw_score = S(iat, iat_scale = 10, iat_center = 40ms).This raw score emphasizes the steepness of the change in the score around iat_center where the default values is set to 40 ms.

[0087] Further, the microburst size contribution is taken into account by computing the microburst size score using the sigmoid function with the corresponding microburst size values mbs_value, negative mbs_scale, and mbs_center as variables in the sigmoid function:reversed_mbs_raw_score = Sfmbs, mbs_scale = -10, mbs_center = 900B). The negative scale (-10) causes the sigmoid to behave inversely, where higher values (above the center 900 byte) contribute more to the raw score.

[0088] The combined raw score taking into account the contribution of both the IAT and the microburst size may be computed by calculating the weighted combination of the raw scores by multiplying the reversed microburst size score withthe IAT score weighted by 0.7, and adding the reversed micro burst size score weighted by 0.3:raw_score = reversed_mbs_raw_score x (iat_raw_score x 0.7) + reversed_mbs_raw_score x 0.3

[0089] The raw score is then scaled to fit within a predefined score range suitable for the service type:service score = score_min + (score_max - score_min) * raw_score

[0090] With the above embodiments for computing the service score, a service score function may be defined as:• service_score(iat, mbs)o iat: inter arrival time for the serviceo mbs: microburst size for the serviceFor instance, with a set score range of 66 to 100, different service types are mapped as follows by use the function service_score(iat, mbs) with the below exemplifying parameters:iat_center = 40ms, mbs_center = 900B, score_min = 66, score_max = 100,• e-gaming: IAT range (15, 50), microburst size range (100, 600), score range 78-94• voice call: IAT range (50, 120), microburst size range (100, 600), score range 94-100• video call: IAT range (20, 60), microburst size range (1000, 6000), score range 66-78By using this method, unique network characteristics of each service type are effectively represented by a single score range, enhancing the ability to identify and differentiate between various service types based on their IAT and byte profiles.

[0091] As previously discussed; in order to resolve the issue of the inherently chaotic nature of UE traffic behaviour, an embodiment introduces the usage of a microburst counter.

[0092] The microburst counter is a dynamic metric used to track microburst activity in one session’s traffic. It is initialized to zero and updated based on specific criteria related to the IAT and the microburst size. The algorithm operates in two phases: an initial ramp-up phase and a following maintaining phase.

[0093] The initial ramp-up phase is defined as the beginning of a microburst session where the microburst counter is, say, below 60 (if the score range 66-100 is used as described above with reference to the score mapping). In practice, it will typically take 1-2 seconds to acquire a sufficient amount of data for making an accurate observation of the characteristics of the microburst session (i.e. IAT and microburst size). The microburst counter will have an increasing trend during the ramp-up phase if the microburst session continuously has low IAT (e.g. <6oms) or relatively stable IAT.

[0094] The following maintaining phase is defined as the period when the microburst session is identified to belong to a specific service type. A main purpose of the maintaining phase is to use the session’s latest filteredMicroBurstlAT and filteredMicro BurstSize to identify the specific type of session, i.e. voice call, video call or e-gaming. The method is designed to cope with occasionally changing IAT and microburst size changes to maintain stability in the service type identification.

[0095] Figure 5 shows a flowchart illustrating the usage of the microburst counter according to an embodiment.

[0096] The microburst counter is set to o either at initialization or whenever the IAT is greater than or equal to 500 milliseconds.

[0097] The microburst counter is then updated when a new microburst is received in S201 and detected in S202 as having an IAT in the range of 10 to 500 milliseconds.

[0098] If the microburst size (represented by parameter sizeMicro Burst) is less than 100 bytes, the microburst is ignored.

[0099] However, as shown in S203, for sizes between a lower microburst size threshold value TBL and an upper microburst size threshold value TBU, exemplified in this embodiment by 100 and 6000 bytes, respectively:• ramp-up phase (i.e. if microburst counter being below a microburst threshold value TMC < 60 in this example, as shown in S204):- if IAT is less than 6oms, or less than the filteredMicroBurstlAT plus a threshold value (illustrated by an IAT threshold TI), as determined in S205 the microburst counter is increased in S206 by a weight designed to reach TMC = 60 within an observation window, based on the current filteredMicroBurstlAT. For instance, a weight of 3 can be used for reaching 60 in a 2000ms observation window ramp-up phase with filteredMicroBurstlAT = looms,- otherwise, as shown in 207, the microburst counter will be adjusted (increased or decreased) based on the degree of IAT change compared to filteredMicroBurstlAT, i.e. a larger positive deviation from filteredMicroBurstlAT will be given a more negative adjustment.• maintaining phase (i.e. if microburst counter TMC > 60, as determined in S204):- a filtered_service_score is calculated using filteredMicroBurstlAT and filteredMicroBurstSize by utilizing the score mapping described previously, i.e. service_score(filteredMicroBurstIAT, filteredMicroBurstBytes), which is as understood may have been calculated prior to this- the microburst counter is adjusted in S208 by a fraction of the difference between the filtered_service_score and the current microburst counter. This fraction is carefully chosen to bring the microburst counter close to the filtered_service_score within a specified tolerance threshold, all within a defined observation window. This adjustment considers the IAT represented by filteredMicroBurstlAT:adjust weight = (filtered_service_score - microburst counter) / ( observation window / filteredMicroBurstlAT).For instance, an adjustment of 2 can be used with: filtered_service_score = 95,microburst counter = 85,observation window = 800ms,filteredMicroBurstlAT = 80ms,• large size adjustment:- if the size of the microburst is 6000 bytes or more, as determined in S203, the microburst counter is decreased in S209 by an adjustment value proportional to the microburst size, calculated on a logarithmic scale.

[0100] With the updating of the microburst counter as described hereinabove the service type being identified for the ongoing microburst session is also updated according to the following.

[0101] The current service score is computed by taking into account the current IAT and microburst size using the previously described score mapping:current_service_score = service_score(IAT, sizeMicroBurst)

[0102] A new service type is assigned when all of the following conditions are met:• the absolute difference between the current_service_score and the filtered_service_score is less than or equal to a set value, e.g. 5,• the absolute difference between the filtered_service_score and the microburst counter is less than or equal to the set value of 5, and• the microburst counter exceeds a predefined boundary value for the new service type by more than the hysteresis value of 2, either above or below the boundary.

[0103] By ensuring that these conditions are satisfied, the RBS 113 accurately updates the service type to reflect the current network conditions, while accounting for variability and minimizing unnecessary fluctuations through the use of a hysteresis threshold.

[0104] Optionally, the RBS 113 may (in case a UE 110-112 is handed over to a neighbouring RBS) convey the service type and microburst counter to the neighbouring RBS in order to maintain the service type identification during mobility and maintain the corresponding optimization for the specific service type during the initial phase at the neighbouring RBS.

[0105] Figure 6 illustrates an RAN device in the form of the RBS 113 configured to detect a microburst session. The steps of the method performed by the RBS 113 are in practice performed by a processing unit 411 embodied in the form of one or more microprocessors arranged to execute a computer program 412 downloaded to a storage medium 413 associated with the microprocessor, such as a Random AccessMemory (RAM), a Flash memory or a hard disk drive. The processing unit 411 is arranged to cause the RBS 113 to carry out the method according to embodiments when the appropriate computer program 412 comprising computer-executable instructions is downloaded to the storage medium 413 and executed by the processing unit 411. The storage medium 413 may also be a computer program product comprising the computer program 412. Alternatively, the computer program 412 may be transferred to the storage medium 413 by means of a suitable computer program product, such as a Digital Versatile Disc (DVD) or a memory stick. As a further alternative, the computer program 412 may be downloaded to the storage medium 413 over a network. The processing unit 411 may alternatively be embodied in the form of a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a complex programmable logic device (CPLD), etc. The RBS 113 further comprises a communication interface 414 (wired or wireless) over which it is configured to transmit and receive data.

[0106] Now, the RBS 113 illustrated in Figure 6 determines the service type for data received to be transmitted in downlink the UEs 110- 113 or conversely data received to be transmitted in uplink e.g. to the server 150 as illustrated in Figure 2.

[0107] In the following, a plurality of scenarios will be described where the determining of service type for a microburst session will facilitate increased network performance with actions taken by the RBS 113.

[0108] The RBS 113 may select to transmit an event or alarm message to an external entity, for instance to an element manager, a network management device, a Service Management Orchestrator (SMO), an O-RAN RAN intelligent controller (RIC), with information about the detection of services. This message may include information related to the type of service detected, the UE involved, the radio bearer or other radio resource implicated in providing the service, the radio configuration of the radio bearer etc. Such information may also be stored locally on the RBS 113 for later retrieval by external systems, for instance a network management system and an SMO.

[0109] Interactive services, such as e.g. e-gaming, voice calls and video calls, typically do not demand high capacity but are highly sensitive to latency and jitter. The following optimization can be optionally applied to improve the service qualitybased on network operator’s policy after the session is detected as one type of the interact service.

[0110] Since these interactive services are sensitive to disturbances in the user plane during mobility, upon positive detection of an interactive service, the session can optionally be restricted by the RBS 113 to a network configuration that minimizes inter-node transitions and user plane interactions during mobility. For instance, a single low-band carrier usually provides sufficient capacity for this type of service while offering significantly better coverage and fewer interruptions during mobility compared to configurations involving carrier aggregation with mid-band or dual connectivity with high-band frequencies.

[0111] In another scenario, more conservative link adaptation (e.g. applying a different modulation and coding scheme (MCS) or a lower block error rate (BLER) target) can optionally be applied by the RBS 113 in order to improve the latency and jitter which is crucial to handle the air interface interference fluctuation. Due to the low throughput characteristics, this normally does not require too much extra resources on air interface. Optionally, the MCS limit can be associated with the filteredMicro BurstSize in order to avoid that some services use an excessive number of resources.

[0112] In a further example, predictive grant on uplink may be applied, where the UEs 110-112 may need to use a physical uplink control channel (PUCCH) scheduling request (SR) and buffer status report (BSR) to trigger uplink traffic transmission to the RBS 113. PUCCH SR resources are limited and only configured with a cycle which can be relatively long for a high-capacity system, which may lead to large latency jitter. For the identified interactive service, a predictive grant can be given by the RBS 113 to the UEs 110-112 in order to improve the uplink latency and reduce jitter.Moreover, the grant interval and size can be adapted by using the filteredMicroBurstlAT and filteredMicroBurstSize in order to achieve better uplink resource utilization.

[0113] Further, the microburst service detection can also be implemented on one or more of the UEs 110-112, wherein the UEs 110-112 may perform uplink scheduling adaption based on the computed filteredMicroBurstlAT and filteredMicroBurstSize.

[0114] Instead of requesting uplink resources (either through BSR or PUCCH SR) when the UE receives the data from an application, the UE can request UL resources in advance based on the identified interact services characteristics. Based on a last packet time and filteredMicroBurstlAT, the UE can determine how likely it is that the application will send new data in the next coming uplink slots (and how much data), wherein the UE proactively can specify the buffer size in the BSR by using a consolidated prediction from all the applications with interactive services, or send a PUCCH SR to request uplink resources when there is no opportunity for a BSR.

[0115] For instance, using the BSR approach, upon detecting a microburst service, a first application referred to as Appi is identified as an interact service with filteredMicroBurstlAT = 15ms and filteredMicroBrustBytes = 500B. After receiving 488B from Appi at slot o, the forecasted next data from Appi will be at slot 15. The UE can select to report BSR = 600 at slot 12 when using the physical uplink shared channel (PUSCH) for data of a second application App2, since slot 15 is very close and also assign some extra room for data size fluctuation. With some scheduling delay, the UE receives the uplink grant for 600B at slot 16. This will reduce the waiting time for the Appi’s data (522B) at slot 14 in the uplink.

[0116] Using the PUCCH SR approach, the precondition is the same as the previous example, but there is not opportunity to send BSR when approaching the forecasted data for Appi at slot 15. Rather, the UE can use the PUCCH SR opportunity at slot 12 to request uplink resources. After some RAN scheduling delay, the UE will receive the uplink grant at slot 18, and this will reduce the waiting time for the Appi’s data (522B) at slot 14 in the uplink.

[0117] The microburst session detection described hereinabove with reference to various embodiments may be implemented at the RBS 113 and / or UEs for instance in the packet data convergence protocol (PDCP) layer, radio link control (RLC) layer or medium access control (MAC) layer. Advantageously, when implementing the microburst session detection in a layer of the RBS 113 for which one protocol entity instance is created per communicating UE, for instance the PDCP or RLC layers, the microburst sessions can be associated to said UE. In a RAN architecture such as or similar to O-RAN, the microburst session detection may then advantageously be located in an 0-DU or an O-CU user plane, a combination of O-DU / O-CU, or in any other RAN entity carrying user plane data.[oon8] To conclude, the detection of microburst sessions as discussed with reference to embodiments herein are advantageous for numerous reasons, for instance in terms of:- efficiency: by leveraging characteristic microburst patterns, OTT interactive services are efficiently detected (e.g. e-gaming, voice and video calls) with minimal computational and memory resource usage,- low latency: operating at regular intervals or upon packet arrival ensures timely detection and response, advantageously reducing latency between session identification and any optimization actions,- flexibility: parameters of the microburst detection can be easily adjusted to accommodate to different policy requirements, and- simplicity: the relatively straightforward design of the microburst detection approach simplifies integration with existing network systems without requiring complex infrastructure changes.

[0119] The aspects of the present disclosure have mainly been described above with reference to a few embodiments and examples thereof. However, as is readily appreciated by a person skilled in the art, other embodiments than the ones disclosed above are equally possible within the scope of the invention, as defined by the appended patent claims.

[0120] Thus, 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

CLAIMS1. A method of a radio access network, RAN, device (113) of detecting a microburst session, comprising:receiving (S101) data; andin response to a time period having elapsed since a last data reception being determined (S102) to be below a lower duration threshold value (Ti):adding (S103) a size of the received data being detected to be part of an ongoing microburst to a microburst size indicator; andin response to the time period having elapsed since a last data reception being determined (S104) to be equal to or above the lower duration threshold value (Ti) and equal to or below an upper duration threshold value (T2):detecting (S105) start of a new microburst and computing an exponential moving average of time period having elapsed since the last data reception, and an exponential moving average of the microburst size of the previously received microburst as indicated by the microburst size indicator; andsetting (S106) the microburst size indicator to a size of the received data being detected to be part of a new microburst; andin response to the time period having elapsed since a last data reception being determined (S104) to be above the upper duration threshold value (T2):detecting (S107) that the microburst session is completed.

2. The method of claim 1, wherein in response to the computed (S105) exponential moving averages of the time period having elapsed since the last data reception and the microburst size of the previously received microburst being determined to match (S108) a time period and microburst size being characteristic to a specific service type, determining (S109) that the ongoing microburst session corresponds to said specific service type for which there is a match.

3. The method of claims 1 or 2, wherein the exponential moving averages to be computed are initialized with values for the time period having elapsed since the last data reception and the microburst size of the previously received microburst being characteristic to a selected service type.

4. The method of claims 1 or 2, wherein the exponential moving averages to be computed are initialized with values for the time period having elapsed since the lastdata reception and the microburst size of the previously received microburst not being characteristic to a specific service type.

5. The method of any one of the preceding claims, the lower duration threshold value (Ti) being set to 10ms and the upper duration threshold value (T2) being set to 500ms.

6. The method of claim 2, a characteristic time period having elapsed since the last data reception being i5-3oms for an e-gaming microburst session, 50-i20ms for a voice call microburst session and 2O-6oms for a video call microburst session, while a characteristic microburst size of the previously received microburst being 100-600 byte for an e-gaming microburst session and a voice call microburst session, and 1000-6000 byte for a video call microburst session7. The method of any one of the preceding claims, wherein sigmoid functions are computed for the time period having elapsed since the last data reception and the microburst size of the previously received microburst and a raw score is formed based on a combination of the two computed sigmoid functions followed by forming of a service score computed as a set minimum score value plus said formed raw score multiplied by a difference between a set maximum score value and said set minimum score value, wherein a single score range of each formed service score is associated with a matching service type.

8. The method of any one of the preceding claims, wherein sigmoid functions are computed for the exponential moving average of the time period having elapsed since the last data reception and the exponential moving average of the microburst size of the previously received microburst and a filtered raw score is formed based on a combination of the two computed sigmoid functions followed by forming of a filtered service score computed as a set minimum score value plus said formed filtered raw score multiplied by a difference between a set maximum score value and said set minimum score value, wherein a single score range of each formed filtered service score is associated with a matching service type.

9. The method of claims 7 or 8, wherein the data is received (S201) and the method further comprises, in response to the time period having elapsed since a last data reception being determined to be equal to or above the lower duration thresholdvalue (Ti) and equal to or below an upper duration threshold value (T2): counting (S202) each received microburst; and in response to the microburst size being determined (S203) to be between a lower microburst size threshold value (TBL) and an upper microburst size threshold value (TBU), a microburst counter being determined (S204) to be below a microburst threshold value (TMC) and the time period having elapsed since a last data reception being determined (S205) to be below a third duration threshold value (TI):increasing (S206) microburst counter by a weight designed to have the microburst counter reach the microburst threshold value (TMC) within a set observation window.

10. The method of claim 9, wherein in response to the time period having elapsed since a last data reception being determined (S205) to be equal to or above the third duration threshold value (TI):adjusting (S207) the microburst counter based on degree of change in the time period having elapsed since a last data reception as compared to the computed an exponential moving average of time period having elapsed since the last data reception.

11. The method of claims 9 or 10, wherein in response to the microburst counter being determined (S204) to be below the microburst threshold value (TMC):adjusting (S208) the microburst counter by a fraction of the difference between the formed filtered service score and a current value of the microburst counter.

12. The method of any one of claims 9-11, wherein in response to the microburst size being determined (S203) to be between a lower microburst size threshold value (TBL) and an upper microburst size threshold value (TBU):decreasing (S209) the microburst counter by an adjustment value proportional to the microburst size.

13. The method of any one claims 9-12, where a new service type is assigned to a detected microburst session upon the absolute difference between the formed service score and the filtered service score is less than or equal to a set first value, the absolute difference between the filtered service score and the microburst counter is less than or equal to the set first value, and the microburst counter exceeds apredefined boundary value for the new service type by more than a set hysteresis value.

14. The method of any one of the preceding claims, wherein the detection of a microburst session causes the RAN device (113) to apply a network configuration that reduces inter-node transitions and user plane interactions during mobility.

15. The method of any one of the preceding claims, wherein the detection of a microburst session causes the RAN device (113) to apply a more conservative link adaptation by applying a different modulation and coding scheme, MCS, or a lower block error rate, BLER, target.

16. The method of claim 2, wherein a predictive grant is issued for the specific service type.

17. A computer program (412) comprising computer-executable instructions for causing a RAN device (113) to perform steps recited in any one of claims 1-16 when the computer-executable instructions are executed on a processing unit (411) included in the RAN device (113).

18. A computer program product comprising a computer readable medium (413), the computer readable medium having the computer program (412) according to claim 17 embodied thereon.

19. A radio access network, RAN, device (113) configured to detect a microburst session, the RAN device (113) comprising a processing unit (411) and a memory (413), said memory containing instructions (412) executable by said processing unit (411), whereby the RAN device (113) is operative to:receive (S101) data; andin response to a time period having elapsed since a last data reception being determined (S102) to be below a lower duration threshold value (Ti):add (S103) a size of the received data being detected to be part of an ongoing microburst to a microburst size indicator; andin response to the time period having elapsed since a last data reception being determined (S104) to be equal to or above the lower duration threshold value (Ti) and equal to or below an upper duration threshold value (T2):detect (S105) start of a new microburst and computing an exponential moving average of time period having elapsed since the last data reception, and an exponential moving average of the microburst size of the previously received microburst as indicated by the microburst size indicator; andset (S106) the microburst size indicator to a size of the received data being detected to be part of a new microburst; andin response to the time period having elapsed since a last data reception being determined (S104) to be above the upper duration threshold value (T2):detect (S107) that the microburst session is completed.

20. The RAN device (113) of claim 19, further being operative to, in response to the computed (S105) exponential moving averages of the time period having elapsed since the last data reception and the microburst size of the previously received microburst being determined to match (S108) a time period and microburst size being characteristic to a specific service type, determine (S109) that the ongoing microburst session corresponds to said specific service type for which there is a match.

21. The RAN device (113) of claims 19 or 20, further being operative to initialize the exponential moving averages to be computed with values for the time period having elapsed since the last data reception and the microburst size of the previously received microburst being characteristic to a selected service type.

22. The RAN device (113) of claims 19 or 20, further being operative to initialize the exponential moving averages to be computed with values for the time period having elapsed since the last data reception and the microburst size of the previously received microburst not being characteristic to a specific service type.

23. The RAN device (113) of any one of claims 19-22, the lower duration threshold value (Ti) being set to 10ms and the upper duration threshold value (T2) being set to 500ms.

24. The RAN device (113) of claim 20, a characteristic time period having elapsed since the last data reception being i5-3oms for an e-gaming microburst session, 50-120ms for a voice call microburst session and 2O-6oms for a video call microburst session, while a characteristic microburst size of the previously received microburstbeing 100-600 byte for an e-gaming microburst session and a voice call microburst session, and 1000-6000 byte for a video call microburst session25. The RAN device (113) of any one of claims 19-24, further being operative to compute sigmoid functions for the time period having elapsed since the last data reception and the microburst size of the previously received microburst and form a raw score based on a combination of the two computed sigmoid functions followed by forming of a service score computed as a set minimum score value plus said formed raw score multiplied by a difference between a set maximum score value and said set minimum score value, wherein a single score range of each formed service score is associated with a matching service type.

26. The RAN device (113) of any one of claims 19-25, further being operative to compute sigmoid functions for the exponential moving average of the time period having elapsed since the last data reception and the exponential moving average of the microburst size of the previously received microburst and form a filtered raw score based on a combination of the two computed sigmoid functions followed by forming of a filtered service score computed as a set minimum score value plus said formed filtered raw score multiplied by a difference between a set maximum score value and said set minimum score value, wherein a single score range of each formed filtered service score is associated with a matching service type.

27. The RAN device (113) of claims 25 or 26, further being operative to, after the data is received (S201), in response to the time period having elapsed since a last data reception being determined to be equal to or above the lower duration threshold value (Ti) and equal to or below an upper duration threshold value (T2):count (S202) each received microburst; and in response to the microburst size being determined (S203) to be between a lower microburst size threshold value (TBL) and an upper microburst size threshold value (TBU), a microburst counter being determined (S204) to be below a microburst threshold value (TMC) and the time period having elapsed since a last data reception being determined (S205) to be below a third duration threshold value (TI):increase (S206) microburst counter by a weight designed to have the microburst counter reach the microburst threshold value (TMC) within a set observation window.

28. The RAN device (113) of claim 27, further being operative to, in response to the time period having elapsed since a last data reception being determined (S205) to be equal to or above the third duration threshold value (TI):adjust (S207) the microburst counter based on degree of change in the time period having elapsed since a last data reception as compared to the computed an exponential moving average of time period having elapsed since the last data reception.

29. The RAN device (113) of claims 27 or 28, further being operative to, in response to the microburst counter being determined (S204) to be below the microburst threshold value (TMC):adjust (S208) the microburst counter by a fraction of the difference between the formed filtered service score and a current value of the microburst counter.

30. The RAN device (113) of any one of claims 27-29, further being operative to, in response to the microburst size being determined (S203) to be between a lower microburst size threshold value (TBL) and an upper microburst size threshold value (TBU):decrease (S209) the microburst counter by an adjustment value proportional to the microburst size.

31. The RAN device (113) of any one of claims 27-30, further being operative to assign a new service type to a detected microburst session upon the absolute difference between the formed service score and the filtered service score is less than or equal to a set first value, the absolute difference between the filtered service score and the microburst counter is less than or equal to the set first value, and the microburst counter exceeds a predefined boundary value for the new service type by more than a set hysteresis value.

32. The RAN device (113) of any one of claims 19-31, further being operative to, upon detecting a microburst session, apply a network configuration that reduces inter-node transitions and user plane interactions during mobility.

33. The RAN device (113) of any one of claims 19-32, further being operative to, upon detecting a microburst session, apply a more conservative link adaptation byapplying a different modulation and coding scheme, MCS, or a lower block error rate, BLER, target.

34. The RAN device (113) of claim 20, further being operative to issue a predictive grant for the specific service type.