Method and device for slice scheduling

By determining the buffer status of the logical channel in the slice and distribute resources based on the buffer status reported by the terminal device, the problem of RAN slice scheduling complexity in the uplink is solved, and efficient management and allocation of slice resources are realized.

CN120035967APending Publication Date: 2025-05-23ALCATEL LUCENT SHANGHAI BELL CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202280101049.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-08-15
Filing Date
2022-10-28
Publication Date
2025-05-23

AI Technical Summary

Technical Problem

In the uplink, RAN slice-aware scheduling is complex, making it difficult to achieve efficient control of slice scheduling in radio access networks, especially in terms of resource allocation and slice quota management.

Method used

The network device determines the buffer state of the logical channel associated with the corresponding slice based on the logical channel group buffer state reported by the terminal device, and performs resource allocation from the corresponding slice to the terminal device based on the state and slice quota.

Benefits of technology

Effectively control the RAN slice resource quota in the uplink direction, improve scheduling efficiency and resource utilization, and ensure slice-level resource management and allocation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120035967A_ABST
    Figure CN120035967A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a method and device for slice scheduling. A network device determines a buffer state for a respective logical channel (LCH) associated with a respective slice based on a buffer state reported by a terminal device for a logical channel group (LCG). Based on the buffer status for the respective LCH and the quota associated with the respective slice, the network device performs resource allocation from the respective slice to the terminal device. In this manner, the network device may allocate resources to the LCHs according to the resource slice quotas of the LCHs on a best effort basis, including complex situations where the LCHs are from the same LCG but have quotas in different slices. Therefore, the RAN slice resource quota in the uplink direction is effectively controlled, and the UL grant from the corresponding slice is appropriately allocated.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present disclosure generally relate to the field of communications, and in particular, to methods, devices, apparatuses, and computer-readable storage media for slice scheduling. Background Art

[0002] With the development of communication technology, many services (such as enhanced mobile broadband eMBB, massive machine type communication mMTC, ultra-reliable low latency communication uRLLC, etc.) have high requirements for high bandwidth, low latency and ultra-reliability. Network slicing is a technology that can support these services at the same time with service differentiation and guaranteed performance. When running on a shared physical infrastructure, network slicing can accommodate several independent logical networks for different business needs and service level agreement (SLA) requirements.

[0003] However, slice-aware scheduling in uplink is very complex and requires enhanced efficient control of Radio Access Network (RAN) slice scheduling. Summary of the invention

[0004] In general, example embodiments of the present disclosure provide a solution for slice scheduling.

[0005] In a first aspect, a network device is provided. The network device may include at least one processor; and at least one memory storing instructions, which, when executed by the at least one processor, causes the network device to at least: determine a buffer status for a corresponding logical channel LCH associated with a corresponding slice based on a buffer status reported by a terminal device for a logical channel group LCG; and perform resource allocation from the corresponding slice to the terminal device based on the buffer status for the corresponding LCH and a quota associated with the corresponding slice.

[0006] In a second aspect, a terminal device is provided. The terminal device may include at least one processor; and at least one memory storing instructions, which when executed by the at least one processor causes the terminal device to at least: report a buffer status for a corresponding logical channel group LCG to a network device; and receive a resource allocation from a corresponding slice from the network device, wherein the resource allocation from the corresponding slice is determined based on the buffer status reported for the LCG.

[0007] In a third aspect, a method implemented at a network device is provided. The method may include: determining a buffer status of a corresponding logical channel LCH associated with a corresponding slice based on a buffer status reported by a terminal device for a logical channel group LCG; and performing resource allocation from the corresponding slice to the terminal device based on the buffer status for the corresponding LCH and a quota associated with the corresponding slice.

[0008] In a fourth aspect, a method implemented at a terminal device is provided. The method may include: reporting a buffer status for a corresponding logical channel group LCG to a network device; and receiving a resource allocation from the corresponding slice from the network device, wherein the resource allocation from the corresponding slice is determined based on the buffer status reported for the LCG and a quota associated with the corresponding slice.

[0009] In a fifth aspect, a network device is provided. The device may include: a component for determining a buffer status for a corresponding logical channel LCH associated with a corresponding slice based on a buffer status for a logical channel group LCG reported by a terminal device; and a component for performing resource allocation from the corresponding slice to the terminal device based on the buffer status for the corresponding LCH and a quota associated with the corresponding slice.

[0010] In a sixth aspect, a device of a terminal device is provided. The device may include: a component for reporting a buffer status for a corresponding logical channel group LCG to a network device; and a component for receiving a resource allocation from the corresponding slice from the network device, wherein the resource allocation from the corresponding slice is determined based on the buffer status reported for the LCG and a quota associated with the corresponding slice.

[0011] In a seventh aspect, a non-transitory computer-readable medium is provided, the medium comprising program instructions for causing an apparatus to at least execute the method according to the third aspect or the fourth aspect.

[0012] In an eighth aspect, a computer program comprising instructions is provided, which, when executed by an apparatus, causes the apparatus to at least: determine a buffer status for a corresponding logical channel LCH associated with a corresponding slice based on a buffer status reported by a terminal device for a logical channel group LCG; and perform resource allocation from the corresponding slice to the terminal device based on the buffer status for the corresponding LCH and a quota associated with the corresponding slice.

[0013] In a ninth aspect, a computer program comprising instructions is provided, which, when executed by an apparatus, causes the apparatus to at least: report a buffer status for a corresponding logical channel group LCG to a network device; and receive a resource allocation from a corresponding slice from the network device, wherein the resource allocation from the corresponding slice is determined based on the buffer status reported for the LCG and a quota associated with the corresponding slice.

[0014] In a tenth aspect, a network device is provided. The network device comprises: a determination circuit system configured to determine a buffer status for a corresponding logical channel LCH associated with a corresponding slice based on a buffer status reported by a terminal device for a logical channel group LCG; and an execution circuit system configured to perform resource allocation from the corresponding slice to the terminal device based on the buffer status for the corresponding LCH and a quota associated with the corresponding slice.

[0015] In an eleventh aspect, a terminal device is provided. The terminal device comprises: a reporting circuit system configured to report a buffer status for a corresponding logical channel group LCG to a network device; and a receiving circuit system configured to receive a resource allocation from the corresponding slice from the network device, wherein the resource allocation from the corresponding slice is determined based on the buffer status reported for the LCG and a quota associated with the corresponding slice.

[0016] It should be understood that the invention summary is not intended to identify the key or essential features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Some example embodiments will now be described with reference to the accompanying drawings, in which:

[0018] Figure 1 illustrates an example network environment in which example embodiments of the present disclosure may be implemented;

[0019] Figure 2 illustrates an example relationship between logical channels (LCHs), logical channel groups (LCGs), and slices in which example embodiments of the present disclosure may be implemented;

[0020] Figure 3 illustrates example use cases that may be used in some embodiments of the present disclosure;

[0021] Figure 4 An example flow chart of a method implemented at a network device according to some embodiments of the present disclosure is illustrated;

[0022] Figure 5 illustrates example LCHs and corresponding buffer sizes in different time slots in some embodiments of the present disclosure;

