Communication scheduling based on different QoS in network

By implementing a listen-before-speak function and a custom data delivery queue in Wi-Fi technology, the problem of insufficient data packet priority scheduling in traditional Wi-Fi is solved, achieving efficient data packet transmission and optimized resource utilization.

CN121128296APending Publication Date: 2025-12-12CHARTER COMM OPERATING LLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202480024786.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-02-13
Filing Date
2024-03-27
Publication Date
2025-12-12

AI Technical Summary

Technical Problem

Existing Wi-Fi technology lacks granular control when transmitting data packets of different priorities. This causes traditional devices to store all traffic in the best effort queue, making it impossible to effectively distinguish and schedule different types of data packets, thus affecting throughput and priority transmission.

Method used

By implementing a listen-before-speak function in the radio station, the priority of data packets is detected and mapped to the corresponding access class queue. High-priority data packets are scheduled to be transmitted preferentially within the idle channel evaluation window. Multi-layer protocol stack processing and custom data delivery queues are used to replace the default queues to achieve finer scheduling and transmission.

Benefits of technology

It enables efficient scheduling and transmission of different types of data packets, improves the throughput of high-priority data, optimizes the utilization of wireless communication resources, and meets QoS requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121128296A_ABST
    Figure CN121128296A_ABST
Patent Text Reader

Abstract

A first wireless station implements a listen before talk function to communicate with a second wireless station over a wireless channel. The first wireless station includes corresponding communication management resources that manage a plurality of access categories. For example, a communication management resource receives a plurality of data packets intended to be transmitted over a wireless channel to a second wireless station. The communication management resource detects that a first data packet and a second data packet of the plurality of data packets belong to a first access category of a plurality of access categories. Further, the communication management resource detects that the first data packet is marked as a higher priority in the first access category than the second data packet. In this case, the communication management resource schedules transmission of the first data packet over the wireless channel prior to transmission of the second data packet over the wireless channel.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Related applications

[0002] This application claims priority to U.S. Patent Application Serial No. 18 / 439,817, filed February 13, 2024, entitled “COMMUNICATION SCHEDULING IN A NETWORK BASED ON QUALITY OF SERVICE”, Agent’s File No. CHTR-2023-63A, the entire teachings of which are incorporated herein by reference.

[0003] This application claims priority to U.S. Patent Application Serial No. 18 / 439,829, filed February 13, 2024, entitled “MAPPING OF SCHEDULING PRIORITY LEVELS TO ACCESS CLASSQUEUES”, Agent’s File No. CHTR-2023-63B, the entire teachings of which are incorporated herein by reference.

[0004] This application claims priority to U.S. Patent Application Serial No. 18 / 439,842, filed February 13, 2024, entitled “QUEUE CONFIGURATION COMMUNICATION SCHEDULING IN ANETWORK”, Agent’s File No. CHTR-2023-63C, the entire teachings of which are incorporated herein by reference.

[0005] This application claims the benefit of U.S. Provisional Patent Application Serial No. 63 / 459,255, filed April 13, 2024, entitled “COMMUNICATION SCHEDULING IN A NETWORK BASED ON QUALITY OF SERVICE”, Agent’s File No. CHTR-2023-63P, the entire teachings of which are incorporated herein by reference. Background Technology

[0006] Wi-Fi TM The technology implements what is known as a Transmission Opportunity (TXOP), during which a wireless station can transmit data after gaining access to a wireless channel. For example, a transmission opportunity (also called TXOP) is a MAC (Media Access Control) layer feature used in IEEE 802.11-based wireless local area networks (WLANs). TXOP defines the duration for which a station can send data frames after gaining access to the wireless channel, implementing a listen-before-speak function (also known as idle channel assessment).

[0007] The traditional implementation of TXOP (Transmission of Programming) is designed to improve throughput for high-priority data such as voice and video. Based on EDCA (Enhanced Distributed Channel Access), traditional radio stations support prioritizing the transmission of different types of data packets. Summary of the Invention

[0008] This disclosure includes the following findings: There are deficiencies in the idle channel assessment wireless technique (also known as the listen-before-speak technique) and the corresponding traditional prioritization for transmitting different types of data packets. For example, Wi-Fi... TM One drawback of the technology is the traditional implementation of wirelessly transmitting data packets of different priorities from the first wireless station to the second wireless station based on EDCA.

[0009] More specifically, in Wi-Fi TM Before the introduction of QoS in (802.11), all wireless STAs and APs used a single queue to handle uplink and downlink traffic, providing no traffic granularity. Furthermore, the advent of QoS introduced four queues for APs and STAs (voice, video, background, and best effort). However, legacy devices at the time lacked QoS capabilities and therefore continued to use a single queue for their traffic, assigning it to the best effort category. In this situation, QoS APs continued to store all traffic for legacy devices in the best effort queue, regardless of the traffic type. This is an enhancement to Wi-Fi. TM The necessary evolution of the system.

[0010] As further discussed herein, this disclosure includes a number of techniques to provide better application of wireless services that support idle channel assessment.

[0011] Example #1

[0012] According to one example, the network environment includes a first wireless station that implements a listen-before-speak function to communicate with a second wireless station via a wireless channel. The communication management resources of the first wireless station receive multiple data packets intended for delivery to the second wireless station via the wireless channel. The communication management resources of the first wireless station detect that a first data packet and a second data packet belong to a first access class out of multiple access classes. The communication management resources of the first wireless station also detect that the first data packet is marked as having a higher priority than the second data packet within the first access class. Based on the priority order associated with the first and second data packets, the communication management resources of the first wireless station schedule the first data packet to be transmitted via the wireless channel before transmitting the second data packet.

[0013] In one example, to enable data packet transmission, the communication management resources of the first wireless station map the identifier of the first access class to a first idle channel evaluation window allocated to the first access class. In response to detecting that the wireless channel is unused for a duration specified by the first idle channel detection window, the communication management resources transmit the first data packet via the wireless channel, and subsequently transmit the second data packet via the wireless channel. In other words, because the first data packet is deemed to have a higher priority for transmission via the wireless channel, the communication management resources transmit the first data packet via the wireless channel before transmitting the second data packet.

[0014] It should be noted that the communication management resources of the first wireless station may be configured to transmit a first data packet via the wireless channel in response to a first acquisition of the wireless channel (e.g., via a first TXOP); and to transmit a second data packet via the wireless channel in response to a second acquisition of the first wireless channel (e.g., via a second TXOP). Alternatively, the communication management resources may be configured to send a first data packet, followed by a second data packet, in response to a single acquisition of the wireless channel via idle channel evaluation (listen-before-speak).

[0015] According to a further example, the communication management resource can be configured in any suitable manner to detect that a first data packet is marked as having a higher priority than a second data packet in a first access class. For example, based on analyzing a first bit of information in the first data packet, the communication management resource detects that the first data packet is marked as a high-priority data packet in the first access class; and based on analyzing a second bit of information in the second data packet, the communication management resource detects that the second data packet is not marked as a high-priority data packet in the first access class.

[0016] According to a further example, scheduling the transmission of a first data packet via the wireless channel before transmitting a second data packet includes the communication management resource storing the first data packet in a first queue (or a first sub-queue) of the first access class and storing the second data packet in a second queue (or a second sub-queue) of the first access class. As further discussed herein, the communication management resource may be configured to store a third data packet in the first queue before storing the first data packet in the first queue. According to the scheduling of storing data packets in the queue, the communication management resource transmits the third data packet via the wireless channel, followed by transmitting the first data packet via the wireless channel, and finally transmitting the second data packet via the wireless channel. As another example, the communication management resource may be configured, according to the scheduling, to clear the first queue by transmitting all data packets, including the first data packet, in the first queue via the wireless channel before transmitting the second data packet via the wireless channel.

[0017] Determining which of several prompts or corresponding access classes a received data packet will be stored in can be achieved in any suitable manner. In one example, a communication management resource implements a first processing layer (of a multi-layered protocol stack) to detect that a first data packet is marked as having a higher priority than a second data packet in the first access class. In other words, the first processing layer can be configured to detect that the first data packet includes a corresponding tag indicating that it is a high-priority data packet. The first processing layer can be configured to detect that the second data packet is not marked as a high-priority data packet. The first processing layer can be configured to control which of the multiple queues associated with the first access class each of the first and second data packets is stored in for subsequent transmission over the wireless channel. For example, in response to detecting (through processing of corresponding bit information in the first data packet) that the first data packet is marked as a high-priority data packet, the first processing layer provides a notification to store the first data packet in the higher-priority queue of the first access class queue. Furthermore, in response to the detection (through processing of the corresponding bit information of the second data packet) that the second data packet was not marked with a label indicating a high-priority data packet, the first processing layer provides a notification to store the second data packet in a lower-priority queue of the first access category queue.

[0018] According to a further example, the communication management resources of the first wireless station receive multiple data packets, including a third data packet and a fourth data packet. The communication management resources of the first wireless station detect that the third and fourth data packets belong to the second access class among multiple access classes (e.g., based on the data type transmitted by the third and fourth data packets). It is assumed that the second access class has a higher priority than the first access class. In this case, the communication management resources of the first wireless station schedule the transmission of the third and fourth data packets through the wireless channel before the first and / or second data packets are transmitted, giving them priority over scheduled transmission.

[0019] As further discussed herein, scheduling the transmission of the third and fourth data packets via the wireless channel before transmitting the first data packet may include storing the third and fourth data packets in a first queue of the second access class using communication management resources, and then transmitting the third and fourth data packets via the wireless channel before transmitting the first data packet.

[0020] Alternatively, scheduling the transmission of the third and fourth data packets via the wireless channel before transmitting the first data packet may include the communication management resources of the first wireless station: i) storing the third data packet in a first queue of the second access class; ii) storing the fourth data packet in a second queue of the second access class; and iii) transmitting the third and fourth data packets via the wireless channel before transmitting the first and second data packets via the wireless channel.

[0021] Example #2

[0022] According to one example, the network environment includes a first wireless station that implements a listen-before-speak function to communicate with a second wireless station via a wireless channel. The communication management resources of the first wireless station receive multiple data packets intended for delivery to the second wireless station via the wireless channel. Each of the multiple data packets is assigned one of a plurality of scheduling priorities. The communication management resources use mapping information to schedule the transmission of the multiple data packets over the wireless channel. The mapping information provides a one-to-one mapping between, for example, UP (User Priority) and AC (Access Class), from which the multiple data packets are scheduled for transmission from the first wireless station to the second wireless station.

[0023] In a further example, based on the scheduling priority assigned to the access class and the corresponding data packet, the communication management resource transmits multiple data packets from the first wireless station to the second wireless station via a wireless channel. For example, the communication management resource can be configured to implement any number of access class queues, each allocated a contention window of different duration for accessing the wireless channel and transmitting data packets. In one example, after storing data packets in each of the different queues, in order to transmit the data packets via the wireless channel, the communication management resource of the first wireless station maps the identifier of the first access class to a first idle channel evaluation window allocated to the first access class queue. In response to detecting that the wireless channel has not been used for a duration specified by the first idle channel detection window, the communication management resource: i) retrieves a first data packet from the first access class queue, and ii) transmits the first data packet to the second wireless station via the wireless channel.

[0024] In a further example, the communication management resource executes a first processing layer in the multi-layer protocol stack to process each of the multiple data packets by mapping information. This first processing layer operates between the MAC (Media Access Control) processing layer and the application processing layer in the multi-layer protocol stack to select which access class queue to store each of the multiple data packets in.

[0025] Furthermore, the mapping information provided to provide a one-to-one mapping from scheduling priorities to access category pairs may include: a mapping of a first per-hop behavior value (e.g., indicating a first user priority) associated with a first data packet to a first access category queue in the access category queue; and a mapping of a second per-hop behavior value (e.g., indicating a second user priority) to a second access category queue in the access category queue.

[0026] Furthermore, using mapping information to schedule the transmission of multiple data packets over a wireless channel can be configured to include: obtaining a first priority value from a first data packet among the multiple data packets, the first priority value being a third-level bit tag of the first data packet; storing the first data packet in a first access class queue assigned to the first priority value in response to detecting the first priority value; obtaining a second priority value from a second data packet among the multiple data packets, the second priority value being a third-level bit tag of the second data packet; and storing the second data packet in a second access class queue assigned to the second priority value in response to detecting the second priority value. The first and second data packets are then transmitted over the wireless channel from a first wireless station to a second wireless station according to the scheduling priority assigned to the access class queues.

[0027] It should be noted that the third-level bit marker and corresponding value of the first data packet can be the first DSCP (Differential Service Code Point) marker of the first data packet; and the third-level bit marker of the second data packet can be the second DSCP (Differential Service Code Point) marker of the second data packet, etc.

[0028] In a similar manner to those previously discussed, using mapping information to schedule multiple data packets may include: in response to i) detecting that a first data packet is assigned a first priority value associated with a first access class queue, and ii) detecting that a supplementary priority tag exists in the first data packet, storing the first data packet of the multiple data packets into a first sub-queue of the first access class queue in the access class queue; and in response to i) detecting that a second data packet is assigned a first priority value associated with the first access class queue, and ii) detecting that a supplementary priority tag does not exist in the second data packet, storing the second data packet of the multiple data packets into a second sub-queue of the first access class queue.

[0029] Based on the priority of the access class queue, the communication management resources described herein can be configured to transmit a first data packet from a first wireless station to a second wireless station via a wireless channel, and subsequently transmit a second data packet from the first wireless station to the second wireless station via a wireless channel. Using mapping information to schedule multiple data packets may include: in response to i) detecting that a third data packet is marked with a second priority value associated with a second access class queue, and ii) detecting that a supplementary priority marker exists in the first data packet, storing the third data packet from the multiple data packets into a first sub-queue of the second access class queue in the access class queue; and in response to i) detecting that a fourth data packet is assigned a second priority value associated with the first access class queue, and ii) detecting that no supplementary priority marker exists in the fourth data packet, storing the fourth data packet from the multiple data packets into a second sub-queue of the second access class queue.

[0030] Example #3

[0031] According to another example, the network environment includes a first wireless station and a second wireless station, each of which performs a listen-before-talk function to communicate via a wireless channel. Therefore, the wireless channel can be obtained through a listen-before-talk access function. As further described herein, the first wireless station can be configured to transmit a first data packet. The first communication can be configured to instruct the first wireless station to support listen-before-talk access (e.g., via Wi-Fi). TM (or any other suitable wireless communication protocol implementation) the customization of data delivery categories to support wireless communication transmission. In other words, a first wireless station, such as a wireless access point or mobile communication device, can be configured to support the default set of access categories and corresponding data delivery queues to transmit data packets to the first wireless station via a wireless channel. If a second wireless station (e.g., a wireless access point or mobile communication device) supports the customization of data delivery queues as an alternative to using the default data delivery queues, the first wireless station can be configured to use the alternative data delivery queues to deliver data packets to the first wireless station. For example, in response to the second wireless station receiving a first communication, the first wireless station further receives a second communication from the second wireless station. The second communication indicates that the second wireless station supports the customization of data delivery categories. Accordingly, each of the first and second wireless stations is aware that they both support the customization of data delivery categories.

[0032] It should be noted that the first and second communications can be relayed between the first and second wireless stations during the association between the second and first wireless stations. Subsequent communications relayed via the wireless channel can be implemented using a customized data delivery queue instead of the default data delivery queue.

[0033] In one example, the second communication received from the second wireless station includes information about an auxiliary set (i.e., a custom set) of data delivery queues for third communication transmitted from the first wireless station to the second wireless station (such as data packets intended for delivery to the second wireless station), rather than the default set of data delivery queues. It should be noted that either the first or second wireless station can choose how many different access classes and corresponding data delivery queues to use in the custom implementation of the data delivery queues.

[0034] In a similar manner to those previously discussed, the first wireless station transmitting the corresponding data packets to the second wireless station can be configured to execute a first processing layer in a multi-layer protocol stack. This multi-layer protocol stack executes multiple processing layers to process each of the received data packets destined for the second wireless station. It should be noted that the first processing layer storing the received data packets in different queues can be any processing layer in the multi-layer protocol stack between (and including) the MAC processing layer and the application processing layer.

[0035] Furthermore, upon receiving a second communication, such as approval from the second wireless station for the implementation of an access class and a corresponding custom set of data delivery queues, the first wireless station establishes a first (custom) configuration for the data delivery class for its use to control the transmission of data packets wirelessly transmitted from the first wireless station to the second wireless station.

[0036] It should be noted that establishing a custom data delivery category and corresponding custom data delivery queue may include the first wireless station transmitting a configuration message to the second wireless station. This configuration message can be configured to indicate the attributes of the data delivery category specified by a first configuration of the data delivery queue established by the first wireless station. Accordingly, the second wireless station can be notified how to set up a similar data delivery queue of the first configuration at the second wireless station to transmit data packets from the second wireless station to the first wireless station. In other words, either or both of the first and second wireless stations can be configured to support the customization of access categories and corresponding data delivery queues.

