A scheduling method, a scheduling device, an electronic device, and a computer program product

By publishing configuration parameters from the AP to the STA and implementing phased scheduling, the channel contention and collision issues under the CSMA/CA mechanism are resolved, thereby improving the communication efficiency and channel capacity of the wireless network.

CN122269482APending Publication Date: 2026-06-23TP-LINK
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
TP-LINK
Filing Date
2026-03-26
Publication Date
2026-06-23

AI Technical Summary

Technical Problem

In large-scale wireless networks, the random channel contention mechanism based on Carrier Sense Multiple Access/Collision Avoidance (CSMA/CA) leads to frequent packet collisions, resulting in increased packet loss rate and reduced channel capacity, thus creating a vicious cycle.

Method used

The access point (AP) publishes configuration parameters to the associated station (STA) to prohibit it from actively competing for the channel within a preset time period. The time period is divided into multiple sub-time periods. First, the remaining load information of the STA is obtained, and then the target STA is selected for centralized scheduling based on the load conditions.

Benefits of technology

It effectively avoids channel contention and collisions, reduces packet loss rate, improves air interface utilization and effective channel capacity, and breaks the vicious cycle under the CSMA/CA mechanism.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122269482A_ABST
    Figure CN122269482A_ABST
Patent Text Reader

Abstract

This application discloses a scheduling method, scheduling device, electronic device, and computer program product. The method, applied to an access point (AP), includes: publishing preset configuration parameters to each associated station (STA), the preset configuration parameters being used to prohibit the STA from actively competing for the channel within a preset time period, the preset time period including multiple sub-time periods, each sub-time period including a first stage and a second stage; in the first stage, acquiring the remaining load information of each STA; determining a target STA based on the remaining load information of each STA, the target STA being: a STA whose remaining load, as indicated by the remaining load information, meets preset load conditions; and in the second stage, scheduling the target STA to send uplink packets. This application's solution can rationally schedule communication between the AP and STAs, reducing packet collisions between different devices.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of communication technology, and in particular relates to a scheduling method, scheduling device, electronic device and computer program product. Background Technology

[0002] In large-scale wireless networks, the disadvantages of random channel contention mechanisms based on Carrier Sense Multiple Access with Collision Avoidance (CSMA / CA) are becoming increasingly apparent. Under this mechanism, terminals rely on random backoff to access the channel, inevitably leading to packet collisions. This results in both an increased packet loss rate, wasting some air interface space, and a reduction in terminal speed, thus decreasing the effective channel capacity and communication efficiency. Furthermore, the reduced channel capacity further increases the probability of collisions between terminals, creating a vicious cycle. Summary of the Invention

[0003] This application provides a scheduling method, scheduling device, electronic device, and computer program product that can reasonably schedule the communication between access points (APs) and stations (STAs) to reduce message collisions between different devices.

[0004] Firstly, this application provides a scheduling method applied to an AP, including: Preset configuration parameters are published to each associated STA. The preset configuration parameters are used to prohibit STA from actively competing for the channel within a preset time period. The preset time period includes multiple sub-time periods, and each sub-time period includes a first phase and a second phase. In the first phase, obtain the remaining load information for each STA; The target STA is determined based on the remaining load information of each STA. The target STA is the STA whose remaining load, as indicated by the remaining load information, meets the preset load conditions. In the second phase, the target STA is scheduled to send uplink packets.

[0005] Secondly, this application provides a scheduling device for use in an AP, comprising: The publishing module is used to publish preset configuration parameters to each associated STA. The preset configuration parameters are used to prohibit STA from actively competing for the channel within a preset time period. The preset time period includes multiple sub-time periods, and each sub-time period includes a first phase and a second phase. The acquisition module is used to acquire the remaining load information of each STA during the first phase. The determination module is used to determine the target STA based on the remaining load information of each STA. The target STA is the STA whose remaining load, as indicated by the remaining load information, meets the preset load conditions. The scheduling module is used to schedule the target STA to send uplink packets during the second phase.

[0006] Thirdly, this application provides an electronic device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the steps of the method described in the first aspect.

[0007] Fourthly, this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the method described in the first aspect above.

[0008] Fifthly, this application provides a computer program product comprising a computer program that, when executed by one or more processors, implements the steps of the method described in the first aspect.

[0009] The advantages of this application compared to existing technologies are as follows: In this application, the AP effectively avoids channel contention and collision problems caused by random backoff in the CSMA / CA mechanism by publishing configuration parameters to each associated STA to prohibit them from actively competing for the channel within a preset time period. This preset time period is divided into multiple sub-time periods, each further subdivided into a first stage and a second stage. Specifically, in the first stage, the AP can obtain the remaining load information of each STA, enabling the scheduling mechanism to grasp the current uplink transmission needs of each STA. Subsequently, the AP can further filter target STAs that meet the load conditions according to preset load criteria, and centrally schedule these target STAs for uplink packet transmission in the second stage. This approach avoids collisions caused by multiple STAs competing for the channel at the same time, significantly reducing packet loss rate and improving air interface utilization. Simultaneously, since only STAs that meet the load conditions are scheduled to transmit packets, limited channel resources can be allocated more rationally, improving the effective capacity of the channel and overall communication efficiency. In summary, the proposed solution breaks the vicious cycle of collision-induced speed reduction under the CSMA / CA mechanism, which further exacerbates the collision problem. It rationally schedules the communication between the AP and STA, reducing message collisions between different devices.

[0010] It is understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here. Attached Figure Description

[0011] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0012] Figure 1 This is a schematic diagram illustrating the implementation process of the scheduling method provided in the embodiments of this application; Figure 2 This is a schematic diagram of a sub-time period provided in an embodiment of this application; Figure 3 This is a schematic diagram of a polling strategy provided in an embodiment of this application; Figure 4 This is a schematic diagram of another polling strategy provided in an embodiment of this application; Figure 5 This is a schematic diagram of yet another polling strategy provided in an embodiment of this application; Figure 6 This is an example diagram of the proprietary IE format provided in the embodiments of this application; Figure 7 This is a structural block diagram of the scheduling device provided in the embodiments of this application; Figure 8 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation

[0013] The embodiments of the technical solution of this application will now be described in detail with reference to the accompanying drawings. These embodiments are only used to more clearly illustrate the technical solution of this application and are therefore merely examples, and should not be used to limit the scope of protection of this application.

[0014] Unless otherwise defined, 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 application pertains; the terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the application; the terms “comprising” and “having”, and any variations thereof, in the specification, claims, and foregoing description of the drawings are intended to cover non-exclusive inclusion.