[0023] Figure 6 illustrates example BSR reporting opportunities and UL scheduling time slots in some embodiments of the present disclosure;

[0024] Figure 7 illustrates an example overall architecture that may be used in some embodiments of the present disclosure;

[0025] Figure 8 illustrates another example use case that may be used in some embodiments of the present disclosure;

[0026] Fig. 9 An example flow chart of a method implemented at a terminal device according to some embodiments of the present disclosure is illustrated;

[0027] Fig.10 illustrates an example simplified block diagram of an apparatus suitable for implementing embodiments of the present disclosure; and

[0028] Fig.11 An example block diagram of an example computer-readable medium according to some embodiments of the present disclosure is illustrated.

[0029] Throughout the drawings, the same or similar reference numerals refer to the same or similar elements. DETAILED DESCRIPTION

[0030] The principles of the present disclosure will now be described with reference to some example embodiments. It should be understood that these embodiments are described only for illustrative purposes and help those skilled in the art to understand and implement the present disclosure, and do not represent any limitation on the scope of the present disclosure. The disclosure described herein can be implemented in various other ways except for the way described below.

[0031] In the following description and claims, unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs.

[0032] In this disclosure, references to "one embodiment," "an embodiment," and "an example embodiment" indicate that the described embodiment may include a particular feature, structure, or characteristic, but not every embodiment must include the particular feature, structure, or characteristic. In addition, such phrases do not necessarily refer to the same embodiment. In addition, when a particular feature, structure, or characteristic is described in conjunction with an embodiment, those skilled in the art believe that it is within the knowledge of those skilled in the art to affect such feature, structure, or characteristic in conjunction with other embodiments, whether or not explicitly described.

[0033] It should be understood that although the terms "first" and "second" etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another element. For example, without departing from the scope of the example embodiments, a first element may be referred to as a second element, and similarly, a second element may be referred to as a first element. As used herein, the term "and / or" includes any and all combinations of one or more of the listed terms.

[0034] The terms used herein are only used to describe specific embodiments and are not intended to limit the example embodiments. As used herein, the singular forms "a", "an", and "the" also include the plural forms, unless the context clearly indicates otherwise. It is further understood that the terms "comprises", "comprising", "has", "having", "includes", and / or "including" when used herein specify the presence of the features, elements, and / or components, etc., but do not exclude the presence or addition of one or more other features, elements, components, and / or combinations thereof.

[0035] As used in this application, the term "circuitry" may refer to one, more, or all of the following:

[0036] (a) a pure hardware circuit implementation (such as an implementation using only analog and / or digital circuitry), and

[0037] (b) a combination of hardware circuitry and software such as (where applicable):

[0038] (i) a combination of analog and / or digital hardware circuits and software / firmware, and

[0039] (ii) any portion of hardware processor(s) (including digital signal processor(s)) with software, software and memory(s) that work together to cause a device (such as a mobile phone or server) to perform various functions), and

[0040] (c) Hardware circuits and / or processor(s), such as microprocessor(s) or portions of microprocessor(s), that require software (e.g., firmware) to operate, but which may not be present when the software is not required for operation.

[0041] This definition of circuitry applies to all uses of the term in this application, including in any claims. As another example, as used in this application, the term circuitry also covers an implementation of only a hardware circuit or processor (or multiple processors) or a portion of a hardware circuit or processor and its accompanying software and / or firmware. For example, if applicable to a particular claim element, the term circuitry also covers a baseband integrated circuit or processor integrated circuit for a mobile device, or a similar integrated circuit in a server, cellular network device, or other computing or network device.

[0042] As used herein, the term "communication network" refers to a network that complies with any suitable communication standard, such as Long Term Evolution (LTE), Advanced LTE (LTE-A), Wideband Code Division Multiplexing (WCDMA), High Speed ​​Packet Access (HSPA), Narrowband Internet of Things (NB-IoT), etc. In addition, the communication between the terminal device and the network device in the communication network can be performed according to any suitable generation of communication protocol, including but not limited to the third generation (3G), fourth generation (4G), 4.5G, fifth generation (5G) communication protocol and / or higher generation communication protocol. The embodiments of the present disclosure can be applied to various communication systems. In view of the rapid development of communication, there will certainly be communication technologies and systems that can be used to embody future types of the present disclosure. It should not be regarded as limiting the scope of the present disclosure to the above-mentioned systems.

[0043] As used herein, the term "network device" refers to a node in a communication network, via which a terminal device accesses the network and receives services from the network. Depending on the terminology and technology applied, a network device may refer to a base station (BS) or an access point (AP), such as a NodeB (NodeB or NB), an evolved NodeB (eNodeB or eNB), a NR NB (also known as a gNB), a remote radio unit (RRU), a radio head (RH), a remote radio head (RRH), a relay, a low-power node (such as a femto, a pico), etc.

[0044] The term "terminal device" refers to any terminal device capable of wireless communication. As an example and not limitation, the terminal device may also be referred to as a communication device, a user equipment (UE), a user station (SS), a portable user station, a mobile station (MS), or an access terminal (AT). The terminal device may include, but is not limited to, a mobile phone, a cellular phone, a smart phone, a voice over IP (VoIP) phone, a wireless local loop phone, a tablet computer, a wearable terminal device, a personal digital assistant (PDA), a portable computer, a desktop computer, an image capture terminal device (such as a digital camera), a game terminal device, a music storage and playback device, a vehicle-mounted wireless terminal device, a wireless endpoint, a mobile station, a laptop embedded device (LEE), a laptop mounted device (LME), a USB dongle, a smart device, a wireless customer premises equipment (CPE), an Internet of Things (IoT) device, a watch or other wearable device, a head mounted display (HMD), a vehicle, a drone, medical equipment and applications (e.g., remote surgery), industrial equipment and applications (e.g., robots and / or other wireless devices operating in industrial and / or automated processing chain environments), consumer electronic devices, equipment operating on commercial and / or industrial wireless networks, etc. In the following description, the terms "terminal device", "communication device", "terminal", "user equipment" and "UE" may be used interchangeably.

[0045] As used herein, the term "network slice" refers to a logical network that provides specific network capabilities and network characteristics. Operators can divide the network into multiple virtual end-to-end networks on a unified infrastructure. Each slice is logically isolated in terms of radio access network, bearer network, core network, etc., and includes its own unique latency, throughput, security, and bandwidth characteristics to meet the requirements of various applications.

[0046] The term "logical channel" used in this document refers to a channel divided according to function, which can be used to convert data formats between transport channels and bearers, etc. The term "data radio bearer" or "DRB" refers to a radio bearer used only for user plane IP packets between the air interface of the UE and the base station. It is understood that the logical channel or channel used in this document can refer to a DRB. In the following description, the terms "logical channel", "channel", "data radio bearer" and "bearer" can be used interchangeably.

[0047] As mentioned above, with the development of communication technology, many services such as eMBB, mMTC, uRLLC, etc. have high requirements for high bandwidth, low latency and ultra-reliability. Network slicing can support these services at the same time, achieve service differentiation and guarantee performance, and when running on a shared physical infrastructure, network slicing can accommodate several independent logical networks to meet different business needs and SLA requirements.