[0037] In a further example, the first configuration of the data delivery categories and corresponding data delivery queues implemented by the first wireless station is an alternative to the default set of data delivery categories and corresponding data delivery queues supported by the first wireless station for communication in the downlink direction from the first wireless station to the second and third wireless stations. In other words, the first wireless station can be configured to support the default set of data delivery categories and corresponding queues for communication with one or more communication devices in the downlink direction. In response to receiving a second communication from the second wireless station, the first wireless station sets the first configuration of the data delivery categories and corresponding data delivery queues for the transmission of data packets from the first wireless station to the second wireless station. In this case, the second wireless station benefits from the first configuration of the data delivery categories implemented by the first wireless station, without having to use the default set of data delivery categories and corresponding queues to communicate with the second wireless station. In the opposite direction, in response to receiving communication from the first wireless station, the second wireless station sets a custom configuration of the data delivery categories and corresponding data delivery queues for the transmission of data packets from the second wireless station to the first wireless station.

[0038] According to another example described herein, after setting a first configuration of data delivery category and corresponding data delivery queue as an alternative to the default data delivery queue, a first wireless station receives multiple data packets intended for delivery to a second wireless station via a wireless channel. As previously described, the wireless channel used by the first wireless station to transmit the data packets is obtainable through a listen-before-speak function. The first wireless station and the corresponding communication management resources schedule the transmission of multiple data packets via the wireless channel according to the first configuration (e.g., a customized implementation of the data delivery category as an alternative to the default data delivery queue).

[0039] In the opposite direction, after setting a custom configuration for the data delivery category and the corresponding data delivery queue as an alternative to the default data delivery queue, the second wireless station receives multiple data packets intended for transmission to the first wireless station via a wireless channel. As previously described, the wireless channel used by the first wireless station to transmit data packets is available through a listen-before-speak function. The second wireless station and the corresponding communication management resources schedule the transmission of multiple data packets via the wireless channel according to the custom configuration of the queues (e.g., a custom implementation of the data delivery category as an alternative to the default data delivery queue).

[0040] In another example, the initial configuration of data delivery categories and corresponding queues (e.g., a customized set of queues for the second wireless station) may include X different data delivery categories, where X is an integer value. As previously described, both the first and second wireless stations can be configured to support data packet delivery, at least initially, based on a default set of data delivery categories and corresponding queues. In one example, the first and second wireless stations implement Y data delivery categories as a default setting before implementing the customized X data delivery categories, where Y is an integer value. The advantage of the first and / or second wireless station choosing to use a customized set of data delivery categories and corresponding data delivery queues instead of a default set is that the customized set includes a greater number of data delivery categories and corresponding data delivery queues than the default set (X). In other words, in one example, the integer value X can be greater than the integer value Y.

[0041] As further discussed herein, the first and second wireless stations may be initially configured to implement a first data delivery category configuration (e.g., default) that prioritizes the flow of messages being delivered from the first wireless station to the second wireless station over the wireless channel. In response to receiving a second communication from the second wireless station, the first wireless station implements a second customized data delivery category configuration and corresponding data delivery queues to deliver multiple data packets intended to be delivered from the first wireless station to the second wireless station and vice versa. As previously described, the second data delivery category configuration (custom configuration) may differ from the first default data delivery category configuration.

[0042] Another example of the communication system described herein includes a wireless station and corresponding communication management resources performing the following operations: establishing at least one data delivery queue for each of a plurality of data delivery categories, the data delivery category supporting wireless communication transfer from a first wireless station to a second wireless station; receiving a plurality of data packets intended for delivery to the second wireless station; and storing corresponding data packets of the plurality of data packets into the respective data delivery queues of the plurality of data delivery queues according to priorities determined for the corresponding data packets; detecting a first data packet stored in a first data delivery queue of the plurality of data delivery queues; obtaining a first contention window value associated with the first data delivery queue; and wirelessly transmitting the first data packet from one wireless station to another wireless station via the wireless channel in response to detecting that the wireless energy detected in the wireless channel is below a wireless energy threshold for a duration specified in the first contention window.

[0043] It should be noted that any resource described herein may include one or more computerized devices, communication management resources, mobile communication devices, servers, base stations, wireless communication equipment, communication management systems, controllers, workstations, user equipment, handheld or laptop computers, etc., to perform and / or support any or all of the methods disclosed herein. In other words, one or more computerized devices or processors may be programmed and / or configured to operate as explained herein to perform the different examples described herein.

[0044] Other examples in this document include software programs that perform the steps and operations summarized above and disclosed in detail below. One such example includes a computer program product comprising computer-readable storage hardware (such as hardware storing execution instructions), a non-volatile computer-readable storage medium, etc., in which software instructions are programmed for subsequent execution. When the instructions are executed in a computerized device (hardware) containing a processor and a program, the instructions cause the processor (hardware) to perform the operations disclosed herein. Such devices are generally configured to have software, code, instructions, and / or other data (e.g., data structures) arranged or encoded on non-volatile computer-readable storage hardware media such as optical media (e.g., CD-ROM), floppy disks, hard disks, memory sticks, storage devices, or other media such as firmware stored in one or more read-only memories (ROMs), random access memories (RAMs), programmable read-only memories (PROMs), etc., or as application-specific integrated circuits (ASICs). The software or firmware, or other such configurations, may be installed in a computerized device to cause the computerized device to perform the techniques described herein.

[0045] Therefore, the examples in this article involve methods, systems, computer program products, etc., that support the operations described herein.

[0046] One example includes a computer-readable storage medium and / or system having instructions stored thereon to facilitate better utilization of available wireless resources. When executed by computer processor hardware, the instructions cause the computer processor hardware (such as one or more processor devices or hardware located in the same or different locations) to: receive a plurality of data packets intended for delivery from a first wireless station to a second wireless station via a wireless channel, the wireless channel being obtainable via a listen-before-speak function (e.g., an idle channel assessment function); detect that a first data packet and a second data packet among the plurality of data packets belong to a first access class among a plurality of access classes; detect that the first data packet is marked as having a higher priority than the second data packet in the first access class; and schedule the first data packet to be transmitted via the wireless channel before transmitting the second data packet via the wireless channel.

[0047] One example includes a computer-readable storage medium and / or system having instructions stored thereon to facilitate better utilization of available wireless resources. When executed by computer processor hardware, the instructions cause the computer processor hardware (such as one or more processor devices or hardware located in the same or different locations) to: receive multiple data packets intended for delivery to a second wireless station via a wireless channel, which is available through a listen-before-speak function, each of the multiple data packets being assigned one of a plurality of scheduling priorities; and to use mapping information to schedule the multiple data packets for transmission over the wireless channel, the mapping information providing a one-to-one mapping of scheduling priorities to access class queues from which the multiple data packets are scheduled for transmission from the first wireless station to the second wireless station.

[0048] One example includes a computer-readable storage medium and / or system having instructions stored thereon to facilitate better utilization of available wireless resources. When executed by computer processor hardware, the instructions cause the computer processor hardware (such as one or more processor devices or hardware located in the same or different locations) to: transmit a first communication from a first wireless station, the first communication instructing the first wireless station to support customization of a data delivery category associated with the delivery of wireless communication via a listen-before-speak access function; and, in response to a second wireless station receiving the first communication, receive a second communication from the second wireless station, the second communication instructing the second wireless station to support customization of the data delivery category.

[0049] It should be noted that the order of the above steps has been added for clarity. Also note that any of the processing steps described herein can be performed in any suitable order.

[0050] Other examples of this disclosure include software programs and / or corresponding hardware to perform any of the method example steps and operations summarized above and disclosed in detail below.

[0051] It should be understood that the systems, methods, apparatuses, and instructions on computer-readable storage media described herein may also be strictly embodied as software programs, firmware, a mixture of software and hardware and / or firmware, or separate hardware (e.g., within a processor (hardware or software)), or within an operating system or within a software application.

[0052] As described in this article, the techniques presented are well-suited for the field of providing wireless communication services. However, it should be noted that the examples in this article are not intended to limit such applications, and the techniques discussed herein are also highly applicable to other applications.

[0053] Furthermore, it should be noted that although each of the different features, techniques, and configurations described herein may be discussed in different parts of this disclosure, each concept may be implemented independently or in combination with each other where appropriate. Therefore, one or more inventions described herein can be implemented and understood in a variety of different ways.

[0054] Furthermore, it should be noted that the preliminary discussion of the examples herein (brief description of the examples) is not intended to elaborate on every example and / or incremental innovative feature of this disclosure or the claimed invention. Rather, this brief description only presents general examples and corresponding innovative points compared to conventional techniques. For more details of the invention and / or possible perspectives (permutations and combinations thereof), please refer to the detailed description section below (i.e., the summary of examples) and its corresponding figures, which will be discussed further. Attached Figure Description

[0055] Figure 1 This is an example diagram illustrating the network environment as described herein and multiple wireless stations communicating with each other via one or more wireless communication links (or one or more wireless channels).

[0056] Figure 2 This is an example diagram illustrating the reception and queuing of multiple data packets transmitted from a first wireless station to a second wireless station via a wireless channel as described herein.

[0057] Figure 3 This is an example diagram illustrating the reception and queuing of multiple data packets transmitted from a first wireless station to a second wireless station via a wireless channel as described herein.

[0058] Figure 4 This is an example diagram illustrating the user priority information and the mapping to the access category queue as described in this article.

[0059] Figure 5 This is an example diagram illustrating the reception and queuing of multiple data packets transmitted from a first wireless station to a second wireless station via a wireless channel as described herein.

[0060] Figure 6 This is an example diagram illustrating the configuration of one or more wireless stations that supports alternative (custom) access class queue configurations instead of the default access class queue configuration, as described in this article.

[0061] Figure 7 This is an example diagram illustrating a communication flow that supports customized data delivery categories between multiple wireless stations, as described in this article.

[0062] Figure 8 This is an example diagram illustrating the configuration management frame that supports customization of data delivery categories as described in this article.

[0063] Figure 9 This is an example diagram illustrating how wireless access points in a network environment as described in this article execute custom access class queues and default access class queues to communicate with multiple communication devices.

[0064] Figure 10 This is an example diagram illustrating a mobile communication device configured to conduct wireless communication based on a custom access category queue, as described in this document.

[0065] Figure 11 This is an example diagram illustrating an example computer architecture that is operable to perform one or more operations as described herein.

[0066] Figure 12 This is an example diagram illustrating the methods described in this article.

[0067] Figure 13 This is an example diagram illustrating the methods described in this article.

[0068] Figure 14 This is an example diagram illustrating the methods described in this article.

[0069] Figure 15 This is an example diagram illustrating the methods described in this article.

[0070] The above and other objects, features, and advantages of the invention will become clear from the following detailed description of preferred embodiments (preferred examples are shown in the accompanying drawings, in which similar reference numerals in different views denote the same parts). The drawings are not necessarily to scale and are intended to illustrate examples, principles, and concepts. Detailed Implementation

[0071] Now, in more detail, refer to the attached diagram. Figure 1 This is an example diagram illustrating the network environment as described in this article and multiple wireless stations communicating with each other via wireless communication links (wireless channels).

[0072] As shown in the figure, the network environment 100 includes one or more instances of server resources 195, network 190, wireless access point 131 (i.e., wireless station) and user equipment (e.g., mobile communication device 121 (i.e., wireless station)), mobile communication device 122, etc.

[0073] The network environment 100 includes any number of wireless access points and any number of corresponding mobile communication devices.

[0074] As further shown, the wireless network environment 100 or wireless access point 131 also includes a communication management resource 141. The communication management resource 141 and the wireless access point 131 may be located in the same location or in different locations.

[0075] Note that communication management resource 141 can be configured to perform the operations or any of the functions associated with wireless access point 131 (e.g., the first wireless station) as described herein.

[0076] It should also be noted that each resource in network environment 100 can be configured to include or be configured to include appropriate hardware, software, or a combination of hardware and software to perform the corresponding operations described herein.

[0077] For example, the communication management resource 141 described herein can be implemented by corresponding communication management hardware, communication management software, or a combination of communication management hardware and communication management software; the wireless access point 131 described herein can be implemented by corresponding wireless access point hardware, wireless access point software, or a combination of wireless access point hardware and wireless access point software; the communication device 121 can be implemented by communication device hardware, communication device software, or a combination of communication device hardware and communication device software, etc.

[0078] Furthermore, in this example, each wireless station is assigned a unique identifier value to support wireless message communication (e.g., network addressing for routing purposes). For example, wireless access point 131 (wireless station) at location L31 is assigned the unique identifier value ZXXX; communication device 121 at location L1 is assigned the unique identifier value XXX1; communication device 122 at location L2 is assigned the unique identifier value XXX2; and so on.

[0079] As further shown, each of the wireless access points, such as the wireless access point 131 included in the network environment 100, includes one or more corresponding instances of antenna hardware for direct wireless communication with mobile communication devices (i.e., user equipment).

[0080] For example, wireless access point 131 includes one or more instances of antenna hardware 131-1 (e.g., one or more antenna elements). Note that different sets of antenna elements associated with antenna hardware 131-1 can be configured to support different beamforming for transmitting a first wireless communication and receiving a second wireless communication in network environment 100.

[0081] Wireless stations such as mobile communication device 121, mobile communication device 122, and wireless access point 131 support one or more wireless communication (or wireless communication protocols, such as Wi-Fi) in one or more wireless frequency bands (unlicensed or licensed frequency bands) (such as 2.4 GHz (2.4 GHz to 2.5 GHz), 5 GHz (5.1 GHz to 5.9 GHz) and / or 6 GHz (5.9 GHz to 7.1 GHz)). TM(or any other suitable protocol). Furthermore, in this example, wireless access point 131 implements antenna hardware 131-1 to transmit wireless signal 151 to mobile communication device 121 at location L1. Wireless access point 131 implements antenna hardware 131-1 to receive wireless signal 152 from mobile communication device 121.

[0082] Furthermore, in this example, wireless access point 131 and mobile communication device 121 establish a wireless communication link 171 between them. Through wireless communication 151, wireless access point 131 transmits messages (such as one or more data packets) to mobile communication device 121 in the downlink direction via wireless channel WCH1. Additionally, mobile communication device 121 transmits wireless communication 152 to wireless access point 131 in the uplink direction via wireless channel WCH1.

[0083] Therefore, through communications 151 and 152, wireless access point 131 provides mobile communication device 121 with access to any one of remote network 190 and one or more server resources 195. As the name suggests, it should also be noted that mobile communication device 121 (i.e., wireless station) can be configured to move within network environment 100.

[0084] Furthermore, it should be noted that each wireless station (wireless access point 131, mobile communication device 121, etc.) in network environment 100 can be configured to perform a corresponding idle channel assessment function (i.e., listen-before-speak access function) before transmitting communication in network environment 100.

[0085] For example, wireless access point 131 can be configured to implement a listen-before-speak function (idle channel assessment function), wherein wireless access point 131 needs to acquire wireless channel WCH1 before it is allowed to transmit communication 151 to mobile communication device 121 via downlink. Acquiring wireless channel WCH1 by wireless access point 131 (e.g., detecting that the energy of the wireless channel is below an energy threshold during the duration of the contention window) can include wireless access point 131 detecting that the power level of a wireless signal transmitted in wireless channel WCH1 or a corresponding wireless channel of interest is below a threshold during the listen-before-speak duration. If the detected wireless power level is above the threshold during the listen-before-speak duration, wireless access point 131 waits until the corresponding next time slot or time to listen again to acquire wireless channel WCH1.

[0086] Similarly, mobile communication device 121 can be configured to implement a listen-before-speak function (idle channel assessment function), wherein mobile communication device 121 needs to acquire the radio channel WCH1 before it is permitted to transmit communication 152 to radio access point 131 in the uplink direction. Acquiring the radio channel WCH1 by mobile communication device 121 may include mobile communication device 121 detecting that the power level of the radio signal transmitted in radio channel WCH1 or the corresponding radio channel of interest is below a threshold during the listen-before-speak duration. If the detected radio power level is above the threshold during the listen-before-speak duration, radio station 121 waits until the corresponding next time slot or time to listen again to acquire the radio channel WCH1.

[0087] Therefore, each wireless station in network environment 100 can be configured to perform a corresponding free channel assessment before transmitting communication in network environment 100.

[0088] In a similar manner, each of the multiple wireless stations (e.g., wireless access points, wireless base stations, mobile communication devices, etc.) in the network environment 100 can be configured to implement a listen-before-speak function to obtain the corresponding wireless channel for transmitting the corresponding wireless communication.

[0089] As discussed further below, communication management resource 141 can be configured to implement one or more access class queues (and corresponding sub-queues within each access class) to control the delivery of data packets through wireless communication link 171. All processing operations relating to communication management resource 141 described herein can also be implemented in mobile communication device 121.