[0015] In the description of the embodiments of this application, technical terms such as "first" and "second" are used only to distinguish different objects and should not be construed as indicating or implying relative importance or implicitly indicating the number, specific order, or primary and secondary relationship of the indicated technical features.

[0016] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.

[0017] In the description of the embodiments in this application, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this document generally indicates that the preceding and following related objects have an "or" relationship.

[0018] In the description of the embodiments of this application, the term "multiple" refers to two or more (including two), unless otherwise expressly and specifically defined.

[0019] This application proposes a scheduling method. This scheduling method can be applied to an application processing unit (AP). Please refer to [link / reference]. Figure 1 , Figure 1 The implementation flow of the scheduling method applied to AP is given, and the details are as follows: Step 101: Publish the preset configuration parameters to each associated STA.

[0020] The access point pre-stores a set of configuration parameters. It's important to note that these parameters specifically apply to STAs that support Orthogonal Frequency Division Multiple Access (OFDMA). In some examples, this parameter refers to the MU EDCA parameter, which can have the following values: AIFS=0 and MU EDCA timer=255. Using these configuration parameters, the AP can adjust the channel contention strategy of STAs, prohibiting them from actively competing for the channel within a preset time period. This prevents collisions caused by STAs actively competing for the channel, laying the foundation for subsequent central scheduling by the AP.

[0021] In some embodiments, the AP can publish preset configuration parameters as follows: First, the AP generates a management frame of a specified type based on the configuration parameters. Then, the AP sends the management frame, allowing the STA to parse and obtain the configuration parameters. For example, for associated STAs, the management frame can be a Beacon management frame; the AP can update the configuration parameters in the corresponding fields of the Beacon management frame and then broadcast the configuration parameters to each associated STA. Alternatively, for unassociated STAs, the management frame can be a Probe Response management frame; the AP can update the configuration parameters in the corresponding fields of the Probe Response management frame and then unicast the configuration parameters to the unassociated STA.

[0022] It is understandable that for STAs that are associated with an AP and support OFDMA, they can update their MU EDCA parameters based on the relevant fields in the received management frame; for STAs that are not associated with an AP and support OFDMA, they can update their MU EDCA parameters during association negotiation. Furthermore, subsequently, after the AP sends an uplink OFDMA Basic Trigger frame and the scheduled STA successfully replies with a Quality of Service (QoS) Data frame, the STA's updated MU EDCA parameters will take effect, thus preventing it from actively competing for the channel within the preset time period indicated by the MU EDCA parameters.

[0023] To achieve more refined scheduling control and more efficient resource utilization, the preset time period can be divided into multiple sub-time periods. Each sub-time period can be further subdivided into two stages according to function: Stage 1 and Stage 2. The durations of Stage 1 and Stage 2 are dynamically changing, which in turn causes the duration of the sub-time periods to also be dynamically changing. It is important to note that within the same sub-time period, Stage 1 comes first, followed by Stage 2.

[0024] The first stage, also known as the polling stage, is mainly used to poll and schedule each STA in order to efficiently obtain the remaining load information of each STA. The second stage, also known as the dynamic stage, is mainly used to enable the STA to transmit uplink data, taking into account both wireless transmission latency and wireless transmission efficiency.

[0025] By structurally dividing preset time periods, the AP can distinguish between the different functions of resource awareness and resource scheduling during runtime, thereby achieving a well-defined and controllable scheduling process. Furthermore, the two-stage structure within each sub-time period helps avoid resource conflicts between STAs due to inconsistent timing, ensuring that the AP can collect all remaining load information from all STAs before making a unified decision on the scheduling strategy.

[0026] Step 102: In the first phase, obtain the remaining load information of each STA.

[0027] The first phase has been briefly described above; here, we will elaborate on the operations performed by the AP during this phase. The AP's primary task in this first phase is to obtain the current remaining load information for each STA. Specifically, the remaining load information refers to the amount of data that each STA has in its local buffer waiting to be sent but has not yet completed uplink transmission; this remaining load information reflects the current uplink communication demand of each STA.

[0028] The AP can perform ordered polling scheduling of each STA through trigger frames of a specified type, thereby triggering each STA to provide feedback on its remaining load information. In some embodiments, the AP supports two different polling strategies: a first polling strategy and a second polling strategy. The main difference between these two polling strategies lies in the type of trigger frame sent when scheduling the STA (i.e., the specified type is different). In some examples, the first polling strategy specifically uses BasicTrigger frames to schedule each STA to provide feedback, and the STA's feedback to the BasicTrigger frame can simultaneously send a small amount of uplink packets. That is, this first polling mechanism allows the STA to send a small amount of uplink data while simultaneously obtaining the STA's remaining load information. The second polling strategy specifically uses Buffer Status ReportTrigger (BSR Trigger) frames to schedule each STA to provide feedback.

[0029] Step 103: Determine the target STA based on the remaining load information of each STA.

[0030] After collecting the remaining load information for each STA, the AP can begin filtering target STAs. These target STAs are those that can subsequently send uplink packets in the second phase. During filtering, the AP can pre-set load conditions. In some examples, this load condition might be that the remaining load indicated by the remaining load information is greater than a preset load threshold. This load threshold could be the maximum amount of data an STA can send during the first phase of polling (e.g., 800 microseconds). Of course, this load threshold can be set to other values, or other load conditions can be set. The specific load conditions and the threshold parameters involved are not limited here.

[0031] Step 104: In the second phase, the target STA is scheduled to send uplink packets.

[0032] The second phase has been briefly described above; here we will explain in more detail the operations performed by the AP during this phase. The AP's main task in this second phase is to schedule STAs (i.e., target STAs) with packet transmission needs to send uplink packets.

[0033] The AP can schedule each target STA sequentially using a standard-defined trigger frame, such as a basic trigger frame. This basic trigger frame can include resource unit (RU) allocation information, time synchronization information, and packet transmission permission information, which will not be elaborated here. Upon receiving this instruction, the target STA can send uplink packets according to the allocated resources and time window, thus achieving a contention-free communication mode.