[0048] RAN slicing will allow new business models to evolve. Mobile operators will be able to:

[0049] i Supports multi-slice / Public Land Mobile Network (PLMN) with an agreed share of RAN resources indicated by SLA.

[0050] ii Network slicing will allow operators to customize resources for given business characteristics, services and SLAs.

[0051] The inventors note that while it is relatively simple to implement "slice quota control" in the downlink, there are some inherent challenges in uplink (UL) slice scheduling, especially RAN slice-aware scheduling. In fact, RAN slice-aware scheduling can be very difficult in existing solutions.

[0052] On one hand, the Buffer Status Report (BSR) sent by the UE to the serving gNB provides details about the amount of data waiting for transmission in the UL buffer at the UE. However, in the BSR, the UE does not send "slice specific" information or logical channel identifiers to the gNB when requesting an uplink grant. In other words, the UE does not send any slice specific details when requesting an uplink grant (i.e., resources must be allocated from that specific slice quota).

[0053] On the other hand, the grant allocation by the gNB is performed at a per-UE level. After receiving the uplink grant, the UE selects the bearer(s) for data transmission based on the priority and other parameters configured by the gNB on the UE. In other words, the UE uses the standardized "Logical Channel Prioritization" procedure (LCP) when allocating resources to send data in the uplink. In other words, the UE does not take into account any network slicing aspects. Furthermore, the details about "from which slice the gNB allocates resources" are also not communicated to the UE.

[0054] In summary, when the UE requests an uplink grant from the gNB, it does not specify which specific logical channel it is requesting (rather it is requested at the LCG level), and when the gNB grants resources, it does so at the "UE level" and does not enforce that the allocated resources must be used for a specific logical channel, which belongs to a specific slice, from which the slice quota of the slice is granted. In other words, uplink multiplexing is done according to a well-defined set of rules in the UE (as per the logical channel prioritization process). This makes it difficult to manage and enforce slice-specific quotas for their corresponding logical channels in uplink transmissions. Therefore, a solution for slice scheduling in uplink transmissions is needed.

[0055] According to an embodiment of the present disclosure, a solution for slice scheduling is provided. In this solution, a network device determines the buffer status of a corresponding logical channel LCH associated with a corresponding slice based on the buffer status reported by a terminal device for a logical channel group LCG. Based on the buffer status of the corresponding LCH and the quota associated with the corresponding slice, the network device performs resource allocation from the corresponding slice to the terminal device. Therefore, in an embodiment of the present disclosure, the network device can determine the amount of resources required at the slice level. Therefore, the RAN slice resource quota in the uplink direction can be effectively controlled, and the UL authorization from the corresponding slice can be appropriately allocated, thereby improving scheduling efficiency and resource utilization.

[0056] The following will refer to Figures 1 to 11 Example embodiments of the present disclosure for slice scheduling are described.

[0057] Figure 1 An example network environment 100 is illustrated in which example embodiments of the present disclosure may be implemented. The environment 100, which may be part of a communication network, includes terminal devices and network devices.

[0058] like Figure 1As shown, the communication network 100 may include a network device 110 (hereinafter may also be referred to as gNB 110). The communication network 100 may also include a terminal device 120. The network device 110 may manage a cell. The network device 110 and the terminal device 120 may transmit data and control information to each other within the coverage of the cell. The link from the network device 110 to the terminal device 120 is called a downlink (DL), and the link from the terminal device 120 to the network device 110 is called an uplink (UL).

[0059] It should be understood that the number of network devices and terminal devices is only for illustrative purposes and does not represent any limitation. System 100 may include any suitable number of network devices and terminal devices suitable for implementing the embodiments of the present disclosure. Although not shown, it should be understood that one or more terminal devices may be located in environment 100.

[0060] The communication in the network environment 100 may be implemented according to any appropriate (multiple) communication protocols, including but not limited to third generation (3G), fourth generation (4G), fifth generation (5G) or higher, wireless local area network communication protocols (such as Institute of Electrical and Electronics Engineers (IEEE) 802.11, etc.), and / or any other protocol currently known or to be developed in the future. In addition, the communication may utilize any appropriate wireless communication technology, including but not limited to: multiple input multiple output (MIMO), orthogonal frequency division multiplexing (OFDM), time division multiplexing (TDM), frequency division multiplexing (FDM), code division multiplexing (CDM), Bluetooth, ZigBee and machine type communication (MTC), enhanced mobile broadband (eMBB), massive machine type communication (mMTC), ultra-reliable low latency communication (URLLC), carrier aggregation (CA), dual connectivity (DC) and new radio unlicensed (NR-U) technology.

[0061] Figure 2 An example relationship between LCH, LCG, and slices is illustrated in which example embodiments of the present disclosure may be implemented.

[0062] like Figure 2 As shown, multiple LCHs (LCH-1, LCH-2, and LCH-3) can form an LCG. Different LCHs can have their corresponding quotas in different slices (slice 1, slice 2, slice 3), but this indication will not be sent to the gNB when requesting authorization. In addition, the reported buffer status is at the LCG level, not by LCH. It should be understood that the number of LCHs, LCGs, and slices is for illustrative purposes only and does not represent any limitation.

[0063] As described above, there is no direct way to map resource requests to slices to provide UL authorization from the corresponding slices. The UE uses its discretion (in the "logical channel prioritization" process) when utilizing the received authorization, without considering any slice-specific aspects, and thus the problem is further exacerbated. To address these issues, an advanced method for efficient slice volume control of RAN slice quotas in the uplink is needed.

[0064] In the present disclosure, a slice scheduling solution is provided, which mainly has two aspects: controlling the resource allocation from the corresponding slices; modifying the scheduling weights to facilitate the use of resources (slice quotas) by the corresponding bearers.

[0065] There are millions of UEs in use, and it is necessary to enable them to take advantage of RAN slicing without software upgrades. This method can be used within the scope of the current 3GPP specifications. There are various use cases to handle, and there is no specific SLA (which is still under development), which makes the solution more complex. The proposed method will cover all use cases (e.g., service-specific slices such as uRLLC, eMBB, mMTC, etc.) and tenant-specific services (e.g., individual tenants hosting their own value-added services using specific slice volumes).

[0066] The RAN resources to be controlled (allocated) can be physical resource blocks (PRBs). According to the SLA, these resources can be divided into slices according to their quota percentages in the available maximum resources. Assuming for an FR1 TDD cell, if there are 3 slices (e.g., slice 1, slice 2, and slice 3), and their quotas are 33%, 20%, and 47% respectively, then they can obtain 90, 54, and 128 PRBs respectively from a total of 273 PRBs in a time slot. The goal of slice volume control is to ensure that the UEs or the bearers of the UEs with their appropriate quotas in the (multiple) specific slices use the same priority. Since it is expected that the resources will not be idle, any resources unused by the UEs belonging to a certain slice will be allocated to the UEs from other slices in each time slot according to the SLA.

[0067] In the context of RAN slicing, there are various use cases to handle, and the complexity will only continue to increase with the emergence of new services and business models. So far, there is no specific SLA (but it is still under development), which makes the solution more complex. For illustrative purposes, two example use cases will be mentioned below.