[0090] Figure 2 This is an example diagram illustrating the reception and queuing of multiple data packets transmitted from a first wireless station to a second wireless station via a wireless channel as described herein.

[0091] In this example, application 225 (one or more different applications, such as application 225-1 (such as a voice processing application), application 225-2 (such as a video processing application), etc.) generates data packets for transmission to mobile communication device 121.

[0092] Each data packet generated by application 225-1 or other suitable entity (e.g., data packet #3, data packet #4, and data packet #6, etc.) can be configured to include a source network address ZXXX and a destination address XXX1 assigned to wireless access point 131.

[0093] Each data packet generated by application 225-2 or other suitable entity (e.g., data packet #1, data packet #2, and data packet #5, etc.) can be configured to include a source network address ZXXX and a destination address XXX1 assigned to wireless access point 131.

[0094] Furthermore, it should be noted that data packets stored in the corresponding access class queues 211, 212, etc., can be transmitted to multiple different mobile communication devices. For example, in one example, data packets 3, 5, and 1 can be transmitted from wireless access point 131 to mobile communication device 121; data packets 4, 6, and 2 can be transmitted from wireless access point 131 to mobile communication device 122. Alternatively, all data packets 1-6 can be transmitted to mobile communication device 121. Accordingly, the access class queues described herein can be used to transmit two data packets to multiple different mobile communication devices.

[0095] In this example, it is assumed that application 225-1 or another suitable entity generates data group #3, data group #4, and data group #6. It is assumed that application 225-2 or another suitable entity generates data group #1, data group #2, and data group #5, etc.

[0096] As discussed further below, any processing layer in the multi-layer protocol stack (or one or more applications 225) can be configured to mark data packets with an L4S tag (represented by the letter X). This informs the queue management resource 241 that the marked data packet is given a special higher priority associated with the specific access class queue (also known as the data delivery queue) to which the data packet and its corresponding data payload belong.

[0097] In other words, access class queue 211 has a higher priority than access class queue 212 for transmitting corresponding data packets to one or more target radio stations. Within access class queue 211, sub-queue 211-1 is assigned a higher priority than data packets in sub-queue 211-2 for transmission. Within access class queue 212, sub-queue 212-1 is assigned a higher priority than data packets in sub-queue 212-2 for transmission.

[0098] As further illustrated, communication management resource 141 includes queue management resource 241 for managing the storage of data packets in appropriate queues upon receipt, based on the access class (also known as data delivery class) to which each data packet belongs. It should be noted that communication management resource 241 described herein may include any number of access class queues (also known as data delivery queues) and corresponding access class subqueues (also known as data delivery subqueues).

[0099] For example, suppose data packets #3, #4, and #6 contain data of the first type (e.g., key voice data associated with application 225-1) and therefore belong to the first access category assigned to access category queue 211. It should be noted that access category queue 211 can be configured to include sub-queues 211-1 and 211-2.

[0100] Assume that data packets #1, #2, and #5, etc., contain second-type data (e.g., video data associated with application 225-2) and therefore belong to the second access category assigned to access category queue 212. It should be noted that access category queue 212 can be configured to include sub-queues 212-1 and 212-2.

[0101] Based on the processing of bit information such as indicating the data type (e.g., 1, 2, 3, 4, 5, 6, etc.) transmitted in each received data packet, the queue management resource 241 stores the received data packets into different access categories and corresponding access category queues 211, 212, etc., according to the priority associated with each access category queue.

[0102] For example, queue management resource 241 (e.g., at the MAC processing layer or higher in a multi-layer wireless communication protocol) determines that data packet #1 includes video data associated with access class queue 212. Since data packet #1 does not contain a high-priority marker (a unique bit value represented by the letter X) for that access class, queue management resource 241 stores data packet #1 in a low-priority sub-queue 212-2 of access class queue 212.

[0103] Queue management resource 241 determines that data packet #2 contains video data associated with access category queue 212. Since data packet #2 does not contain a high-priority marker (a unique bit value represented by the letter X) for this access category, queue management resource 241 stores data packet #2 in low-priority sub-queue 212-2 of access category queue 212.

[0104] Queue management resource 241 determines that data packet #3 contains voice data (highest priority) associated with access category queue 211. Because data packet #3 contains a high priority marker for this access category (a unique bit value represented by the letter X), queue management resource 241 stores data packet #3 in high priority sub-queue 211-1 of access category queue 211.

[0105] Queue management resource 241 determines that data packet #4 includes voice data associated with access category queue 211. Based on the determined priority associated with data packet #4, queue management resource 241 stores data packet #4 in access category queue 211. Since data packet #4 does not have a high priority tag for this access category, queue management resource 241 stores data packet #4 in sub-queue 211-2 of access category queue 211.

[0106] Queue management resource 241 determines that data packet #5 includes video data (second highest priority data type) associated with access category queue 212. Because data packet #5 contains a high priority marker x for this access category, queue management resource 241 stores data packet #5 in high priority sub-queue 212-1 of access category queue 212. Within access category queue 212, sub-queue 212-1 stores data packets with higher priority than sub-queue 212-2, as previously described.

[0107] Queue management resource 241 determines that data packet #6 contains voice data associated with access category queue 211. Since data packet #6 does not contain a high-priority tag x for this access category, queue management resource 241 stores data packet #6 in a low-priority sub-queue 211-2 of access category queue 211.

[0108] As described above, any of the multiple processing layers received from the upper layers of the protocol stack can be configured to label data packets with an "x". These data packets are appropriately processed by the MAC layer (e.g., an access class scheduler such as queue management resource 241, data packet scheduling geographic area 235, etc.) to queue them for wireless transmission in the corresponding access queue. In some cases, the upper processing layers may not use L4S labeling (e.g., indicated by the letter "X") to label data packets. L4S labeling indicates that the corresponding data packet should be transmitted according to low latency. However, it should be noted that access point 131 itself or other suitable entities such as communication management resource 141, data packet scheduling manager 235, queue management resource 241, etc., can detect congestion associated with one or more access class queues, for example, due to internal factors (e.g., queue full, queue full state) or external factors (e.g., congestion encountered by the upstream router of wireless access point 131, etc.). In the event of such congestion, radio access point 131 and any corresponding management entities described above can be configured to mark any newly received data packets with an L4S tag, even if queue management resource 241 has not received any data packets with this tag from the upper processing layer(s). In other words, data packets #3 and #5 may initially contain an L4S tag. It should be noted that any data packets such as data packets #1, #2, #4, #6, etc., may be marked with an L4S tag if needed, even if queue management resource 241 has not received those data packets with such a tag.

[0109] Actively relabeling newly received data packets enables better transmission of the data packets on the corresponding wireless channel WCH1. According to transmission rule 250, scheduler 235 extracts data packets from different queues for transmission via the wireless communication link and the corresponding wireless channel WCH1.

[0110] It should be noted that Rule 250 may include any suitable information, such as the corresponding contention window size for transmitting the corresponding one or more data packets stored in each access class queue, restrictions on which data packets can be transmitted from which queues within the same corresponding channel acquisition time frame (TXOP), the priority associated with the transmission of data packets in each queue, how many data packets in the first queue can be transmitted before transmitting data packets from the next queue, etc.

[0111] In one example, rule 250 aims to provide fairness for each application 225 in transmitting data packets from each queue via wireless channel WCH1, so that each application generating the corresponding data type (e.g., voice data of different priorities, video data of different priorities, background data of different priorities, best effort data of different priorities, etc.) can transmit the corresponding data packets to the desired target receiver.

[0112] It should be noted that data packets stored in different queues do not need to be transmitted to the same wireless station. Instead, the destination network address of each data packet in access class queue 211 can be a first mobile communication device, and the destination network address of each data packet in access class queue 212 can be a second mobile communication device, and so on.

[0113] Alternatively, any data packet in access class queue 211 can be specified to be delivered to any one of the multiple mobile communication devices; any data packet in access class queue 212 can be specified to be delivered to any one of the multiple mobile communication devices, and so on.

[0114] As mentioned above, according to rule 250, different access class queues are assigned different priorities for transmitting corresponding data packets via the wireless communication link and the corresponding wireless channel WCH1. For example, access class queue 211 can be configured to store the highest priority data transmitted via wireless channel WCH1; access class queue 212 can be configured to store the second highest priority data transmitted via wireless channel WCH1, and so on.

[0115] As further discussed herein, after acquiring the first active radio channel WCH1 (via one or more TXOPs), the data packet scheduler 235 extracts data packets from different access class queues for transmission over the wireless communication link.

[0116] For example, using the listen-before-speak function, the packet scheduler 235 monitors the availability of radio channel WCH1 using a first contention window W1 associated with access class queue 211. Using the listen-before-speak function, the packet scheduler 235 monitors the availability of radio channel WCH1 using a second contention window W2 associated with access class queue 212.

[0117] It should be noted that the allocated contention window W1 associated with access class queue 211 (which has a higher priority than access class queue 212) can be shorter in duration than the allocated contention window W2 associated with access class queue 212. This ensures that access class queue 211 is given a higher priority than transmitting data via the radio channel (i.e., WCH1) in access class queue 212. However, it should be noted that packet scheduler 235 can be configured to transmit any or all data packets from the access class queue when acquiring radio channel WCH1 (e.g., TXOP1 or TXOP2) or the same TXOP, according to rule 250. For example, rule 250 may allow packet scheduler 235 to acquire radio channel WCH1 by implementing contention window W1 to transmit data packets from access class queue 211 on the correspondingly acquired channel for duration TXOP1. If any remaining duration associated with the acquired radio channel TXOP1 is available, the data packet scheduler resource 235 may also transmit data packets #1, #2 and #5 in the same channel acquisition, for example, TXOP1 may be used to transmit one or more of data packets 3, 4 and 6.

[0118] Alternatively, the data packet scheduler 235 may need to acquire the radio channel WCH1 multiple times during multiple contention windows to acquire the radio channel at multiple different times to transmit data packets in each different access class queue.

[0119] For example, suppose that packet scheduler 235 acquires the wireless channel at or around time T1 in response to detecting that the wireless energy associated with wireless channel WCH1 detected by wireless access point 131 is lower than the threshold of window W1. In this case, packet scheduler 235 detects that the highest priority access class queue 211 contains data packets in both sub-queues 211-1 and 211-2. Since sub-queue 211-1 stores data packets with higher priority than sub-queue 211-2, packet scheduler 235 first transmits data packet #3 via wireless channel WCH1 at or around time T1, then transmits data packet #4 at or around time T2, and transmits data packet #6 at or around time T3.

[0120] In the same or different channel acquisition (e.g., TXOP1 or TXOP2), the packet scheduler 235 transmits data packet #5 using radio channel WCH1 at or around time T4. In this case, the packet scheduler 235 detects that the second highest priority access class queue 212 contains data packets in both sub-queues 212-1 and 212-2. Since sub-queue 212-1 stores data packets with higher priority than sub-queue 212-2, the packet scheduler 235 transmits data packet #5 via radio channel WCH1 at or around time T4, followed by transmission of data packet #1 at or around time T5, and transmission of data packet #2 at or around time T6.

[0121] In the event of multiple acquisitions of the wireless channel WCH1, since the scheduling management resource 235 detects the presence of data packets transmitted to the communication device 121 via the wireless communication link 171 in the access class queue 211, the scheduling management resource 235 implements a first contention window W1 associated with the first access class queue 211. In response to the wireless access point 131 detecting that the wireless energy level at the antenna hardware 131-1 is lower than the energy level threshold level for the duration of the window W1 allocated to the access class queue 211, the scheduling management resource 235 acquires the wireless channel WCH1 within the channel acquisition time TXOP1, and transmits the corresponding data packets #3, #4, and #6 at the corresponding times T1, T2, and T3 within the acquisition time TXOP1.

[0122] Furthermore, in the event of multiple acquisitions of the wireless channel WCH1, since the scheduling management resource 235 detects the presence of data packets transmitted to the communication device 121 via the wireless communication link 171 in the access class queue 212, the scheduling management resource 235 implements a first contention window W2 associated with the second access class queue 212. In response to the wireless access point 131 detecting that the wireless energy level at the antenna hardware 131-1 is lower than the energy level threshold level for the duration of the window W2 allocated to the access class queue 212, the scheduling management resource 235 acquires the wireless channel WCH1 within the channel acquisition time TXOP2, and transmits the corresponding data packets #5, #1, and #2 at the corresponding times T4, T5, and T6 within the acquisition time TXOP2.

[0123] Therefore, according to one example, the network environment described herein includes a first wireless station (131) that implements a listen-before-speak function to communicate with a second wireless station (121) via a wireless channel. The communication management resource 141 of the first wireless station receives multiple data packets intended for delivery to the mobile communication device 121 via the wireless channel WCH1. The communication management resource 141 of the first wireless station detects that a first data packet (e.g., data packet #3) and a second data packet (e.g., data packet #4) among the multiple data packets belong to a first access class queue 211 among multiple access classes. The communication management resource 140 of the first wireless station (131) also detects that the first data packet (data packet #3) is marked as having a higher priority than the second data packet (data packet #4) in the first access class. Based on the priority order associated with the queue and the corresponding data packet #3 and second data packet #4, the communication management resource 141 of the first wireless station schedules the transmission of data packet #3 via the wireless channel WCH1 before data packet #4 is transmitted via the wireless channel WCH1.

[0124] In one example, to further transmit data packets, the communication management resources of the first wireless station (e.g., wireless access point 131) and the corresponding communication management resource 141 implementing scheduling management resource 235 can both be configured to map the identifier of the first access class to a first idle channel evaluation window value (contention window W1) allocated to the first access class 211 to acquire the wireless channel WCH1 at time T1 or before or exactly before time T1. In response to detecting that the wireless channel is not used for the duration specified by the first idle channel evaluation window (W1) allocated to the first access class (which is associated with access class queue 211), the communication management resources transmit the first data packet (#3) via wireless channel WCH1 (and wireless communication link 171), followed by the transmission of the second data packet (#4) via wireless channel WCH1 and wireless communication link 171. In other words, as described above, since data packet #3 is considered to have a higher priority for transmission via wireless channel WCH1 than data packet #4, the communication management resource 141 transmits data packet #3 via wireless channel WCH1 before transmitting data packet #4 via wireless channel WCH1.

[0125] Furthermore, as described above, the communication management resource 141 of the first wireless station (131) and the corresponding data packet scheduler 235 can be configured to transmit any data packet #3, data packet #4, or data packet #6 through the wireless channel WCH1 in response to the first acquisition of the wireless channel WCH1 by implementing a first idle channel evaluation window W1 (e.g., a first listen-before-speak window) (e.g., via TXOP1); and to transmit one or more of data packets #5, data packet #1, or data packet #2 through the wireless channel WCH1 in response to the second acquisition of the wireless channel WCH1 using a second contention window (W2) associated with the second access class queue 212.

[0126] In other words, the data packet scheduler 235 can be configured to implement a first contention window W1. In response to detecting that the radio channel WCH1 is unused, for example, if the radio energy in the radio channel WCH1 is below a corresponding energy threshold level for the duration of the first contention window W1, the scheduler 235 transmits at least data packets #3, #4, and #6. If additional time in TXOP1 is available for channel acquisition, the scheduler 235 can be configured to transmit data packets #5, #1, and #2 within the same acquisition time TXOP1.

[0127] In another example, the packet scheduler 235 may be configured to implement a first contention window W1 to acquire the radio channel WCH1 and transmit data packets from the access class queue 211. In response to detecting that the radio channel WCH1 is unused, for example, if the radio energy in the radio channel WCH1 is below a corresponding energy threshold level during the duration of the first contention window W1, the scheduler 235 transmits at least data packets #3, #4, and #6 through the acquired radio channel WCH1 within the acquired TXOP1 period of the first contention window W1. After window TXOP1, if the channel WCH1 is lost or its use is exhausted, the packet scheduler 235 may be configured to implement a second contention window W2 to acquire the radio channel WCH1 again. In response to the detection that wireless channel WCH1 is unused at antenna hardware 131-1, such as wireless energy in wireless channel WCH1 being lower than the corresponding energy threshold level during the duration of the second contention window W2, scheduling management resource 235 acquires wireless channel WCH1 before time T4, and transmits at least data packet #5, data packet #1, and data packet #2 within the second contention window W2 during the acquired TXOP2 (the time to acquire wireless channel WCH1 again).

[0128] Figure 3This is an example diagram illustrating the reception and queuing of multiple data packets transmitted from a first wireless station to a second wireless station via a wireless channel as described herein.

[0129] It should be noted that the examples in this article include the possibility of increasing the number of access classes to improve traffic management in systems implementing idle channel assessment (listen-before-talk). For instance, traditional access class configuration standards define four different access classes, each with a different priority and contention window size. However, this may be insufficient to cope with the increasing diversity of traffic types of wireless data packets transmitted in the corresponding wireless networks.

[0130] As mentioned earlier, the number of access categories can be determined by user priority information, and therefore, the maximum number of access categories can be any number. As discussed in this article, expanding the scope of user priority information from the four default access category configurations to alternative custom access category configurations may require some modifications at a higher level to support the grouping of data into different categories.

[0131] As further described herein, the implementation of a one-to-one mapping between user priority information and queue selection in a multi-layered protocol stack implemented by communication management resource 141 at layers above the application or MAC layer, and the implementation of a greater number of access classes and corresponding queues, allows for better traffic classification. However, the proposed extension requires increasing the number of classes, such as classes 0 to 7 (e.g., a total of 8 classes or other suitable values), with each access class assigned a corresponding appropriate contention window size and inter-frame spacing setting.

[0132] In this example, from highest priority to lowest priority, or from highest priority to highest priority, access category queue 335 includes access category queue AC7, access category queue AC6, access category queue AC5, access category queue AC4, access category queue AC3, access category AC2, access category AC1, and access category AC0.

[0133] Additional access classes, such as eight access classes (or corresponding eight access class queues AC7 to AC0) instead of four, allow for optimization of inter-frame spacing and contention window size to accommodate different priorities associated with traffic. In other words, traditional techniques implementing only four different access classes and corresponding queues are very limiting. The technique described in this paper improves access class queuing and data transmission in a listen-before-speak system that supports communication between radio stations.

[0134] Based on an example, as described above, Figure 1The network environment shown includes a first wireless station (e.g., wireless access point 131) that implements a listen-before-speak function to communicate with a second wireless station (e.g., mobile communication device 121) via wireless channel WCH1.

[0135] like Figure 3 As shown, in this example, the communication management resources 141 in or associated with the wireless access point 131 include queue management resources 341, mapping information 310, access category queue 335, and scheduler management resources 235, etc.

[0136] Suppose that communication management resource 141 receives data packet 351, which includes data packet 351-1 marked with access class value CS6, data packet 351-2 marked with access class value EF, data packet 351-3 marked with access class value CS5, data packet 351-4 marked with access class value CS4, data packet 351-5 marked with access class value AF2X, data packet 351-6 marked with access class value CS2, etc. In this example, the access class value indicates which of the multiple access class queues the corresponding data packet 351 will be stored in. In other words, the access class value indicates the corresponding priority associated with which the corresponding data packets communicate with the target communication device via the wireless channel.

[0137] In general, in this example, queue management resource 341 receives the corresponding data packet 351. Queue management resource 341 uses mapping information 310 as a basis to store each different data packet in the appropriate queue 335. In other words, the communication management resource 341 (also referred to as queue management resource) of the first wireless station (e.g., wireless access point 131) receives multiple data packets 351 intended for delivery to the second wireless station (e.g., communication device 121) via wireless channel WCH1.

[0138] In this example, each of the multiple data packets 351 is assigned one of multiple scheduling priorities (e.g., access class labels including access class value CS6, access class value EF, access class value CS5, access class value CS4, etc.). In one example, the access class value described herein is labeled at layer 3. Therefore, by performing layer 3 processing on each data packet 351, queue management resource 341 can be configured to determine which of the multiple classes each received data packet 351 should be stored in for subsequent transmission via wireless communication link 171.

[0139] Communication management resource 341 uses mapping information 310 to schedule the transmission of multiple data packets 351 via wireless channel WCH1. In one example, such as Figure 4As shown, mapping information 310 provides a one-to-one mapping (associated with received data packets) of scheduling priorities to access class queues AC7 to AC0, from which multiple data packets are scheduled for transmission from wireless access point 131 to mobile communication device 121.

[0140] In another example, based on the scheduling priority assigned to the access class queues and their corresponding data packets 351, the communication management resource 141 transmits multiple data packets 351 from the wireless access point 131 to the mobile communication device 121 via the wireless channel WCH1. For example, the communication management resource associated with the wireless access point 131 can be configured to implement any number of access class queues, each allocated a contention window of different duration for accessing the wireless channel and transmitting data packets.

[0141] In this example, queue management resource 341 receives data packet 351-1. Through Layer 3 or other types of processing, queue management resource 341 determines that data packet 351-1 is marked with the corresponding access class value CS6. Through mapping information 310, queue management resource 341 determines that access class value CS6 is mapped to access class queue AC7 (highest priority queue). In this case, the queue management resource stores data packet 351-1 in access class queue AC7.

[0142] Further, queue management resource 341 receives data packet 351-2. Through Layer 3 or other types of processing, queue management resource 341 determines that data packet 351-2 is marked with a corresponding access class value EF. Through mapping information 310, queue management resource 341 determines that access class value EF is mapped to access class queue AC6. In this case, queue management resource stores data packet 351-2 in access class queue AC6.

[0143] Queue management resource 341 receives data packet 351-3. Through Layer 3 or other types of processing, queue management resource 341 determines that data packet 351-3 is marked with a corresponding access class value CS5. Through mapping information 310, queue management resource 341 determines that access class value CS5 is mapped to access class queue AC5. In this case, the queue management resource stores data packet 351-3 in access class queue AC5.

[0144] Queue management resource 341 receives data packet 351-4. Through Layer 3 or other types of processing, queue management resource 341 determines that data packet 351-4 is marked with a corresponding access class value CS4. Through mapping information 310, queue management resource 341 determines that access class value CS4 is mapped to access class queue AC4. In this case, queue management resource stores data packet 351-4 in access class queue AC4.

[0145] Queue management resource 341 receives data packet 351-5. Through Layer 3 or other types of processing, queue management resource 341 determines that data packet 351-5 is marked with the corresponding access class value AF2X. Through mapping information 310, queue management resource 341 determines that the access class value AF2X is mapped to access class queue AC3. In this case, the queue management resource stores data packet 351-5 in access class queue AC3.

[0146] Queue management resource 341 receives data packet 351-6. Through Layer 3 or other types of processing, queue management resource 341 determines that data packet 351-6 is marked with the corresponding access class value CS2. Through mapping information 310, queue management resource 341 determines that the access class value CS2 is mapped to access class queue AC2. In this case, the queue management resource stores data packet 351-6 in access class queue AC2.

[0147] In a similar manner, queue management resource 341 stores multiple data groups with the same access class value into the corresponding access class queue.

[0148] In one example, after storing data packets into each of the different queues as described above, scheduling management resource 235 detects that access class queue AC7 contains data packets for transmission to mobile communication device 121. To facilitate the transmission of data packets in access class queue AC7 via radio channel WCH1, communication management resource 141 of wireless access point 131 maps the identifier of access class queue AC7 to the idle channel evaluation window size (W17) and the corresponding duration (TXOP17) allocated to the first access class queue AC7 via configuration information 311. In response to the detection that the wireless channel is not used for a duration specified by the idle channel evaluation window W17 (e.g., the wireless energy detected by antenna hardware 131-1 during duration W17 is lower than the threshold level for acquiring wireless channel WCH1 during the corresponding duration TXOP17), communication management resource 141: acquires wireless channel WCH1 during duration TXOP17; extracts each of the data packets including data packets 351-1 stored in the access class queue AC7 from the first access class queue (e.g., AC7); and during the duration TXOP17 associated with the acquired channel, transmits one or more data packets extracted from access class queue AC7 (the highest priority queue) to mobile communication device 121 via communication link 171 through wireless channel WCH1.

[0149] After storing the data packets in each of the different queues, the scheduling management resource 235 detects that the access class queue AC6 contains data packets for transmission to the mobile communication device 121. To facilitate the transmission of data packets through the wireless channel WCH1, the communication management resource 141 of the wireless access point 131 maps the identifier of the access class queue AC6 to the idle channel evaluation window duration (W16) and the corresponding duration (TXOP17) allocated to the access class queue AC6 via configuration information 311. In response to the detection that the wireless channel is not used for a duration specified by the idle channel evaluation window W16 (e.g., the wireless energy detected by antenna hardware 131-1 during the duration W16 is lower than the threshold level for acquiring the wireless channel WCH1 during the corresponding duration TXOP16), communication management resource 141: acquires the wireless channel WCH1 during the duration TXOP16; extracts each of the data packets including data packets 351-2 stored in the access class queue (e.g., AC6); and transmits one or more data packets extracted from the access class queue AC6 to the mobile communication device 121 via the communication link 171 through the wireless channel WCH1 during the acquired channel duration TXOP16.

[0150] After storing the data packets in each of the different queues, the scheduling management resource 235 detects that the access class queue AC5 contains data packets for transmission to the mobile communication device 121. To facilitate the transmission of data packets through the wireless channel WCH1, the communication management resource 141 of the wireless access point 131 maps the identifier of the access class queue AC5 to the idle channel evaluation window duration (W15) and the corresponding duration (TXOP15) allocated to the access class queue AC5 via configuration information 311. In response to the detection that the wireless channel is not used for a duration specified by the idle channel evaluation window W15 (e.g., the wireless energy detected by antenna hardware 131-1 during the duration W15 is lower than the threshold level for acquiring the wireless channel WCH1 during the corresponding duration TXOP15), communication management resource 141: acquires the wireless channel WCH1 during the duration TXOP15; extracts each of the data packets including data packets 351-3 stored in the access class queue (e.g., AC5); and during the acquired channel duration TXOP15, transmits one or more data packets extracted from the access class queue AC5 to the mobile communication device 121 via the communication link 171 through the wireless channel WCH1.

[0151] After storing the data packets in each of the different queues, the scheduling management resource 235 detects that the access class queue AC4 contains data packets for transmission to the mobile communication device 121. To facilitate the transmission of data packets through the wireless channel WCH1, the communication management resource 141 of the wireless access point 131 maps the identifier of the access class queue AC4 to the idle channel evaluation window duration (W14) and the corresponding duration (TXOP14) allocated to the access class queue AC4 via configuration information 311. In response to the detection that the wireless channel is not used for a duration specified by the idle channel evaluation window W14 (e.g., the wireless energy detected by antenna hardware 131-1 during duration W14 is lower than the threshold level for acquiring wireless channel WCH1 during the corresponding duration TXOP14), communication management resource 141: acquires wireless channel WCH1; extracts each of the data packets including data packets 351-4 stored in access class queue (e.g., AC4); and transmits one or more data packets extracted from access class queue AC4 to mobile communication device 121 via communication link 171 through wireless channel WCH1 during the acquired channel duration TXOP14.

[0152] In a similar manner, the scheduling management resource 235 associated with the communication management resource 141 transmits data packets 351 from each queue via the wireless communication link 171 through the wireless channel WCH1.

[0153] In a further example, the communication management resource implements queue management resource 341 at a first processing layer (e.g., layer 3 or other suitable data packet processing layer) in the multi-layer protocol stack to process each of the multiple data packets via mapping information 310. The first processing layer can be implemented at any layer between the MAC (Media Access Control) processing layer and the application processing layer of the multi-layer protocol stack transmitting data packets 351, to select which of the multiple data packets 351 to store in the access class queues AC7-AC0.

[0154] Furthermore, according to Figure 4 The mapping information 310, which implements a one-to-one mapping from scheduling priorities to access class queues, may include: mapping a first per-hop behavior value (e.g., an access class value CS6 indicating a first user priority) associated with the first data packet 351-1 to a first access class queue AC7 in the access class queue; mapping a second per-hop behavior value (e.g., an access class value EF indicating a second user priority) associated with data packet 351-2 to an access class queue AC6 in the access class queue; mapping a third per-hop behavior value (e.g., an access class value CS5 indicating a third user priority) associated with data packet 351-3 to an access class pair queue AC5 in the access class queue; and so on.

[0155] Therefore, implementing mapping information 310 to schedule the transmission of multiple data packets over a wireless channel may include queue management resource 341: obtaining a first priority value (e.g., an access class value) from a first data packet among the multiple data packets, the first priority value being a third-level bit tag of the first data packet; storing the first data packet in a first access class queue assigned to the first priority value in response to detecting the first priority value in the first data packet; obtaining a second priority value (e.g., a second access class value) from a second data packet among the multiple data packets, the second priority value being a third-level bit tag of the second data packet; and storing the second data packet in a second access class queue assigned to the second priority value in response to detecting the second priority value in the second data packet.

[0156] In other words, as described above, the label of each corresponding data packet (e.g., CS6, EF, CS5, CS4, etc.) indicates which of the multiple queues the corresponding data packet should be stored in. Data packets labeled with the value CS6 are stored in the access class queue AC7; data packets labeled with the value EF are stored in the access class queue AC6; data packets labeled with the value CS5 are stored in the access class queue AC5; and so on.

[0157] According to the scheduling priority assigned to the access category queue, the communication management resource transmits the first data packet and the second data packet from the first wireless station (wireless access point 131) to the communication device 121 via the wireless channel WCH1 and the communication link 171.

[0158] It should be noted that the Level 3 bit marker of the first data packet (such as the access class values ​​CS6, EF, CS5, etc. mentioned above, or other suitable information) and the corresponding value can be the first DSCP (Differential Service Code Point) marker of the first data packet; and the Level 3 bit marker of the second data packet can be the second DSCP (Differential Service Code Point) marker of the second data packet, etc.

[0159] Figure 4 This is an example diagram illustrating the mapping of user priority information to access category queues as described in this article.

[0160] In this example, as described above, mapping information 310 indicates the mapping of IETF traffic category information and per-hop behavior values ​​to corresponding user priority information for transmitting data packets. In the manner described above, each user priority value and / or corresponding per-hop behavior value can be mapped to a single access category queue.

[0161] like Figure 4 As shown, 12 IETF traffic (data packet) types are mapped to only 8 UP (user priority) types, and the UP types are further downsampled / mapped to 4 access categories. As previously stated... Figure 3 As described above, a one-to-one mapping concept is introduced between access categories AC and UP.

[0162] For example, network control information with per-hop behavior value CS6 is mapped to user priority 7 (highest priority), and thus to access class queue AC7.

[0163] Voice data categories assigned per-hop behavior values ​​EF and VA are mapped to user priority 6, and thus to access category queue AC6.

[0164] Signaling categories assigned per-hop behavior values ​​CS5 are mapped to user priority 5 and access category queue AC5.

[0165] Multimedia conference categories assigned per-hop behavior values ​​AF4X are mapped to user priority 4 and access category queue AC4.

[0166] The real-time interaction category, assigned a per-hop behavior value CS4, is mapped to user priority 4 and access category queue AC4.

[0167] Multimedia stream categories assigned per-hop behavior values ​​AF3X are mapped to user priority 4 and access category queue AC4.

[0168] Low-latency data categories assigned per-hop behavior values ​​AF2X are mapped to low user priority 3 and the corresponding access category queue AC3.

[0169] The OAM category, which is assigned a per-hop behavior value CS2, is mapped to user priority 0 and the corresponding access category queue AC0, etc.

[0170] Figure 5 This is an example diagram illustrating the reception and queuing of multiple data packets transmitted from a first wireless station to a second wireless station via a wireless channel as described herein.

[0171] In this example, Figure 5 Each access class queue comprises a primary sub-queue and a secondary sub-queue. The primary sub-queue associated with the corresponding access class stores data packets with a low-latency tag X for low-latency data packets. The secondary sub-queue associated with the corresponding access class stores data packets without a corresponding low-latency tag X for high-latency data packets. Therefore, in the manner described above, a corresponding priority queue or different sub-queues within an access class may have higher-priority sub-queues and lower-priority sub-queues.

[0172] More specifically, queue management resource 341 receives data packets 551, which include data packets D1, D2, D3, D4, D5, D6 and D7.

[0173] In this example, each data packet includes a corresponding access class value in its data field. For example, each of data packets D1, D2, and D7 includes or is marked with the corresponding access class value DF; each of data packets D3, D4, D5, and D6 includes or is marked with the corresponding access class value CS6.

[0174] Each of data packets D3, D4, and D7 is marked with a low-latency tag X. This means that data packets marked with the low-latency tag X have a higher priority in their respective access classes than data packets without the corresponding tag X.

[0175] Each access category in this example includes a first sub-queue and a second sub-queue to store low-latency and high-latency labeled data packets.

[0176] For example, access class queue AC7 (217) includes a low-latency subqueue 217-1 for storing low-latency tagged data packets, and a high-latency subqueue 217-2 for storing non-low-latency tagged data packets associated with access queue 217. Access class queue AC0 (210) includes a low-latency subqueue 210-1 for storing low-latency tagged data packets, and a high-latency subqueue 210-2 for storing untagged data packets associated with access queue 210.

[0177] As further shown, the queue management resource 341 associated with the communication management resource 141 (of the wireless access point 131) receives data packet D1. The queue management resource 341 determines that the received data packet D1 is marked with the access class identifier value DF but not with the low latency tag X. Using mapping information 310, the queue management resource 341 determines that the data packet D1, marked with the access class identifier value DF but not with the low latency tag X, should be stored in the sub-queue 210-2 associated with the access class queue AC0. In this case, the queue management resource 341 stores the data packet D1 in the sub-queue 210-2.

[0178] The queue management resource 341, associated with the communication management resource 141 (of wireless access point 131), receives data packet D2. The queue management resource 341 determines that the received data packet D2 is marked with the access class identifier value DF but not with the low latency tag X. Using mapping information 310, the queue management resource 341 determines that data packet D2, marked with the access class identifier value DF but not with the low latency tag X, should be stored in sub-queue 210-2 associated with access class queue AC0. In this case, the queue management resource 341 stores data packet D2 in sub-queue 210-2.

[0179] The queue management resource 341, associated with the communication management resource 141 (of the wireless access point 131), receives data packet D3. The queue management resource 341 determines that the received data packet D3 is marked with an access class identifier value CS6 and a low-latency flag X. Using mapping information 310, the queue management resource 341 determines that the data packet D3, marked with the access class identifier value CS6 and the low-latency flag X, should be stored in the sub-queue 217-1 associated with the access class queue AC7. In this case, the queue management resource 341 stores the data packet D3 in the sub-queue 217-1.

[0180] The queue management resource 341, associated with the communication management resource 141 (of the wireless access point 131), receives data packet D4. The queue management resource 341 determines that the received data packet D4 is tagged with the access class identifier value CS6 and the low latency tag X. Using mapping information 310, the queue management resource 341 determines that the data packet D4, tagged with the access class identifier value CS6 and the low latency tag X, should be stored in the sub-queue 217-1 associated with the access class queue AC7. In this case, the queue management resource 341 stores the data packet D4 in the sub-queue 217-1.

[0181] The queue management resource 341, associated with the communication management resource 141 (of the wireless access point 131), receives data packet D5. The queue management resource 341 determines that the received data packet D5 is marked with the access class identifier value CS6 but not with the low-latency tag X. Using mapping information 310, the queue management resource 341 determines that data packet D5, marked with the access class identifier value CS6 but not with the low-latency tag X, should be stored in the sub-queue 217-2 associated with the access class queue AC7. In this case, the queue management resource 341 stores data packet D5 in sub-queue 217-2.

[0182] The queue management resource 341, associated with the communication management resource 141 (of the wireless access point 131), receives data packet D6. The queue management resource 341 determines that the received data packet D6 is tagged with the access class identifier value CS6 but not with the low-latency tag X. Using mapping information 310, the queue management resource 341 determines that data packet D6, tagged with the access class identifier value CS6 but not with the low-latency tag X, should be stored in the sub-queue 217-2 associated with the access class queue AC7. In this case, the queue management resource 341 stores data packet D6 in sub-queue 217-2.

[0183] The queue management resource 341, associated with the communication management resource 141 (of the wireless access point 131), receives data packet D7. The queue management resource 341 determines that the received data packet D7 is marked with an access class identifier value DF and a low-latency tag X. Using mapping information 310, the queue management resource 341 determines that the data packet D7, marked with the access class identifier value DF and the low-latency tag X, should be stored in the sub-queue 210-1 associated with the access class queue AC0. In this case, the queue management resource 341 stores the data packet D7 in the sub-queue 210-1.

[0184] Therefore, using mapping information 310, in response to: i) detecting that data packet D3 is assigned a first priority value, for example (based on the tag X in data packet D3) a higher priority associated with access class queue 217, scheduler 341 stores data packet D3 in sub-queue 217-1 of access class queue 217. Based on detecting that there is no supplementary low-latency priority tag X in data packet D6, in response to: i) detecting that data packet D6 is assigned a second priority value associated with access class queue 217, scheduler 341 stores data packet D6 from multiple data packets in sub-queue 217-2 of access class queue 217.

[0185] Therefore, as Figure 5 As shown, according to the mapping information 310 indicating which data packets and data types are stored in each queue and sub-queue, queue management resource 341 (also known as the scheduler) stores data packet #D1 in sub-queue 210-2; queue management resource 341 stores data packet #D2 in sub-queue 210-2; queue management resource 341 stores data packet #D3 in sub-queue 217-1; queue management resource 341 stores data packet #D4 in sub-queue 217-1; queue management resource 341 stores data packet #D5 in sub-queue 217-2; queue management resource 341 stores data packet #D6 in sub-queue 217-2; queue management resource 341 stores data packet #D7 in sub-queue 210-1; and so on.

[0186] In a similar manner as described above, the scheduling manager or data packet transmission manager 235 attempts to acquire the radio channel WCH1 by monitoring the radio energy level associated with the radio channel WCH1 at the antenna hardware 131-1. In response to detecting that the radio energy level in the radio channel WCH1 is less than a corresponding threshold level during the Listen-After-Speak duration or the duration of the contention window W17, the communications management resource 141 acquires the radio channel WCH1 and then transmits higher-priority data packets #3, #4, #5, and #6 associated with the access class queue AC7 within the corresponding duration TXOP17.

[0187] After duration TXOP17, in response to detecting that the wireless energy level in wireless channel WCH1 is less than the corresponding threshold level during the Listen-After-Speak duration or the duration of contention window W10, communication management resource 141 acquires wireless channel WCH1 and then transmits lower priority data packets #7, #1 and #2 associated with access class queue AC0 during the corresponding duration TXOP10.

[0188] Figure 6This is a configuration example diagram illustrating one or more wireless stations that support alternative access class queue configurations as a supplement or alternative to the default access class queue configuration discussed in this article.

[0189] In this example, one or more wireless stations described herein implement a custom mode that implements a custom mode for the following: alternative access classes and corresponding data delivery queues, wherein the wireless stations initially communicate with each other (e.g., during association or other appropriate times) to indicate the ability to support different or custom configurations of access class queues with respect to a default number of access class queues.

[0190] If both wireless access point 131 and wireless station 121 support the customization mode as described herein, both wireless access point 131 and mobile communication device 121 can be configured to use one or more access classes (data delivery classes) as an alternative to using the default access class and corresponding data delivery queue by using a newly configured access class queuing system.

[0191] For example, wireless access point 131 includes communication management resources 141 to support custom access categories and corresponding custom access category queues; mobile communication device 121 includes communication management resources 1241 to support custom access categories and corresponding custom access category queues.

[0192] In one configuration, the maximum number of additional access classes used for custom modes can be limited to a predetermined number. For each access class and corresponding queue associated with the custom mode, support information and corresponding settings (such as contention window size, TXOP, etc.) are kept between at least the restrictive parameters and the most restrictive parameters of the current access class (i.e., the default access class and the corresponding default data delivery queue) to ensure that the configuration for the alternative (custom) access class is fair relative to the legacy device and the default configuration.

[0193] In other words, in custom mode, the settings associated with the contention window size and duration TXOP for each category can fall within the corresponding range. In custom mode, the contention window size setting for any additional data delivery category can be configured to fall within the acceptable contention window time range for that type of data queue for the access category. The TXOP duration setting for any additional data delivery queue can fall within the acceptable TXOP time range for that type of data queue.

[0194] For custom modes as described in this article, the expansion of access categories and corresponding queues allows for optimized IFS (Inter-Frame Interval) and contention window sizes to accommodate low-latency traffic associated with different traffic types.

[0195] More specifically, such as Figure 6 As shown, network environment 100 includes a first wireless station (wireless access point 131) and a second wireless station (mobile communication device 121), each of which implements a listen-before-speak function to communicate via a wireless channel. Therefore, wireless channel WCH1 can be obtained through the listen-before-speak function.

[0196] Based on configuration communication between wireless access point 131 and communication device 121 (e.g., via communication 651 and / or communication 652), the communication management resource 141 of the first wireless station (e.g., wireless access point 131) establishes multiple custom access classes and corresponding data delivery queues (e.g., associated with alternative access class configuration 620) for use by wireless access point 131 to control the transmission of data packets from wireless access point 131 to communication device 121.

[0197] In other words, the wireless access point 131 can be configured to implement a default access class configuration 610, wherein the wireless access point 131 supports a default number of data delivery classes (e.g., classes including a first access class queue supporting voice (VO), a second access class queue supporting video (VI), a third access class queue supporting best effort (BE), and a fourth access class queue supporting background (BK) data packets) to support different types of data, such as voice, video, and non-voice. An alternative or custom access class configuration 620, including custom access classes and corresponding custom data delivery queues, supports one or more additional or alternative access classes (data delivery queues) and corresponding queues to support higher resolution custom access class services.

[0198] As discussed further in this document, custom access class queues (e.g., associated with alternative access class configuration 620) and default access class queues (e.g., associated with default access class configuration 610) can be used to communicate with one or more communication devices that support such different queue configurations.

[0199] Furthermore, in this example, after setting one or more default access classes and additional access classes, it is assumed that communication management resource 141 receives multiple data packets intended for delivery from wireless access point 131 to communication device 121. In a manner similar to that described above, communication management resource 141 schedules the data packets for transmission via wireless channel WCH1 in a manner specified by configuration 610, based on multiple access classes (e.g., alternative access class configuration 620) and corresponding data delivery queues, to communicate with one or more first communication devices in network environment 100. As described herein, wireless access point 131 may also be configured to implement a default access class queue associated with default access class configuration 610 to communicate with one or more second communication devices in network environment 100.

[0200] Based on further examples and the selection of custom access class configuration 620, the communication management resources of wireless access point 131 can be configured to establish at least one queue for each of the multiple access classes, according to the configuration settings 651 and 652 and configuration 620.

[0201] In any other figure as described above (e.g.) Figure 2 , Figure 3 or Figure 6 In this configuration, each different access class can implement multiple access class sub-queues for a given access class. Furthermore, in a similar manner as described above, the wireless access point 131 can be configured to store each of a plurality of data packets into a corresponding queue among multiple queues created by the wireless access point 131, based on a priority determined for the respective data packets.

[0202] For example, suppose communication management resource 141 detects a first data packet in a first queue among multiple queues stored in configuration 620, and acquires a first contention window value associated with the first queue. Using a listen-before-speak function, in response to detecting that the detected wireless energy within the wireless channel is below a wireless energy threshold level for a duration specified by the first contention window, communication management resource 141 wirelessly transmits the first data packet from wireless access point 131 to communication device 121 via wireless channel WCH1 and the corresponding wireless communication link 671.

[0203] As described above, during the association of communication device 121 with wireless access point 131, configuration communications (e.g., 651 and / or 652) can be passed between wireless access point 131 and communication device 121 to support setting multiple queues and priorities (associated with alternative access class configuration 620).

[0204] It should also be noted that multiple access categories (data delivery categories and corresponding queues) for the alternative access category configuration 620, implemented by one or more wireless access points 131 or communication devices 121, can be implemented through configuration communication between a first wireless station (e.g., wireless access point 131 or communication device 121) and a second wireless station (e.g., communication device 121 or wireless access point 131); the configuration communication may include, for example, information specifying X categories, where X is an integer value indicating the number of data delivery categories and corresponding queues associated with the alternative or custom access category configuration 620.

[0205] It should be noted that the value X may be the total number of data delivery categories and corresponding queues implemented by the wireless access point 131 and the communication device 121, or the number of additional data delivery categories implemented by the respective wireless station (e.g., the wireless access point 131 and / or the communication device 121) relative to the default number (Y) of data delivery categories and corresponding default data delivery queues.

[0206] It should also be noted that one or more of the wireless access point 131 and communication device 121 may be initially configured to implement Y default access categories before implementing X custom categories associated with alternative access category configuration 620, and then override the default settings (e.g., default access category configuration 610), where Y is also an integer value. The integer value X may be greater than the integer value Y (e.g., 4 categories). In other words, each of the wireless access point 131 and communication device 121 initially supports a default number of access category queues, but may be configured to override the default settings (specified by default access category configuration 610) for implementing default access categories and corresponding queues to support a greater number of access categories and queues specified by the distribution communication between the first and second wireless stations (and the settings of custom or alternative access category configuration 620).

[0207] Therefore, the wireless access point 131 and the communication device 121 can be initially configured to implement a first access class configuration (610) that prioritizes the flow of messages transmitted from the wireless access point 131 to the communication device 121 via the wireless channel WCH1. This first access class configuration 610 is the default access class configuration. Based on configuration communications (651, 652) with the communication device 121, the communication management resource 141 implements a second custom access class configuration (620) and a corresponding access class queue specified by the communication to transmit multiple data packets from the wireless access point 131 (first wireless station) to the communication device 121 (second wireless station). Therefore, the second access class configuration 620 differs from the first access class configuration 610.

[0208] As a further example, it should be noted that communication 651 from wireless access point 131 to communication device 121 can be configured to include contention window information indicating the appropriate size of the contention window allocated to each of a plurality of access classes associated with a customized access class configuration.

[0209] Furthermore, in a similar manner as described above, the communication management resource 141 of the wireless access point 131 can be configured as a first processing layer implementing a multi-layer protocol stack to process each of a plurality of data packets intended to be delivered to the mobile communication device 121 via wireless communication link 671 using the wireless channel WCH1. The first processing layer that stores the received data packets into different data delivery queues may be located between the MAC processing layer and the application processing layer in the multi-layer protocol stack. The first processing layer that processes the received data packets and stores them in queues may be either the MAC processing layer or the application processing layer in the multi-layer protocol stack.

[0210] By executing a first processing layer and storing the received data packets into a corresponding data delivery queue (e.g., associated with Alternate Access Class Configuration 620), the communication management resource 141 associated with the wireless access point 131 processes a first data packet among a plurality of data packets and determines that the first data packet includes first data assigned a first transmission priority. In response to detecting that the first data packet includes first data assigned a first transmission priority, the communication management resource stores the first data packet into a first queue among a plurality of queues associated with Alternate Access Class Configuration 620; the first queue is assigned a first transmission priority. By processing a second data packet among a plurality of data packets, the communication management resource determines that the second data packet includes second data assigned a second transmission priority. In response to detecting that the second data packet includes second data assigned a second transmission priority, the communication management resource stores the second data packet into a second queue among a plurality of queues associated with Alternate Access Class Configuration 620. The second queue is assigned a second transmission priority. In a similar manner to that described above, the corresponding data packet scheduler transmits data packets according to the queues where the data packets are stored.

[0211] Therefore, by means of a protocol between wireless stations (e.g., between wireless access point 131 and communication device 121) as described herein, alternative access class configuration 620 is implemented to extend the class relative to the original default access class configuration 610.

[0212] Figure 7 This is an example diagram illustrating the customization of data delivery categories in the various wireless stations described in this article.

[0213] In one example, a communication system including wireless access point 131, mobile communication device 121, mobile communication device 122, etc., as described herein, supports the transmission of capability exchange communications (651, 652) between wireless access point 131 and communication devices 121 and 122. Capability exchange communications can occur at any time, for example: i) during the association of communication device 121 and wireless access point 131, ii) via probe request / response frames, wherein wireless access point 131 and communication device 121 exchange support information associated with the dynamic (custom) data delivery mode described herein, etc.