[0034] It's important to note that if the target STA identified in step 103 is empty, it means that none of the STAs currently have a packet transmission requirement, and the AP can skip the second stage directly; in other words, the duration of the second stage is 0. That is, in extreme cases, within a certain sub-time period, there might only be the first stage, with no second stage. When the target STA is not empty, the duration of the second stage dynamically varies based on the number of STAs currently associated with the AP and the transmission load of each STA. Specifically, the number of STAs currently associated with the AP determines the maximum duration of the second stage, while the transmission load of each STA dynamically determines the actual duration of the second stage, preventing the corresponding sub-time period from becoming too long and causing high latency. More specifically, in the second phase, the frame duration scheduled for each target STA can be obtained based on the first feedback obtained by the AP during the polling phase. For example, the remaining load information carried by the first feedback is first quantized according to the quantization method given by the protocol to obtain the corresponding load size. Then, it is corrected based on the traffic prediction function. Finally, it is ensured that the set frame duration can meet the preset minimum and maximum duration limits, thereby ensuring wireless transmission efficiency and reducing the fill ratio.

[0035] Considering that the STA may have load data with different AC priorities, the AP can propose the following two possible dynamic scheduling strategies in this embodiment: Dynamic scheduling strategy 1: For any target STA, the AP schedules data according to the AC priority order of VO, VI and BE, until the high-priority load data is scheduled or the total PPDU duration exceeds the preset window value, then the AP can switch to the next AC priority.

[0036] Dynamic scheduling strategy 2: For any target STA, the AP schedules data according to the AC priority order of BE and VI, meaning the scheduling method for these two AC priorities is the same as in dynamic scheduling strategy 1. The remaining VO load data, being high-priority data, can be directly transmitted uplink by the STA using a smaller contention window (EDCA). Furthermore, the AP allows each STA to configure corresponding air interface weights, using scheduling algorithms including but not limited to ATF / BWF / FIFO to ensure fairness in wireless transmission among STAs.

[0037] Please see Figure 2 , Figure 2 A diagram illustrating a sub-time period is provided. For example... Figure 2As shown, in the first phase of this sub-time period, the AP sequentially schedules STA1, STA2, and STA3 to report their respective remaining load information via trigger frames. After the last STA (i.e., STA3) finishes reporting, the first phase ends. The AP determines STA1 and STA3 as target STAs based on the remaining load information obtained in the first phase. Subsequently, in the second phase of this sub-time period, the AP again sequentially schedules STA1 and STA3 to send uplink packets via trigger frames until all target STAs have stopped sending any data or have reached the preset maximum duration, at which point the second phase ends.

[0038] In some embodiments, to improve the polling efficiency of the first phase, step 102 may include: A1 divides each associated STA into multiple STA groups.

[0039] An Access Point (AP) can manage multiple associated STAs by grouping them according to a preset grouping strategy, resulting in multiple STA groups. This grouping approach can improve polling efficiency in subsequent polling operations. It's important to note that each STA group can contain more than one STA, and different STA groups can contain the same or different numbers of STAs. Of course, the AP can also set an upper limit on the number of STAs in a STA group to prevent an excessive number of STAs in a single group.

[0040] A2, each STA group is identified as the STA group to be polled.

[0041] The AP can determine each STA group as the polled STA group according to a preset polling order; of course, the AP can also determine the polled STA group in other ways, which is not limited in this embodiment. It can be understood that each STA group will eventually be determined as the polled STA group in the first stage.

[0042] A3 sends the specified trigger frame to the polled STA group.

[0043] For the currently polled STA group, the AP can send a specified trigger frame to that polling STA group. As described earlier regarding polling strategies, if the target polling strategy is the preset first polling strategy, the AP can send a Basic Trigger frame to the polled STA group; if the target polling strategy is the preset second polling strategy, it can send a BSR Trigger frame to the polled STA group.

[0044] In some examples, when using the first polling strategy, the uplink length (UL length) field of the Basic Trigger frame sent by the AP can be set to a smaller value. It's important to note that this field is not set to a fixed value, but rather its specific value is determined by the current remaining load of the polled STA group, and this specific value can fall within a preset length range. In some examples, this preset length range can be [300, 800]. If the remaining load is low, resulting in a calculated duration less than 300µs, then it can be set to the lower limit of this length range, i.e., 300µs; conversely, if the remaining load is high, resulting in a calculated duration much greater than 800µs, then it can be set to the upper limit of this length range, i.e., 800µs; for cases where the calculated duration is within this length range, the value can be set according to the calculated duration. It is understandable that the main purpose of the first phase is not to transmit the load, but to update the remaining load information. Therefore, by setting the preset length range, the STA with load can both provide feedback on the remaining load information and send a small number of QoS Data frames when responding to the Basic Trigger frame, which helps to improve the efficiency of the polling wireless MAC layer.

[0045] A4 receives the first feedback sent by each STA in the polled STA group based on the trigger frame. The first feedback carries the remaining load information of the corresponding STA.

[0046] Each STA in the polled STA group can respond based on the trigger frame sent by the AP, thereby sending corresponding feedback to the AP. For ease of distinction, this feedback is referred to as the first feedback, which carries the remaining load information of the corresponding STA.

[0047] Specifically, under different polling strategies, the type of the first feedback sent by the STA also differs due to the different types of trigger frames sent by the AP, as detailed below: Under the first polling strategy, the AP sends a Basic Trigger frame to the polled STA group; correspondingly, all STAs in the polled STA group can simultaneously provide feedback, specifically by sending a QoS Data frame or a QoS Null frame based on the Basic Trigger frame and their own load status: if the STA has load data, the STA sends a QoS Data frame as the first feedback to the Basic Trigger frame; if the STA does not have load data, the STA sends a QoS Null frame as the first feedback to the Basic Trigger frame.

[0048] In practical applications, when the AP adopts the first round-robin strategy, the minimum number of STAs in each STA group can be 1. When the number of STAs in a STA group is 1, meaning a single STA forms its own group, and this STA group is designated as the group to be round-robin, the AP implements scheduling based on Basic Trigger frames for a single user. For example... Figure 3 As shown, Figure 3 The first round-robin scheduling strategy, based on Basic Trigger frames, is illustrated. When the number of STAs in a group is two or more, the AP implements multi-user scheduling based on Basic Trigger frames, which is often used in high-density, low-load scenarios. Figure 4 As shown, Figure 4 A schematic diagram of scheduling based on Basic Trigger frames for multiple users under the first round-robin strategy is given.

[0049] Under the second polling strategy, the AP sends a BSR Trigger frame to the polled STA group; correspondingly, each STA in the polled STA group can send a QoS Null frame as the first feedback to the Basic Trigger frame based on the BSR Trigger frame. As described above, there may be different situations when STAs are grouped, thus there may be scheduling based on BSR Trigger frames for single users and for multiple users, which will not be elaborated here. Figure 5 As shown, Figure 5 A scheduling diagram based on BSR Trigger frames for multiple users under the second round of polling strategy is given.

