Resource allocation for low latency wireless communications
By adopting the CoMAP architecture and delay boot mechanism in the wireless communication system, the channel resources are dynamically allocated, which solves the problem of low resource allocation efficiency in the medium and low delay scenarios of the existing technology, and achieves lower delay and higher system performance.
Patent Information
- Application Number
- CN202380067504.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-08-25
- Filing Date
- 2023-09-19
- Publication Date
- 2025-05-02
AI Technical Summary
Existing wireless communication systems are difficult to effectively allocate resources in low-latency scenarios, resulting in an increase in latency and affecting the performance of the application.
The collaborative multi-access point (CoMAP) architecture and delay boot mechanism are adopted to dynamically allocate channel resources to optimize channel usage efficiency through coordination between wireless access points and delay information feedback of client devices.
It significantly reduces the delay of wireless communication and improves the performance and reliability of the system, especially in delay-sensitive application scenarios.
Smart Images

Figure CN119923936A_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims the benefit of priority to U.S. Provisional Patent Application No. 63 / 409,651, filed on September 23, 2022, entitled “RESOURCE ALLOCATION FOR LOWLATENCY WIRELESS COMMUNICATION,” the disclosure of which is hereby incorporated herein in its entirety. Technical Field
[0003] The present specification relates generally to wireless communications, including, for example, resource allocation for low-latency wireless communications. Background Art
[0004] Electronic devices typically communicate over wireless networks using the WiFi protocol defined by the 802.11 standard. BRIEF DESCRIPTION OF THE DRAWINGS
[0005] Certain features of the subject technology are set forth in the appended claims. However, for purposes of explanation, several embodiments of the subject technology are set forth in the following drawings.
[0006] Figure 1 An example network environment is illustrated according to one or more implementations.
[0007] Figure 2 An example device that can implement a system for resource allocation for low-latency wireless communications in accordance with one or more implementations is illustrated.
[0008] Figure 3 An example coordinated multiple access point (CoMAP) architecture is illustrated in accordance with one or more implementations.
[0009] Figure 4 Another example CoMAP architecture according to one or more implementations is illustrated.
[0010] Figure 5 The invention illustrates a method according to one or more specific implementations. Figure 3 Examples of time division multiple access (TDMA) and frequency division multiple access (FDMA) allocation of channel resources in an architecture.
[0011] Figure 6 The invention illustrates a method according to one or more specific implementations. Figure 4 Example of TDMA and FDMA allocation of channel resources in the architecture of FIG.
[0012] Figure 7 The invention illustrates a method according to one or more specific implementations. Figure 3An example timing diagram of channel resource allocation operations in an architecture of FIG.
[0013] Figure 8 The invention illustrates a method according to one or more specific implementations. Figure 4 An example timing diagram of channel resource allocation operations in an architecture of FIG.
[0014] Fig. 9 The invention illustrates a method according to one or more specific implementations. Figure 3 An example timing diagram of channel resource allocation operation with latency guidance in an architecture of FIG.
[0015] Fig.10 The invention illustrates a method according to one or more specific implementations. Figure 4 An example timing diagram of channel resource allocation operation with latency guidance in an architecture of FIG.
[0016] Fig.11 Examples of buffer size information and latency information according to one or more implementations are illustrated.
[0017] Fig.12 Another example of buffer size information and latency information according to one or more implementations is illustrated.
[0018] Fig.13 A flow chart illustrating an example process that may be performed for wireless communications with latency guidance in accordance with one or more implementations.
[0019] Fig.14 A flow chart illustrating an example process that may be performed for wireless communications in accordance with one or more implementations.
[0020] Fig.15 A flow chart illustrating an example process that may be performed for wireless communications with latency guidance in accordance with one or more implementations.
[0021] Fig.16 Example electronic systems are shown that can be used to implement various aspects of the subject technology in accordance with one or more implementations. DETAILED DESCRIPTION
[0022] The specific embodiments set forth below are intended to be descriptions of various configurations of the subject technology and are not intended to represent the only configuration by which the subject technology can be practiced. The accompanying drawings are incorporated herein and constitute a part of the detailed description. The detailed description includes specific details intended to provide a thorough understanding of the subject technology. However, the subject technology is not limited to the specific details set forth herein, and one or more other specific implementations may be used to practice. In one or more specific implementations, structures and components are shown in block diagram form to avoid blurring the concepts of the subject technology.
[0023] In a wireless communication system such as a WiFi network, a wireless access point (AP) allocates uplink (UL) and / or downlink (DL) channel resources to one or more client devices, through which the one or more client devices can send and receive data. In one or more use cases, the wireless access point can perform multi-user (MU) operation, in which the AP communicates with multiple client devices in its basic service set (BSS) simultaneously. In one or more use cases, a multi-link operation (MLO) can be performed, in which the AP can communicate with client devices in its BSS simultaneously via multiple links on multiple channels and / or frequency bands.
[0024] MU operation and MLO operation may provide benefits such as increased throughput, reduced latency, and improved reliability of wireless communications between devices. Latency reduction may be particularly helpful in use cases such as augmented reality, virtual reality, industrial automation, gaming, and / or other applications where low latency is beneficial or necessary.
[0025] In addition to those improvements provided by MU operation and MLO operation, aspects of the subject technology may provide further improvements in low-latency wireless communications. In one or more specific implementations of the subject technology, a coordinated multi-AP (CoMAP) architecture as described herein may be used to provide improved performance for wireless communications. For example, the CoMAP architecture described in further detail below may allow the BSS and overlapping BSS (OBSS) to coordinate for multiplexed access to the wireless medium. In one or more specific implementations, CoMAP may be implemented as a wrapper on top of existing UL MU and MLO technologies. Various examples of both (a) CoMAP architecture and (b) resource allocation process in CoMAP for multiplexed transmission are described herein.
[0026] In one or more specific implementations of the subject technology, in a single AP and / or multi-AP (e.g., CoMAP) architecture, improved performance for wireless communications can also be provided by providing latency guidance and / or feedback to the AP for allocation of channel resources, as further described in detail below.
[0027] Figure 1 An example network environment 100 for wireless communication according to one or more implementations is illustrated. However, not all of the depicted components may be used in all implementations, and one or more implementations may include additional or different components than those shown in the figures. Changes in the arrangement and types of these components may be made without departing from the spirit or scope of the claims listed herein. Additional components, different components, or fewer components may be provided.
[0028] The network environment 100 includes one or more electronic devices 102A-102C, a wireless access point 104, and a base station 106. One or more of the electronic devices 102A-102C may include, may be a component of, and / or may be referred to as, a user equipment (UE), a station (STA), a client device, or a terminal device. One or more of the electronic devices 102A-102C may include suitable logic components, circuits, interfaces, memories, and / or codes that enable communication with one or more of the wireless access point 104 or the base station 106, for example, via a wireless interface and utilizing one or more radio transceivers (such as WiFi and / or cellular transceivers). One or more of the electronic devices 102A-102C may also be operable to communicate with Figure 1 Wireless communications may be performed with one or more other user equipment, one or more other base stations and / or one or more other access points not shown.
[0029] One or more of the electronic devices 102A-102C may be, for example, a portable computing device such as a laptop, a smart phone, a peripheral device (e.g., a digital camera, a headset), a smart television device, a tablet device, a wearable device such as a watch, a band, etc., or any other suitable device including, for example, one or more wireless interfaces (such as a wireless local area network (WLAN) radio, a Wi-Fi radio, a cellular radio, a Bluetooth radio, a Zigbee radio, a near field communication (NFC) radio, and / or other radios). Figure 1 In the embodiment, by way of example, electronic device 102A is depicted as a tablet device, electronic device 102B is depicted as a mobile device, and electronic device 102C is depicted as a laptop device. One or more of electronic devices 102A-102C may be a computer device as described below with respect to Figure 2 The electronic devices discussed and / or referenced below Fig.16 All or part of the electronic system discussed, and / or may include the following with respect to Figure 2 The electronic devices discussed and / or referenced below Fig.16 All or part of the electronic system in question.
[0030] The base station 106 may be a component of and / or may be referred to as a cell, a Node B (NB), an Evolved Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access Network (E-UTRAN) Node B, an evolved Node B (eNodeB or eNB), etc. The base station 106 may include suitable logic, circuitry, interfaces, memory, and / or code that may be capable of cellular communication, for example, with one or more of the electronic devices 102A-102C and / or other base stations (not shown) via a wireless interface and utilizing one or more radio transceivers.
[0031] In one or more specific implementations, the base station 106 can be a base station of a cellular-based wireless network, such as a Long Term Evolution (LTE) communication network, a Global System for Mobile (GSM) communication network, a UMTS communication network, or generally any cellular-based communication network. The base station 106 can use unlicensed spectrum for cellular communications, such as in a carrier aggregation process, for example, in a Licensed Assisted Access (LAA) communication. Thus, the cellular communications can include communications on licensed spectrum, such as spectrum licensed by a mobile network operator associated with the base station 106, and / or communications on unlicensed spectrum, such as, for example, 5 GHz spectrum. The base station 106 can be a base station for a cellular-based wireless network, such as a Long Term Evolution (LTE) communication network, a Global System for Mobile (GSM) communication network, a UMTS communication network, or generally any cellular-based communication network ... Figure 2 The electronic device discussed and / or the following with respect to Fig.16 All or part of the electronic system discussed, and / or may include the following with respect to Figure 2 The electronic device discussed and / or the following with respect to Fig.16 All or part of the electronic system in question.
[0032] exist Figure 1 In the example of FIG. 1 , electronic device 102A and electronic device 102C are illustrated as participating in WiFi communications with wireless access point 104. Figure 1 In the example of FIG, the electronic device 102B is illustrated as participating in cellular communications with the base station 106. However, the electronic device 102B may also participate in WiFi communications with the wireless access point 104, such as simultaneously with the cellular communications with the base station 106, or independently of the cellular communications with the base station 106.
[0033] The wireless access point 104 may include a WLAN access point or AP, may be a component of a WLAN access point or AP, and / or may be referred to as a WLAN access point or AP. The wireless access point 104 includes suitable logic components, circuits, interfaces, memory, and / or code that enable WiFi to communicate with one or more of the electronic devices 102A-102C, for example, via a wireless interface and using one or more radio transceivers. WiFi communications may include communications on one or more of the 2.4 GHz frequency band, the 5 GHz frequency band, the 6 GHz frequency band, and / or other frequency bands used for WiFi communications. Within each frequency band, the electronic devices 102A-102C and the wireless access point 104 may communicate on various channels having various channel widths, such as a 20 MHz channel width, a 40 MHz channel width, an 80 MHz channel width, a 160 MHz channel width, a 320 MHz channel width, etc. The wireless access point 104 may be a wireless access point 104 described below with respect to Figure 2 The electronic device discussed and / or the following with respect to Fig.16 All or part of the electronic system discussed, and / or may include the following with respect to Figure 2 The electronic device discussed and / or the following with respect to Fig.16 As shown, wireless access point 104 and / or base station 106 may be communicatively coupled to a network (e.g., via a wired connection), such as network 108. In one or more implementations, network 108 may be an interconnected network that may include the Internet or a device communicatively coupled to the Internet.
[0034] exist Figure 1 In the example of FIG. 1 , three electronic devices and one AP are shown. However, in various implementations, less than three or more than three electronic devices (e.g., client devices) may communicate with one, two, three, or more than three APs, and / or two or more APs may wirelessly communicate with each other and / or with the network 108. Figure 3 and Figure 4 Additional examples of network architectures with more than one AP are discussed in further detail.
[0035] Figure 2 An example device that can implement a system for wireless communication according to one or more specific implementations is illustrated. For example, Figure 2 The device 200 may correspond to Figure 1Any of the electronic devices 102A-102C and / or the wireless access point 104. However, not all of the depicted components may be used in all implementations, and one or more implementations may include additional or different components than those shown in the figures. Changes in the arrangement and type of these components may be made without departing from the spirit or scope of the claims listed herein. Additional components, different components, or fewer components may be provided.
[0036] The device 200 may include a processor 202, a memory 204, and a communication interface 206. The processor 202 may include appropriate logic components, circuits, and / or code capable of processing data and / or controlling the operation of the device 200. In this regard, the processor 202 may be enabled to provide control signals to various other components of the device 200. The processor 202 may also control the transfer of data between various parts of the device 200. In addition, the processor 202 may enable implementation of an operating system or otherwise execute code to manage the operation of the device 200.
[0037] The memory 204 may include suitable logic, circuitry, and / or code to enable storage of various types of information, such as received data, generated data, code, and / or configuration information. The memory 204 may include, for example, a random access memory (RAM), a read-only memory (ROM), flash memory, and / or magnetic storage.
[0038] In one or more specific implementations, in which the device 200 corresponds to Figure 1 In the case of one of the electronic devices 102A-102C and / or the wireless access point 104, the memory 204 may store applications and / or services for generating data streams and / or for generating and providing to Figure 1 electronic devices 102A-102C and / or other wireless access points 104 and / or for receiving and / or processing communications from Figure 1 The communication of the electronic devices 102A-102C and / or others in the wireless access point 104. In one or more specific implementations, the memory 204 can store instructions for determining signal strength according to the subject matter described herein.
[0039] The communication interface 206 may include suitable logic components, circuits, and / or codes that enable wired or wireless communications, such as between any of the electronic devices 102A-102C, the AP 104, and / or the base station 106. The communication interface 206 may include a radio frequency (RF) circuit. The communication interface 206 may include, for example, one or more of the following: a Bluetooth communication interface, a cellular interface, an NFC interface, a Zigbee communication interface, a WLAN communication interface, a WiFi communication interface, a USB communication interface, or generally any communication interface. The communication interface 206 may include a circuit configured to send and / or receive signals (e.g., control signals, data signals). Such signals may be encoded with information that implements any of the methods described herein. The processor 202 may be operably coupled to the communication interface 206 and configured to receive signals from and / or send signals to the communication interface 206. The processor 202 may be configured to encode and / or decode signals (eg, signaling from an AP, signaling from a client device) for implementing any of the methods described herein.
[0040] In one or more specific implementations, one or more of the processor 202, memory 204, communication interface 206, and / or one or more portions thereof may be implemented in software (e.g., subroutines and code), in hardware (e.g., an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a programmable logic device (PLD), a controller, a state machine, a gated logic component, discrete hardware components, or any other suitable device), and / or a combination of both.
[0041] Figure 3 An example architecture is illustrated in which multi-AP (e.g., CoMAP) wireless communications may be performed. Figure 3In the example of FIG. 3 , a wireless access point 308 (referred to herein as a controller AP or C-AP) is connected to the Internet and communicates with a wireless access point 304 and a wireless access point 306 (referred to herein as a satellite AP or S-AP). As shown, electronic devices 300 and 301 communicate with wireless access point 304, and electronic devices 302 and 303 communicate with wireless access point 306. In this example, wireless access point 308 (e.g., C-AP) contends for medium access to obtain a transmit opportunity (TXOP). Upon obtaining medium access, wireless access point 308 may share channel resources (e.g., at least a portion of the time and / or bandwidth of the TXOP) with wireless access point 304 and / or wireless access point 306 (e.g., S-AP). Wireless access point 304 and / or wireless access point 306 (e.g., S-AP) may then allocate a portion of the portion of the TXOP received from wireless access point 308 to client devices (e.g., electronic devices 300, 301, 302, and / or 303). Electronic device 300, electronic device 301, electronic device 302 and / or electronic device 303 may be Figure 2 A specific implementation of the device 200 and / or Figure 1 The wireless access point 304, the wireless access point 306 and / or the wireless access point 308 may be a specific implementation of any of the electronic devices 102A-102C. Figure 2 Device 200 and / or Figure 1 A specific implementation of the wireless access point 104.
[0042] exist Figure 3 In this example architecture of , electronic devices 300, 301, 302, and 303 are connected to the network via a two-hop connection (e.g., including hop 1 from the client device to the S-AP and hop 2 from the S-AP to the C-AP). In one or more specific implementations, the wireless access point 308 can allocate channel resources (e.g., part of a TXOP) to one or both of the wireless access point 304 and the wireless access point 306 for downlink (DL) and / or uplink (UL) multi-user (MU) communication on hop 1. In one or more specific implementations, the S-AP (e.g., the wireless access point 304 and the wireless access point 306) can allocate channel resources from among the channel resources received from the C-AP to some or all of the electronic devices 300, the electronic device 301, the electronic device 302, and / or the electronic device 303 for downlink DL / UL (MU) communication on hop 2.
[0043] In one or more implementations, wireless access point 304 and wireless access point 306 may determine how to allocate channel resources to electronic device 300, electronic device 301, electronic device 302, and / or electronic device 303. In one or more implementations, wireless access point 308 may instruct wireless access point 304 and wireless access point 306 how to allocate channel resources to electronic device 300, electronic device 301, electronic device 302, and / or electronic device 303. In one or more implementations, the S-AP may determine how to allocate channel resources to the client device based on buffer size information received from the client device and / or additional buffer size information calculated at the S-AP (e.g., as combined with, e.g., Figure 7 In one or more implementations, the C-AP may determine how to allocate channel resources to the S-AP based on the buffer size information received from the S-AP and / or the additional buffer size information calculated at the C-AP (e.g., as combined with, e.g., Figure 7 In one or more specific implementations, the C-AP and / or the S-AP may allocate channel resources based on the delay information (e.g., as described herein in conjunction with Fig. 9 , Fig.11 , Fig.12 , Fig.13 and / or Fig.15 described).
[0044] exist Figure 3 In this example architecture, the S-AP may be connected to the C-AP via a wired and / or wireless connection to reach the Internet. In one or more specific implementations, a gateway circuit for accessing the Internet may be implemented at the C-AP or communicate with the C-AP. Figure 3 The example architecture includes one C-AP, two S-APs, and four client devices. However, this is merely illustrative, and in various implementations, fewer or more than two client devices may communicate with the S-APs, and / or fewer or more than two S-APs may communicate with the C-APs.
[0045] Figure 4 Another example architecture in which multi-AP (e.g., CoMAP) wireless communications may be performed is illustrated. Figure 4 In the example of FIG. 1 , a wireless access point 308 (referred to in this example as S-AP) is connected to the Internet and communicates with the Figure 3 304 and wireless access point 306 (referred to herein as satellite AP or S-AP) as in the example of FIG. Figure 4 In the example of , wireless access point 304 and wireless access point 306 may also contend for medium access (eg, and connect to the Internet). Figure 4In the example of , wireless access point 304 , wireless access point 306 , and wireless access point 308 may communicate with controller 400 (eg, via a wired connection) (eg, accessible via the Internet).
[0046] As in Figure 3 As in the example, Figure 4 In FIG. 3 , electronic device 300 and electronic device 301 communicate with wireless access point 304, and electronic device 302 and electronic device 303 communicate with wireless access point 306. Figure 4 In the example of FIG. 4 , any or all of the wireless access points 304, 306, and / or 308 contend for medium access to obtain a transmit opportunity (TXOP), and upon obtaining medium access, may share channel resources (e.g., at least a portion of the time and / or bandwidth of the TXOP) with any other of the wireless access points 304, 306, and / or 308 (e.g., according to an allocation instruction from the controller 400). The wireless access points 304 and 306 (e.g., S-APs) may then allocate a portion of the TXOP obtained by themselves or a portion of the TXOP received from another S-AP to client devices (e.g., electronic device 300, electronic device 301, electronic device 302, and / or electronic device 303).
[0047] exist Figure 4 In this example architecture, electronic devices 300, 301, 302, and 303 are connected to the network via a one-hop connection (e.g., hop 1 including from the client device to the S-AP to which the client device is connected). In this example, the S-AP (e.g., wireless access point 304 and wireless access point 306) may allocate channel resources from the channel resources obtained by itself or from the channel resources received from another S-AP to some or all of the electronic devices 300, 301, 302, and / or 303 for downlink DL / UL MU communication on hop 1. In one or more specific implementations, the wireless access point 304, the wireless access point 306, and / or the wireless access point 308 may determine how to allocate channel resources to the electronic devices 300, 301, 302, and / or 303. In one or more specific implementations, controller 400 may instruct wireless access point 304 , wireless access point 306 , and / or wireless access point 308 how to allocate channel resources to other wireless access points and / or electronic devices 300 , 301 , 302 , and / or 303 .
[0048] In one or more specific implementations, the S-AP may determine how to allocate channel resources to the client device based on the buffer size information received from the client device and / or the additional buffer size information calculated at the S-AP (e.g., as combined with, e.g., Figure 7 In one or more specific implementations, the controller may determine how to allocate channel resources between S-APs and / or to client devices based on buffer size information received from the S-APs and / or additional buffer size information calculated at the S-APs (e.g., as combined with, e.g., Figure 8 In one or more specific implementations, the S-AP may allocate channel resources based on the delay information (e.g., as described herein in conjunction with Fig.10 , Fig.11 , Fig.12 , Fig.13 and / or Fig.15 described).
[0049] exist Figure 4 In this example architecture, the S-AP may be connected to one or more gateways via wired and / or wireless connections to reach the Internet. In one or more specific implementations, the controller 400 may be a cloud-based controller reachable via the Internet. Figure 4 The example architecture of includes one controller, three S-APs, and four client devices. However, this is merely illustrative, and in various implementations, less than or more than two client devices may communicate with the S-APs, and / or less than or more than two S-APs may communicate with one or more controllers.
[0050] As discussed herein, a wireless access point, such as a C-AP or S-AP, may allocate channel resources to one or more other S-APs and / or to one or more client devices. Figure 5 illustrates how channel resources (e.g., TXOP) are allocated in Figure 3 An example of an assignment in the architecture of . Figure 5 In the example of FIG. 4 , a TDMA allocation 500 and an FDMA allocation 502 of a TXOP won by a C-AP (e.g., wireless access point 308) are shown, where the time x bandwidth portion of the TXOP is allocated by the C-AP to the S-AP for DL / UL on hop 1 and DL / UL on hop 2. Figure 6 illustrates how channel resources (e.g., TXOP) are allocated in Figure 4 An example of an assignment in the architecture of . Figure 6 In the example of FIG. 4 , a TDMA allocation 600 and an FDMA allocation 602 of a TXOP won by an S-AP (e.g., wireless access point 304) are shown, where the time x bandwidth portion of the TXOP is allocated by the S-AP to the S-AP and another S-AP for DL / UL on hop 1.
[0051] Figure 7 The example shows Figure 3 A timing diagram of the operation of multiple APs (eg, CoMAP) in an architecture of FIG. Figure 7 As shown in the example of , a wireless access point 304 (e.g., an S-AP) may transmit a request signal (e.g., a trigger frame such as a buffer status report poll (BSRP)) to a client device such as an electronic device 300. In response to the request signal, the electronic device 300 may calculate (700) a buffer status report (BSR) for buffered data of an uplink at the electronic device 300, and respond to the request signal with a response signal including the calculated value of the buffer status report. For example, the buffer status report may include buffer information, such as a buffer size (e.g., a queue size or QS) for buffered data of a highest priority access category (e.g., from among a voice access category, a video access category, a best effort access category, and a background access category) at the electronic device 300, and a sum of buffer sizes for all access categories in the access category of the electronic device 300 (e.g., a sum of QSs). In one or more specific implementations, the BSR may be included in an A control field of a communication (e.g., a physical layer protocol data unit (PPDU)) to the wireless access point 304 and / or included in one or more quality of service (QoS) fields in the PPDU, which update the BSR of the access category (AC) to which the QoS field corresponds.
[0052] The wireless access point 304 may then receive a request signal (e.g., a trigger frame such as a BSRP) from the wireless access point 308, and in response, calculate (702) an uplink hop 1 buffer status report, a downlink hop 1 buffer status report, and an S-AP uplink hop 2 buffer status report. For example, the uplink hop 1 buffer status report may include buffer information such as (i) a sum of buffer sizes for buffered data in an uplink in a highest priority access category across all client devices (e.g., the electronic device 300 and the electronic device 301) connected to the wireless access point 304 (e.g., first uplink buffer size information for a first access category in a plurality of access categories for one or more client devices, the first access category being a high priority access category having a higher priority than corresponding priorities of remaining access categories in the plurality of access categories), and / or (ii) a sum of buffer sizes for buffered data in all access categories across all client devices in the access categories of the wireless access point 304 (e.g., second uplink buffer size information for a plurality of access categories including a high priority access category for one or more client devices).
[0053] For example, the downlink hop 1 buffer status report may include buffer information such as (i) a sum of buffer sizes (e.g., QS) of buffered data at the wireless access point 304 for downlinks in the highest priority access category to all client devices (e.g., electronic device 300 and electronic device 301) connected to the wireless access point 304 (e.g., first downlink buffer size information for a high priority access category for one or more client devices), and / or (ii) a sum of buffer sizes (e.g., QS) of buffered data at the wireless access point 304 for downlinks in all access categories in the access categories to all client devices connected to the wireless access point 304 (e.g., second downlink buffer size information for multiple access categories including a high priority access category for one or more client devices). In one or more specific implementations, the UL Jump 1 BSR and DL Jump 1 BSR values may be reported using one or more data structures that include a scaling factor (SF), such as a two-bit scaling factor, and a corresponding unscaled value that, when combined (e.g., multiplied) with the SF, indicates a QS for a voice category, a QS for a video category, a QS for a background category, a QS for a best-effort category, and a sum of the QSs over all access categories.
[0054] For example, the S-AP uplink hop 2 buffer status report may include buffer information such as (i) a buffer size (e.g., QS) for buffered data for an uplink in a highest priority access category from the wireless access point 304 to the wireless access point 308 (e.g., C-AP) (e.g., third uplink buffer size information for a high priority access category for the wireless access point), and / or (ii) a sum of buffer sizes (e.g., QS) for buffered data for an uplink in all of the access categories from the wireless access point 304 to the wireless access point 308 (e.g., fourth uplink buffer size information for a plurality of access categories including the high priority access category for the wireless access point).
[0055] like Figure 7 As shown, the wireless access point 304 may send a response to the request signal (e.g., BSRP) from the wireless access point 308 to the wireless access point 308, the response including the calculated values of UL hop 1 BSR, DL hop 1 BSR, and UL hop 2 BSR (e.g., including the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information, and the fourth uplink buffer size information).
[0056] The wireless access point 308 may then obtain (704) the C-AP UL Hop 2BSR and the DL Hop 2BSR. For example, the C-AP UL Hop 2BSR may include buffer information provided in the S-AP UL Hop 2BSR, such as (i) a buffer size (e.g., QS) of buffered data at the wireless access point 304 for uplinks in the highest priority access category (e.g., to the C-AP) (e.g., a third uplink buffer size for the high priority access category of the wireless access point), and / or (ii) a sum of buffer sizes (e.g., QS) of buffered data at the wireless access point 304 for uplinks in all access categories in the access category (e.g., a fourth uplink buffer size, such as a sum of uplink buffer sizes for multiple access categories including the high priority access category at the wireless access point). For example, the DL Hop 2 BSR report may be calculated by the C-AP and may include buffer information, such as (i) a buffer size (e.g., QS) for buffered data at the wireless access point 308 (e.g., C-AP) for a downlink in the highest priority access category (e.g., to the wireless access point 304) (e.g., a third downlink buffer size for the high priority access category of the wireless access point 308), and / or (ii) a sum of the buffer sizes (e.g., QS) for buffered data at the wireless access point 308 for a downlink in all access categories in the access category (e.g., a sum of the downlink buffer sizes for multiple access categories including the high priority access category at the wireless access point 308).
[0057] Once the wireless access point 308 has obtained the C-AP UL Hop 2BSR and the DL Hop 2BSR, the wireless access point 308 may contend for channel access to obtain a transmission opportunity and allocate a portion (e.g., some or all) of the transmission opportunity to the wireless access point 304 based on the C-AP UL Hop 2BSR (e.g., the third uplink buffer size and the fourth uplink buffer size) and the DL Hop 2BSR (e.g., the third downlink buffer size, and / or the sum of the downlink buffer sizes).
[0058] In one or more specific implementations, the wireless access point 308 and / or the wireless access point 304 may allocate at least some of the portion of the transmission opportunities to the electronic device 300 based on the UL hop 1 BSR (e.g., the first uplink buffer size information and / or the second uplink buffer size information), the DL hop 1 BSR (e.g., the first downlink buffer size information and / or the second downlink buffer size information), and the S-AP UL hop 2 BSR (e.g., the third uplink buffer size information and the fourth uplink buffer size information). In one or more specific implementations, the first uplink buffer size information may include a sum of uplink buffer sizes for high priority access categories on all client devices among the one or more client devices, the second uplink buffer size information may include a sum of uplink buffer sizes on all access categories on all client devices among the one or more client devices, the first downlink buffer size information may include a sum of downlink buffer sizes for high priority access categories on all client devices among the one or more client devices, and the second downlink buffer size information may include a sum of downlink buffer sizes on all access categories on all client devices among the one or more client devices.
[0059] Figure 8 The example shows Figure 4 A timing diagram of the operation of multiple APs (eg, CoMAP) in an architecture of FIG. Figure 8 As shown in Figure 7 As in , the electronic device 300 may calculate 700 a BSR for the electronic device 300 and transmit the BSR to the wireless access point 304 in response to a request signal (eg, BSRP) from the wireless access point 304. Figure 7 Like in Figure 8 In , the wireless access point 304 can calculate the UL hop 1 BSR, DL hop 1 BSR and S-AP UL hop 2 BSR. Figure 8In the embodiment, the wireless access point 304 contends for channel access to obtain a transmission opportunity, and allocates client resources (e.g., at least a portion of the transmission opportunity) to the electronic device 300 (and / or one or more other client devices) based on the BSR, UL hop 1 BSR, DL hop 1 BSR, and S-AP UL hop 2 BSR (e.g., including the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information, and the fourth uplink buffer size information) of the electronic device 300. In one or more specific implementations, the wireless access point 304 may determine how to allocate client resources based on the BSR, UL hop 1 BSR, DL hop 1 BSR, and S-AP UL hop 2 BSR of the electronic device 300. In one or more other specific implementations, the wireless access point 304 may communicate with the controller 400 (e.g., via a wired connection) to determine how to allocate client resources based on the BSR, UL hop 1 BSR, DL hop 1 BSR, and S-AP UL hop 2 BSR of the electronic device 300 (e.g., the controller 400 may determine how to allocate client resources and may instruct the wireless access point 304 how to allocate client resources).
[0060] Figure 3 and / or Figure 4 The architecture, and Figure 7 and / or Figure 8 The operation of the MU and / or MLO can provide more Tx / Rx opportunities in the BSS and produce latency reduction (e.g., relative to existing systems that only use MU and / or MLO operation). Figure 7 and Figure 8 In the example of , the buffer information provided from the client device to the S-AP and / or from the S-AP to the C-AP does not include an indication of the urgency of draining the queue / buffer. Figure 7 and Figure 8 In the example of , the C-AP (e.g., wireless access point 308) or controller 400 may allocate channel resources based on the buffer information and according to the "drain all AC queues ASAP" or "drain priority AC queues ASAP" policy for both hop 1 and hop 2. However, in one or more use cases, the "drain all AC queues ASAP" or "drain priority AC queues ASAP" policy may cause the C-AP (e.g., wireless access point 308) or controller (e.g., controller 400) to aggressively allocate resources in one or more TXOPs to specific S-APs and withhold resources from other S-APs and their BSSs. For example, this may be inefficient in a use case where the S-APs and their BSSs that are receiving fewer resources have urgent (e.g., delay-sensitive) data and the specific S-APs that are being actively drained have less urgent (e.g., less delay-sensitive) data.
[0061] In one or more specific implementations, latency for a wireless communication system can be reduced by the S-AP returning to the C-AP time x bandwidth resources that have been allocated to it by the C-AP and will not be used by the S-AP. In this way, the C-AP can determine whether to consume the returned resources itself or allocate the returned resources to another S-AP.
[0062] In one or more other specific implementations (hereinafter in conjunction with, for example, Figures 9 to 13 and Fig.15 In further detail), a client device and / or S-AP may generate and communicate latency guidance information indicating how urgently a buffer at the device will be drained. The C-AP, controller, and / or S-AP may then use the latency guidance information to allocate channel resources to other S-APs and / or to client devices. In this way, an improved network system may be provided, particularly, for example, for latency-sensitive applications.
[0063] Fig. 9 The example shows Figure 3 A timing diagram of the operation of channel resource allocation with latency guidance in an example architecture of FIG. Fig. 9 As shown in the example of , a wireless access point 304 (e.g., S-AP) may transmit a request signal (e.g., a trigger frame such as BSRP) to a client device such as an electronic device 300. In response to the request signal, the electronic device 300 may calculate (900) a latency-guided (LG) buffer status report for buffered data of an uplink at the electronic device 300, and respond to the request signal with a response signal including the calculated value of the latency-guided buffer status report. For example, the latency-guided buffer status report may include (i) buffer information, such as buffer size information (e.g., buffer size, such as queue size or QS) for buffered data of an uplink in each access category (e.g., voice access category, video access category, best effort access category, and background access category) at the electronic device 300, and (ii) latency information (e.g., latency tolerance information) for the buffered data. For example, the latency information may include a corresponding latency tolerance (e.g., maximum tolerable latency) for buffered data of each access category in a plurality of corresponding access categories. In one or more implementations, the BSR may be included in an A control field of a communication to the wireless access point 304 (e.g., as described below in conjunction with Fig.11 ) and / or included in one or more Quality of Service (QoS) fields (e.g., as described below in conjunction with Fig.12 discussed in further detail).
[0064] The wireless access point 304 may then receive a request signal (e.g., a trigger frame such as a BSRP) from the wireless access point 308, and in response, calculate (902) an uplink hop 1 delay guided buffer status report, a downlink hop 1 delay guided buffer status report, and an S-AP uplink hop 2 delay guided buffer status report. For example, the uplink hop 1 delay guided buffer status report may include (i) buffer information, such as a sum of buffer sizes for buffered data for uplinks in each of the access categories across all of the client devices connected to the wireless access point 304 (e.g., a total uplink buffer size for one or more client devices including the client device), and (ii) latency information, such as a minimum value of latency tolerance (e.g., a maximum tolerable latency) for each of the access categories across all of the client devices connected to the wireless access point 304 (e.g., an uplink client latency tolerance for one or more of the client devices including the client device).
[0065] For example, the downlink hop 1 delay guided buffer status report may include (i) buffer information, such as the sum of buffer sizes for buffered data for a downlink at the wireless access point 304 on all of the client devices connected to the wireless access point 304 (e.g., a total downlink buffer size for one or more client devices including the client device), and (ii) delay information, such as a minimum value (e.g., a maximum tolerable delay) for a downlink for each of the access categories across all of the client devices connected to the wireless access point 304 (e.g., a downlink client delay tolerance for one or more of the client devices including the client device).
[0066] In one or more specific implementations, the S-AP uplink hop 2 delay guided buffer status report may include (i) buffer information, such as a buffer size of buffered data at the wireless access point 304 for the uplink in each access category in the access categories (e.g., access point buffer size), and (ii) delay information, such as a minimum value of a delay tolerance (e.g., maximum tolerable delay) for buffered data at the wireless access point 304 for the uplink in each access category in the access categories (e.g., access point delay).
[0067] like Fig. 9As shown, the wireless access point 304 may send a response to the request signal (e.g., BSRP) from the wireless access point 308 to the wireless access point 308, the response including the calculated values of the UL Hop 1 Delay Guided BSR, the DL Hop 1 Delay Guided BSR, and the S-AP UL Hop 2 Delay Guided BSR (e.g., including the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance). In one or more implementations, the UL hop 1L-G BSR and DL hop 1L-G BSR values may be reported using one or more data structures including a scaling factor (SF), such as a two-bit scaling factor, one or more reserved bits, and a corresponding unscaled value that, when combined (e.g., multiplied) with the SF (or a number derived from the scaling factor), indicates a QS for a voice class, a QS for a video class, a QS for a background class, a QS for a best-effort class, a delay tolerance (e.g., maximum tolerable delay) for a voice class, a delay tolerance (e.g., maximum tolerable delay) for a video class, a delay tolerance (e.g., maximum tolerable delay) for a background class, and a delay tolerance (e.g., maximum tolerable delay) for a best-effort class. In one or more implementations, the S-AP uplink hop 2L-G BSR may be sent in the A control field of the PPDU (e.g., using a configurable field described below in conjunction with the configurable field). Fig.11 ).
[0068] The wireless access point 308 may then obtain (904) a C-AP UL LG Hop 2 BSR and a DL LG Hop 2 Delay Guided BSR (e.g., based in part on the UL Hop 1 L-G BSR, the DL Hop 1 L-G BSR, and the S-AP UL Hop 2 L-G BSR). For example, the C-AP UL Hop 2 L-G BSR may include (i) buffer information provided in the S-AP UL Hop 2 BSR, such as a buffer size (e.g., QS) for buffered data at the wireless access point 304 for uplink in each access category in the access categories (e.g., an uplink buffer size for the wireless access point), and (ii) latency information provided in the S-AP UL Hop 2 BSR, such as a minimum value of latency tolerance (e.g., a maximum tolerable latency) for buffered data at the wireless access point 304 for uplink in each access category in the access categories (e.g., an uplink latency tolerance for the wireless access point). For example, the DL Hop 2L-G BSR may be calculated at the wireless access point 308 and may include (i) buffer information, such as a buffer size (e.g., QS) for buffered data at the wireless access point 308 for a downlink to the wireless access point 304 in each access category in the access categories (e.g., a downlink buffer size for the wireless access point), and (ii) delay information, such as a minimum value (e.g., a maximum tolerable delay) for a delay tolerance for buffered data at the wireless access point 308 for a downlink to the wireless access point 304 in each access category in the access categories (e.g., a downlink delay tolerance for the wireless access point).
[0069] The wireless access point 308 may then contend for medium access to obtain a TXOP. Fig. 9 As shown, the wireless access point 308 may then allocate channel resources (e.g., a portion of a transmit opportunity) to the wireless access point 304 (and / or to one or more other wireless access points) and / or to the electronic device 300 (e.g., and / or one or more other client devices communicating with the wireless access point 304) based on the C-AP UL LG Hop 2BSR and the DL LG Hop 2BSR (e.g., based on the access point buffer size, the access point delay tolerance, the downlink buffer size, and / or the downlink delay tolerance for the wireless access point).
[0070] In one or more specific implementations, the wireless access point 308 and / or the wireless access point 304 may allocate at least some of the portion of the transmission opportunities allocated to the wireless access point 304 to the electronic device 300 based on the UL hop 1L-GBSR, the DL LG hop 1BSR, and the S-AP LG UL hop 2BSR.
[0071] Fig.10 The example shows Figure 4 A timing diagram of the operation of channel resource allocation with latency guidance in an example architecture of FIG. Fig.10 As shown in Fig. 9 As in , the electronic device 300 may calculate 900 the LG BSR for the electronic device 300 and transmit the LG BSR to the wireless access point 304 in response to a request signal (eg, a trigger frame such as a BSRP) from the wireless access point 304. Fig. 9 Like in Fig.10 In , the wireless access point 304 can calculate the UL hop 1L-G BSR, the DL hop 1L-G BSR and the S-AP UL hop 2L-G BSR. Fig.10 In the embodiment, the wireless access point 304 contends for channel access to obtain a transmission opportunity, and allocates client resources (e.g., at least a portion of the transmission opportunity) to the electronic device 300 based on the LG BSR, UL LG hop 1 BSR, DL hop 1L-G BSR, and / or S-AP UL hop 2L-G BSR of the electronic device 300. In one or more specific implementations, the wireless access point 304 may determine how to allocate client resources based on the LG BSR, UL hop 1L-G BSR, DL hop 1L-G BSR, and / or S-AP UL hop 2L-G BSR of the electronic device 300. In one or more other specific implementations, the wireless access point 304 may communicate with the controller 400 to determine how to allocate client resources based on the LG BSR, UL hop 1L-G BSR, DL hop 1L-G BSR, and / or S-AP UL hop 2L-G BSR of the electronic device 300 (e.g., the controller 400 may determine how to allocate client resources based at least in part on the latency information received from the S-AP and may instruct the wireless access point on how to allocate client resources).
[0072] As discussed herein, the LG BSR may be included in the A control field of a communication to the wireless access point 304 (eg, as described below in conjunction with Fig.11 Detailed discussion) and / or included in one or more Quality of Service (QoS) fields (e.g., as described below in conjunction with Fig.12 For example, Fig.11It illustrates how the LG BSR (eg, including a buffer size for each access category (AC) for the electronic device 300 and a delay tolerance for each access category) is transmitted as one of the one or more subfields 1102 of the A control field of the PPDU 1100. For example, as shown, the LG BSR may be represented in a data structure 1104, which includes a scaling factor (SF) and unscaled values for the following: a buffer size for a voice access category (QS AC_VO), a buffer size for a video access category (QS AC_VI), a buffer size for a best-effort service category (QS AC_BE), a buffer size for a background access category (QS AC_BK), a delay tolerance (e.g., maximum tolerable delay) for the voice access category (L AC_VO), a delay tolerance (e.g., maximum tolerable delay) for the video access category (L AC_VI), a delay tolerance (e.g., maximum tolerable delay) for the best-effort service access category (L AC_BE), and a delay tolerance (e.g., maximum tolerable delay) for the background category (L AC_BK). The corresponding buffer size and delay tolerance may be obtained by combining (e.g., multiplying) these corresponding unscaled values with values based on the scaling factor.
[0073] For example, in one or more implementations, the scaling factor for the buffer size may be interpreted differently than the scaling factor for the delay tolerance. For example, in one exemplary implementation, for the buffer size (QS), the scaling factor integer values such as 0, 1, 2, 3, etc. may represent an exponent value (e.g., an exponent of the number sixteen), and the unscaled QS value may be an integer value representing a different exponent value (e.g., an exponent of the number two). For example, in one exemplary implementation, for the delay tolerance (Ls), the scaling factor integer values such as 0, 1, 2, 3, etc. may represent values such as 10, 20, 40, 80, etc., and the unscaled L value may be an integer value representing an exponent value (e.g., an exponent of the number two). In one or more implementations, the S-AP UL Hop 2 L-G BSR may also be represented by a data structure similar to the data structure 1104.
[0074] As another example of how the value of LG-BSR may be sent from electronic device 300 to wireless access point 304, Fig.12An example is shown of how the value of the LG-BSR may be sent in one or more QoS fields of a quality of service (QoS) frame 1200. As shown, one or more subfields of a QoS field 1202 of the QoS frame 1200 may include a data structure 1204, which includes a scaling factor (SF), a buffer size (QS_AC) for the access category to which the QoS frame corresponds, and a delay tolerance (L_AC) such as a maximum tolerable delay for the access category to which the QoS frame corresponds. In this example, a QoS frame for each access category may carry LG-BSR information (e.g., buffer size QS_AC and delay tolerance L_AC) for the access category.
[0075] Fig.13 A flowchart of an example process 1300 for wireless communication according to one or more specific implementations is illustrated. For the purpose of explanation, this document mainly refers to Figure 3 and Figure 4 The process 1300 is described with reference to the electronic device 300 and the wireless access point 304. However, the process 1300 is not limited to Figure 3 and Figure 4 The electronic device 300 and the wireless access point 304 of the present invention may be used, and one or more blocks (or operations) of the process 1300 may be performed by one or more other suitable devices. Further for the purpose of explanation, the blocks of the process 1300 are described herein as occurring sequentially or linearly. However, multiple blocks of the process 1300 may occur in parallel. In addition, the blocks of the process 1300 do not have to be performed in the order shown, and / or one or more blocks of the process 1300 do not have to be performed and / or may be replaced by other operations.
[0076] At block 1302, a wireless access point (e.g., an S-AP such as wireless access point 304) may receive, from a client device (e.g., electronic device 300), buffer size information for buffered data at the client device and latency information relative to the buffered data. For example, the buffer size information and latency information may be received in a latency-guided buffer status report (LG BSR) as described herein. For example, the latency information may include a respective latency tolerance (e.g., LA C_*) for transmission of buffered data in each of a number of respective access categories (e.g., a voice category, a video category, a best effort category, and a background category). For example, the buffer size information may include a buffer size for each of the number of respective access categories.
[0077] At block 1304, the wireless access point may allocate channel resources to the client device based on the buffer size information and the latency information. For example, the channel resources may be part of a transmit opportunity (TXOP) obtained by the wireless access point or another wireless access point. Figure 5 and6 Example allocations of channel resources are described.
[0078] In one or more specific implementations, the wireless access point may, before allocating channel resources, use the buffer size information to determine a total uplink buffer size for one or more client devices including the client device, use the delay information to determine an uplink client delay tolerance for one or more client devices including the client device, determine a total downlink buffer size for one or more client devices including the client device, and determine a downlink client delay tolerance for one or more client devices including the client device. In these specific implementations, allocating channel resources may include allocating channel resources based at least in part on the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, and the downlink client delay tolerance. In one or more specific implementations, the wireless access point may also, before allocating channel resources, determine an access point buffer size for the wireless access point, and determine an access point delay tolerance for the wireless access point. In these specific implementations, allocating channel resources may include allocating channel resources based at least in part on the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and / or the access point delay tolerance.
[0079] For example, a total uplink buffer size for one or more client devices including the client device may include the sum of the uplink buffer sizes for each access category on all client devices in the one or more client devices, an uplink client delay tolerance for one or more client devices including the client device may include a minimum value of the delay tolerance for each access category on all client devices in the one or more client devices (e.g., the smallest of the maximum tolerable delays), a total downlink buffer size for one or more client devices including the client device may include the sum of the downlink buffer sizes for each access category on all client devices in the one or more client devices, and a downlink client delay tolerance for one or more client devices including the client device may include a minimum value of the delay tolerance for each access category on all client devices in the one or more client devices (e.g., the smallest of the maximum tolerable delays).
[0080] In one or more implementations, a total uplink buffer size for one or more client devices including the client device and an uplink client delay tolerance for one or more client devices including the client device may form a UL hop 1L-G BSR as described herein. In one or more implementations, a total downlink buffer size for one or more client devices including the client device and a downlink client delay tolerance for one or more client devices including the client device may form a DL hop 1L-G BSR as described herein. In one or more implementations, an access point buffer size and an access point delay tolerance may form a S-AP UL hop 2L-GBSR as described herein.
[0081] In one or more specific implementations, allocating channel resources may include: contending for channel access by a wireless access point to obtain a transmit opportunity, and allocating a portion of the transmit opportunity to a client device based on a total uplink buffer size, an uplink client delay tolerance, a total downlink buffer size, a downlink client delay tolerance, an access point buffer size, and / or an access point delay tolerance (e.g., as described herein in conjunction with Fig.10 For example, allocating the portion of the transmission opportunity may include: allocating a first portion of the time of the transmission opportunity (e.g., as in Figure 6 As another example, allocating the portion of the transmission opportunity may include: allocating a first portion of the bandwidth of the transmission opportunity (e.g., as in Figure 6 as in the FDMA allocation 602 example).
[0082] In one or more specific implementations, allocating channel resources may include: providing a total uplink buffer size, an uplink client delay tolerance, a total downlink buffer size, a downlink client delay tolerance, an access point buffer size, and an access point delay tolerance to other wireless access points (e.g., a C-AP such as wireless access point 308); receiving from the other wireless access points a portion of transmit opportunities obtained by the other wireless access points in response to providing the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance to the other wireless access points; and allocating at least some of the portion of transmit opportunities to client devices based on the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance (e.g., as described herein in conjunction with Fig. 9 For example, allocating the portion of the transmission opportunity may include: allocating a first portion of the time of the transmission opportunity (e.g., as in Figure 5As another example, allocating the portion of the transmission opportunity may include: allocating a first portion of the bandwidth of the transmission opportunity (e.g., as in the TDMA allocation 500 example). Figure 5 as in the FDMA allocation 502 example).
[0083] In one or more specific implementations, process 1300 may also include: determining, by other wireless access points, a downlink buffer size (e.g., for each access category) for the wireless access point (e.g., for downlinks from other wireless access points to the wireless access point); determining a downlink delay tolerance (e.g., for each access category) for the wireless access point; and allocating the portion of the transmit opportunity to the wireless access point based on the access point buffer size, the access point delay tolerance, the downlink buffer size, and / or the downlink delay tolerance for the wireless access point. For example, the access point buffer size and the access point delay tolerance may form a C-AP UL LG hop 2 BSR as described herein, and the downlink buffer size for the wireless access point and the downlink delay tolerance for the wireless access point may form a DL LG hop 2 BSR as described herein.
[0084] Fig.14 A flowchart of another example process 1400 for wireless communication according to one or more specific implementations is illustrated. For the purpose of explanation, this document mainly refers to Figure 3 and Figure 4 The process 1400 is described with reference to the electronic device 300 and the wireless access point 304. However, the process 1400 is not limited to Figure 3 and Figure 4 The electronic device 300 and the wireless access point 304 of the present invention may be used, and one or more blocks (or operations) of the process 1400 may be performed by one or more other suitable devices. Further for the purpose of explanation, the blocks of the process 1400 are described herein as occurring sequentially or linearly. However, multiple blocks of the process 1400 may occur in parallel. In addition, the blocks of the process 1400 do not have to be performed in the order shown, and / or one or more blocks of the process 1400 do not have to be performed and / or may be replaced by other operations.
[0085] At block 1402, a wireless access point (e.g., an S-AP such as wireless access point 304) may receive buffer size information from each of one or more client devices (e.g., including electronic device 300). For example, the buffer size information may be provided in conjunction with, for example, Figure 7 and / or Figure 8For example, the buffer size information from each of the one or more client devices may include a buffer size for a high priority access category and a sum of buffer sizes for multiple access categories including the high priority access category.
[0086] At block 1404, the wireless access point may generate, based on the buffer size information: first uplink buffer size information for a first access category of a plurality of access categories (e.g., for the one or more client devices). The first access category may be a high priority access category having a higher priority than corresponding priorities of remaining access categories of the plurality of access categories. The wireless access point may also generate second uplink buffer size information for a plurality of access categories (e.g., including the high priority access category for the one or more client devices). The wireless access point may also generate first downlink buffer size information for a first access category (e.g., the high priority access category) for the one or more client devices. The wireless access point may also generate second downlink buffer size information for a plurality of access categories (e.g., including the high priority access category) for the one or more client devices. In one or more specific implementations, the first uplink buffer size information and the second uplink buffer size information may be included in a UL hop 1 BSR as described herein. In one or more specific implementations, the first downlink buffer size information and the second downlink buffer size information may be included in a DL hop 1 BSR as described herein.
[0087] For example, the first uplink buffer size information may include the sum of uplink buffer sizes for high priority access categories on all client devices in one or more client devices, the second uplink buffer size information may include the sum of uplink buffer sizes on all access categories on all client devices in one or more client devices, the first downlink buffer size information may include the sum of downlink buffer sizes for high priority access categories on all client devices in one or more client devices, and the second downlink buffer size information may include the sum of downlink buffer sizes on all access categories on all client devices in one or more client devices.
[0088] At block 1406, the wireless access point may allocate channel resources to one or more client devices based at least in part on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, and the second downlink buffer size information. For example, the channel resources may be part of a transmit opportunity (TXOP) obtained by the wireless access point or another wireless access point. Figure 5 and6 Example allocations of channel resources are described.
[0089] In one or more specific implementations, the wireless access point may also generate (e.g., calculate) third uplink buffer size information for a high priority access category for the wireless access point and fourth uplink buffer size information for multiple access categories including the high priority access category for the wireless access point, and allocate channel resources to one or more client devices based on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information, and / or the fourth uplink buffer size information. In one or more specific implementations, the third uplink buffer size information for the high priority access category for the wireless access point and the fourth uplink buffer size information for multiple access categories including the high priority access category for the wireless access point may be included in the S-AP UL Hop 2BSR, as described herein. For example, the third uplink buffer size information for the high priority access category for the wireless access point may include a buffer size for the high priority access category for an uplink at the wireless access point. For example, fourth uplink buffer size information for multiple access categories including a high priority access category for the wireless access point may include a sum of buffer sizes across all access categories in the multiple access categories for uplink at the wireless access point.
[0090] In one or more specific implementations, allocating channel resources may include: contending for channel access by the wireless access point to obtain a transmission opportunity; and allocating at least a portion of the transmission opportunity to at least one client device among the one or more client devices based on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information, and / or the fourth uplink buffer size information (e.g., as described herein in conjunction with Figure 8 For example, allocating at least the portion of the transmission opportunity may include: allocating a first portion of the time of the transmission opportunity (e.g., as in Figure 6 As another example, allocating at least the portion of the transmission opportunity may include: allocating a first portion of the bandwidth of the transmission opportunity (e.g., as in Figure 6 as in FDMA allocation 602).
[0091] In one or more specific implementations, allocating channel resources may also include: providing, by the wireless access point, first uplink buffer size information, second uplink buffer size information, first downlink buffer size information, second downlink buffer size information, third uplink buffer size information, and fourth uplink buffer size information to another wireless access point (e.g., a C-AP such as wireless access point 308); receiving from the other wireless access point a portion of transmit opportunities obtained by the other wireless access point in response to providing the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information, and the fourth uplink buffer size information to the other wireless access point; and allocating at least some of the portion of transmit opportunities to at least one client device among the one or more client devices based on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information, and / or the fourth uplink buffer size information (e.g., as described herein in conjunction with Figure 7 described).
[0092] In one or more specific implementations, process 1400 may also include: determining, by other wireless access points, a third downlink buffer size for the high priority access category of the wireless access point; determining a sum of downlink buffer sizes for multiple access categories including the high priority access category at the wireless access point; contending for channel access to obtain a transmission opportunity; and allocating the portion of the transmission opportunity to the wireless access point based on the third uplink buffer size information, the fourth uplink buffer size information, the third downlink buffer size, and / or the sum of the downlink buffer sizes (e.g., as described herein in conjunction with Figure 7 In one or more specific implementations, the third uplink buffer size information and the fourth uplink buffer size information may form a C-AP UL hop 2 BSR as described herein. In one or more specific implementations, the sum of the third downlink buffer size and the downlink buffer size may form a DL hop 2 BSR as described herein.
[0093] Fig.15 A flowchart of another example process 1500 for wireless communication according to one or more specific implementations is illustrated. For the purpose of explanation, this document mainly refers to Figure 3 and Figure 4 The process 1500 is described with reference to the electronic device 300 and the wireless access point 304. However, the process 1500 is not limited to Figure 3 and Figure 4The electronic device 300 and the wireless access point 304 of the present invention may be used, and one or more blocks (or operations) of the process 1500 may be performed by one or more other suitable devices. Further for the purpose of explanation, the blocks of the process 1500 are described herein as occurring sequentially or linearly. However, multiple blocks of the process 1500 may occur in parallel. In addition, the blocks of the process 1500 do not have to be performed in the order shown, and / or one or more blocks of the process 1500 do not have to be performed and / or may be replaced by other operations.
[0094] At block 1502, a processing circuit (e.g., host processor 202) of an apparatus of a client device (e.g., a client device such as electronic device 300) may determine a buffer size for buffering data (e.g., at the client device) for wireless communication. For example, the buffer size may include a QS for a high priority access category. The buffer size may also include a sum of QSs over multiple access categories (e.g., including a voice category, a video category, a best effort category, and a background category).
[0095] At block 1504, the processing circuit may determine delay tolerance information for the buffered data. For example, the delay tolerance information may include a corresponding delay tolerance (e.g., a corresponding maximum delay tolerance) for each access category in a plurality of corresponding access categories (e.g., as described herein in conjunction with Fig. 9 and / or Fig.10 described).
[0096] At block 1506, the processing circuitry may configure a radio frequency (RF) circuitry (e.g., RF circuitry 206) to send a response signal to a wireless access point (e.g., wireless access point 304). For example, the response signal may include buffer size and latency tolerance information. For example, the buffer size and latency tolerance information may be provided to the wireless access point in an A control field or one or more QoS subfields of a PPDU, as described herein in conjunction with Fig.11 and / or as described in 12.
[0097] At block 1508, the processing circuitry may receive channel resources from the wireless access point via the RF circuitry in response to sending the buffer size and delay tolerance information to the wireless access point. For example, the channel resources may be obtained by the wireless access point or another wireless access point in communication with the wireless access point (e.g., Figure 5 and 6 Part of a TXOP) described in the example of FIG.
[0098] At block 1510, the processing circuitry may configure the RF circuitry to transmit a portion of the buffered data (e.g., from the client device) using the channel resources. For example, the portion of the buffered data may include buffered data for one of a plurality of respective access categories (e.g., a latency-sensitive respective access category) that is latency-sensitive for the one respective access category (e.g., has a lower maximum tolerable latency than the maximum tolerable latency of buffered data in other access categories and / or at other client devices). For example, the portion of the TXOP allocated to the client device based on the buffer size and latency information may be a portion of the TXOP that has been allocated to the client device by the wireless access point, another wireless access point, and / or a controller (e.g., as described herein in conjunction with Fig. 9 , Fig.10 , Fig.11 , Fig.12 and / or Fig.13 The portion of the buffered data may be determined by the wireless access point (described herein) to be sufficient to drain the buffered data for the one of the plurality of corresponding access categories for which the buffered data is latency-sensitive but insufficient to drain the buffered data for one or more other of the plurality of corresponding access categories. As another example, the portion of the buffered data may include buffered data for two or three of the plurality of corresponding access categories that are latency-sensitive for the two or three corresponding access categories (e.g., having a lower maximum tolerable latency than the maximum tolerable latency of buffered data in the other access categories and / or at other client devices). For example, the portion of the TXOP allocated to the client device based on the buffer size and latency information may be a portion of the TXOP that has been allocated by the wireless access point, another wireless access point, and / or a controller (e.g., as described herein in conjunction with Fig. 9 , Fig.10 , Fig.11 , Fig.12 and / or Fig.13 The channel resources may be allocated to the client device for transmission of the next lowest maximum delay tolerant data and then allocated to the client device for transmission in one or more other corresponding access categories in the plurality of corresponding access categories.
[0099] Various aspects of the present technology may include collecting and using data that can be obtained from specific and legitimate sources for wireless communication. The present disclosure contemplates that, in some instances, the collected data may include personal information data that uniquely identifies or can be used to identify a specific person. Such personal information data may include image data, video data, demographic data, location-based data, online identifiers, phone numbers, email addresses, home addresses, device identifiers, data or records related to a user's health or fitness level (e.g., vital signs measurements, medication information, exercise information, EMG signals), date of birth, or any other personal information.
[0100] The present disclosure recognizes that the use of such personal information data in the present technology can be used to benefit the user. For example, the personal information data can be sent in wireless communications. In addition, the present disclosure also anticipates other uses of the personal information data that benefit the user. For example, health and fitness data can be used according to the user's preferences to provide insights into their overall health, or can be used as positive feedback to individuals who use technology to pursue health goals.
[0101] The present disclosure envisions that entities responsible for collecting, analyzing, disclosing, transmitting, storing or otherwise using such personal information data will comply with established privacy policies and / or privacy practices. Specifically, such entities will be expected to implement and consistently apply privacy practices that are generally recognized as meeting or exceeding the requirements of the industry or government that maintain user privacy. Such information about the use of personal data should be prominently accessible to users and should be updated as the collection and / or use of data changes. The user's personal information should be collected only for legal use. In addition, such collection / sharing should only occur after receiving user consent or other legal basis specified in applicable law. In addition, such entities should consider taking any necessary steps to protect and safeguard access to such personal information data and ensure that other entities with access to personal information data comply with the privacy policies and procedures of other entities. In addition, such entities can subject themselves to third-party assessments to prove that they comply with widely accepted privacy policies and practices. In addition, policies and practices should be adjusted for specific types of personal information data collected and / or accessed, and applied to applicable laws and standards, including specific considerations that are exclusive to jurisdictions that can be used to impose higher standards. For example, in the United States, collection or access to certain health data may be governed by federal and / or state laws, such as the Health Insurance Portability and Accountability Act (HIPAA); while health data in other countries may be subject to other regulations and policies and should be handled accordingly.
[0102] Regardless of the foregoing, the present disclosure also contemplates that users selectively block various aspects of the use or access to personal information data. That is, the present disclosure contemplates that hardware elements and / or software elements may be provided to prevent or block access to such personal information data. For example, with respect to wireless communications, the present technology may be configured to allow users to choose to "opt in" or "opt out" to participate in the collection of personal information data at any time during or after registration for a service. In addition to providing "opt-in" and "opt-out" options, the present disclosure also contemplates providing notifications related to access or use of personal information. For example, a user may be notified that their personal information data will be accessed when downloading an application, and then be reminded again just before the personal information data is accessed by the application.
[0103] In addition, it is the intention of the present disclosure that personal information data should be managed and processed in a manner that minimizes the risk of unintentional or unauthorized access or use. Once the data is no longer needed, the risk can be minimized by limiting the collection of data and deleting the data. In addition, and when applicable, including in certain health-related applications, data de-identification can be used to protect the privacy of users. De-identification can be promoted when appropriate by removing identifiers, controlling the amount or specificity of stored data (e.g., collecting location data at the city level rather than at the address level), controlling how data is stored (e.g., aggregating data among users), and / or other methods such as differential privacy.
[0104] Therefore, while the present disclosure broadly covers the use of personal information data to implement one or more of the various disclosed embodiments, the present disclosure also contemplates that various embodiments may be implemented without access to such personal information data. That is, various embodiments of the present technology will not fail to function properly due to the lack of all or part of such personal information data.
[0105] Fig.16 An electronic system 1600 is shown that can be used to implement one or more implementations of the subject technology. The electronic system 1600 can be Figure 1 One or more of the electronic devices 102A, 102B, or 102C shown, and / or may be Figure 1 The electronic system 1600 may include various types of computer-readable media and interfaces for various other types of computer-readable media. The electronic system 1600 includes a bus 1608, one or more processing units 1612, a system memory 1604 (and / or cache), a ROM 1610, a permanent storage device 1602, an input device interface 1614, an output device interface 1606, and one or more network interfaces 1616, or a subset and variant thereof.
[0106] The bus 1608 generally represents all system, peripheral, and chipset buses that communicatively connect the many internal devices of the electronic system 1600. In one or more specific implementations, the bus 1608 communicatively connects the one or more processing units 1612 with the ROM 1610, the system memory 1604, and the permanent storage device 1602. The one or more processing units 1612 retrieve instructions to be executed and data to be processed from these various memory units in order to perform the processes disclosed in the subject matter. In different specific implementations, the one or more processing units 1612 can be a single processor or a multi-core processor.
[0107] ROM 1610 stores static data and instructions required by the one or more processing units 1612 and other modules of the electronic system 1600. On the other hand, permanent storage device 1602 can be a read-write memory device. Permanent storage device 1602 can be a non-volatile memory unit that stores instructions and data even when the electronic system 1600 is turned off. In one or more specific implementations, a mass storage device (such as a magnetic or optical disk and its corresponding disk drive) can be used as permanent storage device 1602.
[0108] In one or more implementations, a removable storage device (such as a floppy disk, a flash drive, and its corresponding disk drive) may be used as the permanent storage device 1602. Like the permanent storage device 1602, the system memory 1604 may be a read-write memory device. However, unlike the permanent storage device 1602, the system memory 1604 may be a volatile read-write memory, such as a random access memory. The system memory 1604 may store any of the instructions and data that one or more processing units 1612 may need at runtime. In one or more implementations, the processes disclosed in the subject matter are stored in the system memory 1604, the permanent storage device 1602, and / or the ROM 1610. The one or more processing units 1612 retrieve instructions to be executed and data to be processed from these various memory units in order to perform the processes of one or more implementations.
[0109] The bus 1608 is also connected to an input device interface 1614 and an output device interface 1606. The input device interface 1614 enables a user to transmit information and select commands to the electronic system 1600. Input devices that can be used with the input device interface 1614 may include, for example, an alphanumeric keyboard and a pointing device (also referred to as a "cursor control device"). The output device interface 1606 may enable, for example, the display of images generated by the electronic system 1600. Output devices that can be used with the output device interface 1606 may include, for example, a printer and a display device, such as a liquid crystal display (LCD), a light emitting diode (LED) display, an organic light emitting diode (OLED) display, a flexible display, a flat panel display, a solid-state display, a projector, or any other device for outputting information. One or more specific implementations may include a device that is used as both an input device and an output device, such as a touch screen. In these specific implementations, the feedback provided to the user may be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback; and the input from the user may be received in any form, including acoustic, voice, or tactile input.
[0110] Finally, if Fig.16 As shown, bus 1608 also couples electronic system 1600 to one or more networks and / or to one or more network nodes, such as Figure 1 The AP 104 and / or base station 106 shown in FIG. Fig.16 As shown, network interface 1616 may include a WiFi communication interface (e.g., a WiFi module that may include one or more WiFi antennas and / or front-end circuits configured to receive and send wireless signals in one or more WiFi channels, as discussed herein). Network interface 1616 may also include one or more of the following: a Bluetooth communication interface, a cellular interface, an NFC interface, a Zigbee communication interface, a WLAN communication interface, a USB communication interface, or generally any communication interface. In this way, electronic system 1600 may be part of a computer network (such as a LAN, a wide area network ("WAN"), or an intranet), or may be part of a network of networks (such as the Internet). Any or all components of electronic system 1600 may be used with the subject disclosure.
[0111] According to various aspects of the present disclosure, a method is provided, the method comprising: receiving, at a wireless access point, from a client device: buffer size information of buffered data at the client device and delay information relative to the buffered data; and allocating, by the wireless access point, channel resources to the client device based on the buffer size information and the delay information.
[0112] According to aspects of the present disclosure, a method is provided, the method comprising: receiving buffer size information from each of one or more client devices at a wireless access point; generating at the wireless access point and based on the buffer size information: first uplink buffer size information for a first access category among a plurality of access categories for the one or more client devices, the first access category being a high priority access category having a higher priority than corresponding priorities of remaining access categories among the plurality of access categories; second uplink buffer size information for the plurality of access categories including the high priority access category for the one or more client devices; first downlink buffer size information for the high priority access category for the one or more client devices; and second downlink buffer size information for the plurality of access categories including the high priority access category for the one or more client devices; and allocating channel resources to the one or more client devices by the wireless access point based at least in part on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, and the second downlink buffer size information.
[0113] According to various aspects of the present disclosure, a method is provided, the method comprising: determining, by an electronic device, a buffer size for buffered data for wireless communication; determining, by the electronic device, delay tolerance information of the buffered data; providing the buffer size and the delay tolerance information to a wireless access point; receiving channel resources from the wireless access point in response to providing the buffer size and the delay tolerance information to the wireless access point; and sending a portion of the buffered data using the channel resources.
[0114] According to aspects of the present disclosure, there is provided an apparatus of a client device, the apparatus comprising a processing circuit, the processing circuit being configured to: determine a buffer size for buffered data for wireless communication; determine delay tolerance information of the buffered data; configure a radio frequency (RF) circuit to send a response signal to a wireless access point, the response signal comprising the buffer size and the delay tolerance information; receive a channel resource from the wireless access point via the RF circuit in response to sending the buffer size and the delay tolerance information to the wireless access point; and configure the RF circuit to send a portion of the buffered data using the channel resource
[0115] Implementations within the scope of the present disclosure may be implemented in part or in whole using a tangible computer-readable storage medium (or multiple tangible computer-readable storage media of one or more types) encoding one or more instructions. Tangible computer-readable storage media may also be non-transitory in nature.
[0116] Computer-readable storage media can be any storage media that can be read, written, or otherwise accessed by a general or special computing device, including any processing electronics and / or processing circuits capable of executing instructions. For example, without limitation, computer-readable media can include any volatile semiconductor memory, such as RAM, DRAM, SRAM, T-RAM, Z-RAM, and TTRAM. Computer-readable media can also include any non-volatile semiconductor memory, such as ROM, PROM, EPROM, EEPROM, NVRAM, flash memory, nvSRAM, FeRAM, FeTRAM, MRAM, PRAM, CBRAM, SONOS, RRAM, NRAM, racetrack memory, FJG, and Millipede memory.
[0117] Furthermore, the computer-readable storage medium may include any non-semiconductor memory, such as optical disk storage, magnetic disk storage, magnetic tape, other magnetic storage devices, or any other medium capable of storing one or more instructions. In one or more implementations, the tangible computer-readable storage medium may be directly coupled to the computing device, while in other implementations, the tangible computer-readable storage medium may be indirectly coupled to the computing device, for example, via one or more wired connections, one or more wireless connections, or any combination thereof.
[0118] Instructions can be directly executable, or can be used to develop executable instructions. For example, instructions can be implemented as executable or non-executable machine code, or can be implemented as high-level language instructions that can be compiled to produce executable or non-executable machine code. In addition, instructions can also be implemented as data, or can include data. Computer executable instructions can also be organized in any format, including routines, subroutines, programs, data structures, objects, modules, applications, applets, functions, etc. As recognized by those skilled in the art, the details including but not limited to the number, structure, sequence and organization of instructions can be significantly different without changing the underlying logic, function, processing and output.
[0119] Although the above discussion mainly involves microprocessors or multi-core processors that execute software, one or more implementations are performed by one or more integrated circuits such as ASICs or FPGAs. In one or more implementations, such integrated circuits execute instructions stored on the circuits themselves.
[0120] Those skilled in the art will recognize that the various illustrative frames, modules, elements, components, methods and algorithms described herein can be implemented as electronic hardware, computer software or a combination of the two. In order to illustrate this interchangeability of hardware and software, various illustrative frames, modules, elements, components, methods and algorithms have been generally described above according to functionality. Whether such functionality is implemented as hardware or software depends on the specific application and the design constraints imposed on the entire system. The technician can implement the described functionality in different ways for each specific application. Various components and frames can be arranged differently (e.g., arranged in different orders, or divided in different ways) without departing from the scope of the subject technology.
[0121] It should be understood that any specific order or hierarchy of the frames in the process disclosed by the present invention is an illustration of the example method. Based on the design preference requirements, it should be understood that the specific order or hierarchy of the frames in the process can be rearranged or all the illustrated frames are executed. Any frame in these frames can be executed simultaneously. In one or more specific implementations, multitasking and parallel processing may be advantageous. In addition, the division of various system components in the above-mentioned specific implementation should not be understood as requiring such division in all specific implementations, and it should be understood that program components and systems can be generally integrated together in a single software product or encapsulated in multiple software products.
[0122] As used in this specification and any claims of this patent application, the terms "base station", "receiver", "computer", "server", "processor" and "memory" all refer to electronic devices or other technical devices. These terms exclude people or groups of people. For the purpose of this specification, the term "display" or "displaying" means displaying on an electronic device.
[0123] As used herein, the phrase "at least one of" following a list of items, any of which is separated by the terms "and" or "or", modifies the list as a whole, rather than each member of the list (i.e., each item). The phrase "at least one of" does not require selection of at least one of each item listed; rather, the phrase allows for a meaning that includes at least one of any one item and / or at least one of any combination of items and / or at least one of each item. For example, the phrase "at least one of A, B, and C" or "at least one of A, B, or C" each refers to only A, only B, or only C; any combination of A, B, and C; and / or at least one of each of A, B, and C.
[0124] The predicate words "configured to," "operable to," and "programmed to" do not imply any specific tangible or intangible modification of a subject matter but are intended to be used interchangeably. In one or more specific implementations, a processor configured to monitor and control an operation or component may also mean that the processor is programmed to monitor and control the operation or that the processor is operable to monitor and control the operation. Similarly, a processor configured to execute code may be interpreted as a processor programmed to execute code or operable to execute code.
[0125] Phrases such as aspect, this aspect, another aspect, some aspects, one or more aspects, a specific implementation, this specific implementation, another specific implementation, some specific implementations, one or more specific implementations, an embodiment, this embodiment, another embodiment, some embodiments, one or more embodiments, configuration, this configuration, other configurations, some configurations, one or more configurations, subject technology, disclosure, the present disclosure, other variations thereof, etc. are for convenience and do not mean that the disclosure involving such one or more phrases is essential to the subject technology, nor does it mean that such disclosure applies to all configurations of the subject technology. Disclosures involving such one or more phrases may apply to all configurations or one or more configurations. Disclosures involving such one or more phrases may provide one or more examples. Phrases such as aspect or some aspects may refer to one or more aspects and vice versa, and this applies similarly to the other aforementioned phrases.
[0126] The word "exemplary" is used herein to mean "serving as an example, instance, or illustration." Any implementation described herein as "exemplary" or as an "example" is not necessarily to be construed as preferred or advantageous over other specific implementations. Furthermore, to the extent that the terms "including," "having," and the like are used in the specification or claims, such terms are intended to be inclusive, in a manner similar to the way the term "comprising" is interpreted when used as a transitional word in a claim.
[0127] All structural and functional equivalents to the elements of the various aspects described throughout this disclosure that are known or later become known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be covered by the claims. In addition, nothing disclosed herein is intended to be made available to the public regardless of whether such disclosure is explicitly stated in the claims. No claim element shall be interpreted under the provisions of 35 U.S.C. §112(f) unless the element is expressly stated using the phrase “means for…” or, in the case of a method claim, the element is stated using the phrase “step for…”
[0128] The previous description is provided to enable any person skilled in the art to practice the various aspects described herein. Various modifications of these aspects are apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects. Therefore, the claims are not intended to be limited to the aspects shown herein, but are intended to make the full scope consistent with the language claims, wherein the reference to the singular element is not intended to mean "only one", but to mean "one or more", unless specifically noted. Unless otherwise specifically stated, the term "some" refers to one or more. Male pronouns (e.g., his) include female and neutral (e.g., her and its), and vice versa. Titles and subtitles (if any) are used only for convenience and do not limit the subject disclosure.
Claims
1. A method, comprising: Received at the wireless access point from the client device: buffer size information for buffered data at the client device, and Delay information relative to the buffered data; as well as The wireless access point allocates channel resources to the client device based on the buffer size information and the latency information.
2. The method according to claim 1, wherein: The delay information comprises a respective delay tolerance for transmission of the buffered data in each respective access category of a number of respective access categories, The buffer size information includes a buffer size for each respective access category of the plurality of respective access categories, and The number of respective access categories include two or more of a voice category, a video category, a best effort category, and a background category.
3. The method according to claim 2, further comprising, by the wireless access point and before allocating the channel resources: using the buffer size information to determine a total uplink buffer size for one or more client devices including the client device; using the latency information to determine an uplink client latency tolerance for the one or more client devices including the client device; determining a total downlink buffer size for the one or more client devices including the client device; and determining a downlink client delay tolerance for the one or more client devices including the client device, Wherein allocating the channel resources comprises allocating the channel resources based at least in part on the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, and the downlink client delay tolerance.
4. The method according to claim 3, further comprising, by the wireless access point and before allocating the channel resources: determining an access point buffer size for the wireless access point; and determining an access point delay tolerance for the wireless access point, Wherein allocating the channel resources comprises allocating the channel resources based at least in part on the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance.
5. The method according to claim 4, wherein allocating the channel resources further comprises, by the wireless access point: contending for channel access to obtain a transmission opportunity; and A portion of the transmit opportunities is allocated to the client device based on the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance.
6. The method of claim 5, wherein allocating the portion of the transmit opportunity comprises allocating a first portion of time of the transmit opportunity.
7. The method of claim 5, wherein allocating the portion of the transmit opportunity comprises allocating a first portion of a bandwidth of the transmit opportunity.
8. The method according to claim 4, wherein allocating the channel resources further comprises: providing the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance to other wireless access points; receiving from the other wireless access point a portion of the transmit opportunities acquired by the other wireless access point in response to providing the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance to the other wireless access point; as well as At least some of the portion of the transmit opportunities are allocated to the client devices based on the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance.
9. The method according to claim 8, further comprising: determining a downlink buffer size for the wireless access point; determining a downlink delay tolerance for the wireless access point; and The portion of the transmit opportunities is allocated to the wireless access point based on the access point buffer size, the access point delay tolerance, the downlink buffer size, and the downlink delay tolerance for the wireless access point.
10. A non-transitory computer-readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising: Received at the wireless access point from the client device: buffer size information for buffered data at the client device, and Delay information relative to the buffered data; and The wireless access point allocates channel resources to the client device based on the buffer size information and the latency information.
11. The non-transitory computer readable medium of claim 10, wherein: The delay information comprises a respective delay tolerance for transmission of the buffered data in each respective access category of a number of respective access categories, The buffer size information includes a buffer size for each respective access category of the plurality of respective access categories, and The number of respective access categories include two or more of a voice category, a video category, a best effort category, and a background category.
12. The non-transitory computer-readable medium of claim 11, the operations further comprising, by the wireless access point and prior to allocating the channel resources: using the buffer size information to determine a total uplink buffer size for one or more client devices including the client device; using the latency information to determine an uplink client latency tolerance for the one or more client devices including the client device; determining a total downlink buffer size for the one or more client devices including the client device; and determining a downlink client delay tolerance for the one or more client devices including the client device, Wherein allocating the channel resources comprises allocating the channel resources based at least in part on the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, and the downlink client delay tolerance.
13. The non-transitory computer-readable medium of claim 12, the operations further comprising, by the wireless access point and prior to allocating the channel resources: determining an access point buffer size for the wireless access point; and determining an access point delay tolerance for the wireless access point, Wherein allocating the channel resources comprises allocating the channel resources based at least in part on the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance.
14. The non-transitory computer-readable medium of claim 13, wherein allocating the channel resources further comprises, by the wireless access point: contending for channel access to obtain a transmission opportunity; and A portion of the transmit opportunities is allocated to the client device based on the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance.
15. The non-transitory computer readable medium of claim 14, wherein allocating the portion of the transmit opportunity comprises allocating a first portion of time of the transmit opportunity.
16. The non-transitory computer-readable medium of claim 14, wherein allocating the portion of the transmit opportunity comprises allocating a first portion of a bandwidth of the transmit opportunity.
17. The non-transitory computer-readable medium of claim 13, wherein allocating the channel resources further comprises: providing the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance to other wireless access points; receiving from the other wireless access point a portion of the transmit opportunities acquired by the other wireless access point in response to providing the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance to the other wireless access point; as well as At least some of the portion of the transmit opportunities are allocated to the client devices based on the total uplink buffer size, the uplink client delay tolerance, the total downlink buffer size, the downlink client delay tolerance, the access point buffer size, and the access point delay tolerance.
18. An apparatus of a client device, the apparatus comprising a processing circuit, the processing circuit being configured to: determining a buffer size for buffering data for wireless communication; Determining delay tolerance information of the buffered data; configuring a radio frequency (RF) circuit to send a response signal to a wireless access point, the response signal including the buffer size and the delay tolerance information; receiving channel resources from the wireless access point via the RF circuitry in response to sending the buffer size and the delay tolerance information to the wireless access point; as well as The RF circuitry is configured to transmit a portion of the buffered data using the channel resources.
19. An apparatus according to claim 18, wherein the delay tolerance information includes a corresponding maximum delay tolerance for each corresponding access category in a plurality of corresponding access categories, and wherein the portion of the buffered data includes buffered data for a delay-sensitive corresponding access category in the plurality of corresponding access categories.
20. The apparatus of claim 18, wherein the response signal comprises the buffer size and the delay tolerance information in an A control field or one or more quality of service (QoS) subfields of a physical layer protocol data unit (PPDU).
21. A method comprising: receiving, at the wireless access point, buffer size information from each of the one or more client devices; generating, at the wireless access point and based on the buffer size information: first uplink buffer size information for a first access category of a plurality of access categories for the one or more client devices, the first access category being a high priority access category having a higher priority than corresponding priorities of remaining access categories of the plurality of access categories; second uplink buffer size information for the plurality of access categories including the high priority access category for the one or more client devices; first downlink buffer size information for the high priority access category for the one or more client devices; as well as second downlink buffer size information for the plurality of access categories including the high priority access category for the one or more client devices; as well as Channel resources are allocated, by the wireless access point, to the one or more client devices based at least in part on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, and the second downlink buffer size information.
22. The method according to claim 21, further comprising: generating, by the wireless access point, third uplink buffer size information for the high priority access category for the wireless access point and fourth uplink buffer size information for the plurality of access categories including the high priority access category for the wireless access point; and The channel resources are allocated to the one or more client devices based on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information and the fourth uplink buffer size information.
23. The method of claim 22, wherein allocating the channel resources further comprises, by the wireless access point: contending for channel access to obtain a transmission opportunity; and At least a portion of the transmission opportunity is allocated to at least one client device among the one or more client devices based on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information and the fourth uplink buffer size information.
24. The method of claim 23, wherein allocating at least the portion of the transmit opportunity comprises allocating a first portion of time of the transmit opportunity.
25. The method of claim 23, wherein allocating at least the portion of the transmit opportunity comprises allocating a first portion of a bandwidth of the transmit opportunity.
26. The method of claim 22, wherein allocating the channel resources further comprises, by the wireless access point: providing the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information, and the fourth uplink buffer size information to other wireless access points; receiving from the other wireless access point a portion of the transmit opportunities obtained by the other wireless access point in response to providing the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information, and the fourth uplink buffer size information to the other wireless access point; and At least some of the portion of the transmission opportunities are allocated to at least one client device among the one or more client devices based at least in part on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information and the fourth uplink buffer size information.
27. The method according to claim 26, further comprising, by the other wireless access point: determining a third downlink buffer size for the high priority access category of the wireless access point; determining a sum of downlink buffer sizes for the plurality of access categories including the high priority access category at the wireless access point; Compete for channel access to obtain a transmission opportunity; as well as The portion of the transmit opportunities is allocated to the wireless access point based at least in part on the third uplink buffer size information, the fourth uplink buffer size information, the third downlink buffer size, and the sum of the downlink buffer sizes.
28. The method of claim 21, wherein the buffer size information from each of the one or more client devices comprises a buffer size for the high priority access category and a sum of buffer sizes for the plurality of access categories including the high priority access category.
29. The method of claim 28, wherein the first uplink buffer size information comprises a sum of uplink buffer sizes for the high priority access category on all client devices among the one or more client devices, the second uplink buffer size information comprises a sum of uplink buffer sizes for all access categories on all client devices among the one or more client devices, the first downlink buffer size information comprises a sum of downlink buffer sizes for the high priority access category on all client devices among the one or more client devices, and the second downlink buffer size information comprises a sum of downlink buffer sizes for all access categories on all client devices among the one or more client devices.
30. A device, comprising: A processing circuit, the processing circuit being configured to: receiving buffer size information from each client device of the one or more client devices; Based on the buffer size information, generate: first uplink buffer size information for a first access category of a plurality of access categories for the one or more client devices, the first access category being a high priority access category having a higher priority than corresponding priorities of remaining access categories of the plurality of access categories; second uplink buffer size information for the plurality of access categories including the high priority access category for the one or more client devices; first downlink buffer size information for the high priority access category for the one or more client devices; as well as second downlink buffer size information for the plurality of access categories including the high priority access category for the one or more client devices; and Channel resources are allocated to the one or more client devices based at least in part on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, and the second downlink buffer size information.
31. The apparatus of claim 30, wherein the processing circuit is further configured to: generating third uplink buffer size information for the high priority access category for a wireless access point and fourth uplink buffer size information for the plurality of access categories including the high priority access category for the wireless access point; and The channel resources are allocated to the one or more client devices based on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information and the fourth uplink buffer size information.
32. The apparatus of claim 31 , wherein the processing circuit is configured to allocate the channel resources by: contending for channel access to obtain a transmission opportunity; and At least a portion of the transmission opportunity is allocated to at least one client device among the one or more client devices based on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information and the fourth uplink buffer size information.
33. The apparatus of claim 32, wherein the processing circuit is configured to allocate at least the portion of the transmit opportunity by allocating a first portion of the time of the transmit opportunity.
34. The apparatus of claim 32, wherein the processing circuit is configured to allocate at least the portion of the transmit opportunity by allocating a first portion of a bandwidth of the transmit opportunity.
35. The apparatus of claim 31 , wherein the processing circuit is configured to allocate the channel resources by: providing the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information, and the fourth uplink buffer size information to other wireless access points; receiving from the other wireless access point a portion of the transmit opportunities obtained by the other wireless access point in response to providing the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information, and the fourth uplink buffer size information to the other wireless access point; and At least some of the portion of the transmission opportunities are allocated to at least one client device among the one or more client devices based at least in part on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information and the fourth uplink buffer size information.
36. The device of claim 30, wherein the buffer size information from each of the one or more client devices comprises a buffer size for the high priority access category and a sum of buffer sizes for the plurality of access categories including the high priority access category.
37. A device according to claim 36, wherein the first uplink buffer size information includes the sum of uplink buffer sizes for the high priority access category on all client devices among the one or more client devices, the second uplink buffer size information includes the sum of uplink buffer sizes on all access categories on all client devices among the one or more client devices, the first downlink buffer size information includes the sum of downlink buffer sizes for the high priority access category on all client devices among the one or more client devices, and the second downlink buffer size information includes the sum of downlink buffer sizes on all access categories on all client devices among the one or more client devices.
38. A non-transitory computer readable medium storing instructions, The instructions, when executed by one or more processors, cause the one or more processors to: receiving buffer size information from each client device of the one or more client devices; Based on the buffer size information, generate: first uplink buffer size information for a first access category of a plurality of access categories for the one or more client devices, the first access category being a high priority access category having a higher priority than corresponding priorities of remaining access categories of the plurality of access categories; second uplink buffer size information for the plurality of access categories including the high priority access category for the one or more client devices; first downlink buffer size information for the high priority access category for the one or more client devices; as well as second downlink buffer size information for the plurality of access categories including the high priority access category for the one or more client devices; and Channel resources are allocated to the one or more client devices based at least in part on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, and the second downlink buffer size information.
39. The non-transitory computer readable medium of claim 38, wherein the instructions, when executed by the one or more processors, further cause the one or more processors to: generating third uplink buffer size information for the high priority access category for a wireless access point and fourth uplink buffer size information for the plurality of access categories including the high priority access category for the wireless access point; and The channel resources are allocated to the one or more client devices based on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information and the fourth uplink buffer size information.
40. The non-transitory computer readable medium of claim 39, wherein the instructions, when executed by the one or more processors, further cause the one or more processors to allocate the channel resources by: contending for channel access to obtain a transmission opportunity; and At least a portion of the transmission opportunity is allocated to at least one client device among the one or more client devices based on the first uplink buffer size information, the second uplink buffer size information, the first downlink buffer size information, the second downlink buffer size information, the third uplink buffer size information and the fourth uplink buffer size information.