[0068] Figure 3An example use case that may be used in some embodiments of the present disclosure is illustrated. Different logical channels belonging to a particular LCG may have resource quotas on different slices. Since the BSR is at the LCG level and there is no indication of the specific logical channel(s) for which resources are requested, there is no direct way to map resource requests to slices. Therefore, the indirect means disclosed in the present disclosure need to be used.

[0069] Figure 4 An example flow chart of a method 400 implemented at a network device according to some embodiments of the present disclosure is illustrated. For discussion purposes, reference will be made to Figure 1 and Figure 3 The method 400 is described from the perspective of the network device 110. It should be understood that the method 400 may also include additional blocks not shown and / or omit some of the shown blocks, and the scope of the present disclosure is not limited in this regard.

[0070] At box 410, the network device 110 can determine the buffer status for the corresponding logical channel LCH associated with the corresponding slice based on the buffer status reported by the terminal device for the logical channel group LCG.

[0071] In some embodiments, Figure 3 As shown, the LCH in the LCG is associated with two or more slices. In this case, determining the buffer status of the corresponding slice may include: based on the buffer status reported by the terminal device for the LCG, using a buffer status prediction model to obtain the buffer status for the corresponding LCH associated with the corresponding slice.

[0072] In some embodiments, using a buffer status prediction model to obtain a buffer status for a corresponding LCH may include: using a buffer status prediction model to estimate the buffer status for the corresponding LCH within an estimation window based on historical buffer status reports from a terminal device within a statistical window before the estimation window.

[0073] In the example, a machine learning (ML) model is used as a buffer status prediction model to estimate the data waiting for uplink grant on each LCH at the UE. This gives an indication of how much resources (considering spectral efficiency) are granted to a specific LCH from its corresponding slice according to the slice quota. As mentioned earlier, the UE does not report per-LCH buffer status, but only reports at the LCG level. Since LCHs in the same LCG can have quotas in different slices, it is not known how much resources to allocate from (multiple) slices. Therefore, this ML-based buffer estimation provides an indication of the amount of resources to be allocated from (multiple) slices.

[0074] For illustration purposes, an example scheme for buffer state estimation will be described below.

[0075] Example scenario by LCH buffer status estimation

[0076] In this example scenario, a simple linear relationship between the buffer status of the LCH and the buffer status of the LCG is defined. The gNB can only infer the buffer status of the LCH based on the received content, and the received bytes are the output data buffered by the UE. The assumption here is that the pattern of the output data buffered by the UE is stable over a certain period of time.

[0077] In this scheme, R total (n) and R LC(i) (n) represents the total received bytes of LCG and the received bytes of logical channel i in the nth statistical window respectively:

[0078]

[0079] Where n represents the sequence number of the BSR, and n also represents the nth statistical window; t represents the statistical time of the statistical window; t 0 (n) is the starting time point of the nth statistical window (in time slots), which may be the time point when the BSR is received, t 0 (n+1) is the starting time point (in time slot) of the (n+1)th statistical window.

[0080] A UE may have different multiplexing behaviors, but generally according to 3GPP, for each transport block within a certain period, a logical channel may occupy the constant or priority part and the flexible part if there are free bytes in the TB.

[0081] For example, Figure 5 As shown, logical channel LC0 occupies a constant part and a flexible part in time slot 0 and time slot 1. The size of the constant part in channel 0 and channel 1 is the same. The size of the flexible part in channel 0 and channel 1 is different, and the size of the flexible part depends on the transport block size (TBS).

[0082] The model of the received data volume of the corresponding logical channel can be defined as follows:

[0083] R LC(i) =k LC(i) *R total +b LC(i) (3)

[0084] where k LC(i) Indicates the ratio of the data of a specific logical channel to the total data of its logical channel group, R total Indicates the total number of bytes received by LCG, and b LC(i) Indicates the deviation introduced to guarantee or prioritize bit rates for certain logical channels. LC(i) The initial value can be And bLC(i) The initial value of can be 0, where N represents the number of LCHs in the LCG.

[0085] In some embodiments, the buffer status prediction model has a first coefficient and a second coefficient, and wherein the first coefficient represents a ratio of data of the LCH to data of the LCG, and the second coefficient represents a deviation of a guaranteed bit rate or a priority bit rate for the LCH.

[0086] In some embodiments, the first coefficient and the second coefficient of the buffer status prediction model are determined by obtaining the first coefficient and the second coefficient based on historical information of demultiplexing results of packets received by the network device by using a machine learning algorithm.

[0087] In an example, using the ML algorithm, the history of the demultiplexing results of the MAC entity on the received packets can be used to estimate the two coefficients k LC(i) and b LC(i) , where k LC(i) can be the first coefficient, b LC(i) It can be the second coefficient.

[0088] For example, the cost function can be set as follows:

[0089]

[0090] Where n represents the sequence number of the BSR, and n also represents the nth statistical window; i represents the sequence number of the LCH, N represents the Nth BSR reporting opportunity, and N also represents the Nth statistical window; N 0 Indicates the Nth 0 BSR reporting timing.

[0091] And, for finding k LC(i) , b LC(i) The method to achieve the minimum possible value of this cost function is as follows:

[0092]

[0093] Where i represents the sequence number of LCH, and N represents the Nth statistical window.

[0094] In the example, the linear regression method can be used by finding the coefficients so that the partial derivative == 0, as follows:

[0095]

[0096] Where n represents the nth statistical window; i represents the sequence number of LCH, N represents the Nth statistical window, and k represents the LC(i) (N) represents the ratio of the data of a specific logical channel to all the data of its logical channel group in the Nth statistical window,LC(i) (N) represents the deviation introduced for the guaranteed or prioritized bit rate of some logical channels in the Nth statistical window.

[0097] Then, we can get k LC(i) and b LC(i) The estimation function of is:

[0098]

[0099] Where n represents the nth statistical window; i represents the sequence number of LCH, and N represents the Nth statistical window.

[0100] Using the updated coefficients and periodic buffer status reports (per LCG) from the UE, the network can estimate the amount of data for the corresponding logical channel with the granted transport block size and buffer status.

[0101] Next, refer to Figure 6 , which illustrates an example of a BSR reporting opportunity and an UL scheduling time slot that can be used in an example embodiment of the present disclosure to describe an example of buffer status estimation. Figure 6 As shown, there are multiple UL scheduling time slots and multiple BSR reporting opportunities, and the BSR reporting opportunity can be periodic. There are also statistical windows, estimation windows and historical data sliding windows. In the historical data sliding window, there are multiple statistical windows. The statistical window is used to collect statistical data of received bytes, and the statistical received bytes can be used to estimate the received bytes during the estimation window.

[0102] The statistical window can be between two BSR events in the historical data sliding window.

[0103] The length of the statistics window for received bytes can be a fixed average window size or the time interval between 2 BSR events, which can be triggered in the following situations:

[0104] (1) The arrival of data with a higher priority than that currently in the transmission buffer, i.e., the data in the logical channel group has a higher priority than the data currently being sent, as this may affect the scheduling decision;