[0050] It is important to note that regardless of whether the first feedback frame is a QoS Null frame or a QoS Data frame, the remaining load information can be carried through the QoS control and HT control fields in the first feedback frame. Specifically, the queue size in the QoS control field can be used to declare the current TID (Traffic Identifier), i.e., the remaining load size for the current AC priority, while the BSR control field in the HT control field can be used to declare the load size information for other AC priorities.

[0051] In some examples, the AP can use a grouping strategy based on load duration, and the AP can divide STA groups as follows: B1 calculates the estimated transmission time for each STA based on the preset negotiation rate and the current remaining load information of each STA.

[0052] Specifically, based on the position of the current sub-time period within the preset time period, the AP can obtain the current remaining load information of the STA in different ways, as follows: If the current sub-time period is the first sub-time period of the time period, since there is no previous sub-time period, the current remaining load information of each STA is the preset default value.

[0053] If the current sub-time period is not the first sub-time period, since there is a previous sub-time period, the current remaining load information of each STA can be obtained through the uplink packets sent by each STA in the previous sub-time period. It can be understood that whether the STA sends uplink packets in the first stage of the previous sub-time period due to polling scheduling or in the second stage of the previous sub-time period due to dynamic scheduling, it will carry the remaining load information in its corresponding feedback. Specifically, if an STA was only polled and scheduled to send uplink packets in the first phase of the previous sub-time period (i.e., the STA was not identified as a target STA in the previous sub-time period), the AP can determine the remaining load information fed back by the STA in the first phase of the previous sub-time period as the current remaining load information of the STA. If an STA was not only polled and scheduled to send uplink packets in the first phase of the previous sub-time period, but also dynamically scheduled to send uplink packets in the second phase of the previous sub-time period (i.e., the STA was identified as a target STA in the previous sub-time period), the AP can determine the remaining load information fed back by the STA in the second phase of the previous sub-time period as the current remaining load information of the STA. In other words, if the current sub-time period is not the first sub-time period of a time period, for each STA, the AP can determine the remaining load information fed back by the STA last time as the current remaining load information.

[0054] After obtaining the current remaining load information of each STA, the AP can use the formula "Message transmission duration = Remaining load / Negotiation rate" to calculate the result for each STA by substituting the current remaining load information and the preset negotiation rate into the formula. For ease of distinction, this calculation result is recorded as the estimated transmission duration.

[0055] B2 divides each STA into multiple STA groups based on the expected transmission duration of each STA, the preset transmission duration threshold, and the preset STA number threshold.

[0056] The AP can be pre-set with a transmission duration threshold. After obtaining the estimated transmission duration of each STA, the AP can compare the estimated transmission duration of each STA with the transmission duration threshold. For any STA: if the comparison result indicates that the estimated transmission duration of the STA reaches (i.e., is greater than or equal to) the transmission duration threshold, a new STA group can be created, and the STA can be assigned to this STA group. This STA group contains only this STA, and no other STAs will be added to this STA group during the current sub-time period. That is, this STA can independently constitute an STA group. Conversely, if the comparison result indicates that the estimated transmission duration of the STA does not reach (i.e., is less than) the transmission duration threshold, the STA can be added to a candidate STA group. This continues until the number of STAs in the candidate STA group reaches a preset threshold. At this point, no new STAs will be added to the candidate STA group, and the candidate STA group is considered a completed STA group.

[0057] In other words, any STA group obtained through the above division may specifically present the following situations: there is one and only one STA whose expected transmission duration reaches the transmission duration threshold; or, there are N STAs whose expected transmission duration does not reach the transmission duration threshold, and N is less than or equal to a preset number threshold. After grouping STAs in this way, applying the scheduling method proposed in this application can help improve the packet transmission efficiency of the wireless MAC layer.

[0058] In other examples, the AP can also employ a grouping strategy based on Received Signal Strength Indication (RSSI), in which case the AP can divide STA groups as follows: C1, obtain the RSSI of each STA.

[0059] C2, based on the RSSI of each STA and the preset RSSI tolerance value, determines the RSSI tolerance range of each STA.

[0060] The AP can obtain the RSSI of each STA by using the latest data frame reported by each STA. Using the RSSI of each STA as the center value, and adjusting it upwards and downwards based on a preset RSSI tolerance value, the RSSI tolerance range of each STA can be obtained. This RSSI tolerance value is a pre-set threshold, and this embodiment does not limit the specific value of the RSSI tolerance value. Taking the RSSI of any STA as an example, the RSSI tolerance range of that STA is specifically: [RSSI of the STA - RSSI tolerance value, RSSI of the STA + RSSI tolerance value].

[0061] It can be understood that the tolerance range of this RSSI represents an approximate RSSI; for example, if the RSSI of STA1 is within the RSSI tolerance range of STA2 (generally, the RSSI of STA2 will also be within the RSSI tolerance range of STA1), then the RSSI of STA1 and STA2 are considered to be similar.

[0062] C3. Based on the RSSI and RSSI tolerance range of each STA, each STA is divided into multiple STA groups.

[0063] To reduce the impact of power unevenness on uplink message reception performance and ensure data transmission success rate, the AP can restrict grouping to only stations with similar RSSIs, thereby avoiding severe inter-RU interference caused by excessive RSSI differences. It should be noted that in extreme cases, there may be STAs that cannot group with any other STAs (i.e., there may be STAs with RSSIs that are not similar to any other STAs). In such cases, these STAs can be grouped independently.

[0064] It is important to note that after two or more STAs are grouped together, the RSSI tolerance range of the STA group can be updated to the intersection of the RSSI tolerance ranges of all STAs in the STA group. Only STAs whose RSSI falls within this intersection can join the STA group.

[0065] It is understandable that the AP can choose one of the two grouping strategies proposed above as its target grouping strategy based on actual needs; or, the AP can combine the two grouping strategies. For example, the AP can first perform preliminary grouping using a grouping strategy based on load duration. The resulting STA group may have a single STA or multiple STAs. For each STA group with multiple STAs, the AP can further group them using a grouping strategy based on RSSI, which will not be elaborated here.

[0066] In some embodiments, as described above, STAs may have load data with different AC priorities. In practical applications, the AP can group STAs separately according to each AC priority dimension. That is, the electronic device can group VO load data based on the grouping strategy proposed above, resulting in multiple different STA groups; VI load data can also be grouped based on the grouping strategy proposed above, resulting in multiple different STA groups; and BE load data can also be grouped based on the grouping strategy proposed above, resulting in multiple different STA groups. In this way, different STA grouping results can be obtained for each of the three priority categories of load data: BE, VI, and VO, thereby further improving polling efficiency.