[0214] It should also be noted that capability exchange communications 651 and 652 may include any information that instructs the wireless station (wireless access point 131, communication device 121, or communication device 122) sending such information to support a customized implementation of multiple access classes and corresponding data delivery queues (e.g., supported by the default implementation of the default access class configuration 610) or a customized implementation of the corresponding data delivery queues (e.g., supported by the custom access class configuration 620) relative to the default implementation of the multiple access classes and corresponding data delivery queues (e.g., supported by the default access class configuration 610).

[0215] In one example, if one or both of the wireless access point 131 and the mobile communication device 121 support custom data delivery modes, such as those described herein, then one or both of the wireless access point 131 and the mobile communication device 121 can be reconfigured to support the selected customized data delivery mode that supports different levels of data delivery services as described above.

[0216] Conversely, suppose that wireless access point 131 and communication device 122 do not support or do not wish to implement a custom data delivery mode. In this case, both wireless access point 131 and communication device 122 are configured to implement a default implementation that uses multiple access classes and corresponding data delivery queues (e.g., supported by default access class configuration 610) to deliver data packets between wireless access point 131 and communication device 122.

[0217] In another example, the default access class implementation for the corresponding default EDCA (Enhanced Distributed Channel Access) mode associated with multiple wireless stations can be customized based on the needs of the corresponding communicating wireless stations. Adjustments or modifications to the original default implementation may include passing so-called custom parameter set elements (i.e., communication) from one wireless station to another to provide the information required for the station to properly operate its QoS (Quality of Service) facilities.