[0105] (2) Regularly controlled by a timer;

[0106] (3) If the amount of padding required to match the scheduled transport block size is larger than the buffer status report, then a buffer status report is inserted, because it is better to use the available payload to obtain useful scheduling information rather than padding if possible.

[0107] An estimation function of the size of data to be received for a particular logical channel in the next granted time slot(s) may be:

[0108]

[0109] TBS granted is the next granted transmission block size, which may need to satisfy the following conditions:

[0110] TBS granted ≤B(n)-R total (n) (11)

[0111] where B(n) is the total buffer size of the nth BSR in the nth static window, and R total (n) is the total number of bytes received from the current UE since the nth BSR report.

[0112] Assuming that all data in the UE's buffer can be granted, the data to be granted by the BSR for LCGi from the report buffer in the nth statistical window (buffer_reported) and the buffer already scheduled in the nth statistical window (buffer_scheduled) can be calculated as follows:

[0113] TBS to_be_granted =∑ All LCG buffer_reported LCG(i) (n)-buffer_scheduled(n) (12)

[0115] Therefore, the buffer by LCH can be estimated as follows:

[0116]

[0117] In this way, the network can estimate the buffer status of the corresponding logical channel.

[0118] Reference again Figure 4 At block 420, the network device 110 may perform resource allocation from the corresponding slice to the terminal device based on the buffer status for the corresponding LCH associated with the corresponding slice.

[0119] In some embodiments, performing resource allocation from a corresponding slice may include determining corresponding resource requirements for the corresponding slice based on spectral efficiency and a buffer status for a corresponding LCH associated with the corresponding slice, wherein resource allocation is performed based on the determined resources required from the corresponding slice.

[0120] In the example, Figure 3 As shown, different bearers from the same LCG have their quotas on different slices, the following logic can be used.

[0121] The per-LCH buffer status on the gNB is estimated by the ML model. How much resources to allocate from each slice (the sum of resources required for all bearers on different LCGs but belonging to that slice) can be decided based on the per-LCH buffer status. The overall buffer status from all LCGs can be considered and then resources are allocated from the corresponding slices (subject to the slice quota).

[0122] In some embodiments, the amount of resources required (and therefore allocated) for slice i is the sum of the estimated resources for each LCH where the corresponding bearer belongs to that slice:

[0123] resource_required_from_slice(i)=∑ b∈bearers(i) (buffer_estimate(b) / bearer_SE(b)) (14)

[0125] where bearers(i) represents the set of all bearers of slice i, bearer_SE(b) is the spectral efficiency of the UE of bearer b, and buffer_estimate(b) represents the estimated resources of bearer b (ie, LCH b).

[0126] Allocation resource status monitoring

[0127] In some embodiments, the allocated resource status may be monitored and the monitored information may be used for subsequent resource allocation per slice.

[0128] In some embodiments, performing resource allocation from the corresponding slice may include determining the resources required from the corresponding slice based on the minimum of the following items: the corresponding resource requirement for the corresponding slice, the slice quota of the corresponding slice, the available resources from the corresponding slice, the available resources are subject to the overall reporting buffer condition, and are modified by the association weight for the corresponding slice. In this case, the resource allocation is performed based on the determined resources required from the corresponding slice. For example, the association weight can be determined based on information about the following: the actual resources authorized by the network device, and the resources allocated by the terminal device for the LCHs respectively associated with the corresponding slices.

[0129] In an example, the target share may be calculated taking into account other aspects such as slice quota % (of maximum PRBs). One such formula is as follows:

[0130]

[0131] Where S is the set of all slices, K is the set of all LCGs on all slices, and lcg_SE(g) is the spectral efficiency of the UE for LCG g. The third term in the formula is used to limit the allocation based on the overall reporting buffer. corr_weight(i) is the correlation weight. The number of resources (PRBs) determined as described above is allocated from slice i and provided as an UL grant to the UE(s) or its DRBs.

[0132] In some embodiments, the association weight may be determined based on a credit balance indicator or a debit balance indicator associated with the corresponding slice. A credit balance may indicate that the resources that the terminal device has allocated to the LCH are greater than the actual amount of resources authorized by the network device for the LCH. A debit balance may indicate that the resources that the terminal device has allocated to the LCH are less than the actual amount of resources authorized by the network device for the LCH.

[0133] In some embodiments, when an LCH is allocated more PRBs than the gNB expects based on slice-aware scheduling, it is recorded as a "credit balance" under that LCH. The credit balance is equal to the difference between the allocated PRBs and the expected PRBs. In contrast, when a logical channel (LCH) is allocated less PRBs than the gNB expects based on slice-aware scheduling, it is recorded as a "debit balance" under that LCH. The debit balance is equal to the difference between the expected PRBs and the allocated PRBs.

[0134] In some embodiments, based on the information about: the actual resources authorized by the network device, and the resources allocated by the terminal device for the LCH associated with the corresponding slice, a credit balance indicator or a debit balance indicator for the corresponding LCH associated with the corresponding slice is determined.

[0135] For example, in slice i, if we add up all such LCHs (during control period t), then:

[0136] ∑ b∈bearers(i) C(b, t) and ∑ b∈bearers(i) D(b, t) represents the credit balance and debit balance of slice i, respectively. C(b, t) and D(b, t) are the credit balance and debit balance of carrier b in control period t.

[0137] The correlation weight corr_weight(i) of slice i can be determined by the following formula:

[0138]

[0139] For example, as shown in Table 1, the association weight of the slice can be calculated based on the above equation by ∑ b∈bearers(i) C(b, t) and ∑ b∈bearers(i) D(b, t) is obtained.

[0140] Table 1: Example of associated weights for slices

[0141]

[0142] For example, the available PRBs in the t-th period (20 ms) are equal to: 273 prbs*40 slots=10920, and slice 1 has a quota of 33%. Therefore, the number of PRBs allocated to slice 1 is: 0.33*10920=3603.

[0143] The goal is that if one slice has more debits than credits, then resources from that slice will be used by bearers belonging to another slice. Therefore, the resource allocation for that slice needs to be reduced. Similarly, when the credit balance increases, the allocation of resources for both groups of that slice needs to be increased until the maximum quota for that cell is reached.

[0144] In some embodiments, resource allocation may also be performed based on a scheduling weight for a corresponding LCH, and wherein the scheduling weight indicates a scheduling priority of the corresponding LCH associated with the corresponding slice.

[0145] Slice scheduling based on scheduling weight

[0146] In some embodiments, resource allocation to the corresponding LCH may also be performed in proportion to the scheduling weight. In the example, the scheduling_weight(b) of bearer b is determined by the layer 2 packet scheduler taking into account the bearer's 5G QoS identifier (5QI) and other aspects.

[0147] In some embodiments, the scheduling weight is modified based on a slice weight for a corresponding slice or a corresponding logical channel associated with the corresponding slice, and wherein the slice weight is determined based on a determined resource requirement for the corresponding slice and a current usage of resources from the corresponding slice.