[0067] In some embodiments, when there are two or more target STAs, in order to ensure the orderliness of scheduling, step 104 can specifically be manifested as follows: in the second stage, Basic Trigger frames are sent to each target STA in descending order of scheduling priority to schedule the corresponding target STA to send uplink packets.

[0068] The scheduling priority can be set according to the communication performance of the STA. For example, the scheduling priority can be set according to the RSSI of the STA, or according to the association time between the STA and the AP. This application embodiment does not limit the setting method of the scheduling priority. Then, based on the order of scheduling priority from high to low, the AP can send Basic Trigger frames to each target STA in sequence, thereby realizing the orderly scheduling of each target STA, triggering each target STA to send a second feedback to the corresponding Basic Trigger frame, thereby realizing the orderly uplink packet transmission of each target STA in the second stage.

[0069] The frame interval of the Basic Trigger frame is determined based on the air interface utilization. Specifically, the AP can calculate the padding ratio of all scheduling load data in the previous sub-period, that is, the proportion of padding bytes in the total number of bytes, and thus obtain the air interface utilization. It can be understood that when the padding ratio is high, the air interface utilization is low, so the frame interval of the Basic Trigger frame can be increased accordingly, thereby releasing the air interface for other BSSs or STAs to send uplink EDCA packets; conversely, when the padding ratio is low, the air interface utilization is high, so the frame interval of the Basic Trigger frame can be decreased accordingly, thereby increasing the scheduling frequency of STAs based on the Basic Trigger frame. Based on this, within each sub-period, if the time since the last sent trigger frame has reached the frame interval, the AP can immediately send a trigger frame to schedule the corresponding STA to send uplink packets; otherwise, the AP is only allowed to send downlink frames or remain silent.

[0070] In some embodiments, within each stage of a sub-time period (i.e., whether it is the first stage or the second stage), the AP also supports corresponding exception handling operations, specifically manifested in the following three cases: When an AP fails to send a trigger frame, it can immediately increase the scheduling priority of the STA corresponding to the trigger frame, thereby enabling fast retransmission scheduling for that STA. When an AP successfully sends a trigger frame but fails to receive the uplink message from the corresponding STA, it can immediately increase the scheduling priority of the STA corresponding to the trigger frame, thereby enabling fast retransmission scheduling for that STA. When an AP sends a trigger frame, but receives a heavy load of uplink packets from the corresponding STA and has lost packets at the tail MPDU, it can immediately increase the scheduling priority of the STA corresponding to the trigger frame, thereby performing fast retransmission scheduling for that STA and improving transmission latency.

[0071] That is, in the embodiments of this application, for the three situations of trigger frame transmission failure, STA transmission failure, and abnormal uplink message transmission by STA, the scheduling priority of the corresponding STA will be increased to perform fast retransmission scheduling for the STA.

[0072] In some embodiments, AP's trigger scheduling for certain STAs may frequently fail. Corresponding remedial measures are needed to prevent communication interruptions caused by the STA's inability to report data correctly. The specific procedure for these remedial measures is as follows: D1, determine if there is an abnormal STA.

[0073] If an STA fails to be scheduled by the AP multiple times consecutively, there may be strong interference on the STA side, forming a hidden terminal with the AP. In this case, the AP can determine that the STA has entered an abnormal state, that is, the STA is an abnormal STA. In other words, an abnormal STA refers to an STA whose scheduling is abnormal and whose abnormal parameters meet preset abnormal conditions. In some examples, these abnormal conditions may specifically be: the AP fails to successfully receive the PPDU reported by the STA multiple times consecutively (e.g., 20 times); or, the AP's scheduling success rate for the STA within a preset time window is lower than a certain success rate threshold (e.g., 90%). These abnormal conditions are not specifically limited here.

[0074] D2, in the presence of the abnormal STA, sends a target beacon frame to the abnormal STA.

[0075] In the event of an abnormal STA, the AP can send a beacon frame with a preset Information Element (IE) format within the network, denoted as the target beacon frame. The key difference between a beacon frame with the preset IE format and a regular beacon frame is the addition of a IE field. This IE field controls the abnormal STA to initiate an active uplink channel reservation mode. In this mode, the abnormal STA reserves channel resources from the AP for a specified duration and then transmits uplink packets to the AP through those channel resources within that specified duration.

[0076] It is understandable that the AP does not simply send the target beacon frame to the abnormal STA, but rather broadcasts the target beacon frame, using its newly added private information element field to identify the corresponding abnormal STA. This allows the abnormal STA to take appropriate action and provide feedback regarding the target beacon frame. Of course, the AP can also send the target beacon frame in other possible ways, as long as the target beacon frame can be received by the abnormal STA; this is not limited here.

[0077] In some examples, the proprietary IE format uses a bitmap similar to a TIM (Traffic Indication Map) to indicate that the STA corresponding to the AID should enter the active uplink channel reservation mode. See also... Figure 6 , Figure 6 An example of a proprietary IE format is provided. The following explains and describes each field in this proprietary IE format: Element ID, occupying 1 byte, has a fixed value of 221 and is used to indicate Vendor Specific IE; Length, occupying 1 byte, is used to indicate the total length of the current private IE field; Both Organization Identifier and Vendor Type occupy 1 byte and are vendor-customized fields, which are not limited in this embodiment of the application. Backoff NAV, which occupies 8 bytes, is used for an additional random backoff mechanism after the STA uplink reservation fails. The first 4 bytes represent Min NAV and the last 4 bytes represent Max NAV. The bitmap offset occupies 1 byte. Bit 0 indicates whether any STA has entered the active uplink channel reservation mode. Specifically, when bit 0 is 1, it means that an STA needs to enter the active uplink channel reservation mode. Each STA, upon receiving a beacon frame carrying a private IE format, needs to parse the subsequent Bitmap offset and Partial virtual bitmap to determine whether it has entered the active uplink channel reservation mode. When bit 0 is 0, all STAs require central scheduling. After receiving a beacon frame carrying a private IE format, STAs do not need to further parse the subsequent content of the IE and should be prohibited from competing for the uplink channel themselves via EDCA. The remaining bits 1 to 7 indicate which AID the subsequent bitmap starts from. That is, when Bitmapoffset = N, the first bit of the Partial virtual bitmap corresponds to AID = N×2×8. For example, if Bitmap offset = 2, the first bit of the Partial virtual bitmap corresponds to AID = 2 × 2 × 8 = 32. That is, setting bit0 to 1 means that the device with AID = 32 has entered the active reservation uplink channel mode, and setting bit1 to 1 means that the device with AID = 32 + 1 = 33 has entered the active reservation uplink channel mode, and so on. This will not be elaborated here.

