System, method, and device for network request scheduling
Through the access point, the service parameters of different sites are converted into public service intervals and generated allocation modes, the high scheduling complexity and overlapping conflicts of multiple site requests in wireless communication devices are solved, and efficient QoS guarantee is achieved.
Patent Information
- Application Number
- CN201980097496.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-06-27
- Filing Date
- 2019-10-15
- Publication Date
- 2025-07-22
- Estimated Expiration
- 2039-10-15
AI Technical Summary
The prior art is difficult to process requests from multiple sites at the same time in wireless communication devices, resulting in the inability to ensure the quality of service of all sites. In addition, traditional TWT scheduling algorithms have problems of high complexity and overlapping conflicts when scheduling periodic requests.
The service parameters of different sites are converted into public service intervals through access points, and an allocation mode is generated to allocate wake-up time and sleep time within the public service intervals, ensuring that the service periods of all sites do not overlap, and a time division multiplexing scheduling algorithm is used to improve QoS.
It realizes the efficient scheduling of requests from multiple sites in wireless communication devices, ensures the service quality of each site, reduces the complexity of time division multiplexing scheduling, and avoids overlapping conflicts in data transmission.
Smart Images

Figure CN113966640B_ABST
Abstract
Description
[0001] Cross - Reference to Related Applications
[0002] This application is an international application of U.S. Patent Application No. 16 / 455,271, filed on Jun. 27, 2019, which claims the benefit of U.S. Provisional Patent Application No. 62 / 854,450, filed on May 30, 2019, and both are incorporated herein by reference in their entirety for all purposes. Technical Field
[0003] This disclosure generally relates to DC wireless communication requests, and more particularly, to the scheduling of such wireless communication requests. Background Art
[0004] Wireless communication devices can communicate with each other via one or more communication means, such as a WiFi connection. Thus, such wireless communication can be implemented in a manner compliant with a wireless communication protocol. In addition, such wireless communication devices can be configured as access points and stations, where the access point broadcasts network traffic to downstream stations and processes requests received from such stations. An access point may communicate with multiple stations and may have to process multiple requests from these stations sequentially. Conventional techniques for processing such requests are still limited because in the case where many stations communicate with a single access point, the access point may not be able to process all of their requests simultaneously. Brief Description of the Drawings
[0005] Figure 1 A diagram illustrating an example of a system configured for scheduling requests according to some embodiments.
[0006] Figure 2 A diagram illustrating an example of another system configured for scheduling requests according to some embodiments.
[0007] Figure 3 A diagram illustrating an example of an access point configured according to some embodiments.
[0008] Figure 4 A flowchart illustrating an example of a request scheduling method implemented according to some embodiments.
[0009] Figure 5 A flowchart illustrating another example of a request scheduling method implemented according to some embodiments.
[0010] Figure 6 A flowchart illustrating yet another example of a request scheduling method implemented according to some embodiments.
[0011] Figure 7 A flowchart illustrating an additional example of a request scheduling method implemented according to some embodiments.
[0012] Figure 8 Illustrates an example of an allocation pattern implemented according to some embodiments.
[0013] Figure 9 Illustrates another example of an allocation pattern implemented according to some embodiments. Detailed Description
[0014] In the following description, numerous specific details are set forth to provide a thorough understanding of the presented concepts. The presented concepts may be practiced without some or all of these specific details. In other instances, well-known process operations have not been described in detail so as not to unnecessarily obscure the described concepts. While some concepts will be described in connection with specific examples, it should be understood that these examples are not intended to be limiting.
[0015] A wireless communication device may include an access point and stations that communicate with each other via a wireless communication means such as a WiFi communication link. For example, in the context of the Internet of Things (IoT), there may be many wireless communication devices communicating with each other. In such a case, the access point and each station may communicate with each other in a manner compatible with a wireless transmission protocol (such as the WiFi protocol). In one example, the access point may use Target Wake Time (TWT) scheduling to schedule network traffic associated with each station. By using TWT scheduling, each station may negotiate a pre-specified wake-up period with the access point for data transmission. A sleep time during which the station is in an energy-saving mode and does not participate in data transmission is also specified. To ensure the Quality of Service (QoS) of data transmission, each TWT session typically includes two parameters: Service Interval (SI) and Service Period (SP). SI is the time-domain interval between the starts of two adjacent wake-up times of a station. SP is the period of time during which wake-up occurs and during which data transmission at the station takes place.
[0016] As described above, the access point may communicate with multiple stations, and to process each of their TWT requests, the access point may implement a Time Division Multiplexing (TDM) scheduling algorithm to ensure that the SPs of all admitted TWT requests are scheduled without overlapping in the time domain. However, the SI and SP of each TWT request are typically determined at least in part based on the data traffic requirements of the station, and since the SIs from different stations may be very different, the SIs may not be easily correlated with each other. Therefore, traditional techniques are still limited in their ability to schedule periodic TWT requests in a contention-free manner. In addition, in such a case, the access point may not be able to schedule network traffic reliably and consistently for all stations and may not be able to ensure that each station obtains a satisfactory QoS.
[0017] The present disclosure relates to systems, methods, and devices for scheduling requests associated with multiple stations. As will be discussed in more detail below, the system can include an access point that communicates with various stations. The access point can be configured to handle many different requests from individual stations by establishing a common service interval, converting the parameters of the requests into the common service interval, and by generating a new allocation pattern or modifying an existing allocation pattern to allocate requests within the common service interval. As will also be discussed in more detail below, additional features can be implemented to further enhance the ability to accommodate many stations. For example, one or more constraints can be applied to the parameters, and various implementations of grouping and sub-grouping can be implemented to facilitate the generation and implementation of the allocation pattern.
[0018] Figure 1 A diagram illustrating an example of a system configured for scheduling requests according to some embodiments. As described above, various wireless communication devices can be configured as stations and can also be configured as access points. In various embodiments, the access point is configured to establish and manage a connection between the station and the network. As will be discussed in more detail below, the access point can be configured to implement one or more novel scheduling techniques to utilize the available communication medium in a manner that accommodates wireless traffic among all devices while ensuring appropriate QoS is provided to all of these devices.
[0019] In various embodiments, system 100 can include a first device 110, which can be a wireless communication device configured as a station. Such a wireless communication device can be a smart device, such as a smart device in a wearable device, or a monitoring device, such as a monitoring device in a smart building, environmental monitoring, and energy management. It should be understood that such a wireless communication device can be any suitable device, such as those found in an automobile, other vehicles, or even medical implants. As described above, various wireless communication devices can communicate with each other via one or more wireless communication media. As Figure 1 shown, each of the first devices 110 can include an antenna, such as antenna 104. The first device 110 can also include a processing device 108 and a transceiver 106. As will be discussed in more detail below, such a processing device, transceiver, and radio can be configured to generate a TWT request and send the TWT request to an access point (such as access point 102), where the TWT request can include a TWT frame and a header, and negotiate a TWT schedule with the access point 102, where a schedule of wake-up time and sleep time is determined for each first device 110. In various embodiments, the first device 110 can generate a TWT request having service parameters that define a service interval and a service period of the first device 110. Thus, such first service parameters can be determined based on the characteristics of the first device 110, such as the device type, such as those discussed above, and various operating parameters of such devices and the QoS requirements of such devices.
[0020] In some embodiments, system 100 may further include a second device 120 that may also be configured as a station. As similarly discussed above, the second device 120 may be a smart device or other device, such as those found in automobiles, other vehicles, and medical implants. In various embodiments, the second device 120 may be a different type of device from the first device 110. Thus, the access point 102 may communicate with a variety of different types of devices. As described above, each of the second devices 120 may include an antenna, such as antenna 122, as well as a processing device 126 and a transceiver 124, which may be configured to negotiate a TWT schedule with the access point 102, where a schedule of wake-up times and sleep times is determined for each second device 120. As similarly discussed above, the second device 120 may have second service parameters that define the service interval and service period of the second device 120. Such second service parameters may be determined based on the characteristics of the second device 120, such as the device type, e.g., the device types discussed above, as well as various operating parameters of such devices and the QoS requirements of this device.
[0021] System 100 further includes an access point 102, which may be configured to manage the communication between the first device 110 and the second device 120, as well as a communication network such as network 130. Thus, the access point 102 may include a transceiver 132 and a processing device 134, and may be configured to schedule the network traffic of the first device 110 and the second device 120 to facilitate communication with other devices that may be coupled to the network 130. As described above, the access point 102 may be configured to communicate with the first device 110 and the second device 120 via a WiFi connection. In one example, the access point 102 may be configured to communicate with the first device 110 and the second device 120 in a manner compatible with the 802.11ax standard.
[0022] As described above, the first device 110 and the second device 120 may have different service parameters and different QoS requirements. In various embodiments, the access point 102 is configured to determine a common service interval available for all the first devices 110 and the second devices 120, the common service interval that will ensure that the QoS requirements of all the first devices 110 and the second devices 120 are met and that there is no overlap in data transmission. As will be discussed in more detail below, the access point 102 may be configured to convert the first service parameters and the second service parameters into different formats, which are further used to establish a new parameter called the common service interval for the access point 102. The access point 102 may then generate an allocation pattern that allocates wake-up times and sleep times associated with received requests within the common service interval.
[0023] More specifically, the proposed service intervals can be included in the service parameters of each request received from each of the first device 110 and the second device 120. These service intervals of the requests can be TWT requests, which are divided by specified time-domain quantization units, herein referred to as basic service units (BSUs). Thus, the received service intervals can be converted into integer quantities such that the periodicity of time-division multiplexing (TDM) is not based on the original values but on the quantized integers of the service intervals. After such quantization of the service intervals, a common service interval can be determined such that the size of the common service interval is sufficient to accommodate different service periods without overlapping in subsequent iterations, thereby guaranteeing the QoS of each device. In some embodiments, the common service interval can be determined by taking the least common multiple of the quantized integer quantities of all the service intervals. Once the common service interval is determined, an allocation pattern can be generated to implement the time-slot allocation for the TWT requests such that all the service periods of the requests are accommodated within one common service interval. In such an implementation, the same scheduling pattern will be repeated for each common service interval. Thus, when these service periods are allocated non-overlappingly within one common service interval, there will be no service period overlap in subsequent common service intervals. In this way, the complexity of time-division multiplexing (TDM) scheduling is reduced. Additional features, such as the implementation of grouping, will be discussed in more detail below with reference to Figures 4-7 Additional features, such as the implementation of grouping, will be discussed in more detail.
[0024] In various embodiments, the access point 102 is a device that has been configured as an access point. More specifically, the access point 102 can be a software-enabled access point (SoftAP). Thus, Figure 1 the devices included therein can be configurable such that they can be configured as either an access point or a station depending on one or more settings. Thus, although Figure 1 FIG. illustrates an example of the configuration of the system 100, it should be appreciated that the first device 110 and the second device 120 can also be configured as access points if appropriate.
[0025] Figure 2 FIG. illustrates an example of another system configured for scheduling requests according to some embodiments. As similarly discussed above, the system 100 can include an access point 102, a first device 110, and a second device 120. Also as described above, the access point 102 can be configured to manage the communication between the first device 110 and the second device 120, as well as the communication network, such as the network 130.
[0026] In various embodiments, the system 200 further includes an access point 202, a third device 204, and a fourth device 206. As similarly discussed above, the access point 202 can be configured to manage the communication between the third device 204 and the fourth device 206, as well as the communication network, such as the network 130. Thus, as Figure 2As shown, system 200 may include multiple access points coupled to multiple different device groups. In this way, various devices can communicate with each other via network 130, and such communication can be managed and scheduled by access points such as access point 102 and access point 202. In some embodiments, the access points may pass communications and requests between each other to facilitate network traffic scheduling across numerous different devices. For example, access point 202 may schedule requests from first device 110, second device 120, third device 204, and fourth device 206, where the requests and traffic from first device 110 and second device 120 are passed through access point 102.
[0027] Figure 3 A diagram illustrating an example of an access point configured according to some embodiments. Thus, Figure 3 An example of access point 102 discussed above is illustrated. As Figure 3 shown, access point 102 may include various components configured to implement the management and scheduling of the above-mentioned network traffic.
[0028] Access point 102 includes transceiver 132, which is configured to transmit and receive signals using a communication medium that may include antenna 131. As described above, transceiver 132 may be included in a WiFi radio and may be compatible with the WiFi communication protocol. More specifically, transceiver 132 may be compatible with the 802.11ax protocol. Thus, transceiver 132 may include components such as a modulator and a demodulator, as well as one or more buffers and filters, which are configured to generate and receive signals via antenna 131.
[0029] In various embodiments, access point 102 further includes processing device 134, which may include one or more processor cores. In various embodiments, processing device 134 includes one or more processing devices configured to implement the above-mentioned scheduling and will be described in more detail below. In some embodiments, processing device 134 is also capable of configuring access point 102 as an access point or a station. Thus, in a SoftAP implementation, the configuration of processing device 134 may determine whether the wireless device is an access point or a station. In various embodiments, processing device 134 includes one or more components configured to implement the Media Access Control (MAC) layer, which is configured to control the hardware associated with the wireless transmission medium, such as the hardware associated with the WiFi transmission medium. In one example, processing device 134 may include an Advanced RISC Machine (ARM) core block 310, which may be configured to implement a driver, such as a WiFi driver. Processing device 134 may also include a Digital Signal Processor (DSP) core block 312, which may be configured to include microcode.
[0030] Access point 102 also includes a radio frequency (RF) switch 303 coupled to antenna 131. Although Figure 3 access point 102 is illustrated as having a single antenna, it should be appreciated that access point 102 may have multiple antennas. Accordingly, RF switch 303 may be configured to select an antenna for transmission / reception and may be configured to provide coupling between the selected antenna (such as antenna 131) and other components of access point 102 via a bus such as bus 311.
[0031] Access point 102 includes a memory system 308 configured to store one or more data values associated with the traffic scheduling discussed above. Accordingly, memory system 308 includes a storage device, which may be a non-volatile random access memory (NVRAM) configured to store such data values, and may also include a cache configured to provide a local cache for such traffic scheduling. In various embodiments, access point 102 also includes a host processor 313 configured to implement the processing operations implemented by access point 102.
[0032] It should be understood that one or more of the above components may be implemented on a single chip or on different chips. For example, transceiver 132 and processing device 134 may be implemented on the same integrated circuit chip (such as integrated circuit chip 320). In another example, transceiver 132 and processing device 134 may each be implemented on their own chips and thus may be implemented separately.
[0033] Figure 4 A flowchart illustrating an example of a request scheduling method implemented in accordance with some embodiments is shown. As discussed above, various wireless communication devices may communicate with each other such that an access point establishes and manages connections with various stations. As will be discussed in more detail below, an access point may be configured to implement one or more novel scheduling techniques to utilize the available communication medium in a manner that accommodates wireless traffic among all devices while ensuring appropriate QoS is provided to all such devices.
[0034] Method 400 may begin at operation 402, during which at least one request may be received from a wireless communication device. As described above, an access point may be communicatively coupled to various wireless communication devices that may be configured as stations. Accordingly, the access point may receive requests from each station, and each request may be a scheduling request including various service parameters, such as a TWT request. In this manner, multiple requests may be received at the access point, and each request may have different service parameters associated with such request.
[0035] Method 400 may proceed to operation 404, during which one or more parameters included in at least one request may be converted to common parameters, and a common service interval may be established. Thus, the access point may convert different parameters to a common reference frame and may use the common reference frame to establish a common service interval. In this way, the access point may examine all requests that have been received from different stations and may determine a common service interval that can accommodate all different requests in a manner that ensures QoS is provided for each wireless communication device, and subsequent common service intervals will also ensure such QoS is provided.
[0036] Method 400 may then proceed to operation 406, during which an allocation pattern may be generated by allocating service periods identified by at least one request within the common service interval. Thus, the access point may allocate service periods within the common service interval such that each service period for each request is allocated within the common service interval. In an example of TWT request and scheduling, the allocation pattern may determine when a wake-up period associated with a service period occurs within the common service interval for each device.
[0037] Figure 5 A flowchart illustrating another example of a request scheduling method implemented in accordance with some embodiments is shown. As discussed above, various wireless communication devices may communicate with each other such that an access point establishes and manages connections with various stations. More specifically, the access point is configured to schedule traffic in a manner that accommodates wireless traffic between all devices while ensuring appropriate QoS is provided to all such devices. As will be discussed in more detail below, the establishment of a common service interval may involve the conversion of original service parameters in a manner that ensures the common service interval can accommodate all service periods associated with requests and prevent overlap / conflict in subsequent common service intervals.
[0038] Method 500 may begin with operation 502, during which multiple requests may be received from multiple wireless communication devices. As described above, the access point may be communicatively coupled to various wireless communication devices that may be configured as stations. Thus, the access point may receive requests from each station, and each request may be a scheduling request including various service parameters, such as a TWT request. Also as described above, such service parameters may include a proposed service period and a service interval. The proposed service period and service interval included in the request may be referred to herein as service parameters as well as original service parameters. Thus, the access point may receive many different requests from different wireless communication devices, and different requests may each include different service parameters, such as different proposed service periods and service intervals.
[0039] Method 500 may proceed to operation 504, during which a basic service unit may be determined. In various embodiments, the basic service unit may be a specified value or a default value. For example, the basic service unit may be a time unit that serves as a time domain quantization unit, which will be discussed in more detail below. Thus, the basic service unit may be a default value that has been previously identified and determined to be a time unit that is expected to be less than all service intervals identified by the received request. During operation 504, the value of the basic service unit may be retrieved.
[0040] Method 500 may proceed to operation 506, during which each service interval may be quantified at least in part based on the basic service unit. Thus, during operation 506, the service intervals may be extracted from the received request, and each service interval may be divided by the basic service unit. In this way, each service interval may be converted into an integer representation, also referred to as a quantization factor. For example, the basic service unit may be 10 milliseconds, and the service interval included in the request may be 12 milliseconds. In this example, the resulting common parameter may be a quantization factor with an integer value of 1. In another example, the basic service unit may be 10 milliseconds, and the service interval included in the request may be 25 milliseconds. In this example, the resulting common parameter may be a quantization factor with an integer value of 2. Thus, such a quantization process may be implemented for each service interval included in each received request.
[0041] Method 500 may proceed to operation 508, during which a common service interval may be determined at least in part based on the common parameter and the basic service unit. In various embodiments, the common parameter identifying the quantization factors of all received requests may be retrieved, and the least common multiple may be determined based on the common parameter. For example, if it is determined that the common parameter has quantization factors {1, 2, 3, 5}, the least common multiple is determined to be 30. The least common multiple may be multiplied by the basic service unit to determine the common service interval. For example, if the basic service interval is 10 milliseconds, continuing from the previous example, the common service interval may be 300 milliseconds.
[0042] Method 500 may proceed to operation 510, during which an allocation pattern may be generated at least in part based on the received request and the common service interval. Thus, during operation 510, the access point may assign the service periods of different requests to different time slots of the common service interval. Accordingly, the access point may divide the common service interval into different time slots, and may assign the service periods identified by the requests to the time slots in a non - overlapping manner. The service periods may be assigned randomly or in an order determined according to the order of receiving the requests.
[0043] Figure 6The figure illustrates a flowchart of yet another example of a request scheduling method implemented according to some embodiments. As described above, various wireless communication devices can communicate with each other such that an access point establishes and manages connections with various stations. As discussed above, the establishment of a common service interval may involve the conversion of original service parameters in a manner that ensures the common service interval can accommodate all service periods associated with requests and prevent overlap / conflict in subsequent common service intervals. Additionally, as will be discussed in more detail below, grouping and sub-grouping can be implemented to further enhance the satisfaction of QoS requirements for various wireless communication devices.
[0044] Method 600 can begin at operation 602, during which multiple requests can be received from multiple wireless communication devices. As discussed above, an access point can be communicatively coupled to various wireless communication devices that can be configured as stations. Thus, the access point can receive requests from each station, and each request includes various service parameters. Also as described above, such service parameters can include a proposed service period and a service interval. Therefore, the access point can receive many different requests from different wireless communication devices, and different requests can each include different service parameters, such as different proposed service periods and service intervals.
[0045] Method 600 can proceed to operation 604, during which a basic service unit can be determined. As discussed above, the basic service unit can be a specified value or a default value. Thus, the basic service unit can be a default value that has been previously identified and determined as a time unit that is expected to be less than all service intervals identified by the received requests. During operation 604, the value of the basic service unit can be retrieved.
[0046] Method 600 can proceed to operation 606, during which each service interval can be quantified at least in part based on the basic service unit. Thus, the service intervals can be extracted from the received requests, and each service interval can be divided by the basic service unit. In this way, each service interval can be converted to an integer representation, also referred to as a quantization factor, and such a quantization process can be implemented for each service interval included in each received request.
[0047] Method 600 can proceed to operation 608, during which at least one group and / or sub-group can be generated. In various embodiments, service periods and service intervals can be grouped based on their determined common parameters. For example, service periods and service intervals with a quantization factor of 1 can be divided into a first group, while service periods and service intervals with a quantization factor of 2 can be divided into a second group. Thus, multiple groups can be generated based on common parameters and the quantization factors identified by such common parameters. Other details will be discussed in more detail below with reference to Figure 8 More details will be discussed in more detail.
[0048] Method 600 may proceed to operation 610, during which a common service interval may be determined based at least in part on a common parameter and a basic service unit. As discussed above, the common parameter that identifies the quantization factor of all received requests may be retrieved, and the least common multiple may be determined based on the common parameter. The least common multiple may be multiplied by the basic service unit to determine the common service interval.
[0049] Method 600 may proceed to operation 612, during which an assignment pattern may be generated based at least in part on the received requests, the common service interval, and the determined groups. Thus, during operation 612, the access point may assign service periods for different requests to different time slots of the common service interval. Accordingly, the access point may divide the common service interval into different time slots and may assign the service periods identified by different requests to the time slots in a non-overlapping manner. The service periods may be assigned in a random order or in an order determined by the order in which the requests are received.
[0050] In various embodiments, the assignment of service periods to time slots may be implemented based at least in part on the groups described above. For example, for a group with a quantization factor F, the service periods included in the group may be alternately scheduled to time slots, where the time slots may be basic service units indexed from 0 to F - 1. The assignment pattern may repeat every F time slots until the end of the common service interval. This may be repeated for each determined group. Further details will be described below with reference to Figure 8 to illustrate additional details. In this way, the service periods included in one group may be distributed over different common service intervals to increase the overall capacity of the wireless communication medium.
[0051] Figure 7 A flowchart illustrating additional examples of a request scheduling method implemented in accordance with some embodiments is shown. As described above, various wireless communication devices may communicate with each other such that an access point establishes and manages connections with various stations. As previously mentioned, the establishment of the common service interval may involve the conversion of the original service parameters in a manner that ensures the common service interval can accommodate all service periods associated with requests and prevents overlap / conflict in subsequent common service intervals. Additionally, as will be discussed in more detail below, constraints on the quantization factor may be implemented to further enhance the implementation of scheduling for various wireless communication devices.
[0052] Method 700 may begin at operation 702, during which multiple requests may be received from multiple wireless communication devices. As discussed above, the access point may be communicatively coupled to various wireless communication devices that may be configured as stations. Thus, the access point may receive requests including service parameters from each station. Also as described above, such service parameters may include a proposed service period and a service interval.
[0053] Method 700 can proceed to operation 704, during which a basic service unit can be determined. As discussed above, the basic service unit can be a specified value or a default value. Thus, the basic service unit can be a default value that has been previously identified and determined as a time unit that is expected to be less than all service intervals identified by the received request. During operation 704, the value of the basic service unit can be retrieved.
[0054] Method 700 can proceed to operation 706, during which each service interval can be quantified at least in part based on the basic service unit. Thus, the service intervals can be extracted from the received request, and each service interval can be divided by the basic service unit. In this way, each service interval can be converted to an integer representation, also referred to as a quantization factor, and such a quantization process can be implemented for each service interval included in each received request.
[0055] Method 700 can proceed to operation 708, during which at least one group and / or subgroup can be generated. In various embodiments, service periods and service intervals can be grouped based on their determined common parameters. Thus, multiple groups can be generated based on the common parameters and the quantization factors identified by these common parameters. Other details will be discussed in more detail below with reference to Figure 9 More detailed discussion.
[0056] Method 700 can proceed to operation 710, during which one or more constraints can be implemented with reference to the determination of the common parameters and the quantization factors of the lower layer. For example, the quantization factors can be determined such that the maximum quantization factor is a multiple of the other quantization factors. As will be discussed in more detail below, the maximum quantization factor becomes the common service interval. For example, the quantization factors determined based on the service intervals included in the request can be grouped. Such grouping may result in a set of quantization factors, such as {1, 2, 3, 5}. In various embodiments, the set can be changed such that the maximum quantization factor is an integer that is a multiple of the others and greater than its original value. For example, the last quantization factor can be changed such that the factor set becomes {1, 2, 3, 6}. In this way, although the specific service intervals of the groups with larger quantization factors can be increased, the overall size of the common service interval is reduced compared to that determined using the least common multiple technique, which will be discussed in more detail below.
[0057] Method 700 can proceed to operation 712, during which a common service interval can be determined at least in part based on a common parameter. As discussed above, a common parameter that identifies quantization factors for all received requests can be retrieved. Also as described above, the common parameter may have been constrained such that the maximum quantization factor is a multiple of the other quantization factors. Thus, the maximum quantization factor can be used as the common service interval. More specifically, the common service interval can be determined by multiplying the maximum quantization factor by a basic service unit.
[0058] Method 700 can proceed to operation 714, during which an assignment pattern can be generated at least in part based on the received requests, the common service interval, and the determined groups. Thus, during operation 714, the access point can assign service periods for different requests to different time slots of the common service interval. Accordingly, the access point can divide the common service interval into different time slots and can assign the service periods identified by different requests to the time slots in a non-overlapping manner. The service periods can be assigned in a random order or in an order determined by the order in which the requests are received.
[0059] Also as described above, the assignment of service periods to time slots can alternatively be scheduled to time slots, where such time slots can be basic service units. The assignment pattern can repeat every F time slots until the end of the common service interval. This can be repeated for each determined group. Other details will be described below with reference to Figure 9 illustrate other details.
[0060] Figure 8 FIG. 800 illustrates an example of an assignment pattern implemented in accordance with some embodiments. Thus, FIG. 800 shows a pattern in which the common service interval and the associated basic service units are shown over time and are marked along the x-axis. In addition, various groups are shown, each group including different service periods corresponding to different requests having quantization factors (F). For example, the first group 802 has a quantization factor of 1, the second group 804 has a quantization factor of 2, the third group 806 has a quantization factor of 3, and the fourth group 808 has a quantization factor of 4. In addition, each group has a specific service period associated with a specific request. For simplicity, such service periods have been labeled with letters. For example, the first group 802 includes service period A, the second group 804 has service periods B and C, the third group 806 has service periods D, E, and F, and the fourth group 808 has service periods G, H, I, and J.
[0061] As shown in illustration 800, the first group 802 has only one associated service period and can be scheduled into each basic service unit. At the same time, the second group 804 has two associated service periods, and these service periods can be scheduled alternately such that B and C are scheduled every other basic service unit. Additionally, the third group 806 has three associated service periods, and these service periods can be scheduled alternately such that D, E, and F alternate in consecutive basic service units. Similarly, the fourth group 808 has four associated service periods, and these service periods can be scheduled alternately such that G, H, I, and J alternate in consecutive basic service units, as shown in illustration 800. In this way, different requested service periods can be distributed across different basic service units to increase the overall capacity of the system while still ensuring the QoS of each associated wireless communication device.
[0062] Figure 9 Illustration 900 depicts another example of an allocation pattern implemented in accordance with some embodiments. As discussed similarly above, illustration 900 depicts a pattern in which common service intervals and associated basic service units are shown over a period of time and are marked along the x-axis, and various groups are shown, each group including different service periods corresponding to different requests with a quantization factor (F). For example, the first group 902 has a quantization factor of 1, the second group 904 has a quantization factor of 2, and the third group 906 has a quantization factor of 4. Additionally, each group has a specific service period associated with a specific request. For simplicity, such service periods have been denoted by letters. For example, the first group 902 includes service period A, the second group 904 includes service periods B and C, and the third group 906 includes service periods D, E, F, and G.
[0063] In the example shown in illustration 900, the maximum quantization factor 4 has been constrained to be a multiple of the other quantization factors and is used as the common service interval. Illustration 900 further illustrates how the grouping can be implemented to distribute the service periods across different common service intervals. For example, the first group 902 has one associated service period and can be scheduled into each basic service unit. At the same time, the second group 904 has two associated service periods, and these service periods can be scheduled alternately such that B and C are scheduled every other basic service unit. Additionally, the third group 906 has four associated service periods, and these service periods can be scheduled alternately such that D, E, F, and G alternate in consecutive basic service units.
[0064] Although the foregoing concepts have been described in some detail for purposes of clarity of understanding, it is apparent that certain changes and modifications can be made within the scope of the appended claims. It should be noted that there are many alternative ways of implementing the processes, systems, and devices. Accordingly, this example is considered illustrative and not restrictive.
Claims
1. A method for allocating service time slots, comprising: Receiving a plurality of requests from a plurality of wireless communication devices compatible with the 802.11 transmission protocol, wherein each request among the plurality of requests includes a proposed service time slot and a proposed service interval; Using a processing device to generate a plurality of quantization factors by at least partially quantizing the proposed service interval included in each request among the plurality of requests based on a basic service unit; Using the processing device to determine a common service interval at least partially based on the plurality of quantization factors and the basic service unit, such that the size of the common service interval is sufficient to accommodate all the proposed service time slots for the plurality of requests; and Using the processing device to generate an allocation pattern to allocate the proposed service time slots for each request among the plurality of requests within the common service interval.
2. The method according to claim 1, wherein, The plurality of requests includes a plurality of Target Wake Time (TWT) requests.
3. The method according to claim 1, wherein The plurality of wireless communication devices are compatible with the 802.11ax transmission protocol.
4. The method according to claim 1, wherein, The generation of the plurality of quantization factors further includes: Determining the basic service unit; and Dividing the proposed service interval for each request among the plurality of requests by the basic service unit.
5. The method according to claim 4, wherein The determination of the common service interval further includes: Identifying the least common multiple of the plurality of quantization factors.
6. The method according to claim 5, wherein, The determination of the common service interval further includes: Multiplying the least common multiple by the basic service unit.
7. The method according to claim 4, further comprising: Generating at least one packet of requests based on the plurality of quantization factors.
8. The method according to claim 4, further comprising: Allocating the service time slots of the requests included in the at least one packet, the allocation including assigning the service time slots to time slots in alternating basic service units.
9. The method according to claim 4, further comprising: Setting the largest quantization factor among the plurality of quantization factors as the least common multiple of the other quantization factors among the plurality of quantization factors.
10. An apparatus for allocating service time slots, comprising: A transceiver configured to be coupled to at least one antenna capable of receiving a plurality of requests from a plurality of wireless communication devices, wherein each request among the plurality of requests includes a proposed service time slot and a proposed service interval, and the transceiver is compatible with the 802.11 transmission protocol; and A processing device configured to: Generate a plurality of quantization factors by at least partially quantizing the proposed service interval included in each request among the plurality of requests based on a basic service unit; Determine a common service interval at least partially based on the plurality of quantization factors and the basic service unit, such that the size of the common service interval is sufficient to accommodate all the proposed service time slots for the plurality of requests; and Generate an allocation pattern to allocate the proposed service time slots for each request among the plurality of requests within the common service interval.
11. The device according to claim 10, wherein, The 802.11 transmission protocol is the 802.11ax transmission protocol, and wherein the plurality of requests includes a plurality of Target Wake Time (TWT) requests.
12. The device according to claim 10, wherein, The generation of the plurality of quantization factors further includes: Determining the basic service unit; and Divide the proposed service interval for each of the plurality of requests by the basic service unit.
13. The device according to claim 12, wherein, The determination of the common service interval further includes: Identifying the least common multiple of the plurality of quantization factors; and Multiplying the least common multiple by the basic service unit.
14. The device according to claim 12, wherein, The processing device is further configured to: Generate at least one group of requests based on the plurality of quantization factors; and Allocate service periods for the requests included in the at least one group, the allocation including assigning service periods to time slots in alternating basic service units.
15. A system for allocating service periods, comprising: At least one antenna configured to receive a plurality of requests from a plurality of wireless communication devices compatible with the 802.11 transmission protocol, wherein each of the plurality of requests includes a proposed service period and a proposed service interval; A host processor; An integrated circuit chip, comprising: A transceiver coupled to the at least one antenna, the transceiver being compatible with a wireless transmission protocol; and A processing device configured to: Generate a plurality of quantization factors by at least partially quantizing the proposed service interval included in each of the plurality of requests based on a basic service unit; Determine a common service interval at least partially based on the plurality of quantization factors and the basic service unit such that the size of the common service interval is sufficient to accommodate all proposed service periods for the plurality of requests; and Generate an allocation pattern to allocate the proposed service periods for each of the plurality of requests within the common service interval.
16. The system according to claim 15, wherein, The wireless transmission protocol is an 802.11ax transmission protocol, and wherein the plurality of requests includes a plurality of Target Wake Time (TWT) requests.
17. The system according to claim 15, wherein, The generation of the plurality of quantization factors further includes: Determining the basic service unit; and Dividing the proposed service interval for each of the plurality of requests by the basic service unit.
18. The system according to claim 17, wherein, The determination of the common service interval further includes: Identifying the least common multiple of the plurality of quantization factors; and Multiplying the least common multiple by the basic service unit.
19. The system according to claim 17, wherein, The processing device is further configured to: Generate at least one group of requests based on the plurality of quantization factors; and Allocate service periods for the requests included in the at least one group, the allocation including assigning service periods to time slots in alternating basic service units.
20. The system according to claim 17, wherein, The processing device is further configured to: Set the largest quantization factor among the plurality of quantization factors as the least common multiple of the other quantization factors among the plurality of quantization factors.
Citation Information
Patent Citations
Triggered target wake time operation
EP3251422A1
Triggered target wake time operation
US20160219510A1