[0218] Subsequently, E-EDCA parameter set elements (e.g., ...) can be exchanged between wireless access point 131 and communication device 121 via so-called management frames. Figure 8(Communications within the framework), the management frame includes all necessary parameters (such as CWmin, CWmax, AIFSN, and TXOPlimit) to support one or more additional data delivery queues as described herein.

[0219] Refer again Figure 7 It should also be noted that additional data delivery queues (as a result of customization) can be implemented as an alternative to the default data delivery mode, as additional categories relative to the standard default access category queues (e.g., BE, BK, VI, and VO) for channel access and traffic classification. In this case, wireless access point 131 and communication device 121 can be configured to support either the default access category queues or customized access category queues based on the additional number of access category queues selected as needed.

[0220] Alternatively, it should be noted that a custom set of data delivery categories specified by the communication settings can be implemented in extended data delivery mode as an additional category relative to the standard default access category queues (e.g., BE, BK, VI, and VO) for channel access and traffic classification. In this case, wireless access point 131 and communication device 121 can be configured to support the default access category queues or an additional number of access category queues selected as needed. This will... Figure 9 Further discussion is needed.

[0221] like Figure 7 As shown in a more specific example in timing diagram 700, wireless access point 131 wirelessly transmits communication 651 (e.g., communication 651-1 and communication 651-2) to one or more wireless stations in network environment 100. Communication 651 (e.g., broadcast beacons, probe requests, configuration requests, etc. when wireless access point 131 is present in network environment 100) includes notification that wireless access point 131 supports custom access class configuration modes.