[0078] The length of the Partial Virtual Bitmap is determined by the range of AIDs of the STA that enters a special mode (i.e., the active reservation uplink channel mode), and ultimately determines the Length field mentioned above. When filling in the bitmap, the corresponding AID is set to 1 according to the Bitmap offset. When reading the bitmap, the AID set to 1 is determined by parsing the Bitmap offset.

[0079] Therefore, for any STA, upon receiving a beacon frame from the AP, it is necessary to determine whether the beacon frame is for normal communication or indicates that a STA has entered an abnormal state and requires corresponding remedial measures. Specifically, the STA can determine the beacon frame by parsing it to check if it has a preset private IE format. If the beacon frame has a private information element format, it can determine whether the STA has been controlled by the AP to activate the active uplink channel reservation mode based on the private information element fields of the beacon frame. Specifically, based on the previous explanation of the private IE format, each STA can determine whether it has entered the active uplink channel reservation mode, i.e., whether it has been controlled by the AP to activate the active uplink channel reservation mode, through the private IE fields carried in the beacon frame (specifically, the Bitmap offset and Partial virtual bitmap).

[0080] After an abnormal STA successfully reserves an uplink channel, the AP can update and maintain the remaining load size of each service priority of the abnormal STA. Then, it will prioritize scheduling decisions for STAs that have actively reserved uplink channels (i.e., abnormal STAs) and send BasicTrigger frames to schedule the corresponding abnormal STAs to send uplink load. At this time, the STA side can reduce the collision probability between the AP's Basic Trigger and OBSS (Overlapping Basic Service Set) due to the NAV channel reservation.

[0081] In some embodiments, the AP can also activate traffic prediction after a period of time, and then perform corresponding processing based on the prediction results. Specifically, the AP can collect historical data for traffic statistics within a set window duration using a sliding window, calculating the average throughput and load size. The collected information includes the number of bytes of remaining load buffer for the terminal's uplink PPDU, the number of bytes successfully transmitted, and the PPDU reception timestamp. This information is subsequently updated using a sliding window of a specified size. The specified time period after the sliding window is the prediction phase. The AP can filter out outliers from the specified number of PPDU data collected in the latest sliding window, and then use a Holt-Winters-based time series data processing algorithm for traffic prediction. The resulting prediction includes the average load size and load arrival time of the data traffic. Finally, the AP applies the load size information to calculate the PPDU duration for scheduling at the predicted load arrival time, reducing padding overhead and improving wireless transmission efficiency.

[0082] As can be seen from the above, in this embodiment, the AP effectively avoids channel contention and collision problems caused by random backoff in the CSMA / CA mechanism by publishing configuration parameters to each associated STA to prohibit them from actively competing for the channel within a preset time period. This preset time period is divided into multiple sub-time periods, each further subdivided into a first stage and a second stage. Specifically, in the first stage, the AP can obtain the remaining load information of each STA, enabling the scheduling mechanism to grasp the current uplink transmission needs of each STA. Subsequently, the AP can further filter out target STAs whose load meets the preset load conditions and centrally schedule these target STAs for uplink packet transmission in the second stage. This method avoids collisions caused by multiple STAs competing for the channel at the same time, significantly reducing packet loss and improving air interface utilization. Simultaneously, since only STAs whose load meets the conditions are scheduled to transmit packets, limited channel resources can be allocated more rationally, improving the effective capacity of the channel and overall communication efficiency. Furthermore, in traditional modes, there may be hidden node problems, where two STAs that cannot hear each other may simultaneously send data to the AP, leading to collisions. After adopting the method proposed in the embodiments of this application, the active channel contention behavior of each STA is prohibited, and data transmission only occurs when scheduled, remaining silent at other times, thereby avoiding the problem of hidden nodes. In summary, the solution of this application breaks the vicious cycle of collision-induced speed reduction under the CSMA / CA mechanism, which further exacerbates the collision, and rationally schedules the communication between AP and STA, reducing message collisions between different devices.

[0083] It should be understood that the sequence number of each step in the above embodiments does not imply 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 this application.

[0084] Corresponding to the scheduling method provided above, this application also provides a scheduling device. This scheduling device can be applied to an application processor (AP). Please refer to... Figure 7 The scheduling device 7 in this embodiment includes: The publishing module 701 is used to publish preset configuration parameters to each associated STA. The preset configuration parameters are used to prohibit STA from actively competing for the channel within a preset time period. The preset time period includes multiple sub-time periods, and each sub-time period includes a first stage and a second stage. The acquisition module 702 is used to acquire the remaining load information of each STA during the first stage; The determination module 703 is used to determine the target STA based on the remaining load information of each STA. The target STA is the STA whose remaining load, as indicated by the remaining load information, meets the preset load conditions. The scheduling module 704 is used to schedule the target STA to send uplink packets during the second phase.

[0085] In some embodiments, the scheduling device 7 further includes: The judgment module is used to determine whether there is an abnormal STA. The abnormal STA refers to an STA where the scheduling is abnormal and the abnormal parameters meet the preset abnormal conditions. The control module is used to send a target beacon frame to the abnormal STA when the abnormal STA exists. The target beacon frame carries a private information element field, which is used to control the abnormal STA to enable the active uplink channel reservation mode. In the active uplink channel reservation mode, the abnormal STA reserves channel resources from the AP for a specified duration and sends uplink packets to the AP through the channel resources within the specified duration.

[0086] In some embodiments, the publishing module 701 includes: The generation unit is used to generate management frames of a specified type based on preset configuration parameters; The first transmitting unit is used to transmit management frames.

[0087] In some embodiments, the acquisition module 702 includes: A partitioning unit is used to divide each associated STA into multiple STA groups, and each STA group includes one or more STAs; The determination unit is used to determine each STA group as the polled STA group; The second sending unit is used to send a specified trigger frame to the polled STA group. The type of the trigger frame is determined by the configured target polling strategy. The receiving unit is used to receive the first feedback sent by each STA in the polled STA group based on the trigger frame. The first feedback carries the remaining load information of the corresponding STA.

[0088] In some embodiments, the partitioning unit includes: The calculation subunit is used to calculate the estimated transmission duration of each STA based on the preset negotiation rate and the current remaining load information of each STA. When the current sub-time period is the first sub-time period of the time period, the current remaining load information of each STA is the preset default value. When the current sub-time period is not the first sub-time period of the time period, the current remaining load information of each STA is obtained by the uplink packets sent by each STA in the previous sub-time period. The first division subunit is used to divide each STA into multiple STA groups based on the expected transmission duration of each STA, the preset transmission duration threshold, and the preset STA number threshold.