[0148] In one example, according to the SLA definition, the slice-specific weight slice_weight(i) of slice i is derived in such a way that it reflects the committed fractional resource share of the slice in the total radio air interface resources (PRBs) within the sliding monitoring time window. Thus, silce_weight(i) is used to create relative priorities between slices via biased scheduler decisions, and its value is adapted according to the actual resource consumption of the slice so that the agreed slice-specific quota is maintained.

[0149] A simple example formula for slice_weight of slice "i" is as follows:

[0150]

[0151] Where target_share(i) is the target share of slice i, and current_resource_usage(i) reflects the current usage of resources from slice i (non-zero). This formula is given for illustrative purposes only and does not represent any limitation on the scope of protection of the present disclosure. In other embodiments, a more complex "slice_weight" calculation formula may be applied to achieve faster and more accurate convergence to the target share.

[0152] To implement slice-specific quotas, slice_weight(i) may be applied on top of the actual scheduling weight of each bearer associated with the slice. The scheduler will use the modified scheduling weight (i.e., slice-aware scheduling weight) to decide the scheduling priority among the requested LCHs:

[0153] modified_scheduling_weight(b)=slice_weight(i)*scheduling_weight(b) (18)

[0155] Wherein b refers to a bearer, and i=slice(b) refers to the slice i to which bearer b belongs.

[0156] In some embodiments, when the resource consumption of a slice is lower than the committed target share, the scheduling weight for the corresponding LCH associated with the slice is further increased; when the resource consumption of the slice is higher than the committed target share, the scheduling weight for the corresponding LCH associated with the slice is further reduced; or if the difference between the determined required resources and the current usage of resources from the slice is greater than a certain threshold, the scheduling weight for the corresponding LCH associated with the corresponding slice is further increased to a higher weight to accelerate convergence to the target share.

[0157] In some embodiments, the generic slice-specific weight definition and adaptation method follows the following rules:

[0158] (1) According to the resource lookup table at the scheduler, as long as the slice resource consumption is lower than the committed target share, the services / LCHs under the slice are allowed to be scheduled, but the priority is implemented according to their modified scheduling weights.

[0159] (2) gNb allocates UL resources (expected PRBs) to each bearer b in proportion to modified_scheduling_weight(b).

[0160] (3) To accelerate convergence to the target share of a slice, the slice weight may be set to a higher value when the difference between the target share and the average resource consumption is larger.

[0161] (4) When the scheduler detects that the resource consumption of a slice exceeds the target share, the slice weight is reduced, and when the resource consumption reaches the predefined maximum share, the slice weight can even be finally set to 0 (i.e., before the average resource consumption drops below the maximum share,

[0162] The service for this slice is not scheduled).

[0163] In other words, if the quality of service / QoS of some channels is affected because their slice quota is used by other channels that have exhausted their quota, their scheduling weights should be increased proportionally to use their quota and meet the quality of service. At the same time, L2-PS should skip LCHs with huge credit balances from scheduling.

[0164] - In addition, a notification is sent to the tenant portal system that usage has exceeded its quota. Either limit usage or purchase more resources.

[0165] During resource allocation, the gNB makes a best effort to ensure that slice resources at the gNB are allocated from the corresponding slice quota when requested by the LCH. However, once the resource grants are sent to the UE, the UE can assign these grants to any active logical channels on different LCGs at its disposal (as per the logical channel prioritization procedure). The solution proposed in this article can help to correctly allocate UL grants from the corresponding slices and then continuously monitor the allocated grants. Based on their resource consumption, the gNB will modify the scheduling weights to enable UEs (DRBs) to enable their slice quotas first.

[0166] Slice related configuration

[0167] Information about slice-related configurations can be obtained in a variety of different ways. In some embodiments, operations and maintenance (OAM) can download slice-related configurations and SLAs from the "tenant slice portal" and configure them on the gNB. Slice-related configurations include: slice quota - a certain percentage of the total PRBs of the cell; SLA - mode of sharing resources across slices (dedicated and shared, etc.); slice priority; and any special considerations.

[0168] For illustrative purposes, Figure 7 An example overall architecture is illustrated, showing a network management system / tenant slice portal system, a RAN intelligent controller (RIC), a gNB, and a UE. Figure 7As shown, there is a standardized E2 interface between the gNB and the Administrator and Maintenance (OAM) / RIC, and there is an A1 reference point between the OAM / RIC and the operator's network management system / tenant slice portal. The UE can request uplink grants at the LCG level, and any slice quota is not considered when assigning grants. On the gNB side, when the UE sends a resource request for multiple channels in the same LCG, the packet scheduler cannot send grants from the corresponding slices. Therefore, an efficient "slice amount control" method may include estimating the buffer status for one or more LCHs.

[0169] Example lookup table maintained on the network side

[0170] In some embodiments, the network device 110 may construct a lookup table and update it periodically to implement “slice amount control” (ie, slice scheduling) in uplink transmissions. For illustration purposes, Table 2 illustrates an example lookup table.

[0171] Table 2: Example of a lookup table on a gNB

[0172]

[0173]

[0174] As shown in Table 2, the table may have one or more of the following entries:

[0175] (1) According to the SLA and the slice quota (minimum, maximum) received through the E2 interface;

[0176] - Each slice gets a certain percentage of the total PRBs (RAN resources) of the cell;

[0177] (2) Logical channel identifier (LCH ID);

[0178] (3) The buffer status of the LCH at the UE;

[0179] - Data waiting for scheduling at the UE estimated by ML techniques;

[0180] (4) Uplink resources authorized by the gNB;

[0181] (5) Authorization resources for sending data in UL;

[0182] -Updated after receiving data in UL;

[0183] (6) by the credit or debit balance of LCH;

[0184] - Authorized resources and actual usage by LCH.

[0185] The gNB may monitor and track uplink grant requests issued by the LCH / LCG, the resources granted by the gNB, and the received data on these channels. The amount of resources (PRBs) used by the UE to send data in the uplink may be determined based on the achieved spectral efficiency (SE). When granting resources, the gNB knows from which slice(s) the resources are allocated, and when receiving data, the gNB knows on which channels the UE has sent data. If there is no correlation between the grant provided (from a specific slice to a specific LCH) and the received uplink data, it indicates that the UE has assigned the grant to a different LCH from the same LCG or to a different LCH in a different LCG. Therefore, the 'credit and debit' balance metrics in Table 1 are updated. The UE continues to report the buffer status at the LCG level in the BSR, as it does now. The overall UL grant allocated is still limited by the buffer status reported by the UE.

[0186] Figure 8 Another example of a use case that can be used with example embodiments of the present disclosure is illustrated. Figure 8 As shown, there are only "service specific slices". For a specific service type (e.g., uRLLC, eMBB, mMTC, etc.), there will be only one instance of a slice, and all logical channels utilizing a specific service will take resources from the same slice. All logical channels multiplexed in an LCG will have resource quotas from the same slice. In this case, controlling resource allocation is simple, but modifying scheduling weights needs to be handled as described in this disclosure.