[0222] like Figure 7 As further illustrated, in response to receiving communication 651-1, mobile communication device 121 sends communication 652-1 to wireless access point 131. In one example, communication 652-1 notifies wireless access point 131 that communication device 121 has approved or accepted the customized access class operation.

[0223] In response to receiving communication 651-2, mobile communication device 122 sends communication 652-2 to wireless access point 131. In one example, communication 652-2 notifies wireless access point 131 that communication device 122 does not approve or reject access class operation in a customized mode. Communication device 122 can be configured to disapprove or reject access class operation in a customized mode for any suitable reason. In one example, communication device 122 does not have the capability to be configured to implement access class operation in a customized mode. For any communication device that receives a query message (e.g., communication 651) and does not respond to the query regarding operation in a customized mode, wireless access point 131 can be configured to default to delivering communication according to the default access class mode. Accordingly, the system described herein is backward compatible with legacy systems that do not support customized access class modes.

[0224] When wireless access point 131 receives a notification in communication 652-1 that the first mobile communication device 121 supports a custom mode, and wireless access point 131 receives a notification in communication 652-2 that the second communication device 122 does not support a custom mode (or does not wish to implement a custom mode), wireless access point 131 implements two sets of access class queues—a first set of auxiliary queues (e.g., an additional custom set of queues relative to the default queue) for supporting communication between the wireless access point and the first mobile communication device, and a second set of queues (the default queue) for supporting communication from wireless access point 131 to the second mobile communication device 122.

[0225] By operating 727, wireless station 122 executes the default set of access class queues to support the transmission of the corresponding subsequent communication to wireless access point 131 in the uplink direction.

[0226] If needed, in one example, the communication 652-1 received from mobile communication device 121 indicates information such as details of a customized set of allowed access categories and corresponding queues to support wireless communication transmission via wireless link 171. Communication device 121 or wireless access point 131 may know that mobile communication device 121 is currently executing multiple different application types supporting the transmission of different communication types (e.g., voice, video, etc.). Based on this information, wireless access point 131 and / or mobile communication device 121 can be configured to establish a default set of access categories and corresponding queues supporting those applications.

[0227] Additionally or alternatively, wireless access point 131 may be configured to select implementation details associated with custom access categories and corresponding queues supported by mobile communication device 121. In one example, wireless access point 131 transmits communication 651-3 to mobile communication device 121. Communication 651-3 is configured to indicate custom mode setting information, such as the number of custom access category queues supported by the custom mode implemented by mobile communication device 121, contention window information associated with the custom access category queues, TXOP limit information associated with the custom access category, etc.

[0228] In response to receiving communication 651-3, mobile communication device 121 sets the custom access class configuration indicated by communication 651-3 via operation 737. Mobile communication device 121 uses the custom access class and the corresponding queue as the basis for subsequently transmitting data packets (e.g., communication 740) from mobile communication device 121 to wireless access point 131 via wireless communication link 171.

[0229] According to a further example as described herein, in response to communication 652-1, via operation 732, wireless access point 131 can be configured to implement a set of custom access categories and corresponding access category queues to support subsequent communication 740 from wireless access point 131 to mobile communication device 121 in the downlink direction.

[0230] In response to communication 652-3, mobile communication device 121 may be configured to implement a set of custom access categories and corresponding access category queues to support subsequent communication 740 from mobile communication device to wireless access point 131 in the uplink direction.

[0231] As further described herein, and as previously mentioned, the following situations may occur: Wireless access point 131 implements multiple sets of access classes and corresponding access class queues to transmit data packets in the downlink direction to multiple wireless stations (including communication device 121 and communication device 122). For example, since mobile communication device 122 does not support a custom mode, wireless access point 131 may be configured to store traffic destined for mobile communication device 122 in the default set of queues. Conversely, if mobile communication device 121 supports a custom access class mode, it can benefit from more granular service queuing quality. In this case, wireless access point 131 stores traffic intended for delivery to communication device 121 in an extended (custom) set of queues and / or the default set of queues.

[0232] Therefore, in the first example, the wireless access point 131 can be configured to store data packets intended for delivery to the communication device 121 in a custom access class queue and a default access class queue for transmitting these data packets to the mobile communication device 121. Alternatively, in the second example, the wireless access point 131 can be configured to store data packets intended for delivery to the communication device 121 only in the custom access class queue and not in the default access class queue for transmitting these data packets to the mobile communication device 121.

[0233] According to a further example, when wireless access point 131 has data packets to be delivered to first mobile communication device 121 and second mobile communication device 122, wireless access point 131 schedules or analyzes the data packets destined for mobile communication devices 121 and 122 accordingly. Wireless access point 131 examines the destination address of each data packet and determines which queue set (secondary queue or default queue) should be used to transmit these data packets to the corresponding destination.

[0234] It should be further noted that the wireless access point 131 supports the ability to manage more fine-grained aspects from the outset, associated with custom access categories used for traffic classification. For example, the wireless access point 131 can be equipped with eight access category queues (such as...). Figure 3 (As shown in the diagram) to store received data packets (i.e., traffic). Furthermore, it is assumed that mobile communication device 121 supports 8 queues, while communication device 122 is limited to supporting only the default 4 queues. When an MSDU is received from a higher layer, radio access point 131 identifies the corresponding destination address to which the data packet is being transmitted. Depending on whether the expected receiver indicated by the corresponding destination address supports 8 queues or 4 queues, radio access point 131 allocates storage for the DL traffic in the corresponding different queues.

[0235] As further described herein, it should be noted that, to avoid potential unfairness when transmitting data packets from wireless access point 131 to communication devices 121 and 122, the techniques described herein can be configured to include limiting channel access parameters (e.g., CWmin, CWmax, and AIFS (also known as the number of arbitration inter-frame intervals)) associated with the custom access class and its corresponding access class queue to between the minimum and maximum values ​​of the default parameters supported by the traditional default access class and its corresponding access class queue. In this case, the implementation of the custom access class and its corresponding access class queue does not impede the simultaneous implementation of the default access class and its corresponding asset class queue.

[0236] In another example, regardless of which mode (default mode or custom mode) is used to transmit the corresponding communication from the communication device or wireless access point, the receiver (e.g., wireless access point 131 or communication device 121) does not need to do anything to receive the data packets sent to it.

[0237] Figure 8 This is an example diagram illustrating the configuration management frame that supports customization of data delivery categories as described in this article.

[0238] In one example, communication 651-3 transmitted from wireless access point 131 (e.g., a first wireless station) to mobile communication device 121 (e.g., a second wireless station) includes information in one or more data fields. This information is a variable-length element (communication) that depends on the number of additional access classes and corresponding access class queues to be established to support downlink communication from wireless access point 131 to mobile communication device 121. In another example, it should be noted that... Figure 8 The communication 651-3 and / or the corresponding data field shown may be transmitted via any management frame after the extended capability exchange indicated by communication 651-1 and / or communication 652-1.

[0239] Furthermore, in this example, data field 801 stores an element identifier that indicates a variable-length management frame (e.g., communication 651-3). Data field 802 indicates the corresponding length of communication 651-3. Data field 803 indicates the access class to be established by communication device 121 and the number of corresponding access class queues to support uplink communication from communication device 121 to wireless access point 131 using a custom mode as described herein.

[0240] Furthermore, in this example, each data field 805 indicates an attribute associated with a custom access category queue supported by the communication device 121.

[0241] For example, data field 805-11 indicates the number of arbitration inter-frame intervals associated with the first access class queue supported by mobile communication device 121 (e.g., any suitable integer value between 2 and 7 or other suitable value); data field 805-12 indicates the lower limit of the contention window associated with the first access class queue (e.g., greater than 7); data field 805-13 indicates the upper limit of the contention window associated with the first access class queue; and data field 805-14 indicates the maximum airtime occupancy during the corresponding access channel associated with the first access class queue.

[0242] Similarly, each data field in data field 805-2, etc., includes similar type of configuration information associated with the second access class queue indicated by data field 803. It should be noted that the configuration of each access class queue indicated by data field 803 varies with the settings associated with data fields 805-1, 805-2, etc.

[0243] Figure 9 This is an example diagram illustrating the implementation of custom access category queues and default access category queues as described in this article.

[0244] As mentioned above, the wireless access point 131 and the corresponding mobile communication device 121 can be configured to support custom access category queues 211, 212, etc., and also support the default access category queue 921.

[0245] In this example, a custom access class queue (which may be established for mobile communication device 121 in response to receiving communication 652-1) is assumed to support communication of individual data packets from wireless access point 131 to mobile communication device 121 which has been assigned network address XXX1.

[0246] The default access class queue 921 supports communication of individual data packets from the wireless access point 131 to the mobile communication device 122 assigned network address XXX2. As described herein, a custom access class queue provides better and / or higher resolution quality of service than the default access class queue.

[0247] In this example, application 225 (one or more different applications, such as application 225-1 such as a voice data processing application, application 225-2 such as a video processing application, etc.) generates data packets 1, 2, 3, 4, 5, 6, etc., to be transmitted to mobile communication device 121, which is assigned network address XXX1. Each data packet in data packets 1, 2, 3, 4, 5, 6, etc., includes its respective destination network address XXX1 to ensure delivery of the data packet to the instruction device 121. It should be noted that different applications, such as application 225-1, application 225-2, etc., can be located anywhere on network 190.

[0248] Additionally, in this example, application 226 (one or more different applications, such as application 226-1, application 226-2, etc.) generates data packets 11, 12, 13, 14, 15, 16, etc., for transmission to mobile communication device 122 assigned network address XXX2. Each data packet in data packets 11, 12, 13, 14, 15, 16, etc., includes its respective destination network address XXX2 to ensure delivery of the data packet to communication device 122. It should be noted that different applications, such as application 226-1, application 226-2, etc., can be located anywhere on network 190.

[0249] In this example, the queue management resource 241 associated with the communication management resource 141 of the wireless access point 131 classifies different received data packets into different access category queues based on the corresponding destination network address of the received data packets. For example, based on the processing of the data packets, the queue management resource 241 determines that data packets 11, 12, 13, 14, 15, and 16 all include the destination address XXX2, and therefore are transmitted to the communication device 122. In this case, the queue management resource 241 stores these data packets in different queues of the default access queue 921.

[0250] As shown, based on the corresponding quality of service and type detected from the processed data packet 14, the queue management resource 141 stores the received data packet 14 in the default access category queue 911 (e.g., for voice communication support).

[0251] Based on the corresponding quality of service and type detected from the processed data packets 12 and 13, the queue management resource 141 stores the received data packets 12 and 13 in the default access category queue 912 (e.g., for video communication).

[0252] Based on the corresponding quality of service and type detected from the processed data packets 15 and 16, the queue management resource 141 stores the received data packets 15 and 16 in the default access category queue 913 (e.g., supporting background communication).

[0253] Based on the corresponding type associated with data packet 11, queue management resource 141 stores the received data packet 11 in the default access class queue 914 (e.g., supporting best effort communication).

[0254] According to the traditional default access class configuration, the scheduling management resource 235 obtains the corresponding radio channel through the listen-before-speak function. After obtaining the corresponding radio channel, the scheduling management resource 235 and the corresponding radio access point 131 transmit the various data packets in the default access class 921 to the mobile communication device 122.

[0255] Furthermore, queue management resource 241 determines that each of data packet 1, data packet 2, data packet 3, data packet 4, data packet 5, and data packet 6 includes the destination network address XXX1, and is therefore transmitted to communication device 122. This is in accordance with the previous... Figure 2 In accordance with the manner described in its corresponding description, wireless access point 131 stores data packets in a custom access category queue and sub-queues to transmit the corresponding data packets 1, 2, 3, 4, 5, and 6 to the communication device assigned network address XXX1.

[0256] Accordingly, as mentioned above Figure 2 The first data packets (e.g., data packets 1, 2, 3, 4, 5, and 6) intended for delivery to the first mobile communication device 121 are stored in a custom queue and sub-queues, and are subsequently transmitted from the wireless access point 131 to the first mobile communication device 121 according to the corresponding priorities associated with the custom access category queue and the corresponding sub-queue. Furthermore, as previously described, the second data packets (e.g., data packets 11, 12, 13, 14, 15, and 16) intended for delivery to the second mobile communication device 122 are stored in a default queue 921, and are subsequently transmitted from the wireless access point to the second communication device 122.

[0257] Figure 10 This is an example diagram illustrating the implementation of a custom access class queue as described in this article, serving as an alternative to using the default access class queue to transmit data packets from a mobile communication device to a wireless access point.

[0258] In one example, communication device 121 performs the following... Figure 10 The communication management resource 1241 shown is illustrated.

[0259] According to, for example, the configuration information transmitted from wireless access point 131 to communication device 121, communication 651-3 Figure 7The communication management resource 1241 of the mobile communication device 121 establishes various custom access category queues 1211, 1212, etc., to transmit various data packets 21, 22, 23, 24, 25, 26, etc. from the communication device 121 to the wireless access point 131 via the wireless communication link 171. Refer to Communication 651-3 for instructions on how to set up the corresponding custom access category queues at the communication device 121.

[0260] It should also be noted that, as the corresponding communication 651-3 (e.g.) is received, Figure 7 As an alternative to the one discussed in the document, the communication management resource 1241 can be configured to receive configuration information 931 associated with the implementation of different custom access class queues from any suitable entity.

[0261] In this example, it is assumed that the information in data field 805-1 received from wireless access point 131 indicates the attributes of the corresponding custom access class queues 1211 (sub-access class AC1211-1 and sub-access class AC1211-2) implemented by communication management resource 1241.

[0262] For example, data field 805-11 indicates the number of arbitration inter-frame intervals associated with implementation queue 1211 or corresponding sub-queues 1211-1 and 1211-2 (e.g., any suitable integer value between 2 and 7 or other suitable value); data field 805-12 indicates the lower limit of the contention window associated with the first access class queue 1211 (e.g., W91-11 for sub-queue 1211-1 and W91-21 for sub-queue 1211-2); data field 805-13 indicates the upper limit of the contention window associated with the first access class queue 1211 (e.g., W91-12 for sub-queue 1211-1 and W91-22 for sub-queue 1211-2); data field 805-14 indicates the TXOP time limit (e.g., TXOP911 for sub-queue 1211-1 and TXOP912 for sub-queue 1211-2).

[0263] In a similar manner, it is assumed that information such as in data field 805-2 received from wireless access point 131 indicates the attributes of the corresponding custom access class queues 1212 (access class AC1212-1 and AC1212-2) implemented by communication management resource 1241. For example, the first sub-data field of data field 805-2 indicates the number of arbitration inter-frame intervals associated with implementation queue 1212 (e.g., any suitable integer value between 2 and 7 or other suitable values); the second sub-data field of data field 805-2 indicates the lower limit of the contention window associated with access class queue 1212 (e.g., W92-11 for sub-queue 1212-1 and W92-21 for sub-queue 1212-2); the third sub-data field of data field 805-2 indicates the upper limit of the contention window associated with access class queue 1212 (e.g., W92-12 for sub-queue 1212-1 and W92-22 for sub-queue 1212-2); and the fourth sub-data field of data field 805-2 indicates the TXOP time limit (e.g., TXOP921 for sub-queue 1212-1 and TXOP922 for sub-queue 1212-2).

[0264] In one example, the information associated with different custom access category queues (as indicated by communication 651-3) is in Figure 10 The information is shown as configuration information 931.

[0265] In this example, it is assumed that communication device 121 executes corresponding applications 1225-1 and 1225-2. One or more of these applications generate corresponding data packets for processing by queue management resource 1241 at the MAC layer or other suitable layer. Each data packet received by queue management resource 1241 is intended to be delivered via wireless access point 131 to the corresponding destination address indicated by the respective data packet.

[0266] As shown in the figure, queue management resource 1241 processes each of the received data packets 21 to 26 and stores them in the corresponding custom access category queue according to the type of data being transmitted.