[0089] In some embodiments, the partitioning unit includes: Acquisition subunit, used to acquire the Received Signal Strength Indicator (RSSI) of each STA; The sub-unit is determined to determine the RSSI tolerance range of each STA based on the RSSI of each STA and the preset RSSI tolerance value. The second partitioning subunit is used to divide each STA into multiple STA groups based on the RSSI and RSSI tolerance range of each STA.

[0090] In some embodiments, the second sending unit is specifically configured to send a Basic Trigger frame to the polled STA group when the target polling strategy is a preset first polling strategy, and the uplink length field of the Basic Trigger frame is a preset default value; and to send a buffer status polling trigger frame to the polled STA group when the target polling strategy is a preset second polling strategy.

[0091] In some embodiments, the scheduling module 704 is specifically used to send Basic Trigger frames to each target STA in descending order of scheduling priority during the second phase, so as to schedule the corresponding target STA to perform uplink packet transmission. The frame interval of the Basic Trigger frame is determined according to the radio interface utilization rate.

[0092] As can be seen from the above, in this embodiment, the AP effectively avoids channel contention and collision problems caused by random backoff in the CSMA / CA mechanism by publishing configuration parameters to each associated STA to prohibit them from actively competing for the channel within a preset time period. This preset time period is divided into multiple sub-time periods, each further subdivided into a first stage and a second stage. Specifically, in the first stage, the AP can obtain the remaining load information of each STA, enabling the scheduling mechanism to grasp the current uplink transmission needs of each STA. Subsequently, the AP can further filter out target STAs whose load meets the preset load conditions and centrally schedule these target STAs for uplink packet transmission in the second stage. This method avoids collisions caused by multiple STAs competing for the channel at the same time, significantly reducing packet loss and improving air interface utilization. Simultaneously, since only STAs whose load meets the conditions are scheduled to transmit packets, limited channel resources can be allocated more rationally, improving the effective capacity of the channel and overall communication efficiency. Furthermore, in traditional modes, there may be hidden node problems, where two STAs that cannot hear each other may simultaneously send data to the AP, leading to collisions. After adopting the method proposed in the embodiments of this application, the active channel contention behavior of each STA is prohibited, and data transmission only occurs when scheduled, remaining silent at other times, thereby avoiding the problem of hidden nodes. In summary, the solution of this application breaks the vicious cycle of collision-induced speed reduction under the CSMA / CA mechanism, which further exacerbates the collision, and rationally schedules the communication between AP and STA, reducing message collisions between different devices.

[0093] Corresponding to the scheduling method provided above, this application also provides an electronic device. Please refer to... Figure 8 The electronic device 8 in this embodiment includes: a memory 801, and one or more processors 802. Figure 8 (Only one is shown in the image) and a computer program stored in memory 801 and executable on the processor. Specifically, the processor 802 performs the following steps by running the aforementioned computer program stored in memory 801: Preset configuration parameters are published to each associated STA. The preset configuration parameters are used to prohibit STA from actively competing for the channel within a preset time period. The preset time period includes multiple sub-time periods, and each sub-time period includes a first phase and a second phase. In the first phase, obtain the remaining load information for each STA; The target STA is determined based on the remaining load information of each STA. The target STA is the STA whose remaining load, as indicated by the remaining load information, meets the preset load conditions. In the second phase, the target STA is scheduled to send uplink packets.

[0094] Assuming the above is the first possible implementation, in the second possible implementation based on the first possible implementation, the processor 802 further performs the following steps when running the computer program stored in the memory 801: Determine whether there is an abnormal STA, wherein the abnormal STA refers to an STA whose scheduling is abnormal and whose abnormal parameters meet the preset abnormal conditions; In the presence of the abnormal STA, a target beacon frame is sent to the abnormal STA. The target beacon frame carries a private information element field, which is used to control the abnormal STA to enable the active uplink channel reservation mode. In the active uplink channel reservation mode, the abnormal STA reserves channel resources from the AP for a specified duration and sends uplink packets to the AP through the channel resources within the specified duration.

[0095] In a third possible implementation based on the first possible implementation described above, or based on the second possible implementation described above, obtaining the remaining load information of each STA includes: Each associated STA is divided into multiple STA groups, and each STA group includes more than one STA; Each STA group is identified as the STA group to be polled. Send a specified trigger frame to the polled STA group. The type of the trigger frame is determined by the configured target polling policy. Receive the first feedback sent by each STA in the polled STA group based on the trigger frame. The first feedback carries the remaining load information of the corresponding STA.

[0096] In the fourth possible implementation provided based on the third possible implementation described above, each associated STA is divided into multiple STA groups, including: Based on the preset negotiation rate and the current remaining load information of each STA, the estimated transmission duration of each STA is calculated. When the current sub-time period is the first sub-time period of the time period, the current remaining load information of each STA is the preset default value. When the current sub-time period is not the first sub-time period of the time period, the current remaining load information of each STA is obtained by the uplink packets sent by each STA in the previous sub-time period. Based on the expected transmission duration of each STA, the preset transmission duration threshold, and the preset STA number threshold, each STA is divided into multiple STA groups.

[0097] In a fifth possible implementation based on the third possible implementation described above, each associated STA is divided into multiple STA groups, including: Obtain the Received Signal Strength Indicator (RSSI) for each STA; Based on the RSSI of each STA and the preset RSSI tolerance value, determine the RSSI tolerance range of each STA; Based on the RSSI and RSSI tolerance range of each STA, each STA is divided into multiple STA groups.

[0098] In a sixth possible implementation provided based on the third possible implementation described above, a specified trigger frame is sent to the polled STA group, including: When the target polling strategy is the preset first polling strategy, a basic trigger frame is sent to the polled STA group, and the uplink length field of the basic trigger frame is the preset default value; When the target polling strategy is the preset second polling strategy, a cache status polling trigger frame is sent to the polled STA group.

[0099] In a seventh possible implementation based on the first possible implementation described above, or based on the second possible implementation described above, when there are two or more target STAs, in the second phase, scheduling the target STAs to send uplink packets includes: In the second phase, basic trigger frames are sent to each target STA in descending order of scheduling priority to schedule the corresponding target STA to send uplink packets. The frame interval of the basic trigger frames is determined based on the radio interface utilization rate.

[0100] It should be understood that, in the embodiments of this application, the processor 802 may be a central processing unit (CPU), but it may also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.