[0187] In some embodiments, the network device 110 may obtain a buffer status reported by the terminal device for a corresponding logical channel group LCG, wherein all logical channels LCH in the LCG are associated with a single slice, and the LCG is associated with a slice. The network device 110 may then perform resource allocation from the corresponding slice to the terminal device based on the buffer status of the corresponding LCG.

[0188] In some embodiments, performing resource allocation from a corresponding slice includes determining resource requirements for the corresponding slice based on a buffer status of a corresponding LCG associated with the corresponding slice and a slice quota of the corresponding slice, wherein resource allocation is performed based on the determined required resources from the corresponding slice.

[0189] In some embodiments, all bearers in an LCG have corresponding quotas from the same slice (e.g., service-specific slices such as uRLLC, eMTC, etc.), the required number of resources allocated from the corresponding slice i (subject to the slice quota limit). The resources allocated to LCG g are:

[0190] resource_allocation_to_lcg(g)=buffer_status_lcg(g) / (∑ k∈S buffer_status_lcg(k))*slice_quota(i) (19)

[0192] Where S is the set of all LCGs with quota in slice i. Basically, slice i quota is divided among all LCGs in that slice i that have expired or corresponding quota.

[0193] In some embodiments, resource allocation is also performed based on a scheduling weight for a respective LCG associated with a respective slice, wherein the scheduling weight indicates a scheduling priority of the respective LCG associated with the respective slice.

[0194] In some embodiments, resource allocation to the corresponding LCH is also performed in proportion to the scheduling weight.

[0195] In some embodiments, the scheduling weight is modified based on a slice weight for the corresponding slice, and wherein the slice weight is determined based on the determined resource requirement for the corresponding slice and the current resource usage from the corresponding slice.

[0196] In some embodiments, when the resource consumption of the slice is lower than the committed target share, the scheduling weight for the corresponding LCG associated with the slice is further increased; when the resource consumption of the slice is higher than the committed target share, the scheduling weight for the corresponding LCG associated with the slice is further reduced; or if the difference between the determined required resources of the corresponding slice and the current usage of resources from the slice is greater than a predetermined threshold, the scheduling weight for the corresponding LCG associated with the corresponding slice is further increased.

[0197] Fig. 9 FIG. 1 is an example flow chart of a method 900 implemented at a terminal device 120 according to some embodiments of the present disclosure. For the purpose of discussion, reference will be made to Figure 1 The method 900 is described from the perspective of the terminal device 120. It should be understood that the method 900 may also include additional blocks not shown and / or omit some of the shown blocks, and the scope of the present disclosure is not limited in this regard.

[0198] At block 910, the terminal device 120 may report the buffer status for the corresponding logical channel group LCG to the network device.

[0199] At block 920, the terminal device 120 may receive a resource allocation from a corresponding slice from a network device, wherein the resource allocation from the corresponding slice is determined based on a buffer status reported for the LCG.

[0200] In some embodiments, an LCH in an LCG is associated with two or more slices, and wherein resource allocation from a corresponding slice is determined based on a buffer status for a corresponding LCH associated with the corresponding slice, which buffer status for the corresponding LCH is obtained based on a buffer status reported for the LCG.

[0201] Fig.10 1 is a simplified block diagram of a device 1000 suitable for implementing embodiments of the present disclosure. The device 1000 may be provided to implement a communication device, such as Figure 1 The network device 110 and the terminal device 120 are shown. As shown in the figure, the device 1000 includes one or more processors 1010, one or more memories 1020 coupled to the processors 1010, and one or more communication modules 1040 coupled to the processors 1010.

[0202] The communication module 1040 is used for two-way communication. The communication module 1040 has at least one antenna to facilitate communication. The communication interface may represent any interface required for communication with other network elements.

[0203] Processor 1010 may be of any type suitable for the local technology network, and may include, as non-limiting examples, one or more of: a general purpose computer, a special purpose computer, a microprocessor, a digital signal processor (DSP), and a processor based on a multi-core processor architecture. Device 1000 may have multiple processors, such as application specific integrated circuit chips that are time slaved to a clock synchronized with a main processor.

[0204] The memory 1020 may include one or more non-volatile memories and one or more volatile memories. Examples of non-volatile memories include, but are not limited to, read-only memory (ROM) 1024, electrically programmable read-only memory (EPROM), flash memory, hard disks, compact disks (CDs), digital video disks (DVDs), and other magnetic storage devices and / or optical storage devices. Examples of volatile memories include, but are not limited to, random access memory (RAM) 1022 and other volatile memories that do not persist during power outages.

[0205] Computer program 1030 includes computer executable instructions executed by associated processor 1010. Program 1030 may be stored in ROM 1024. Processor 1010 may perform any suitable actions and processes by loading program 1030 into RAM 1022.

[0206] The embodiments of the present disclosure may be implemented by the program 1030 so that the device 1000 may execute the reference Figures 2 to 9Any process of the present disclosure discussed. The embodiments of the present disclosure may also be implemented by hardware or by a combination of software and hardware.

[0207] In some embodiments, the program 1030 may be tangibly contained in a computer-readable medium, which may be included in the device 1000 (such as in the memory 1020) or in other storage devices accessible to the device 1000. The device 1000 may load the program 1030 from the computer-readable medium to the RAM 1022 for execution. The computer-readable medium may include any type of tangible non-volatile memory, such as ROM, EPROM, flash memory, hard disk, CD, DVD, etc. Fig.11 An example of a computer readable medium 1100 in the form of a CD or DVD is shown. The computer readable medium has a program 1030 stored thereon.

[0208] Generally, various embodiments of the present disclosure may be implemented using hardware or dedicated circuits, software, logic, or any combination thereof. Some aspects may be implemented using hardware, while other aspects may be implemented using firmware or software that may be executed by a controller, microprocessor, or other computing device. Although various aspects of the embodiments of the present disclosure are illustrated and described as block diagrams, flow charts, or using some other graphical representations, it should be understood that, as non-limiting examples, the blocks, devices, systems, techniques, or methods described herein may be implemented using hardware, software, firmware, dedicated circuits or logic, general-purpose hardware or controllers or other computing devices, or some combination thereof.

[0209] The present disclosure also provides at least one computer program product tangibly stored on a non-transitory computer-readable storage medium. The computer program product includes computer executable instructions, such as instructions included in a program module, which are executed in a device on a target real or virtual processor to perform the above reference Figures 2 to 9 Methods 400 and 900 are described. Typically, program modules include routines, programs, libraries, objects, classes, components, data structures, etc. that perform specific tasks or implement specific abstract data types. In various embodiments, the functions of program modules can be combined or split between program modules as needed. The machine executable instructions of program modules can be executed in local or distributed devices. In distributed devices, program modules can be located in both local and remote storage media.

[0210] The program code for executing the method of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer or other programmable data processing device so that the program code is implemented when executed by the processor or controller in the flow chart and / or the block diagram. The program code can be executed completely on the machine, partially on the machine, as an independent software package, partially on the machine and partially on a remote machine, or completely on a remote machine or server.

[0211] In the context of the present disclosure, computer program codes or related data may be carried by any suitable carrier to enable a device, apparatus or processor to perform various processes and operations as described above. Examples of carriers include signals, computer readable media, etc.