[0267] More specifically, in response to determining that data packet 21 is associated with the quality of service corresponding to the custom access class queue 1212-2, queue management resource 1241 stores data packet 21 in sub-queue 1212-2 for delivery to wireless access point 131.

[0268] In response to determining that data packet 22 is associated with the quality of service corresponding to queue 1212-2 of custom access class, queue management resource 1241 stores data packet 22 in sub-queue 1212-2 for subsequent delivery to wireless access point 131.

[0269] In response to determining that data packet 23 is tagged with a low-latency label X and associated with the quality of service corresponding to the custom access category sub-queue 1211-1, queue management resource 1241 stores data packet 23 in sub-queue 1211-1 for subsequent delivery to wireless access point 131.

[0270] In response to determining that data packet 24 is not tagged with a low-latency label and is associated with the quality of service corresponding to the custom access class queue 1211-2, queue management resource 1241 stores data packet 24 in sub-queue 1211-2 for subsequent delivery to wireless access point 131.

[0271] In response to determining that data packet 25 is tagged with a low-latency label X and associated with the quality of service corresponding to the custom access category sub-queue 1212-1, queue management resource 1241 stores data packet 25 in sub-queue 1212-1 for subsequent delivery to wireless access point 131.

[0272] In response to determining that data packet 26 is not tagged with a low-latency label and is associated with the quality of service corresponding to sub-queue 1211-2 of the custom access category, queue management resource 1241 stores data packet 26 in sub-queue 1211-2 for subsequent delivery to wireless access point 131.

[0273] In a similar manner to that described above, the communication management resource 1241 includes a corresponding data packet scheduler 1235 to schedule the transmission of corresponding data packets in the custom access class queue through the acquired wireless channel WCH1 to deliver them to the wireless access point 131 via the wireless communication link 171.

[0274] In one example, the data packet scheduler 1235 implements rules 1250 and settings specified by configuration information 931 to transmit individual data packets in a custom access class queue via wireless communication link 171. In other words, communication management resource 441 first acquires the wireless channel WCH1 once or more, and then transmits the individual data packets stored in the queues according to the priorities associated with each custom access class queue and sub-queue.

[0275] For example, sub-queue 1211-1 is assigned the highest priority in the custom queue. Therefore, the scheduling management resources first transmit data packet 23 to the wireless access point 131 through the acquired wireless channel WCH1 in one or more TXOPs, and then transmit data packets 24 and 26 from the second high-priority sub-queue 1211-2.

[0276] Sub-queue 1212-1 is assigned the third highest priority in the custom queue. Therefore, after transmitting data packets from custom access class queue 1211, the scheduling management resource transmits data packets 25 from the third highest priority sub-queue to radio access point 131 via the acquired radio channel WCH1 in one or more TXOPs, followed by data packets 21 and 22 from the fourth highest priority sub-queue 1212-2.

[0277] Figure 11 This is an example block diagram of a computer system used to implement any of the foregoing operations according to the examples in this document.

[0278] Any resource described herein (e.g., wireless station, communication management resource 141, communication management resource 1241, wireless access point 131, mobile communication device 121, etc.) may be configured to include computer processor hardware and / or corresponding executable instructions to perform the various operations described herein through computer system 1150.

[0279] As shown, the computer system 1150 in this example includes an interconnect 1111 coupled to a computer-readable storage medium 1112, such as a non-temporary type medium (or more generally, computer-readable hardware, which can be any suitable type of hardware storage medium on which digital information can be stored and retrieved), a processor 1113 (computer processor hardware), an I / O interface 1114, and a communication interface 1117.

[0280] Multiple I / O interfaces 1114 support links with repository 1180 and input resource 1192.

[0281] Computer-readable storage medium 1112 (e.g., computer-readable hardware or other suitable entity) can be any hardware storage device (e.g., memory, optical storage, hard disk drive, floppy disk, etc.). In one example, computer-readable storage medium 1112 stores instructions and / or data.

[0282] As shown, the computer-readable storage medium 1112 may be encoded with a management application 140-1 (e.g., including instructions) to perform any of the operations described herein.

[0283] During one example operation, processor 1113 accesses computer-readable storage medium 1112 via interconnect 1111 to initiate, run, execute, interpret, or otherwise perform instructions in management application 140-1 stored in computer-readable storage medium 1112. Execution of management application 140-1 generates management process 140-2 to perform any of the operations and / or processes described herein.

[0284] Those skilled in the art will understand that computer system 1150 may include other processes and / or software and hardware components, such as an operating system that controls the allocation and use of hardware resources to execute management application 140-1.

[0285] Depending on the examples, it should be noted that the computer system can reside in any type of device, including but not limited to mobile computers, personal computer systems, wireless stations, connection management resources, wireless devices, wireless access points, base stations, telephone equipment, desktop computers, laptop computers, notebook computers, netbooks, mainframe computers, handheld computers, workstations, network computers, application servers, storage devices, consumer electronic devices (e.g., cameras, camcorders, set-top boxes, mobile devices, video game consoles, handheld video game devices), peripheral devices (e.g., switches, modems, routers, set-top boxes, content management devices, handheld remote control devices), and any type of computing or electronic device. Computer system 1150 can be located anywhere or included in any suitable resource in any network environment to achieve the functions described herein. In one example, control system 1150 may be included in or implemented in a virtualized environment, such as the cloud.

[0286] Next will be through Figures 12 to 15 The flowchart below discusses the functionalities supported by different resources. Note that the steps in the flowchart can be executed in any suitable order.

[0287] Figure 12 This is flowchart 1200 illustrating the example method. It should be noted that flowchart 1200 overlaps with / covers the general concepts described herein.

[0288] In processing operation 1210, the communication management resource 141 of the wireless access point 131 (first wireless station) receives multiple data packets intended to be delivered from the first wireless station to the second wireless station (mobile communication device 121) via the wireless channel WCH1. As previously described, the wireless channel WCH1 can be obtained through a listen-before-speak function (also known as idle channel assessment).

[0289] In processing operation 1220, the communication management resource 141 of the wireless access point 131 detects that a first data packet and a second data packet among a plurality of data packets belong to a first access category among a plurality of access categories.

[0290] In processing operation 1230, communication management resource 141 further detects that in the first access category, the first data packet is marked as having a higher priority than the second data packet.

[0291] In processing operation 1240, by storing data packets in different queues, communication management resource 141 schedules the first data packet to be transmitted via the wireless channel before the second data packet is transmitted via the wireless channel WCH1.

[0292] Figure 13 This is flowchart 1300 illustrating the example method. It should be noted that flowchart 1300 overlaps with / covers the general concepts described herein.

[0293] In processing operation 1310, the communications management resource 141 of the first wireless station (e.g., wireless access point 131) receives multiple data packets intended for delivery to the second wireless station (e.g., mobile communication device 121) via wireless channel WCH1 (and wireless communication link). Wireless channel WCH1 is available via a listen-before-speak function. Each of the multiple data packets is assigned one of a plurality of scheduling priorities.

[0294] In processing operation 1320, communication management resource 141 uses mapping information to schedule the transmission of multiple data packets through radio channel WCH1 and their corresponding wireless communication links. This mapping information provides a one-to-one mapping of scheduling priorities to access class queues, where multiple data packets are stored for transmission from a first radio station to a second radio station.

[0295] Figure 14 This is flowchart 1400 illustrating the example method. It should be noted that flowchart 1000 overlaps with / covers the general concepts described herein.

[0296] In processing operation 1410, based on communication with the second wireless station, the communication management resource 141 of the first wireless station (e.g., wireless access point 131) establishes multiple access categories for the first wireless station to use in order to control the transmission of data packets to the second wireless station (e.g., mobile communication device 121).

[0297] In processing operation 1420, communication management resource 141 receives multiple data packets intended for transmission to a second wireless station via wireless channel WCH1. Wireless channel WCH1 can be obtained via a listen-before-speak function, as described above.

[0298] In processing operation 1430, communication management resource 141 schedules the received data packets to be transmitted via wireless channel WCH1 according to multiple access categories, so as to be subsequently transmitted to mobile communication device 121.

[0299] Figure 15 This is flowchart 1500 illustrating the example method. It should be noted that flowchart 1500 overlaps with / covers the general concepts described herein.

[0300] In processing operation 1510, the first wireless station sends a first communication indicating that the first wireless station supports customization of the data delivery category for wireless communication transmission supported by the listen-before-speak function.

[0301] In processing operation 1520, in response to the second wireless station receiving the first communication, the first wireless station receives a second communication from the second wireless station. This second communication instructs the second wireless station to support customization of the data delivery category. As further discussed herein, the first and second wireless stations configure themselves to support data delivery category customization through three rounds of negotiation.

[0302] It should be noted again that the techniques described in this article are particularly well-suited for facilitating more efficient operation in assessing service quality in communication systems over idle channels. However, it should be noted that the examples in this article are not limited to such application scenarios, and the techniques described herein are equally applicable to other applications.

[0303] Based on the description herein, numerous specific details have been clarified to fully explain the claimed subject matter. However, those skilled in the art will understand that the claimed subject matter can be practiced without these specific details. In other instances, methods, apparatuses, systems, etc., well-known to those skilled in the art, have not been described in detail to avoid obscuring the claimed subject matter. Certain parts of the detailed descriptions are presented in the form of algorithms or symbolic representations relating to operations on data bits or binary digital signals stored in the memory of a computing system (such as computer memory). These algorithmic descriptions or representations are examples of techniques employed by those skilled in the art in the field of data processing to convey the substance of their work to those skilled in the art. The algorithms described herein, and algorithms in the general sense, are considered as a set of self-consistent sequences of operations or similar processing flows designed to achieve a desired result. In this context, operations or processing involve the actual manipulation of physical quantities. Typically (but not necessarily), these quantities may be presented as electrical or magnetic signals that can be stored, transmitted, combined, compared, or otherwise processed. For the sake of common practice, it is sometimes more convenient to refer to such signals as bits, data, values, elements, symbols, characters, terms, numbers, numerical values, etc. However, it should be understood that all these and similar terms should be associated with the corresponding physical quantities; they are merely identifiers for ease of understanding. Unless otherwise specified, as discussed below, it should be understood that in this specification, terms such as “processing,” “calculation,” “operation,” and “determine” refer to the actions or processes by which a computer platform (such as a computer or similar electronic computing device) manipulates or transforms data represented by physical electronic or magnetic quantities stored in its memory, registers, or other information storage, transmission, or display devices.

[0304] While the invention has been specifically illustrated and described by way of preferred examples, those skilled in the art will understand that various changes in form and detail may be made without departing from the spirit and scope defined by the appended claims. Such variations should be considered to be included within the scope of protection of this application. Therefore, the above description of the examples should not be considered limiting. Rather, any limiting aspects of the invention are embodied in the following claims.

Claims

1. A method comprising: Implement a listen-before-speak function at the first wireless station to communicate with the second wireless station via a wireless channel: Receive multiple data packets intended to be delivered to a second wireless station via a wireless channel; The first and second data packets among multiple data packets were detected to belong to the first access class among multiple access classes; The first data packet was detected to be marked as having a higher priority than the second data packet in the first access class; as well as The first data packet is scheduled to be transmitted via the wireless channel before the second data packet is transmitted via the wireless channel.

2. The method according to claim 1, further comprising: First wireless station: Map the identifier of the first access class to the first free channel evaluation window assigned to the first access class; In response to detecting that the wireless channel is not in use for a duration specified by the first idle channel assessment window: transmit a first data packet via the wireless channel, followed by a second data packet via the wireless channel.

3. The method according to claim 1, further comprising: Via first wireless station: In response to the first acquisition of the wireless channel, a first data packet is transmitted through the wireless channel; In response to a second acquisition of the wireless channel, a second data packet is transmitted via the wireless channel.

4. The method of claim 1, wherein detecting that the first data packet is marked as having a higher priority than the second data packet in the first access class comprises: Based on the analysis of the first bit information in the first data packet, it was detected that the first data packet was marked as a high-priority data packet in the first access category; Based on the analysis of the second bit information in the second data packet, it was detected that the second data packet was not marked as a high-priority data packet in the first access category.

5. The method of claim 1, wherein scheduling the transmission of the first data packet via the wireless channel before transmitting the second data packet via the wireless channel comprises: The first data packet is stored in the first queue of the first access category; as well as The second data packet is stored in the second queue of the first access category.

6. The method according to claim 5, further comprising: The third data group is stored in the first queue before the first data group is stored in the first queue; and According to the schedule: the third data packet is transmitted via the wireless channel, followed by the first data packet via the wireless channel, and finally the second data packet via the wireless channel.

7. The method according to claim 5, further comprising: According to the schedule: before transmitting the second data packet via the wireless channel, the first queue is cleared by transmitting all data packets, including the first data packet, in the first queue via the wireless channel.

8. The method according to claim 1, further comprising: A first processing layer is executed to detect that a first data packet is marked as having a higher priority than a second data packet in a first access class. The first processing layer controls which of a plurality of queues associated with the first access class each of the first and second data packets is stored in for subsequent transmission over a wireless channel.

9. The method according to claim 1, further comprising: The first processing layer is executed to process the bit information in each of the multiple data packets; and Through the first processing layer: i) In response to detecting the presence of a high-priority marker in the first data packet, the first data packet is stored in a first queue associated with the first access class; and ii) in response to the detection that no high priority tag is present in the second data packet, the second data packet is stored in a second queue associated with the first access class.

10. The method of claim 1, wherein the plurality of data packets received by the first wireless station further includes a third data packet and a fourth data packet, the method further comprising: First wireless station: The third and fourth data packets among multiple data packets were detected to belong to the second access class among multiple access classes; as well as Before transmitting the first data packet via the wireless channel, the third and fourth data packets are scheduled to be transmitted via the wireless channel.

11. The method of claim 10, wherein scheduling the transmission of the third and fourth data packets via the wireless channel before transmitting the first data packet via the wireless channel comprises: Store the third and fourth data packets in the first queue of the second access category; as well as Before transmitting the first data packet via the wireless channel, the third and fourth data packets are transmitted via the wireless channel.

12. The method of claim 10, wherein scheduling the transmission of the third and fourth data packets via the wireless channel before transmitting the first data packet via the wireless channel comprises: The third data packet is stored in the first queue of the second access category; The fourth data packet is stored in the second queue of the second access category; as well as Before transmitting the first and second data packets via the wireless channel, the third and fourth data packets are transmitted via the wireless channel.

13. A system comprising: Communication management resources, the operation is as follows: Receive multiple data packets intended to be delivered from a first wireless station to a second wireless station via a wireless channel, which can be obtained via a listen-before-speak function; The first and second data packets among multiple data packets were detected to belong to the first access class among multiple access classes; The first data packet was detected to be marked as having a higher priority than the second data packet in the first access class; as well as The first data packet is scheduled to be transmitted via the wireless channel before the second data packet is transmitted via the wireless channel.

14. The system of claim 13, wherein the communication management hardware further operates as follows: Map the identifier of the first access class to the first free channel evaluation window assigned to the first access class; and In response to detecting that the wireless channel is not used for a duration specified by the first idle channel detection window, a first data packet is transmitted over the wireless channel, followed by a second data packet.

15. The system of claim 13, wherein the communication management hardware further operates as follows: Based on the priority associated with the first access class: i) in response to a first acquisition of the first radio channel, a first data packet is transmitted via the radio channel; and ii) in response to a second acquisition of the first radio channel, a second data packet is transmitted via the radio channel.

16. The system of claim 13, wherein the communication management hardware further operates as follows: Based on the analysis of the first bit information in the first data packet, it was detected that the first data packet was marked as a high-priority data packet in the first access category; and Based on the analysis of the second bit information in the second data packet, it was detected that the second data packet was not marked as a high-priority data packet in the first access category.

17. The system of claim 13, wherein the communication management hardware further operates as follows: Store the first data packet into the first queue of the first access category; and The second data packet is stored in the second queue of the first access category.

18. The system of claim 17, wherein the communication management hardware further operates as follows: The third data group is stored in the first queue before the first data group is stored in the first queue; and According to the schedule: the third data packet is transmitted via the wireless channel, followed by the first data packet via the wireless channel, and finally the second data packet via the wireless channel.

19. The system of claim 17, wherein the communication management hardware further operates as follows: According to the schedule: before transmitting the second data packet via the wireless channel, the first queue is cleared by transmitting all data packets in the first queue, including the first data packet.

20. The system of claim 13, wherein the communication management hardware further operates as follows: A first processing layer is executed to detect that a first data packet is marked as having a higher priority than a second data packet in a first access class. The first processing layer controls which of a plurality of queues associated with the first access class each of the first and second data packets is stored in for subsequent transmission over a wireless channel.

21. The system of claim 13, wherein the communication management hardware further operates as follows: The first processing layer is executed to process the bit information in each of the multiple data packets; and via the first processing layer: i) in response to detecting the presence of a high priority tag in the first data packet, the first data packet is stored in a first queue associated with the first access class; and ii) in response to detecting the absence of a high priority tag in the second data packet, the second data packet is stored in a second queue associated with the first access class.

