Resource allocation method and device
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-07
- Publication Date
- 2026-04-10
AI Technical Summary
In 3GPP cellular systems, low-priority logical channels are prone to starvation because high-priority logical channels occupy a large amount of wireless resources, resulting in uneven resource allocation.
By adjusting the token variables of the logical channel, the terminal device can allocate wireless resources more reasonably among multiple logical channels. The specific method includes obtaining the second token variable of the plurality of logical channels based on the allocable radio resources and the first token variable of the plurality of logical channels, and allocating the radio resources among the plurality of logical channels according to the logical channel priority.
By adjusting the token variable, the hunger problem of logical channels is weakened, resource allocation is more fair, and the overall performance of the system is improved.
Smart Images

Figure CN121844674A_ABST
Abstract
Description
Resource allocation method and device Technical Field
[0001] The present application relates to the field of communications, and more specifically, to a resource allocation method and device. Background Art
[0002] In 3rd Generation Partnership Project (3GPP) cellular systems, when a user equipment (UE) is scheduled in the uplink, if more than one logical channel is scheduled, resource blocks must be shared between the different logical channels for uplink data transmission. One of the more important parameters is the logical channel priority. Radio resources are allocated to logical channels based on their priority, but low-priority logical channels are prone to starvation.
[0003] Summary of the Invention
[0004] The embodiments of the present application provide a resource allocation method and device, which can more reasonably allocate wireless resources among different logical channels.
[0005] This embodiment of the present application provides a resource allocation method, including:
[0006] The terminal device obtains second token variables of the multiple logical channels based on the allocatable wireless resources and the first token variables of the multiple logical channels;
[0007] The terminal device allocates the wireless resources among the multiple logical channels based on the second token variables and the logical channel priorities of the multiple logical channels.
[0008] An embodiment of the present application provides a terminal device, including:
[0009] a processing unit, configured to obtain second token variables of the plurality of logical channels based on the allocable wireless resources and the first token variables of the plurality of logical channels;
[0010] An allocating unit is configured to allocate the radio resource among the plurality of logical channels based on the second token variables and the logical channel priorities of the plurality of logical channels.
[0011] An embodiment of the present application provides a terminal device, comprising: a transceiver, a processor, and a memory. The memory is used to store a computer program, the transceiver is used to communicate with other devices, and the processor is used to call and execute the computer program stored in the memory, so that the terminal device executes the above-mentioned resource allocation method.
[0012] The embodiment of the present application provides a chip for implementing the above-mentioned resource allocation method. Specifically, the chip includes: a processor for calling and running a computer program from a memory, so that a device equipped with the chip executes the above-mentioned resource allocation method.
[0013] An embodiment of the present application provides a computer-readable storage medium for storing a computer program. When the computer program is executed by a device, the device executes the above-mentioned resource allocation method.
[0014] An embodiment of the present application provides a computer program product, including computer program instructions, which enable a computer to execute the above-mentioned resource allocation method.
[0015] An embodiment of the present application provides a computer program, which, when executed on a computer, enables the computer to execute the above-mentioned resource allocation method.
[0016] In an embodiment of the present application, by adjusting the token variable of the logical channel, wireless resources can be more reasonably allocated among multiple logical channels, thereby alleviating the starvation problem of the logical channel. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] FIG1 is a schematic diagram of an application scenario according to an embodiment of the present application.
[0018] FIG2 is a schematic diagram of a logical channel participating in the LCP process.
[0019] FIG3 is a schematic flowchart of a resource allocation method according to an embodiment of the present application.
[0020] FIG4 is a schematic flowchart of a resource allocation method according to another embodiment of the present application.
[0021] FIG5 is a schematic block diagram of a terminal device according to an embodiment of the present application.
[0022] FIG6 is a schematic block diagram of a terminal device according to another embodiment of the present application.
[0023] FIG7 is a schematic block diagram of a communication device according to an embodiment of the present application.
[0024] FIG8 is a schematic block diagram of a chip according to an embodiment of the present application.
[0025] FIG9 is a schematic block diagram of a communication system according to an embodiment of the present application. DETAILED DESCRIPTION
[0026] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.
[0027] The technical solutions of the embodiments of the present application can be applied to various communication systems, such as: Long Term Evolution (LTE) system, Advanced Long Term Evolution (LTE-A) system, New Radio (NR) system, NR system evolution system, LTE on unlicensed spectrum (LTE-U) system, NR on unlicensed spectrum (NR-based access to unlicensed spectrum, NR-U) system, Non-Terrestrial Networks (NTN) system, Universal Mobile Telecommunication System (UMTS), Wireless Local Area Networks (WLAN), Wireless Fidelity (WiFi), Fifth Generation (5G) system or other communication systems.
[0028] Generally speaking, traditional communication systems support a limited number of connections and are easy to implement. However, with the development of communication technology, mobile communication systems will not only support traditional communications, but will also support, for example, device-to-device (D2D) communication, machine-to-machine (M2M) communication, machine-type communication (MTC), vehicle-to-vehicle (V2V) communication, or vehicle-to-everything (V2X) communication, etc. The embodiments of the present application can also be applied to these communication systems.
[0029] In one embodiment, the communication system in the embodiment of the present application can be applied to a carrier aggregation (CA) scenario, a dual connectivity (DC) scenario, and a standalone (SA) networking scenario.
[0030] In one embodiment, the communication system in the embodiment of the present application can be applied to an unlicensed spectrum, wherein the unlicensed spectrum can also be considered as a shared spectrum; or, the communication system in the embodiment of the present application can also be applied to an authorized spectrum, wherein the authorized spectrum can also be considered as an unshared spectrum.
[0031] The embodiments of the present application describe various embodiments in conjunction with network devices and terminal devices, wherein the terminal device may also be referred to as user equipment (UE), access terminal, user unit, user station, mobile station, mobile station, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication device, user agent or user device, etc.
[0032] The terminal device can be a station (STAION, ST) in a WLAN, a cellular phone, a cordless phone, a Session Initiation Protocol (SIP) phone, a Wireless Local Loop (WLL) station, a Personal Digital Assistant (PDA) device, a handheld device with wireless communication capabilities, a computing device or other processing device connected to a wireless modem, a vehicle-mounted device, a wearable device, a terminal device in a next-generation communication system such as an NR network, or a terminal device in a future evolved Public Land Mobile Network (PLMN) network, etc.
[0033] In an embodiment of the present application, the terminal device can be deployed on land, including indoors or outdoors, handheld, wearable or vehicle-mounted; it can also be deployed on the water surface (such as ships, etc.); it can also be deployed in the air (such as airplanes, balloons and satellites, etc.).
[0034] In an embodiment of the present application, the terminal device may be a mobile phone, a tablet computer, a computer with wireless transceiver function, a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal device in industrial control, a wireless terminal device in self-driving, a wireless terminal device in remote medical, a wireless terminal device in a smart grid, a wireless terminal device in transportation safety, a wireless terminal device in a smart city, or a wireless terminal device in a smart home, etc.
[0035] As an example and not a limitation, in the embodiment of the present application, the terminal device may also be a wearable device. Wearable devices may also be called wearable smart devices, which are a general term for wearable devices that are intelligently designed and developed using wearable technology for daily wear, such as glasses, gloves, watches, clothing, and shoes. A wearable device is a portable device that is worn directly on the body or integrated into the user's clothes or accessories. Wearable devices are not only hardware devices, but also achieve powerful functions through software support, data interaction, and cloud interaction. Broadly speaking, wearable smart devices include those that are fully functional, large in size, and can achieve complete or partial functions without relying on smartphones, such as smart watches or smart glasses, as well as those that only focus on a certain type of application function and need to be used in conjunction with other devices such as smartphones, such as various smart bracelets and smart jewelry for vital sign monitoring.
[0036] In an embodiment of the present application, the network device may be a device for communicating with a mobile device. The network device may be an access point (AP) in a WLAN, an evolved base station (eNB or eNodeB) in LTE, or a relay station or access point, or a vehicle-mounted device, a wearable device, and a network device (gNB) in an NR network, or a network device in a future evolved PLMN network or a network device in an NTN network, etc.
[0037] As an example and not a limitation, in an embodiment of the present application, the network device may have a mobile feature, for example, the network device may be a mobile device. Alternatively, the network device may be a satellite or a balloon station. For example, the satellite may be a low earth orbit (LEO) satellite, a medium earth orbit (MEO) satellite, a geostationary earth orbit (GEO) satellite, a high elliptical orbit (HEO) satellite, etc. Optionally, the network device may also be a base station set up in a location such as land or water.
[0038] In an embodiment of the present application, the network device can provide services for a cell, and the terminal device communicates with the network device through the transmission resources used by the cell (for example, frequency domain resources, or spectrum resources). The cell can be a cell corresponding to the network device (for example, a base station). The cell can belong to a macro base station or a base station corresponding to a small cell. The small cells here may include: metro cells, micro cells, pico cells, femto cells, etc. These small cells have the characteristics of small coverage and low transmission power, and are suitable for providing high-speed data transmission services.
[0039] FIG1 exemplarily illustrates a communication system 100. The communication system includes a network device 110 and two terminal devices 120. In one embodiment, the communication system 100 may include multiple network devices 110, and each network device 110 may include a different number of terminal devices 120 within its coverage area, which is not limited in this embodiment of the present application.
[0040] In one embodiment, the communication system 100 may further include other network entities such as a Mobility Management Entity (MME) and an Access and Mobility Management Function (AMF), which is not limited in this embodiment of the present application.
[0041] Among them, the network equipment may include access network equipment and core network equipment. That is, the wireless communication system also includes multiple core networks for communicating with the access network equipment. The access network equipment can be an evolutionary base station (evolutional node B, abbreviated as eNB or e-NodeB) macro base station, micro base station (also called "small base station"), pico base station, access point (AP), transmission point (TP) or new generation base station (new generation Node B, gNodeB), etc. in a long-term evolution (LTE) system, a next-generation (mobile communication system) (next radio, NR) system or an authorized auxiliary access long-term evolution (LAA-LTE) system.
[0042] It should be understood that in the embodiments of the present application, a device having a communication function in a network / system may be referred to as a communication device. Taking the communication system shown in Figure 1 as an example, the communication device may include a network device and a terminal device having a communication function. The network device and the terminal device may be specific devices in the embodiments of the present application and will not be described in detail here. The communication device may also include other devices in the communication system, such as a network controller, a mobility management entity, and other network entities, which are not limited in the embodiments of the present application.
[0043] It should be understood that the terms "system" and "network" are often used interchangeably herein. The term "and / or" is simply a description of an association between related objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A exists alone, A and B exist simultaneously, or B exists alone. Furthermore, the character " / " generally indicates that the related objects are in an "or" relationship.
[0044] It should be understood that the "indication" mentioned in the embodiments of this application can be a direct indication, an indirect indication, or an indication of an association. For example, "A indicates B" can mean that A directly indicates B, for example, B can be obtained through A; it can also mean that A indirectly indicates B, for example, A indicates C, and B can be obtained through C; it can also mean that there is an association between A and B.
[0045] In the description of the embodiments of the present application, the term "corresponding" may indicate a direct or indirect correspondence between the two, or an association relationship between the two, or a relationship between indication and being indicated, configuration and being configured, etc.
[0046] To facilitate understanding of the technical solutions of the embodiments of the present application, the relevant technologies of the embodiments of the present application are described below. The following relevant technologies can be arbitrarily combined with the technical solutions of the embodiments of the present application as optional solutions, and they all fall within the protection scope of the embodiments of the present application.
[0047] In 3GPP's Third Generation (3G) mobile communication systems, such as Wideband Code Division Multiple Access (WCDMA), the logical channel optimization level (LCP) is the only parameter referenced during the logical channel prioritization (LCP) process. For example, two logical channels, LCH_1 and LCH_2, have priorities LCH1_P and LCH2_P, respectively. At a given moment, the buffers for the data they need to send are LCH1_Buf and LCH2_Buf, respectively. The size of the allocated radio resource block is represented by a serving grant (SG). Based on the SG, the terminal can calculate the size of the radio resource block in bytes.
[0048] An example of a method for allocating radio resources to a logical channel is as follows:
[0049] Step 1: Sort the logical channels by priority (assuming that LCH_1 has a higher priority than LCH_2, the first logical channel is LCH_1).
[0050] Step 2: Allocate radio resources to LCH_1. If SG <= LCH_B1, the process ends; otherwise, go to Step 3.
[0051] Step 3: Allocate the remaining radio resources (ie, SG-LCH1_Buf) to LCH_2.
[0052] When the number of logical channels is greater than 2, the method is the same, that is, wireless resources are allocated in order of logical channel priority until all wireless resources are allocated or the last logical channel is allocated.
[0053] This method will cause a "starvation" phenomenon. That is, when the SG is smaller than the sum of the logical channel buffers and the high-priority logical channels always have buffers to send, the low-priority logical channels either cannot be scheduled or receive fewer wireless resources, which cannot meet the basic QoS requirements, thus causing starvation.
[0054] In 3GPP's fourth-generation (4G) and fifth-generation (5G) mobile communication systems, LCP uses a token bucket algorithm to alleviate or even overcome the aforementioned starvation problem. The specific method is as follows:
[0055] Each logical channel is assigned a priority bit rate (PBR) and a token bucket (BS) according to QoS requirements. The token bucket can be represented by PBR_BS. A token variable Bj is also set locally. Each logical channel accumulates Bj over time, but the maximum value does not exceed PBR_BS, that is, Bj = Bj + PBR × T, Bj = min(Bj, PBR_BS). T is the time period between two Bj increment calculations. For example, the steps of LCP are as follows (for ease of description, assume that LCH_1 has a higher priority than LCH_2):
[0056] Step 1: First, allocate radio resources to LCH_1, for example: LCH1_ASG = min(SG, LCH1_Bj, LCH1_Buf), where the radio resources allocated to LCH_1 are the minimum of the SG to be allocated, LCH1's token variable LCH1_Bj, and LCH1's buffer size LCH1_Buf. After allocation, subtract the allocated resources from SG and update LCH1's token variable and buffer size. The formula example is as follows:
[0057] SG = SG - LCH1_ASG, which means subtracting the allocated resources from SG;
[0058] LCH1_Bj=LCH1_Bj-LCH1_ASG, which means that the allocated resources are subtracted from the token variable of LCH1 and the token variable of LCH1 is updated;
[0059] LCH1_Buf=LCH1_Buf-LCH1_ASG, indicating that the allocated resources are subtracted from the cache size of LCH_1, and the cache of LCH_1 is updated.
[0060] If there are still SGs remaining, wireless resources can continue to be allocated to LCH_2, for example: LCH2_ASG = min(SG, LCH2_Bj, LCH2_Buf), which means that the wireless resources allocated to LCH_2 are the minimum value of the remaining SG, LCH_2's token variable LCH2_Bj, and LCH_2's cache size LCH2_Buf.
[0061] After allocation, the allocated resources are subtracted from SG, and the token variable and cache size of LCH_2 are updated. The formula example is as follows:
[0062] SG = SG - LCH2_ASG, which means subtracting the allocated resources from SG;
[0063] LCH2_Bj=LCH2_Bj–LCH2_ASG, which means subtracting the allocated resources from the token variable of LCH_2 and updating the token variable of LCH_2;
[0064] LCH2_Buf = LCH2_Buf – LCH2_ASG, which means subtracting the allocated resources from the LCH_2 cache;
[0065] Step 2: If SG is still greater than 0, allocation can continue in the order of priority of LCH_1 and LCH_2 until the wireless resource SG is allocated or LCH_2 is also allocated.
[0066] This algorithm is also applicable to the case where there are more than two logical channels. Just continue to apply step 1 and step 2 in the same way to the logical channels arranged according to the logical channel priority.
[0067] The above solution overcomes the starvation problem in the 3GPP 3G system to a certain extent, but it cannot completely avoid the starvation problem. This problem is particularly serious when the available radio resources are relatively small compared to the total buffer of the logical channels participating in the LCP.
[0068] The following is an example description:
[0069] In Figure 2, three logical channels, LCH1, LCH2, and LCH3, participate in the LCP process. The boundary between the two blocks in each logical channel represents the tokens Bj accumulated by each logical channel based on the configured PBR. Above Bj is the amount of radio resource demand from each logical channel's buffer relative to Bj. Since the overall schedulable radio resources SG may be less than the sum of the tokens Bj of each logical channel, assuming the logical channel priority order is LCH1, LCH2, and LCH3, according to the above method, after radio resources are allocated to LCH1 and LCH2, the radio resources that can be allocated to LCH3 are very limited and less than its Bj. This means that LCH3 is still experiencing starvation. If schedulable radio resources remain scarce, LCH3 will remain in a state of constant starvation.
[0070] FIG3 is a schematic flow chart of a resource allocation method 300 according to an embodiment of the present application. The method can optionally be applied to the system shown in FIG1 , but is not limited thereto. The method includes at least part of the following contents.
[0071] S310. The terminal device obtains second token variables of the multiple logical channels based on the allocatable wireless resources and the first token variables of the multiple logical channels;
[0072] S320. The terminal device allocates the wireless resources among the multiple logical channels based on the second token variables and the logical channel priorities of the multiple logical channels.
[0073] In the embodiment of the present application, the logical channel may generally include a control channel and a traffic channel. The control channel is mainly used to transmit control plane information, and the traffic channel is mainly used to transmit user plane information.
[0074] In the embodiments of the present application, the allocable radio resources may be allocated to the terminal device by the network. The network device may allocate the allocable radio resources to the terminal device through dynamic scheduling, semi-static scheduling, etc. The terminal device may allocate the allocable radio resources to multiple logical channels that it needs to use.
[0075] In an embodiment of the present application, a priority bit rate (PBR) and a token bucket can be set for each logical channel according to QoS requirements, and a first token variable can be set for each logical channel. Each logical channel accumulates the first token variable over time, but the maximum value of the first token variable does not exceed the token bucket. Then, based on the allocable wireless resources and the first token variables of each of the multiple logical channels, the second token variables of each of the multiple logical channels can be adjusted respectively. If the allocable wireless resources are less than the sum of the caches participating in the multiple logical channels, the first token variables of each of the multiple logical channels are adjusted to the second token variables respectively, which can reasonably allocate resources to the multiple logical channels and reduce the starvation problem of the logical channels.
[0076] In one embodiment, the allocable wireless resources include wireless resources participating in logical channel prioritization (LCP), and the LCP includes a process in which the terminal device allocates the allocable wireless resources between the logical channels participating in the LCP according to the logical channel priority. In an embodiment of the present application, the wireless resources of the logical channels participating in the LCP, which may also be referred to as the wireless resources participating in the LCP, may include the sum SG_A of the allocable wireless resources participating in the same LCP in a terminal device. If the number of logical channels participating in the LCP includes N, the LCP may include a process in which the terminal device allocates the SG_A between the N logical channels participating in the LCP according to the logical channel priorities of the N logical channels participating in the LCP.
[0077] In one embodiment, the multiple logical channels include logical channels participating in LCP or a subset of logical channels participating in LCP. In an embodiment of the present application, the token variables of all logical channels participating in LCP (i.e., the full set of logical channels participating in LCP) can be adjusted, and the token variables of some logical channels participating in LCP (i.e., the subset of logical channels participating in LCP) can also be adjusted. For example, the wireless resources participating in LCP are SG_A, and all logical channels participating in LCP are N logical channels. Based on SG_A and the first token variables of the N logical channels, the second token variables of the N logical channels can be adjusted respectively. Based on SG_A and the first token variables of N-1 logical channels among the N logical channels, the second token variables of the N-1 logical channels can be adjusted respectively. N-1 in this example can also be changed to N-2, N-3, etc., which can be flexibly adjusted according to actual needs.
[0078] In one embodiment, the first token variable of the logical channel with the highest priority among the logical channels participating in the LCP remains unchanged. For example, among the N logical channels participating in the LCP, the first token variable of the logical channel with the highest priority is not adjusted, and only the first token variables of the remaining N-1 logical channels are adjusted to the second token variable. This is conducive to ensuring that the logical channel with the highest priority can be allocated more wireless resources in a timely manner, and ensuring the normal scheduling of the logical channel with the highest priority. By analogy, the first token variables of the logical channels whose logical channel priorities are ranked in the first few positions can also be limited to remain unchanged. For example, among the N logical channels participating in the LCP, the first token variables of the logical channels whose logical channel priorities are ranked in the first M positions are not adjusted, and only the first token variables of the remaining NM logical channels are adjusted to the second token variables. N is greater than M.
[0079] In one embodiment, the first token variable of a logical channel is determined based on the previous token variable of the logical channel, the priority bit rate (PBR), and the accumulated time, and the first token variable of the logical channel is less than or equal to the token bucket size of the logical channel, and the accumulated time includes the time interval between two consecutive first token variables starting to accumulate. For example, the first token variable of a logical channel can be accumulated over time starting from 0, for example, the first token variable of a logical channel is equal to the priority bit rate of the logical channel multiplied by the accumulated time, and the formula example can be: Bj=PBR×T. The accumulated time of a logical channel can include the time from the last time wireless resources were allocated to the logical channel to the current time when wireless resources are prepared to be allocated to the logical channel again. If the accumulated first token variable reaches the size of the token bucket, accumulation will no longer continue, and the size of the token bucket will be used as the first token variable to participate in the subsequent wireless resource allocation process.
[0080] In one embodiment, the second token variable of a logical channel is less than or equal to the first token variable of the logical channel. For example, the second token variable of each of the N logical channels is less than or equal to the first token variable of each of the N logical channels. If the allocable wireless resources are less than the sum of the caches of the multiple logical channels involved, the resources can be reasonably allocated to the multiple logical channels according to the adjusted second token variables of the multiple logical channels, and the wireless resources allocated to the high-priority logical channels can be appropriately reduced so that the low-priority logical channels also have the opportunity to be allocated wireless resources. By allowing the high-priority logical channels to tolerate a certain degree of starvation, the starvation degree of the low-priority logical channels is reduced. In this case, the starvation degree of the high-priority logical channels is lower, and the starvation degree of the low-priority logical channels is relatively higher.
[0081] In one embodiment, the adjustment parameters of the first token variable include at least one of the following: the first token variable of the multiple logical channels; the size of the wireless resources; the first distribution function. In an embodiment of the present application, the size of the wireless resources used to adjust the first token variable can be equal to the size of the allocable wireless resources (the size of the wireless resources of the logical channels participating in the LCP configured by the network), or it can be equal to the size of the wireless resources remaining after the last allocation. For example, for the first logical channel among multiple logical channels according to the logical channel priority, the size of the wireless resources used to adjust the first token variable can be equal to the size of the allocable wireless resources. For another example, for the second and subsequent logical channels among multiple logical channels according to the logical channel priority, the size of the wireless resources used to adjust the first token variable can be equal to the size of the wireless resources remaining after the last allocation.
[0082] In one embodiment, the size of the radio resources of the logical channels participating in the LCP is smaller than the sum of the first token variables of the logical channels participating in the LCP. For example, the size SG_A of the radio resources of the logical channels participating in the LCP is smaller than the sum of the first token variables of the N logical channels participating in the LCP.
[0083] In one embodiment, the first distribution function is an incremental function. The value of the incremental function can increase as the value of the function's input parameter increases. For example, if the input parameter of the first distribution function is the sequence number of the logical channel after being sorted according to the logical channel priority, the value of the first distribution function increases as the sequence number of the logical channel increases. Based on the first distribution function, the adjustment range of the token variables of multiple logical channels can increase as the sequence number of the logical channel increases.
[0084] In one embodiment, the second token variable of a logical channel is the difference between the first token variable of the logical channel and a first product, where the first product is the product of the first token variable and the value of the first distribution function of the logical channel; the value of the first distribution function is the value obtained by using the sequence number of a logical channel as the input parameter of the first distribution function. For example, the first distribution function is F(n), where n represents the sequence number of the logical channel, i.e., the nth logical channel. The first token variable of a logical channel is Bj_1, and the second token variable is Bj_2. The relationship between the second token variable and the first token variable of the logical channel can be seen in the following formula: Bj_2 = Bj_1-Bj_1×F(n) = Bj_1(1-F(n)).
[0085] In one embodiment, the first distribution function is used to adjust the first token variables of the multiple logical channels according to the order of priority of the multiple logical channels from high to low. For example, if the value of the first distribution function corresponding to a high priority is smaller, the first token variable of the high priority is adjusted to the second token variable, and the amount required to be reduced is smaller. In comparison, if the value of the first distribution function corresponding to a low priority is larger, the first token variable of the low priority is adjusted to the second token variable, and the amount required to be reduced is larger.
[0086] In one embodiment, the first distribution function, the size of the wireless resource, and the first token satisfy a normalization condition.
[0087] In one embodiment, the normalization condition includes:
[0088] The first token variable of each logical channel in the multiple logical channels is divided by the first difference and multiplied by the value of the corresponding first distribution function to obtain a first value; and the first values of the multiple logical channels are accumulated to be equal to 1; the first difference is equal to the difference between the sum of the first token variables of the logical channels participating in the LCP and the size of the wireless resources of the logical channels participating in the LCP, and the value of the first distribution function is the value obtained by taking the serial number of a logical channel as the input parameter of the first distribution function.
[0089] For example, the sum of the first token variables of the logical channels participating in the LCP is LCH_Bj, and the size of the wireless resources of the logical channels participating in the LCP is SG_A, then the first difference is Delta = LCH_Bj-SG_A. If LCH_Bj is greater than SG_A, then Delta is greater than 0. The first token variable of a logical channel is LCH_n_Bj, then the first value corresponding to the logical channel is (LCH_n_Bj / Delta)×F(n). The cumulative value of the first value of each logical channel can be expressed as Sum((LCH_n_Bj / Delta)×F(n))=1. Among them, n can be counted from 0, then n=0~N-1; n can also be counted from 1, then n=1~N.
[0090] In one embodiment, the terminal device performs LCP on the multiple logical channels based on the second token variables of the multiple logical channels, including:
[0091] Corresponding wireless resources are allocated to each of the multiple logical channels in order of priority from high to low, wherein the size of the wireless resources of each logical channel is the minimum value of the remaining wireless resources, the second token variable of the logical channel, and the cached data amount of the logical channel.
[0092] In one embodiment, when the logical channel is the first logical channel arranged, the remaining radio resources are radio resources of the logical channels participating in the LCP;
[0093] In a case where the logical channel is not the frontmost logical channel, the remaining wireless resources are the remaining wireless resources after the terminal device allocates wireless resources to the previous logical channel.
[0094] In an embodiment of the present application, multiple logical channels may be arranged in descending order of logical channel priority. Then, starting with the first logical channel in the order of arrangement, wireless resources are allocated to each logical channel. The remaining wireless resources of the first logical channel arranged first are equal to all wireless resources of the logical channels participating in the LCP. The remaining wireless resources of the second and subsequent logical channels are equal to the remaining allocatable wireless resources after allocating wireless resources to the previous logical channel.
[0095] For example, there are three logical channels participating in LCP, and the order of logical channel priority from high to low is LCH_1, LCH_2, and LCH_3. The wireless resources of the logical channels participating in LCP include SG_A. First, the second token variable of LCH_1 is obtained based on the first token variable of SG_A and LCH_1, and then the minimum value among SG_A, the second token variable of LCH_1, and the cached data volume of LCH_1 is compared. The wireless resource LCH1_ASG allocated to LCH_1 is equal to the minimum value. Then, the parameters such as the remaining wireless resources SG_R, the first token variable, and the cached data volume are updated with reference to the following formula:
[0096] SG_R = SG_A - LCH1_ASG, which means the resources allocated for LCH_1 are subtracted from the radio resources SG_A of the logical channels participating in the LCP;
[0097] LCH1_Bj2=LCH1_Bj2-LCH1_ASG, which means that after each allocation of wireless resources, the allocated resources are subtracted from the second token variable LCH1_Bj2 of LCH_1, and the second token variable of LCH_1 is updated;
[0098] LCH1_Buf=LCH1_Buf-LCH1_ASG, which means that after each allocation of wireless resources, the allocated resources are subtracted from the buffered data volume LCH1_Buf of LCH_1 to update the buffered data volume of LCH_1.
[0099] If the remaining radio resources SG_R are not zero, the radio resources for LCH_2 can be further allocated. First, the second token variable for LCH_2 is obtained based on the first token variable for SG_A and LCH_2. The minimum value among SG_A, the second token variable for LCH_2, and the buffered data volume of LCH_12 is then compared. The radio resources LCH2_ASG allocated to LCH_2 are equal to this minimum value. The remaining radio resources SG_R, the first token variable, and the buffered data volume are then updated using the following formula:
[0100] SG_R = SG_R – LCH2_ASG, which means the resources allocated to LCH_2 are subtracted from the remaining radio resources SG_B;
[0101] LCH1_Bj2=LCH2_Bj2–LCH2_ASG, indicating that after each allocation of wireless resources, the allocated resources are subtracted from the second token variable LCH1_Bj2 of LCH_2, and the second token variable of LCH_2 is updated;
[0102] LCH2_Buf=LCH2_Buf−LCH2_ASG, indicating that after each allocation of wireless resources, the allocated resources are subtracted from the buffered data volume LCH2_Buf of LCH_2 to update the buffered data volume of LCH_2.
[0103] The remaining radio resources SG_R-LCH2_ASG after being allocated to LCH_2 can continue to be allocated to LCH_3. The specific allocation method is similar to that for LCH_2 and will not be repeated here.
[0104] FIG4 is a schematic flow chart of a resource allocation method 400 according to another embodiment of the present application. The method may include one or more features of the resource allocation method 300 described above. In one embodiment, the resource allocation method 400 further includes:
[0105] S410. The terminal device receives information about radio resources of the logical channels participating in the LCP.
[0106] S420. The terminal device obtains the size of the wireless resources of the logical channel participating in the LCP based on the information of the wireless resources.
[0107] For example, the terminal device receives the SG of the radio resources of the logical channel of the parameter LCP from the network device. Based on the SG, the resource size of the radio resources of the logical channel participating in the LCP in the time domain, frequency domain, spatial domain, etc. can be calculated. In the above resource allocation method, at least one radio resource in the time domain, frequency domain, spatial domain, etc. can be allocated to the logical channel.
[0108] In an embodiment of the present application, when the wireless resources that can be allocated are less than the cache and the logical channels participating in the LCP, the cause of the starvation phenomenon is mainly that the first step of the LCP algorithm of the above-mentioned 4G / 5G system always strictly allocates wireless resources to the logical channels in the order of logical channel priority and the accumulated tokens Bj. When wireless resources are relatively sufficient, this LCP algorithm should enable logical channels with high priority to meet the QoS requirements specified by PBR first. However, when wireless resources are relatively scarce, if the same principle is continued, starvation problems will occur. In order to improve fairness, in this case all logical channels should tolerate a certain degree of starvation, but the degree of starvation of logical channels with high priority is allowed to be lower, while the degree of starvation of logical channels with low priority is relatively large.
[0109] The resource scheduling method of the embodiment of the present application can be understood as a method for scheduling logical channels, which may specifically include: when the allocatable wireless resource SG is less than the sum of Bj of the logical channels participating in the LCP, the difference between the sum of SG and Bj is distributed among the logical channels according to a certain rule. The differences allocated to the logical channels are distributed in descending order according to the order of the logical channel priorities, that is, the proportion of Bj reduced by the logical channel with the highest priority is the lowest, and then increases in sequence. It should be noted that when calculating the difference between the sum of SG and Bj, all logical channels participating in the LCP need to be taken into account. When specifically adjusting Bj, the participating logical channels can be a subset of the logical channels participating in the LCP. For example, the logical channel with the highest priority can be exempted.
[0110] Assume that a logical channel is arranged in order of priority among the logical channels participating in Bj adjustment, and the order is n, and the distribution function of adjusting Bj is F(n), then the value of Bj of this logical channel after adjustment is: LCH_n_Bj=LCH_n_Bj(1–F(n)), n>=0
[0111] After adjusting Bj according to the following method, perform the LCP process according to the LCP method.
[0112] The distribution function F(n) is an incremental function. For example, F(n) is a linear distribution function, such as F(n) = a + b × n, and b>0.
[0113] Assuming that there are N logical channels, the following conditions (i.e., normalization conditions) are satisfied between a, b, N, SG, and Bj: Delta = sum(LCH_n_Bj)-SG, n = 0 to N-1 (1) Sum((LCH_n_Bj / Delta)×F(n)) = 1, n = 0 to N-1 (2)
[0114] Where sum is the sum symbol, Delta represents the difference, and LCH_n_Bj represents the first token variable of the nth logical channel. The following are several allocation examples.
[0115] Example 1:
[0116] Assume that F(n)=a+b×n.
[0117] Assuming N=3, LCH_0_Bj=40, LCH_1_Bj=20, LCH_2_Bj=60, SG=100, a=0, then b needs to meet the following conditions: Delta=120-100=20; 40 / 20×0+20 / 20×b+60 / 20×2b=1.
[0118] So b=1 / 7.
[0119] Substituting the values of a, b, and n into the formula for F(n) yields: F(0) = 0, F(1) = 1 / 7, F(2) = 2 / 7
[0120] The formulas for adjusting Bj are: LCH_0_Bj=LCH_0_Bj=40 LCH_1_Bj=LCH_1_Bj×(1-1 / 7)=120 / 7 LCH_2_Bj=LCH_2_Bj×(1-2 / 7)=300 / 7
[0121] Example 2:
[0122] Assume that F(n)=a+b×n.
[0123] Assuming N=4, LCH_0_Bj=40, LCH_1_Bj=20, LCH_2_Bj=60, LCH_3_Bj=40, SG=130, a=2.5%, then b needs to satisfy the following formula: Delta=160-130=30; 40×2.5%+20×(2.5%+b)+60×(2.5%+2b)+40×(2.5%+3b)=30.
[0124] So b=10%.
[0125] Substituting the values of a, b, and n into the formula for F(n), we can obtain: F(0) = 2.5%; F(1) = 12.5%; F(2) = 22.5%; F(3) = 32.5%.
[0126] The formulas for adjusting Bj are: LCH_0_Bj=LCH_0_Bj×(1-F(0))=40×97.5%=39; LCH_1_Bj=LCH_1_Bj×(1-F(1))=20×87.5%=17.5; LCH_2_Bj=LCH_2_Bj×(1-F(2))=60×77.5%=46.5; LCH_3_Bj=LCH_3_Bj×(1-F(3))=40×67.5%=27.
[0127] Example 3:
[0128] Assume F(n) = a + b × n 2 .
[0129] Assume N=3, LCH_0_Bj=40, LCH_1_Bj=20, LCH_2_Bj=60, SG=91, a=2.5%
[0130] Then b needs to satisfy the following formula: Delta=120-91=29; 40×(2.5%)+20×(2.5%+b)+60×(2.5%+4b)=29.
[0131] So b=10%.
[0132] Substituting the values of a, b, and n into the formula for F(n) yields: F(0) = 2.5%; F(1) = 2.5% + 10% = 12.5%; F(2) = 2.5% + 10% × 4 = 42.5%;
[0133] The formulas for adjusting Bj are: LCH_0_Bj=LCH_0_Bj×(1-2.5%)=39; LCH_1_Bj=LCH_1_Bj×(1-12.5%)=17.5; LCH_2_Bj=LCH_2_Bj×(1-42.5%)=34.5.
[0134] After adjusting Bj using the above example, the token variable used in the process of allocating radio resources also changes to the adjusted Bj. Assuming that the adjusted Bj is marked as BJ_N, the order of logical channel priority is LCH_1 and LCH_2, and the sum of the token variables of LCH_1 and LCH_2 before adjustment is greater than the allocable radio resource SG, the adjusted process example is as follows:
[0135] Step 1: First, allocate radio resources to LCH_1, for example: LCH1_ASG = min(SG, LCH1_Bj_N, LCH1_Buf), where the radio resources allocated to LCH_1, LCH1_ASG, are the minimum of the SG to be allocated, the adjusted token variable LCH1_Bj_N for LCH1, and the buffer size LCH1_Buf for LCH1. After allocation, subtract the allocated resources from SG, and update the adjusted token variable and buffer size for LCH1. The formula example is as follows:
[0136] SG = SG - LCH1_ASG, which means subtracting the allocated resources from SG;
[0137] LCH1_Bj_N=LCH1_Bj_N-LCH1_ASG, which means that the allocated resources are subtracted from the token variable adjusted by LCH1, and the token variable adjusted by LCH1 is updated;
[0138] LCH1_Buf=LCH1_Buf-LCH1_ASG, indicating that the allocated resources are subtracted from the cache size of LCH_1, and the cache of LCH_1 is updated.
[0139] If there are still SGs remaining, wireless resources can continue to be allocated to LCH_2, for example: LCH2_ASG = min(SG, LCH2_Bj_N, LCH2_Buf), which means that the wireless resources allocated to LCH_2 are the minimum value of the remaining SG, the token variable LCH2_Bj_N adjusted by LCH_2, and the cache size LCH2_Buf of LCH_2.
[0140] After allocation, the allocated resources are subtracted from SG, and the token variable and cache size of LCH_2 are updated. The formula example is as follows:
[0141] SG = SG - LCH2_ASG, which means subtracting the allocated resources from SG;
[0142] LCH2_Bj_N=LCH2_Bj_N–LCH2_ASG, indicating that the allocated resources are subtracted from the token variable adjusted by LCH_2, and the token variable adjusted by LCH_2 is updated;
[0143] LCH2_Buf = LCH2_Buf – LCH2_ASG, which means subtracting the allocated resources from the LCH_2 cache;
[0144] Step 2: If SG is still greater than 0, allocation can continue in the order of priority of LCH_1 and LCH_2 in step 1 until the radio resource SG is exhausted. In this way, higher-priority logical channels, such as LCH_1, are allocated fewer resources, allowing lower-priority logical channels to also receive some resources.
[0145] In the embodiment of the present application, by adjusting the token variable of the LCH, all logical channels can be made to tolerate a certain degree of starvation, allowing logical channels with high priority to have a lower degree of starvation, while logical channels with low priority to have a relatively higher degree of starvation. In this way, wireless resources can be more fairly allocated among different logical channels.
[0146] FIG5 is a schematic block diagram of a terminal device 500 according to an embodiment of the present application. The terminal device 500 may include:
[0147] A first processing unit 501 is configured to obtain second token variables of the multiple logical channels based on the allocatable radio resources and the first token variables of the multiple logical channels;
[0148] The allocating unit 502 is configured to allocate the radio resource among the multiple logical channels based on the second token variables and the logical channel priorities of the multiple logical channels.
[0149] In one embodiment, the allocable radio resources include radio resources participating in logical channel prioritization (LCP), and the LCP includes a process in which the terminal device allocates the allocable radio resources among logical channels participating in the LCP according to the logical channel priority.
[0150] In one embodiment, the plurality of logical channels include logical channels participating in the LCP or a subset of logical channels participating in the LCP.
[0151] In one embodiment, the first token variable of the logical channel with the highest priority among the logical channels participating in the LCP remains unchanged.
[0152] In one embodiment, the first token variable of a logical channel is determined based on the previous token variable, priority bit rate PBR, and accumulated time of the logical channel, and the first token variable of the logical channel is less than or equal to the token bucket size of the logical channel, and the accumulated time includes the time interval between two consecutive first token variables starting to accumulate.
[0153] In one embodiment, the second token variable of a logical channel is less than or equal to the first token variable of the logical channel.
[0154] In one embodiment, the adjustment parameter of the first token variable includes at least one of the following: the first token variables of the multiple logical channels; the size of the wireless resource; and the first distribution function.
[0155] In one embodiment, the size of the radio resources of the logical channels participating in the LCP is smaller than the sum of the first token variables of the logical channels participating in the LCP.
[0156] In one embodiment, the first distribution function is an incremental function.
[0157] In one embodiment, the second token variable of a logical channel is the difference between the first token variable of the logical channel and a first product, where the first product is the product of the first token variable and the value of the first distribution function of the logical channel; the value of the first distribution function is the value obtained by using the serial number of a logical channel as the input parameter of the first distribution function.
[0158] In one embodiment, the first distribution function is used to adjust the first token variables of the multiple logical channels according to the priority order of the multiple logical channels from high to low.
[0159] In one embodiment, the first distribution function, the size of the wireless resource, and the first token satisfy a normalization condition.
[0160] In one embodiment, the normalization condition includes:
[0161] The first token variable of each logical channel in the multiple logical channels is divided by the first difference and multiplied by the value of the corresponding first distribution function to obtain a first value; and the first values of the multiple logical channels are accumulated to be equal to 1; the first difference is equal to the difference between the sum of the first token variables of the logical channels participating in the LCP and the size of the wireless resources of the logical channels participating in the LCP, and the value of the first distribution function is the value obtained by taking the serial number of a logical channel as the input parameter of the first distribution function.
[0162] In one embodiment, the terminal device performs LCP on the multiple logical channels based on the second token variables of the multiple logical channels, including:
[0163] Corresponding wireless resources are allocated to each of the multiple logical channels in order of priority from high to low, wherein the size of the wireless resources of each logical channel is the minimum value of the remaining wireless resources, the second token variable of the logical channel, and the cached data amount of the logical channel.
[0164] In one embodiment, when the logical channel is the first logical channel arranged, the remaining radio resources are radio resources of the logical channels participating in the LCP;
[0165] In a case where the logical channel is not the frontmost logical channel, the remaining wireless resources are the remaining wireless resources after the terminal device allocates wireless resources to the previous logical channel.
[0166] FIG6 is a schematic block diagram of a terminal device 600 according to another embodiment of the present application. The terminal device 600 may include:
[0167] A first processing unit 601 is configured to obtain second token variables of the multiple logical channels based on the allocatable radio resources and the first token variables of the multiple logical channels;
[0168] The allocating unit 602 is configured to allocate the radio resource among the multiple logical channels based on the second token variables and the logical channel priorities of the multiple logical channels.
[0169] The first processing unit 601 and the allocation unit 602 are similar to those of the terminal device 500 described above, and reference can be made to the relevant description.
[0170] In one embodiment, as shown in FIG6 , the terminal device 600 further includes:
[0171] The receiving unit 603 is configured to receive information about wireless resources participating in the LCP;
[0172] The second processing unit 604 is configured to obtain the size of the radio resources of the logical channel participating in the LCP based on the information of the radio resources.
[0173] The terminal devices 500 and 600 of the embodiments of the present application can implement the corresponding functions of the terminal devices in the aforementioned method embodiments. The processes, functions, implementation methods and beneficial effects corresponding to the various modules (sub-modules, units or components, etc.) in the terminal devices 500 and 600 can be found in the corresponding descriptions in the aforementioned method embodiments and will not be repeated here. It should be noted that the functions described in the various modules (sub-modules, units or components, etc.) in the terminal devices 500 and 600 of the embodiment of the application can be implemented by different modules (sub-modules, units or components, etc.) or by the same module (sub-module, unit or component, etc.).
[0174] Figure 7 is a schematic structural diagram of a communication device 700 according to an embodiment of the present application. The communication device 700 includes a processor 710, which can call and run a computer program from a memory to enable the communication device 700 to implement the method in the embodiment of the present application.
[0175] In one embodiment, the communication device 700 may further include a memory 720. The processor 710 may call and execute a computer program from the memory 720 to enable the communication device 700 to implement the method in the embodiment of the present application.
[0176] The memory 720 may be a separate device independent of the processor 710 , or may be integrated into the processor 710 .
[0177] In one embodiment, the communication device 700 may further include a transceiver 730 , and the processor 710 may control the transceiver 730 to communicate with other devices. Specifically, the transceiver 730 may send information or data to other devices, or receive information or data sent by other devices.
[0178] The transceiver 730 may include a transmitter and a receiver. The transceiver 730 may further include an antenna, and the number of antennas may be one or more.
[0179] In one embodiment, the communication device 700 may be a terminal device of an embodiment of the present application, and the communication device 700 may implement the corresponding processes implemented by the terminal device in each method of the embodiment of the present application. For the sake of brevity, they will not be repeated here.
[0180] 8 is a schematic structural diagram of a chip 800 according to an embodiment of the present application. The chip 800 includes a processor 810, which can call and execute a computer program from a memory to implement the method according to the embodiment of the present application.
[0181] In one embodiment, the chip 800 may further include a memory 820. The processor 810 may call and execute a computer program from the memory 820 to implement the method executed by the terminal device or the network device in the embodiment of the present application.
[0182] The memory 820 may be a separate device independent of the processor 810 , or may be integrated into the processor 810 .
[0183] In one embodiment, the chip 800 may further include an input interface 830. The processor 810 may control the input interface 830 to communicate with other devices or chips, and specifically, may obtain information or data sent by other devices or chips.
[0184] In one embodiment, the chip 800 may further include an output interface 840. The processor 810 may control the output interface 840 to communicate with other devices or chips, and specifically, may output information or data to other devices or chips.
[0185] In one embodiment, the chip can be applied to the network device in the embodiments of the present application, and the chip can implement the corresponding processes implemented by the network device in each method of the embodiments of the present application. For the sake of brevity, they will not be repeated here.
[0186] In one embodiment, the chip can be applied to the terminal device in the embodiments of the present application, and the chip can implement the corresponding processes implemented by the terminal device in each method of the embodiments of the present application. For the sake of brevity, they will not be repeated here.
[0187] The chips used in the network device and the terminal device may be the same chip or different chips.
[0188] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.
[0189] The processor mentioned above may be a general-purpose processor, a digital signal processor (DSP), a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or other programmable logic devices, transistor logic devices, discrete hardware components, etc. The general-purpose processor mentioned above may be a microprocessor or any conventional processor, etc.
[0190] The memory mentioned above may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. The non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM).
[0191] It should be understood that the above-mentioned memories are exemplary but not restrictive. For example, the memories in the embodiments of the present application may also be static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct RAM RAM (DR RAM), etc. In other words, the memories in the embodiments of the present application are intended to include, but are not limited to, these and any other suitable types of memories.
[0192] FIG9 is a schematic block diagram of a communication system 900 according to an embodiment of the present application. The communication system 900 includes a terminal device 910 and a network device 920 .
[0193] Terminal device 910 is used to obtain the second token variable of the multiple logical channels based on the allocatable wireless resources and the first token variable of the multiple logical channels; and allocate the wireless resources among the multiple logical channels based on the second token variable of the multiple logical channels and the logical channel priority.
[0194] The network device 920 is used to send information about wireless resources of the logical channels participating in the LCP to the terminal device.
[0195] The terminal device 910 can be used to implement the corresponding functions implemented by the terminal device in the above method, and the network device 920 can be used to implement the corresponding functions implemented by the network device in the above method. For the sake of brevity, they are not described here in detail.
[0196] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When software is used for implementation, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function in accordance with the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website, computer, server or data center by wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) mode to another website, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrations. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a DVD), or a semiconductor medium (eg, a solid state disk (SSD)).
[0197] It should be understood that in the various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0198] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0199] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any modifications or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present application should be included within the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.
Claims
1. A resource allocation method, comprising: The terminal device obtains second token variables of the multiple logical channels based on the allocatable wireless resources and the first token variables of the multiple logical channels; The terminal device allocates the wireless resources among the multiple logical channels based on the second token variables and logical channel priorities of the multiple logical channels.
2. The method according to claim 1, wherein: The allocatable wireless resources include wireless resources participating in logical channel prioritization LCP, and the LCP includes a process in which the terminal device allocates the allocatable wireless resources among logical channels participating in the LCP according to the logical channel priority.
3. The method according to claim 2, wherein: The plurality of logical channels include logical channels participating in the LCP or a subset of logical channels participating in the LCP.
4. The method according to claim 3, wherein: The first token variable of the logical channel with the highest priority among the logical channels participating in the LCP remains unchanged.
5. The method according to claim 1, wherein: The first token variable of a logical channel is determined based on the previous token variable of the logical channel, the priority bit rate PBR, and the accumulated time, and the first token variable of the logical channel is less than or equal to the token bucket size of the logical channel, and the accumulated time includes the time interval between two consecutive first token variables starting to accumulate.
6. The method according to claim 1, wherein: The second token variable of one logical channel is less than or equal to the first token variable of the one logical channel.
7. The method according to claim 1, wherein: The adjustment parameter of the first token variable includes at least one of the following: the first token variable of the multiple logical channels; the size of the wireless resource; and the first distribution function.
8. The method according to claim 7, wherein: The size of the radio resources of the logical channels participating in the LCP is smaller than the sum of the first token variables of the logical channels participating in the LCP.
9. The method according to claim 7, wherein: The first distribution function is an increment function.
10. The method according to claim 9, wherein: The second token variable of a logical channel is the difference between the first token variable of the logical channel and the first product, wherein the first product is the product of the first token variable and the value of the first distribution function of the logical channel; the value of the first distribution function is the value obtained by taking the sequence number of a logical channel as the input parameter of the first distribution function.
11. The method according to claim 7, wherein: The first distribution function is used to adjust the first token variables of the multiple logical channels according to the priority arrangement order of the multiple logical channels from high to low.
12. The method according to claim 11, wherein: The first distribution function, the size of the wireless resource and the first token satisfy a normalization condition.
13. The method according to claim 12, wherein: The normalization conditions include: The first token variable of each logical channel in the plurality of logical channels is divided by the first difference and multiplied by The first value is obtained after taking the value of the corresponding first distribution function; and the first values of the multiple logical channels are accumulated to be equal to 1; the first difference is equal to the difference between the sum of the first token variables of the logical channels participating in the LCP and the size of the wireless resources of the logical channels participating in the LCP, and the value of the first distribution function is the value obtained by taking the serial number of a logical channel as the input parameter of the first distribution function.
14. The method according to any one of claims 1 to 13, wherein: The terminal device performs LCP on the multiple logical channels based on the second token variables of the multiple logical channels, including: Corresponding wireless resources are allocated to each of the multiple logical channels in order of priority from high to low, wherein the size of the wireless resources of each logical channel is the minimum value of the remaining wireless resources, the second token variable of the logical channel, and the cached data amount of the logical channel.
15. The method according to claim 14, wherein: In the case where the logical channel is the first logical channel arranged, the remaining radio resources are radio resources of the logical channels participating in the LCP; In a case where the logical channel is not the frontmost logical channel, the remaining wireless resources are the remaining wireless resources after the terminal device allocates wireless resources to the previous logical channel.
16. The method according to any one of claims 1 to 15, wherein: Also includes: The terminal device receives information about wireless resources participating in the LCP; The terminal device obtains the size of the wireless resources of the logical channel participating in the LCP based on the information of the wireless resources.
17. A terminal device, comprising: A processing unit, configured to obtain second token variables of the plurality of logical channels based on the allocatable wireless resources and the first token variables of the plurality of logical channels; An allocating unit is used to allocate the wireless resources among the multiple logical channels based on the second token variables and the logical channel priorities of the multiple logical channels.
18. The apparatus according to claim 17, wherein: The allocatable wireless resources include wireless resources participating in logical channel prioritization LCP, and the LCP includes a process in which the terminal device allocates the allocatable wireless resources among logical channels participating in the LCP according to the logical channel priority.
19. The apparatus according to claim 18, wherein: The plurality of logical channels include logical channels participating in the LCP or a subset of logical channels participating in the LCP.
20. The apparatus of claim 19, wherein: The first token variable of the logical channel with the highest priority among the logical channels participating in the LCP remains unchanged.
21. The apparatus of claim 17, wherein: The first token variable of a logical channel is determined based on the previous token variable of the logical channel, the priority bit rate PBR, and the accumulated time, and the first token variable of the logical channel is less than or equal to the token bucket size of the logical channel, and the accumulated time includes the time interval between two consecutive first token variables starting to accumulate.
22. The apparatus of claim 17, wherein: The second token variable of one logical channel is less than or equal to the first token variable of the one logical channel.
23. The apparatus of claim 17, wherein: The adjustment parameter of the first token variable includes at least one of the following: the first token variable of the multiple logical channels; the size of the wireless resource; and the first distribution function.
24. The apparatus of claim 23, wherein: The size of the radio resources of the logical channels participating in the LCP is smaller than the sum of the first token variables of the logical channels participating in the LCP.
25. The apparatus of claim 23, wherein: The first distribution function is an increment function.
26. The apparatus of claim 25, wherein: The second token variable of a logical channel is the difference between the first token variable of the logical channel and the first product, wherein the first product is the product of the first token variable and the value of the first distribution function of the logical channel; the value of the first distribution function is the value obtained by taking the sequence number of a logical channel as the input parameter of the first distribution function.
27. The apparatus of claim 23, wherein: The first distribution function is used to adjust the first token variables of the multiple logical channels according to the priority arrangement order of the multiple logical channels from high to low.
28. The apparatus of claim 24, wherein: The first distribution function, the size of the wireless resource and the first token satisfy a normalization condition.
29. The apparatus of claim 28, wherein: The normalization conditions include: The first token variable of each logical channel in the multiple logical channels is divided by the first difference and multiplied by the value of the corresponding first distribution function to obtain a first value; and the sum of the first values of the multiple logical channels is equal to 1; the first difference is equal to the difference between the sum of the first token variables of the logical channels participating in the LCP and the size of the wireless resources of the logical channels participating in the LCP, and the value of the first distribution function is the value obtained by taking the serial number of a logical channel as the input parameter of the first distribution function.
30. Apparatus according to any one of claims 17 to 29, wherein: The terminal device performs LCP on the multiple logical channels based on the second token variables of the multiple logical channels, including: Corresponding wireless resources are allocated to each of the multiple logical channels in order of priority from high to low, wherein the size of the wireless resources of each logical channel is the minimum value of the remaining wireless resources, the second token variable of the logical channel, and the cached data amount of the logical channel.
31. The apparatus of claim 30, wherein: In the case where the logical channel is the first logical channel arranged, the remaining radio resources are radio resources of the logical channels participating in the LCP; In a case where the logical channel is not the frontmost logical channel, the remaining wireless resources are the remaining wireless resources after the terminal device allocates wireless resources to the previous logical channel.
32. Apparatus according to any one of claims 17 to 31, wherein: Also includes: A receiving unit, configured to receive information about wireless resources participating in the LCP; The processing unit is further configured to obtain the size of the radio resources of the logical channel participating in the LCP based on the information of the radio resources.
33. A terminal device, comprising: A transceiver, a processor and a memory, wherein the memory is used to store a computer program, the transceiver is used to communicate with other devices, and the processor is used to call and run the computer program stored in the memory so that the terminal device executes the method as described in any one of claims 1 to 16.
34. A chip, comprising: A processor, configured to call and run a computer program from a memory, so that a device equipped with the chip executes a method as claimed in any one of claims 1 to 16.
35. A computer-readable storage medium for storing a computer program, which, when executed by a device, causes the device to perform the method according to any one of claims 1 to 16.
36. A computer program product comprising computer program instructions for causing a computer to execute the method of any one of claims 1 to 16.
37. A computer program, the computer program causing a computer to execute the method according to any one of claims 1 to 16.