[0212] The computer readable medium can be a computer readable signal medium or a computer readable storage medium. The computer readable medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. A more specific example of a computer readable storage medium will include an electrical connection with one or more wires, a portable computer floppy disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0213] In addition, although the operations are described in a particular order, this should not be understood as requiring such operations to be performed in the particular order shown or in order or performing all the operations shown to obtain the desired result. In some cases, multitasking and parallel processing may be advantageous. Similarly, although several specific implementation details are included in the above discussion, these should not be interpreted as limitations on the scope of the present disclosure, but rather descriptions of features that may be specific to a particular embodiment. Certain features described in the context of a separate embodiment may also be implemented in combination in a single embodiment. On the contrary, the various features described in the context of a single embodiment may also be implemented in multiple embodiments individually or in any suitable sub-combination.

[0214] Although the disclosure has been described in language specific to structural features and / or methodological acts, it should be understood that the disclosure defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features or acts described above are disclosed as example forms of implementing the claims.

Claims

1. A network device, include: at least one processor; as well as at least one memory storing instructions, which, when executed by the at least one processor, cause the network device to at least: determining a buffer status for a respective logical channel LCH associated with a respective slice based on a buffer status reported by the terminal device for the logical channel group LCG; as well as Based on the buffer status for the corresponding LCH and a quota associated with the corresponding slice, resource allocation from the corresponding slice to the terminal device is performed.

2. The network device of claim 1, wherein an LCH in an LCG is associated with two or more slices, and wherein the determining of the buffer status for the corresponding slice include: Based on the buffer status reported by the terminal device for the LCG, a buffer status prediction model is used to obtain the buffer status for the corresponding LCH associated with the corresponding slice.

3. The network device according to claim 1 or 2, wherein the buffer status prediction model is used to obtain the buffer status for the corresponding LCH. include: The buffer status prediction model is used to estimate the buffer status for the corresponding LCH within the estimation window based on historical buffer status reports from terminal devices within a statistical window before the estimation window.

4. The network device according to claim 2 or 3, wherein the buffer status prediction model has a first coefficient and a second coefficient, and wherein the first coefficient represents the ratio of the data of the LCH to the data of the LCG, and the second coefficient represents the deviation of the guaranteed bit rate or the priority bit rate for the LCH.

5. The network device according to claim 4, wherein the first coefficient and the second coefficient of the buffer status prediction model are determined by: The first coefficient and the second coefficient are obtained based on historical information of demultiplexing results of packets received by the network device by using a machine learning algorithm.

6. The network device according to any one of claims 1 to 5, wherein the performing of resource allocation from the corresponding slice include: Based on spectral efficiency and a buffer status for the respective LCH associated with the respective slice, respective resource requirements for the respective slice are determined, and wherein the resource allocation is performed based on the determined required resources from the respective slice.

7. The network device according to any one of claims 1 to 6, wherein resource allocation from corresponding slices is performed include: determining resources required from the corresponding slice based on a minimum of: a corresponding resource requirement for the corresponding slice, a slice quota for the corresponding slice, and available resources from the corresponding slice, the available resources being subject to an overall reporting buffer condition and modified for the corresponding slice by an associated weight; wherein the resource allocation is performed based on the determined resources required from the corresponding slice; and The association weight is determined based on information about: actual resources authorized by the network device and resources allocated by the terminal device for the LCHs respectively associated with corresponding slices.

8. The network device according to claim 7, wherein a credit balance indicator or an indicator of a debit balance for a respective LCH associated with a respective slice is determined based on the information about: actual resources authorized by the network device and resources allocated by the terminal device for the LCHs respectively associated with the respective slices, wherein the credit balance indicates that: the resources that the terminal device has allocated to the LCH are greater than the actual amount of resources authorized by the network device for the LCH; The debit balance indicates that: the resources that the terminal device has allocated to the LCH are less than the actual amount of resources authorized by the network device for the LCH; and Wherein the association weight is determined based on the credit balance indicator or the debit balance indicator associated with the corresponding slice.

9. The network device according to any one of claims 1 to 8, wherein the resource allocation is also performed based on a scheduling weight for the corresponding LCH, and wherein the scheduling weight indicates: a scheduling priority of the corresponding LCH associated with the corresponding slice.

10. The network device of claim 9, wherein the resource allocation to the corresponding LCH is also performed in proportion to the scheduling weight.

11. A network device according to claim 9 or 10, wherein the scheduling weight is modified based on a slice weight for a corresponding slice or a corresponding logical channel associated with the corresponding slice, and wherein the slice weight is determined based on the determined resource requirement for the corresponding slice and the current usage of resources from the corresponding slice.

12. The network device according to any one of claims 9 to 11, wherein at least one of the following: When the resource consumption of a slice is lower than the committed target share, the scheduling weight for the corresponding LCH associated with the slice is further increased; When the resource consumption of a slice is higher than the committed target share, the scheduling weight for the corresponding LCH associated with the slice is further reduced; or If the difference between the determined required resources and the current usage of resources from a slice is greater than a certain threshold, the scheduling weight for the corresponding LCH associated with the corresponding slice is further increased to a higher weight to accelerate convergence to the target share.

13. A terminal device, include: at least one processor; as well as At least one memory stores instructions, which, when executed by the at least one processor, cause the terminal device to at least: Reporting the buffer status for the corresponding logical channel group LCG to the network device; as well as A resource allocation from a corresponding slice is received from the network device, wherein the resource allocation from the corresponding slice is determined based on the buffer status reported for the LCG.

14. A terminal device according to claim 13, wherein the LCH in the LCG is associated with two or more slices, and wherein the resource allocation from the corresponding slice is determined based on the buffer status for the corresponding LCH associated with the corresponding slice, and the buffer status for the corresponding LCH is obtained based on the buffer status reported for the LCG.

15. A method, include: determining, at the network device, a buffer status for a respective logical channel LCH associated with the respective slice based on a buffer status reported by the terminal device for the logical channel group LCG; as well as Based on the buffer status for the corresponding LCH and a quota associated with the corresponding slice, resource allocation from the corresponding slice to the terminal device is performed.

16. A method, include: At the terminal device, reporting a buffer status for a corresponding logical channel group LCG to the network device; as well as A resource allocation from the corresponding slice is received from the network device, wherein the resource allocation from the corresponding slice is determined based on the buffer status reported for the LCG and a quota associated with the corresponding slice.

17. A device, include: means for determining, at the network device, a buffer status for a respective logical channel LCH associated with a respective slice based on a buffer status reported by a terminal device for a logical channel group LCG; as well as Means for performing resource allocation from the corresponding slice to the terminal device based on the buffer status for the corresponding LCH and a quota associated with the corresponding slice.

18. A device, include: means for reporting, at the terminal device, to the network device, a buffer status for a corresponding logical channel group LCG; as well as Means for receiving, from the network device, a resource allocation from the corresponding slice, wherein the resource allocation from the corresponding slice is determined based on the buffer status reported for the LCG and a quota associated with the corresponding slice.

19. A non-transitory computer-readable medium comprising program instructions, which, when executed by a device, cause the device to at least perform the method according to claim 15 or 16.