22. The system of claim 13, wherein the communication management hardware further operates as follows: The third and fourth data packets out of multiple data packets were detected to belong to the second access class out of multiple access classes; and Before transmitting the first data packet via the wireless channel, the third and fourth data packets are scheduled to be transmitted via the wireless channel.

23. The system of claim 22, wherein the communication management hardware further operates as follows: Store the third and fourth data packets in the first queue of the second access class; and Before transmitting the first data packet via the wireless channel, the third and fourth data packets are transmitted via the wireless channel.

24. The system of claim 22, wherein the communication management hardware further operates as follows: The third data packet is stored in the first queue of the second access category; The fourth data packet is stored in the second queue of the second access category; as well as Before transmitting the first and second data packets via the wireless channel, the third and fourth data packets are transmitted via the wireless channel.

25. A computer-readable storage hardware having instructions stored thereon, which, when executed by computer processor hardware, cause the computer processor hardware to: Receive multiple data packets intended to be delivered from a first wireless station to a second wireless station via a wireless channel, which can be obtained via a listen-before-speak function; The first and second data packets among multiple data packets were detected to belong to the first access class among multiple access classes; The first data packet was detected to be marked as having a higher priority than the second data packet in the first access class; as well as The first data packet is scheduled to be transmitted via the wireless channel before the second data packet is transmitted via the wireless channel.

26. The method according to claim 1, further comprising: Receive the third data packet from a set of multiple data packets; Based on the analysis of the third bit information in the third data packet among the multiple received data packets, it was detected that the third data packet was not marked as a higher priority data packet in the first access category; and In response to the detection of congestion associated with the wireless transmission of data packets via the wireless channel: i) the third data packet is marked with a tag indicating that the third data packet is of higher priority in the first access class; and ii) the third data packet is stored in a higher priority queue associated with the first access class than if it were not marked.

27. A method comprising: At the first wireless station implementing the listen-before-speak function to communicate with the second wireless station via a wireless channel: Receive multiple data packets intended to be delivered to a second wireless station via a wireless channel, each of the multiple data packets being assigned one of a plurality of scheduling priorities; and Mapping information is used to schedule the transmission of the plurality of data packets over a wireless channel. The mapping information provides a one-to-one mapping of scheduling priorities to access class queues, from which the plurality of data packets are scheduled to be transmitted from a first wireless station to a second wireless station.

28. The method of claim 27, further comprising: Based on the scheduling priority assigned to the access category queue, the multiple data packets are transmitted from the first wireless station to the second wireless station via a wireless channel.

29. The method of claim 28, wherein transmitting the plurality of data packets comprises: At the first wireless station: Map the identifier of the first access class to the first idle channel evaluation window assigned to the first access class queue; as well as In response to detecting that the wireless channel has not been used for a duration specified by the first idle channel assessment window: i) a first data packet is extracted from the first access class queue, and ii) the first data packet is transmitted to the second wireless station via the wireless channel.

30. The method of claim 27, further comprising: The first processing layer in the multi-layer protocol stack is executed to process each of the multiple data packets by mapping information. The first processing layer is executed between the MAC (Media Access Control) processing layer and the application processing layer in the multi-layer protocol stack to select which access class queue to store each of the multiple data packets.

31. The method of claim 27, wherein the mapping information providing a one-to-one mapping from scheduling priority to access category queues comprises: The mapping from the first per-hop behavior value to the first access category queue; as well as The second per-hop behavior value is mapped to the second access category queue.

32. The method of claim 27, wherein using mapping information to schedule the transmission of the plurality of data packets over a wireless channel comprises: Obtain a first priority value from a first data packet among multiple data packets, wherein the first priority value is a third-level bit tag of the first data packet; In response to detecting a first priority value in a first data packet, the first data packet is stored in a first access category queue assigned to the first priority value; Obtain a second priority value from the second data packet among multiple data packets, the second priority value being the third-level bit tag of the second data packet; as well as In response to detecting a second priority value in a second data packet, the second data packet is stored in the second access category queue assigned to the second priority value.

33. The method of claim 32, further comprising: According to the scheduling priority assigned to the access class queue, the first data packet and the second data packet are transmitted from the first wireless station to the second wireless station via the wireless channel.

34. The method of claim 32, wherein the third-layer bit tag of the first data packet is the first DSCP (Differential Service Code Point) tag of the first data packet; and The third layer bit marker of the second data packet is the second DSCP (Differential Service Code Point) marker of the second data packet.

35. The method of claim 27, wherein using mapping information to schedule the plurality of data packets comprises: In response to: i) detecting that a first data packet is assigned a first priority value associated with a first access class queue, and ii) detecting that a supplementary priority tag exists in the first data packet, the first data packet among the plurality of data packets is stored in a first sub-queue of the first access class queue in the access class queue; and In response to: i) detecting that a second data packet is assigned a first priority value associated with the first access category queue, and ii) detecting that no supplementary priority tag is present in the second data packet, the second data packet among the plurality of data packets is stored in a second sub-queue of the first access category queue.

36. The method of claim 35, further comprising: According to the priority of the access category queue, a first data packet is transmitted from the first wireless station to the second wireless station via a wireless channel, and then a second data packet is transmitted from the first wireless station to the second wireless station via a wireless channel. The use of mapping information to schedule the multiple data packets includes: In response to: i) detecting that a third data packet is marked with a second priority value associated with a second access category queue, and ii) detecting that a supplementary priority mark exists in a first data packet, the third data packet among the plurality of data packets is stored in a first sub-queue of the second access category queue in the access category queue; and In response to: i) detecting that a fourth data packet is assigned a second priority value associated with the first access class queue, and ii) detecting that no supplementary priority tag is present in the fourth data packet, the fourth data packet of the plurality of data packets is stored in a second sub-queue of the second access class queue.

37. An apparatus comprising: The communication management hardware operates as follows: Receive multiple data packets intended to be delivered to a second wireless station via a wireless channel that can be obtained via a listen-before-speak function, each of the multiple data packets being assigned one of a plurality of scheduling priorities; and Mapping information is used to schedule the transmission of the plurality of data packets over a wireless channel. The mapping information provides a one-to-one mapping of scheduling priorities to access class queues, in which the plurality of data packets are stored for transmission from a first wireless station to a second wireless station.

38. The apparatus of claim 37, wherein the communication management hardware further operates as follows: Based on the scheduling priority assigned to the access category queue, the multiple data packets are transmitted from the first wireless station to the second wireless station via a wireless channel.

39. The apparatus of claim 38, wherein the communication management hardware further operates as follows: Map the identifier of the first access class queue to the first free channel evaluation window assigned to the first access class queue; and In response to detecting that the wireless channel has not been used for a duration specified in the first idle channel assessment window: i) a first data packet is extracted from the first access class queue, and ii) the first data packet is transmitted to the second wireless station via the wireless channel.

40. The apparatus of claim 37, wherein the communication management hardware further operates as follows: The first processing layer in the multi-layer protocol stack is executed to process each of the multiple data packets by mapping information. The first processing layer is executed between the MAC (Media Access Control) processing layer and the application processing layer in the multi-layer protocol stack to select which access class queue to store each of the multiple data packets.

41. The apparatus of claim 37, wherein the mapping information provides a one-to-one mapping from scheduling priority to access category queues, comprising: The mapping from the first per-hop behavior value to the first access queue of the access category queue; and The second per-hop behavior value is mapped to the second access queue of the access category queue.

42. The apparatus of claim 37, wherein the communication management hardware further operates as follows: Obtain the first priority value from the first data packet among multiple data packets. The first priority value is the third layer bit tag of the first data packet. In response to detecting a first priority value in a first data packet, the first data packet is stored in a first access class queue that is assigned to store data packets marked with the first priority value; The second priority value is obtained from the second data packet among multiple data packets. The second priority value is the third-level bit tag of the second data packet. and In response to detecting a second priority value in a second data packet, the second data packet is stored in a second access class queue that is assigned to store data packets marked with the second priority value.

43. The apparatus of claim 42, wherein the communication management hardware further operates as follows: According to the scheduling priority assigned to the access class queue, the first data packet and the second data packet are transmitted from the first wireless station to the second wireless station via the wireless channel.

44. The apparatus of claim 37, wherein the communication management hardware further operates as follows: In response to: i) detecting that a first data packet has been assigned a first priority value associated with a first access class queue, and ii) detecting that a supplementary priority flag is present in the first data packet, the first data packet among multiple data packets is stored in a first sub-queue of the first access class queue in the access class queue; and In response to: i) detecting that a second data packet has been assigned a first priority value associated with the first access class queue, and ii) detecting that no supplementary priority tag is present in the second data packet, the second data packet among the multiple data packets is stored in a second sub-queue of the first access class queue.

45. The apparatus of claim 44, wherein the communication management hardware further operates as follows: According to the priority of the access category queue, a first data packet is transmitted from the first wireless station to the second wireless station via a wireless channel, and then a second data packet is transmitted from the first wireless station to the second wireless station via a wireless channel.

46. ​​A computer-readable storage hardware having instructions stored thereon, the instructions, when executed by computer processor hardware, causing the computer to process the hardware: Receive multiple data packets intended for delivery to a second wireless station via a wireless channel, which can be obtained through a listen-before-speak function, and each of the multiple data packets is assigned one of a plurality of scheduling priorities; and Mapping information is used to schedule the transmission of multiple data packets over a wireless channel. The mapping information provides a one-to-one mapping of scheduling priorities to access class queues from which the multiple data packets are scheduled to be transmitted from a first wireless station to a second wireless station.

47. A method comprising: At the first wireless station: A first communication is transmitted from a first wireless station, the first communication indicating that the first wireless station supports customization of the data delivery category associated with transmitting wireless communication via a listen-before-speak access function; and In response to the second wireless station receiving the first communication, a second communication is received from the second wireless station, the second communication indicating that the second wireless station supports customization of the data delivery category.

48. The method of claim 47, wherein the second communication received from the second wireless station includes a message for implementing a custom set of data delivery queues instead of a default set of data delivery queues for the third communication transmitted from the first wireless station to the second wireless station.

49. The method of claim 47, further comprising: Upon receiving the second communication, a first configuration for the data delivery category is established at the second wireless station to control the transmission of data packets wirelessly transmitted from the second wireless station to the first wireless station.

50. The method of claim 49, wherein establishing the first configuration for the data delivery category comprises: A configuration message is transmitted from the first wireless station to the second wireless station, the configuration message indicating the attributes of the data delivery category associated with the first configuration.

51. The method of claim 50, wherein the first configuration of the data delivery category is an alternative to the default set of data delivery categories for communication from the second wireless station to the first wireless station in the uplink direction.

52. The method of claim 47, further comprising: At the first wireless station: i) receives multiple data packets intended for delivery to the second wireless station via a wireless channel that can be obtained via a Talk-After-Listen access function; and ii) schedules the multiple data packets for transmission via the wireless channel according to a customized implementation of the data delivery category.

53. The method of claim 47, further comprising: At the first wireless station: At least one data delivery queue is established for each of the multiple data delivery categories associated with the transmission of wireless communication from the first wireless station to the second wireless station; Receive multiple data packets intended for delivery to a second wireless station; and Based on the priority determined for the corresponding data group, each of the multiple data groups is stored in the corresponding data delivery queue of the multiple data delivery queues.

54. The method of claim 53, further comprising: The first data packet in the first data delivery queue, which is stored among multiple data delivery queues, is detected; Obtain the first contention window value associated with the first data delivery queue; as well as In response to detecting that the detected wireless energy in the wireless channel is below a wireless energy threshold level for a duration specified in the first contention window, a first data packet is wirelessly transmitted from the first wireless station to the second wireless station via the wireless channel.

55. The method of claim 47, wherein the second communication is received at the first wireless station during association between the second wireless station and the first wireless station.

56. The method of claim 47, wherein the data delivery categories associated with customization include X data delivery categories, where X is an integer value; and The first and second wireless stations implement Y default data delivery categories before implementing X data delivery categories, where Y is an integer value.

57. The method of claim 56, wherein the integer value X of the data delivery category associated with customization is greater than the integer value Y of the default data delivery category.

58. The method of claim 47, further comprising: In response to receiving a second communication, a customized set of data delivery categories is established to support wireless communication from the first wireless station to the second wireless station; and A first processing layer in a multi-layer protocol stack is implemented to process each of the multiple received data packets for storage in a custom set of data delivery categories. This first processing layer is located between the MAC processing layer and the application layer in the multi-layer protocol stack.

59. The method of claim 47, wherein the first wireless station is initially configured to implement a first data delivery category configuration for prioritizing streams of messages transmitted from the first wireless station to the second wireless station over a wireless channel, the first data delivery category configuration being a default data delivery category configuration, the method further comprising: In response to receiving a second communication from a second wireless station, a second data delivery category configuration is implemented to deliver multiple data packets intended to be delivered from the first wireless station to the second wireless station. This second data delivery category configuration differs from the first data delivery category configuration.

60. An apparatus comprising: The communication management hardware associated with the first wireless station further includes: A first communication is transmitted from a first wireless station, the first communication indicating that the first wireless station supports customization of the data delivery category associated with transmitting wireless communication via a listen-before-speak access function; and In response to the second wireless station receiving the first communication, a second communication is received from the second wireless station, the second communication indicating that the second wireless station supports customization of the data delivery category.

61. The apparatus of claim 60, wherein the second communication received from the second wireless station includes a message for implementing a custom set of data delivery queues instead of a default set of data delivery queues for the third communication transmitted from the first wireless station to the second wireless station.

62. The apparatus of claim 60, wherein the communication management hardware further operates as follows: Upon receiving the second communication, a first configuration for the data delivery category is established for use by the first wireless station to control the transmission of data packets wirelessly transmitted from the first wireless station to the second wireless station.

63. The apparatus of claim 62, wherein the communication management hardware further operates as follows: A configuration message is transmitted from the first wireless station to the second wireless station, the configuration message indicating the attributes of the data delivery category specified by the first configuration.

64. The apparatus of claim 63, wherein the first configuration of the data delivery category is an alternative to the default set of data delivery categories supported by the first wireless station communicating from the first wireless station to the second wireless station in the downlink direction.

65. The apparatus of claim 60, wherein the communication management hardware further operates as follows: i) Receive multiple data packets intended to be delivered to a second wireless station via a wireless channel that can be obtained via a listen-before-speak function; and ii) Schedule the multiple data packets to be transmitted via the wireless channel according to a customized implementation of the data delivery category.

66. The apparatus of claim 60, wherein the communication management hardware further operates as follows: At least one data delivery queue is established for each of the multiple data delivery categories that support the transmission of wireless communication from the first wireless station to the second wireless station; Receive multiple data packets intended for delivery to a second wireless station; and Based on the priority determined for the corresponding data group, each of the multiple data groups is stored in the corresponding data delivery queue of the multiple data delivery queues.

67. The apparatus of claim 66, wherein the communication management hardware further operates as follows: Detect the first data packet in the first data delivery queue, which is stored among multiple data delivery queues; Obtain the first contention window value associated with the first data delivery queue; and In response to detecting that the detected wireless energy in the wireless channel is below a wireless energy threshold level for a duration specified in the first contention window, a first data packet is wirelessly transmitted from the first wireless station to the second wireless station via the wireless channel.

68. The apparatus of claim 60, wherein the second communication is received at the first wireless station during association between the second wireless station and the first wireless station.

69. The apparatus of claim 60, wherein supporting customized data delivery categories includes X data delivery categories, where X is an integer value; and The first and second wireless stations implement Y default data delivery categories before implementing X data delivery categories, where Y is an integer value.

70. The apparatus of claim 69, wherein the integer value X of the data delivery category associated with customization is greater than the integer value Y of the default data delivery category.

71. The apparatus of claim 60, wherein the communication management hardware further operates as follows: In response to receiving a second communication, a custom set of data delivery categories is established to support wireless communication from the second wireless station to the first wireless station.

72. The apparatus of claim 60, wherein the first wireless station is initially configured to implement a first data delivery category configuration for prioritizing streams of messages transmitted from the first wireless station to the second wireless station over a wireless channel, the first data delivery category configuration being a default data delivery category configuration, wherein the communication management hardware further operates to: In response to receiving a second communication from a second wireless station, a second data delivery category configuration is implemented to deliver multiple data packets intended to be delivered from the first wireless station to the second wireless station. This second data delivery category configuration differs from the first data delivery category configuration.

73. A computer-readable storage hardware having instructions stored thereon, the instructions, when executed by computer processor hardware, causing the computer to process the hardware: A first communication is transmitted from a first wireless station, the first communication indicating that the first wireless station supports customization of data delivery categories that support wireless communication transmission based on the listen-before-speak access function; and In response to the second wireless station receiving the first communication, a second communication is received from the second wireless station, the second communication indicating that the second wireless station supports customization of the data delivery category.