[0101] Memory 801 may include read-only memory and random access memory, and provides instructions and data to processor 802. Some or all of memory 801 may also include non-volatile random access memory. For example, memory 801 may also store device type information.

[0102] As can be seen from the above, in this embodiment, the AP effectively avoids channel contention and collision problems caused by random backoff in the CSMA / CA mechanism by publishing configuration parameters to each associated STA to prohibit them from actively competing for the channel within a preset time period. This preset time period is divided into multiple sub-time periods, each further subdivided into a first stage and a second stage. Specifically, in the first stage, the AP can obtain the remaining load information of each STA, enabling the scheduling mechanism to grasp the current uplink transmission needs of each STA. Subsequently, the AP can further filter out target STAs whose load meets the preset load conditions and centrally schedule these target STAs for uplink packet transmission in the second stage. This method avoids collisions caused by multiple STAs competing for the channel at the same time, significantly reducing packet loss and improving air interface utilization. Simultaneously, since only STAs whose load meets the conditions are scheduled to transmit packets, limited channel resources can be allocated more rationally, improving the effective capacity of the channel and overall communication efficiency. Furthermore, in traditional modes, there may be hidden node problems, where two STAs that cannot hear each other may simultaneously send data to the AP, leading to collisions. After adopting the method proposed in the embodiments of this application, the active channel contention behavior of each STA is prohibited, and data transmission only occurs when scheduled, remaining silent at other times, thereby avoiding the problem of hidden nodes. In summary, the solution of this application breaks the vicious cycle of collision-induced speed reduction under the CSMA / CA mechanism, which further exacerbates the collision, and rationally schedules the communication between AP and STA, reducing message collisions between different devices.

[0103] This application also provides a computer program product that, when run on an electronic device, enables the electronic device to perform the steps described in the various method embodiments above.

[0104] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the above device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0105] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0106] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of external device software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0107] In the embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative. For instance, the division of modules or units described above is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection between devices or units through some interfaces, and may be electrical, mechanical, or other forms.

[0108] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0109] If the integrated units described above are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments can also be implemented by a computer program instructing associated hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable storage medium can include: any entity or device capable of carrying the computer program code, a recording medium, a USB flash drive, a portable hard drive, a magnetic disk, an optical disk, a computer-readable storage device, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium, etc. It should be noted that the contents of the aforementioned computer-readable storage media may be appropriately added to or subtracted from the contents according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable storage media may not include electrical carrier signals and telecommunication signals.

[0110] The above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A scheduling method, characterized in that, The scheduling method is applied to access points (APs) and includes: Preset configuration parameters are published to each associated STA. The preset configuration parameters are used to prohibit the STA from actively competing for the channel within a preset time period. The preset time period includes multiple sub-time periods, and each sub-time period includes a first phase and a second phase. During the first phase, the remaining load information of each STA is obtained; The target STA is determined based on the remaining load information of each STA. The target STA is the STA whose remaining load, as indicated by the remaining load information, meets the preset load conditions. During the second phase, the target STA is scheduled to send uplink packets.

2. The scheduling method as described in claim 1, characterized in that, The scheduling method further includes: Determine whether there is an abnormal STA, wherein the abnormal STA refers to an STA whose scheduling is abnormal and whose abnormal parameters meet the preset abnormal conditions; In the presence of the abnormal STA, a target beacon frame is sent to the abnormal STA. The target beacon frame carries a private information element field, which is used to control the abnormal STA to enable the active uplink channel reservation mode. In the active uplink channel reservation mode, the abnormal STA reserves channel resources from the AP for a specified duration and sends uplink packets to the AP through the channel resources within the specified duration.

3. The scheduling method as described in claim 1 or 2, characterized in that, The step of obtaining the remaining load information of each STA includes: Each associated STA is divided into multiple STA groups, and each STA group includes one or more STAs; Each of the aforementioned STA groups is identified as the STA group to be polled; Send a specified trigger frame to the polled STA group, the type of which is determined by the configured target polling policy; Receive first feedback sent by each of the STAs in the polled STA group based on the trigger frame, the first feedback carrying the remaining load information of the corresponding STA.

4. The scheduling method as described in claim 3, characterized in that, The step of dividing the associated STAs into multiple STA groups includes: Based on the preset negotiation rate and the current remaining load information of each STA, the estimated transmission duration of each STA is calculated. Wherein, when the current sub-time period is the first sub-time period of the time period, the current remaining load information of each STA is a preset default value. When the current sub-time period is not the first sub-time period of the time period, the current remaining load information of each STA is obtained by the uplink packets sent by each STA in the previous sub-time period. Based on the expected transmission duration of each STA, the preset transmission duration threshold, and the preset STA number threshold, each STA is divided into multiple STA groups.

5. The scheduling method as described in claim 3, characterized in that, The step of dividing the associated STAs into multiple STA groups includes: Obtain the Received Signal Strength Indicator (RSSI) for each of the STAs; Based on the RSSI of each STA and the preset RSSI tolerance value, determine the RSSI tolerance range of each STA; Based on the RSSI and RSSI tolerance range of each STA, each STA is divided into multiple STA groups.

6. The scheduling method as described in claim 3, characterized in that, Sending the specified trigger frame to the polled STA group includes: When the target polling strategy is a preset first polling strategy, a basic trigger frame is sent to the polled STA group, and the value of the uplink length field of the basic trigger frame is within a preset length value range. When the target polling strategy is the preset second polling strategy, a cache status polling trigger frame is sent to the polled STA group.

7. The scheduling method as described in claim 1 or 2, wherein when the number of target STAs is two or more, the step of scheduling the target STAs to send uplink packets in the second stage includes: In the second phase, basic trigger frames are sent to each target STA in descending order of scheduling priority to schedule the corresponding target STA to send uplink packets. The frame interval of the basic trigger frames is determined based on the radio interface utilization rate.

8. A scheduling device, characterized in that, The scheduling device is applied to the access point (AP) and includes: The publishing module is used to publish preset configuration parameters to each associated STA. The preset configuration parameters are used to prohibit the STA from actively competing for the channel within a preset time period. The preset time period includes multiple sub-time periods, and each sub-time period includes a first phase and a second phase. The acquisition module is used to acquire the remaining load information of each STA during the first stage; The determination module is used to determine the target STA based on the remaining load information of each STA. The target STA is: the STA whose remaining load indicated by the remaining load information meets the preset load conditions. The scheduling module is used to schedule the target STA to send uplink packets during the second phase.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the method as described in any one of claims 1 to 7.

10. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by one or more processors, implements the method as described in any one of claims 1 to 7.