CN114430591A - Wi-Fi chip, Wi-Fi equipment and queue scheduling method - Google Patents

Wi-Fi chip, Wi-Fi equipment and queue scheduling method Download PDF

Info

Publication number
CN114430591A
CN114430591A CN202110308193.7A CN202110308193A CN114430591A CN 114430591 A CN114430591 A CN 114430591A CN 202110308193 A CN202110308193 A CN 202110308193A CN 114430591 A CN114430591 A CN 114430591A
Authority
CN
China
Prior art keywords
queue
fifo
message
transmitted
preset
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110308193.7A
Other languages
Chinese (zh)
Inventor
郭永康
王同波
萧毓仁
周明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to EP21879238.0A priority Critical patent/EP4213446A4/en
Priority to PCT/CN2021/120698 priority patent/WO2022078192A1/en
Publication of CN114430591A publication Critical patent/CN114430591A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/56Allocation or scheduling criteria for wireless resources based on priority criteria
    • H04W72/566Allocation or scheduling criteria for wireless resources based on priority criteria of the information or information source or recipient
    • H04W72/569Allocation or scheduling criteria for wireless resources based on priority criteria of the information or information source or recipient of the traffic information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6295Queue scheduling characterised by scheduling criteria using multiple queues, one for each individual QoS, connection, flow or priority

Abstract

The application provides a Wi-Fi chip, Wi-Fi equipment and a queue scheduling method, and relates to the technical field of data processing. In the scheme of the application, one or more buffer queues can BE added on the basis of the existing conventional buffer queue, and more priority classes are added on the basis of four priorities of VO/VI/BE/BK, so that messages of different service types can BE more finely controlled by different priority classes. Therefore, aiming at a large amount of messages to be transmitted, the Wi-Fi equipment can schedule the messages of different service types to FIFO queues of corresponding priorities in a targeted manner according to the service priorities which are divided more finely. By the scheme, the services with different QoS requirements compete for the channel with different priorities, a certain guarantee is provided for the service with higher QoS requirements, and the Wi-Fi application experience of a user is improved.

Description

Wi-Fi chip, Wi-Fi equipment and queue scheduling method
The present application claims priority of a provisional application for chinese patent filed by the national intellectual property office on 14/10/2020, having application number 202011101189.5 entitled "Wi-Fi services QoS enhancing technology chip, apparatus and method", which is incorporated herein by reference in its entirety.
Technical Field
The application relates to the technical field of data processing, in particular to a Wi-Fi chip, Wi-Fi equipment and a queue scheduling method.
Background
With the rapid development of wireless internet communication technology and intelligent terminals, wireless fidelity (Wi-Fi) gradually matures, Wi-Fi applications have become more and more popular in people's daily life, and Wi-Fi-based services, such as voice, video, game and other services, are increasing. Also, user requirements for quality and reliability of Wi-Fi communication are increasing.
Currently, data generated by voice, streaming video, streaming music, and interactive games have a requirement for low latency and high throughput of transmission, and in order to ensure user experience, quality of service (QoS) may be used to manage and prioritize data generated by different applications. For example, the Wi-Fi multimedia (WMM) standard defines four priority queues as a wireless QoS protocol, and includes VO (voice stream), VI (video stream), BE (best effort stream), BK (background stream) in order of priority from high to low, and ensures that the higher the priority of the packets in the queues, the higher the channel seizing capability is, so as to optimize the quality of network communication, and ensure that these applications establish stable connection with network resources.
However, in the process that the terminal device surfs the internet through Wi-Fi, messages related to the internet service are defaulted to BE placed into a low-priority BE queue for transmission, and as the BE priority is low, the channel seizing capability is low, and the requirements of low transmission delay and high throughput rate cannot BE met, the experience of the internet service based on Wi-Fi is poor.
Disclosure of Invention
The application provides a Wi-Fi chip, Wi-Fi equipment and a queue scheduling method, and solves the problem that the existing queue scheduling scheme of Wi-Fi services cannot meet the low transmission delay requirements of certain specific service messages.
In order to achieve the purpose, the technical scheme is as follows:
in a first aspect, the present application provides a Wi-Fi chip including a processor supporting a Wi-Fi protocol and M First In First Out (FIFO) queues connected to the processor, the M FIFO queues including a first FIFO queue and a second FIFO queue, the first FIFO queue including a VO queue, a VI queue, a BE queue, and a BK queue. The processor is used for scheduling the message to be transmitted to an FIFO queue corresponding to the service type of the message to be transmitted in the M FIFO queues. The M FIFO queues are respectively used for caching messages dispatched by the processor, and the cached messages are sequentially output according to the sequence from high to low of the queue priority. The priority of the second FIFO queue is higher than that of each queue in the first FIFO queue, and the messages cached in the second FIFO queue are messages of a preset service type.
In the scheme of the application, one or more buffer queues can BE added on the basis of the existing conventional buffer queue, and more priority classes are added on the basis of four priorities of VO/VI/BE/BK, so that messages of different service types can BE more finely controlled by different priority classes. Therefore, aiming at a large amount of messages to be transmitted, the Wi-Fi equipment can schedule the messages of different service types to FIFO queues of corresponding priorities in a targeted manner according to the service priorities which are divided more finely. By the scheme, the services with different QoS requirements compete for the channel with different priorities, a certain guarantee is provided for the service with higher QoS requirements, and the Wi-Fi application experience of a user is improved.
Optionally, the preset service type may be preset by a system, or may be set by a user in a self-defined manner.
In some implementations of the first aspect, where the second FIFO queue comprises a plurality of FIFO queues, a priority of at least one queue of the plurality of FIFO queues is higher than a priority of each queue of the first FIFO queue. And the priorities of the BK queue, the BE queue, the VI queue and the VO queue in the first FIFO queue are sequentially increased. It should be noted that the priorities of the M FIFO queues can be flexibly set according to user requirements.
For example, in the case that the priority of the newly added buffer queue is higher than that of the existing conventional buffer queue, the Wi-Fi device may add some specific service packets which are delay sensitive or which the user wishes to preferentially process to the newly added buffer queue. Because the probability that the cache queue with high priority competes for the channel is higher than that of the cache queue with low priority competes for the channel, the data sensitive to time delay can be sent preferentially, thereby ensuring that the message can be transmitted with low time delay.
In some implementations of the first aspect, the processor is further configured to identify a service type of the packet to be transmitted according to quintuple information of the packet to be transmitted; and determining an FIFO queue corresponding to the service type of the message to be transmitted according to the preset corresponding relation. The preset corresponding relationship is a corresponding relationship between a service type of a message to be transmitted and one of the M FIFO queues, and the quintuple information includes a source Media Access Control (MAC) address (usually, an MAC address is also referred to as a physical address), a destination MAC address, a source IP address, a destination IP address, and a port number.
In some implementations of the first aspect, the Wi-Fi chip further includes a transceiver connected to the M FIFO queues. The transceiver is used for transmitting the messages sequentially output by the M FIFO queues to the target equipment through the Wi-Fi channel.
In some implementations of the first aspect, the Wi-Fi chip is disposed in the AP device, and the target device is an STA device; or the Wi-Fi chip is arranged on the first STA equipment, and the target equipment is AP equipment or second STA equipment.
In some implementations of the first aspect, the transceiver is further configured to transmit five-tuple information of the packet to be transmitted to the target device.
In some implementations of the first aspect, the enhanced distributed channel access EDCA parameters corresponding to the second FIFO queue include an arbitration frame gap number AIFSN, a transmission opportunity limit TXOPL, a minimum contention window exponent form ECWminAnd maximum contention window index form ECWmax. Wherein the value of AIFSN is set to be less than or equal to a preset gap number threshold; and/or the value of TXOPL is set to be less than or equal to a preset transmission opportunity threshold; and/or, ECWminIs set to be less than or equal to a preset minimum window threshold; and/or, ECWmaxIs set to be less than or equal to a preset maximum window threshold.
In some implementations of the first aspect, a bandwidth occupancy of a Wi-Fi air interface corresponding to the second FIFO queue is greater than or equal to a preset bandwidth occupancy threshold.
In some implementations of the first aspect, a maximum rate of packet transmission corresponding to the second FIFO queue is set to be less than or equal to a preset rate threshold.
In some implementations of the first aspect, a aggregation degree of Wi-Fi air interface packets corresponding to the second FIFO queue is set to be less than or equal to a preset aggregation degree threshold.
In a second aspect, the present application provides a Wi-Fi device, which is applied to a Station (STA) side, and includes the Wi-Fi chip in the above first aspect.
The Wi-Fi equipment is used for responding to the input operation of a user on a first application loaded in the Wi-Fi equipment and generating or calling a message to be transmitted corresponding to the first application; and the message to be transmitted is sent to the wireless access point AP equipment or other Wi-Fi equipment through the Wi-Fi chip.
In a third aspect, the present application provides a Wi-Fi device, which is applied to an Access Point (AP) side, and includes the Wi-Fi chip in the first aspect.
The Wi-Fi equipment is used for forwarding the message received from the first station STA equipment to the second station STA equipment through the Wi-Fi chip. Or the Wi-Fi equipment is used for forwarding the message received from the STA equipment of the first station to the network server through the Wi-Fi chip; and/or forwarding the message received from the network server to the first STA equipment through the Wi-Fi chip.
In a fourth aspect, the present application provides a queue scheduling method, including: dispatching a message to be transmitted to an FIFO queue corresponding to the service type of the message to be transmitted in M FIFO queues; and sequentially outputting the messages cached in the M FIFO queues from high to low according to the queue priority.
The M FIFO queues comprise a first FIFO queue and a second FIFO queue. The first FIFO queue includes a VO queue, a VI queue, a BE queue and a BK queue. The messages cached in the second FIFO queue are messages of a preset service type, and the priority of the second FIFO queue is higher than that of each queue in the first FIFO queue.
In some implementations of the fourth aspect, where the second FIFO queue includes a plurality of FIFO queues, at least one of the second FIFO queues has a higher priority than each of the queues in the first FIFO queue. And the priorities of the BK queue, the BE queue, the VI queue and the VO queue are sequentially increased.
In some possible implementation manners, before the scheduling the packet to be transmitted to the FIFO queue corresponding to the service type of the packet to be transmitted in the M FIFO queues, the method further includes: identifying the service type of a message to be transmitted; and determining an FIFO queue corresponding to the service type of the message to be transmitted according to the preset corresponding relation. The preset corresponding relation is the corresponding relation between the service type of the message to be transmitted and one queue in the M FIFO queues.
In some implementation manners of the fourth aspect, the identifying a service type of the packet to be transmitted includes: acquiring quintuple information of a message to be transmitted; and identifying the service type of the message to be transmitted according to the quintuple information of the message to be transmitted. The quintuple information comprises a source MAC address, a destination MAC address, a source IP address, a destination IP address and a port number.
In some implementations of the fourth aspect, after the buffered packets in the M FIFO queues are sequentially output in order from high to low in queue priority, the method further includes: and transmitting the messages sequentially output by the M FIFO queues to the target equipment through a Wi-Fi channel.
In some implementation manners of the fourth aspect, the transmitting, to the target device, the packet sequentially output by the M FIFO queues through a Wi-Fi channel includes: the AP equipment transmits the messages sequentially output by the M FIFO queues to the STA equipment through a Wi-Fi channel; or the first STA equipment transmits the messages sequentially output by the M FIFO queues to the AP equipment or the second STA equipment through a Wi-Fi channel.
In some implementations of the fourth aspect, the method further comprises: the AP equipment receives quintuple information of a message to be transmitted sent by the STA equipment, identifies the service type of the message to be transmitted according to the quintuple information of the message to be transmitted, and determines an FIFO queue corresponding to the service type of the message to be transmitted according to a preset corresponding relation. The preset corresponding relation is the corresponding relation between the service type of the message to be transmitted and one queue in the M FIFO queues.
In some implementations of the fourth aspect, the EDCA parameters corresponding to the second FIFO queue include an arbitration frame gap number AIFSN, a transmission opportunity limit TXOPL, a minimum contention window exponent form ECWminAnd maximum contention window index form ECWmax. Wherein the value of AIFSN is set to be less than or equal to a preset gap number threshold; and/or the value of TXOPL is set to be less than or equal to a preset transmission opportunity threshold; and/or, ECWminIs set to be less than or equal to a preset minimum window threshold; and/or, ECWmaxIs set to be less than or equal to a preset maximum window threshold.
In some implementations of the fourth aspect, the maximum rate of packet transmission corresponding to the second FIFO queue is set to be less than or equal to a preset rate threshold.
In some implementations of the fourth aspect, a bandwidth occupancy of a Wi-Fi air interface corresponding to the second FIFO queue is set to be greater than or equal to a preset bandwidth occupancy threshold.
In some implementations of the fourth aspect, a degree of aggregation of Wi-Fi air interface packets corresponding to the second FIFO queue is set to be less than or equal to a preset threshold value of degree of aggregation.
In a fifth aspect, the present application provides a queue scheduling apparatus comprising means for performing the method in the fourth aspect. The apparatus may correspond to the method described in the above fourth aspect, and for the description of the units in the apparatus, reference is made to the description of the above fourth aspect, and for brevity, no further description is given here.
The method described in the fourth aspect may be implemented by hardware, or may be implemented by hardware executing corresponding software. The hardware or software includes one or more modules or units corresponding to the above-described functions. Such as a processing module or unit, a memory module or unit, etc.
In a sixth aspect, the present application provides a Wi-Fi apparatus comprising the Wi-Fi chip of the first aspect, coupled to a memory, the memory configured to store a computer program or instructions, the Wi-Fi chip configured to execute the computer program or instructions stored by the memory, such that the method of the fourth aspect is performed.
For example, the Wi-Fi chip is configured to execute a computer program or instructions stored by the memory, to cause the Wi-Fi apparatus to perform the method of the fourth aspect.
The Wi-Fi device can be an AP device or an STA device.
By the scheme, in the process of transmitting the message between the AP equipment and the STA equipment, the messages of different services can be scheduled to FIFO queues with different priorities according to the characteristics and the delay requirements of different services, and the message of a specific service message (such as data with low delay requirement) can be scheduled to the newly-added FIFO queue for preferential transmission, so that the air interface transmission delay of the message is reduced.
In a seventh aspect, the present application provides a computer-readable storage medium having stored thereon a computer program (also referred to as instructions or code) for implementing the method in the fourth aspect.
The computer program, when executed by a computer, causes the computer to perform the method of the fourth aspect, for example.
In an eighth aspect, the present application provides a computer program product comprising a computer program (also referred to as instructions or code) which, when executed by a computer, causes the computer to carry out the method of the fourth aspect.
It is understood that the beneficial effects of the second aspect to the eighth aspect can be referred to the related description of the first aspect, and are not described herein again.
Drawings
Fig. 1 is a system architecture diagram of a wireless local area network based multi-device interconnect.
Fig. 2 is a flow chart of the transmission of a single message over a time-slot when a random back-off mechanism is used.
Fig. 3 is a schematic diagram of exponential increase in message delay during multiple air interface retransmissions.
Figure 4 shows a Wi-Fi hardware priority versus ethernet packet priority correspondence.
Fig. 5 is a schematic diagram illustrating different service processing rates corresponding to different buffer queues.
FIG. 6 is a diagram illustrating queue allocation of Wi-Fi device hardware in the related art.
Fig. 7 is a diagram illustrating related art transmission of traffic data through a queue of Wi-Fi device hardware.
Fig. 8 is a schematic diagram of a hardware structure of a Wi-Fi chip according to an embodiment of the present application.
Fig. 9 is a schematic diagram illustrating that service data is transmitted through a queue of Wi-Fi device hardware according to an embodiment of the present application.
Fig. 10 is a second schematic diagram of a hardware structure of a Wi-Fi chip according to an embodiment of the present application.
FIG. 11 is an architecture diagram of implementing multi-device interaction by using a Wi-Fi chip provided in an embodiment of the present application.
Fig. 12 is a flowchart illustrating a queue scheduling method according to an embodiment of the present application.
Fig. 13 is a schematic structural diagram of a queue scheduling apparatus according to an embodiment of the present application.
Fig. 14 is a schematic structural diagram of a terminal device according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some embodiments of the present application, but not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
The term "and/or" herein is an association relationship describing an associated object, meaning that three relationships may exist, e.g., a and/or B, may mean: a exists alone, A and B exist simultaneously, and B exists alone. The symbol "/" herein denotes a relationship in which the associated object is or, for example, a/B denotes a or B.
The terms "first" and "second," and the like, in the description and in the claims herein are used for distinguishing between different objects and not for describing a particular order of the objects. For example, the first type and the second type, etc. are for distinguishing different types, and are not for describing a specific order of the types.
In the embodiments of the present application, words such as "exemplary" or "for example" are used to mean serving as an example, instance, or illustration. Any embodiment or design described herein as "exemplary" or "e.g.," is not necessarily to be construed as preferred or advantageous over other embodiments or designs. Rather, use of the word "exemplary" or "such as" is intended to present concepts related in a concrete fashion.
In the description of the embodiments of the present application, unless otherwise specified, "a plurality" means two or more, for example, a plurality of processing units means two or more processing units, or the like; plural elements means two or more elements, and the like.
A Wireless Local Area Network (WLAN) is mainly composed of STAs and APs. The STA in the WLAN is generally a client, and may be a computer equipped with a wireless network card, or may be a smart phone with a built-in Wi-Fi module. The STA may be mobile or stationary and is the most basic component of a WLAN. In a wireless network, an AP corresponds to a hub of a wired network and can connect wireless clients. Logically, the AP is the central point of the wireless network, and all wireless signals within the wireless network are exchanged through the AP.
Fig. 1 is a schematic diagram illustrating a WLAN-based Wi-Fi application scenario according to an embodiment of the present application. The Wi-Fi application scene mainly comprises AP equipment for providing Wi-Fi service and various STA equipment supporting Wi-Fi protocol. As shown in fig. 1, the system architecture includes an AP device 01 and at least one STA device connected to the AP device 01 based on a Wi-Fi protocol. For example, the at least one STA device may be the mobile phone 02, the notebook computer 03, and/or the television 04 in fig. 1, but of course, the at least one STA device may also be other possible terminal devices, which may be determined according to actual usage requirements, and the embodiment of the present application is not limited thereto.
The at least one STA device can access the same Wi-Fi network through the AP device and realize various services. For example, the mobile phone 02 may obtain data from the network server 05 or upload data to the network server 05 through a Wi-Fi network, thereby implementing an internet access service. Or, the mobile phone 02 may establish a connection with the notebook computer 03 through a Wi-Fi network, and may transmit data through a channel of the AP device 01 therebetween, thereby implementing a data transmission service. Or, the mobile phone 02 may transmit screen projection data to the television 04 through the channel of the AP device 01, so that a picture displayed by the mobile phone may be displayed on a screen of the television, thereby implementing a screen projection service. Certainly, at least one STA device may also be interconnected through a Wi-Fi local area network and implement other services, which may be determined specifically according to actual usage requirements, and the embodiment of the present application is not limited.
It should be noted that the STA device first needs to access the Wi-Fi channel (i.e., occupy the Wi-Fi channel), and then transmits the packet through the Wi-Fi channel. Besides that the STA device occupies the Wi-Fi channel when sending a message to the AP device, the AP device also occupies the Wi-Fi channel when forwarding the received message to other devices. For convenience of explanation, devices accessing a Wi-Fi channel and transmitting messages through the Wi-Fi channel are collectively referred to as Wi-Fi devices. When multiple Wi-Fi devices simultaneously access the Wi-Fi channel to transmit messages, there is a channel contention problem.
In order to facilitate understanding of the embodiments of the present application, some terms of the embodiments of the present application are explained below to facilitate understanding by those skilled in the art.
(1) A back-off mechanism: in IEEE 802.11 protocol, DCF (distributed coordination function) specifies an access method in which an AP and an STA device use CSMA/CA (carrier sense multiple access with collision avoidance), that is, a random backoff mechanism is used to solve a channel contention problem and provide a contention-based radio access service.
Fig. 2 shows a flow diagram for transmitting a single message over a time-interface when using a random back-off mechanism. As shown in fig. 2, when a node (e.g., an AP device or an STA device) needs to occupy or access a channel to transmit data, the node listens to the channel, for example, invokes a carrier sense mechanism to determine the busy/idle status of the channel. If the channel is busy, access is postponed until the channel idle time is greater than or equal to a specified idle waiting time (indicated by DIFS in the figure). In order to avoid access collision, the node must pass a random back-off time (backoff time) before transmitting, and the back-off time is a random integer in the unit of a back-off time slot. The node randomly selects a backoff time slot to backoff in a contention window range, namely, once a channel is idle, the node selects the backoff time slot and starts backoff, and a device which finishes backoff firstly contends for the channel firstly.
(2) A Contention Window (CW) is a minimum contention window (denoted as CW)min) And the maximum contention window (denoted CW)max) In betweenNumber, is a key parameter in controlling congestion conditions. At present, a large number of Wi-Fi devices share spectrum resources, a collision and collision detection mechanism is adopted during transmission through an air interface, when different Wi-Fi devices send messages simultaneously to cause collision, a node selects a backoff time slot and waits, and when multiple air interface retransmissions occur, message transmission delay can be rapidly increased.
Fig. 3 shows a schematic diagram of exponential increase of message delay during multiple air interface retransmission, and as shown in fig. 3, when multiple collisions occur, the length of a backoff window will exhibit exponential increase, which causes problems of network delay, message blocking, and the like during Wi-Fi air interface transmission delay.
(3) QoS: QoS is a security mechanism of a network, and is a technology for solving problems such as network delay and packet congestion. IEEE802.11 e is a Medium Access Control (MAC) layer enhancement protocol for WLANs, adding QoS features to the WLAN infrastructure based on the IEEE802.11 protocol. In order to ensure that devices providing QoS by different WLAN vendors can communicate with each other, the Wi-Fi organization defines the WMM standard.
(4) The WMM standard: WMM is a wireless QoS protocol for ensuring that high priority packets have a priority right to send, thereby ensuring better quality for applications such as voice, video, etc. in wireless networks. The WMM standard provides WLAN networks with the ability to provide QoS services.
(5) EDCA (enhanced distributed channel access): the method is a set of channel competition mechanism defined by WMM, and is beneficial to the high-priority message to have the priority sending right and more bandwidth.
(6) AC (access category, access class): the WMM standard is divided into four priority queues of AC-VO (voice stream), AC-VI (video stream), AC-BE (best effort stream) and AC-BK (background stream) according to the sequence of the priority from high to low, and the higher the message in the priority queue is, the higher the channel occupation capability is.
That is, the WMM standard divides a packet in a Basic Service Set (BSS) into 4 ACs, and a high-priority AC has a greater chance of occupying a channel than a low-priority AC, so that different ACs can obtain different levels of service.
The WMM standard defines a set of channel contention EDCA parameters for each AC, the meaning of EDCA parameters is as follows:
(a) AIFSN (arbitration inter frame spacing number), in IEEE 802.11 protocol, the idle waiting Duration (DIFS) is a fixed value, and WMM can configure different idle waiting durations AIFS for different ACs. The larger the AIFSN value, the longer the idle latency.
(b)ECWmin(exponent form of CWminIn the form of minimum contention window index) and ECWmax(exponent form of CWmaxIn the form of a maximum contention window index), an average back-off time value is determined, and the smaller these two values, the shorter the average back-off time.
(c) TXOPL (transmission opportunity limit), after a node successfully competes for one time, may occupy the maximum duration of the channel. The larger the TXOPL value is, the longer the time that the node can occupy the channel at one time is, and if the TXOPL is equal to 0, only one message can be sent after the node occupies the channel every time.
(7) Frame aggregation techniques: collisions occurring in the contention of the channel, and the back-off mechanism introduced to resolve the collisions, both significantly reduce the throughput of the system. To solve these two problems of the MAC layer, a frame aggregation technique is employed. In the frame aggregation technology, aggregation of MAC Service Data Units (MSDUs) is abbreviated as a-MSDU, and the technology aims to aggregate a plurality of MSDU subframes together and encapsulate the MSDU subframes into an 802.11 message for transmission, thereby reducing the message header overhead required for transmitting each 802.11 message, reducing the number of response frames, and improving the message transmission efficiency.
With the rapid development of information technology and intelligent terminals, Wi-Fi has become more and more popular in people's daily life, and services based on Wi-Fi, such as voice, video, game, etc., are more and more. Currently, data generated by voice, streaming video, streaming music, and interactive games have requirements for low latency and high throughput of transmission, and QoS can be used to manage and prioritize data generated by different applications to ensure user experience.
Figure 4 shows a Wi-Fi hardware priority to ethernet packet priority 802.1p correspondence. As shown in fig. 4, ieee802.11e (WLAN QoS) classifies data into four classes, i.e., the first class is AC _ VO, the access class supports voice services, processes audio streams, the user priority is 6 and 7, which is the highest priority, and the corresponding transmission queues are respectively a VO queue and an a _ VO queue; the second type is AC _ VI, the access type supports video services and processes video streams, the user priorities are 4 and 5, the user priorities are the second priorities, and the corresponding transmission queues are respectively an A _ VI queue and a VI queue; the third type is AC _ BE, the access type supports data transmission type services, Internet access services are processed, the user priority is 0 and 3, the third priority is the third priority, and the corresponding transmission queue is a BE queue; the fourth type is AC _ BK, the access category supports background services, the user priorities are 1 and 2, the user priorities belong to the lowest priorities, and the corresponding transmission queues are BK queues.
Each type of priority has a cache queue corresponding to it in the WLAN driver, and the service processing priorities corresponding to different cache queues are different, as shown in fig. 5, idle waiting durations AIFS [ AC _ VO ], AIFS [ AC _ VI ], AIFS [ AC _ BE ], and AIFS [ AC _ BK ] corresponding to AC _ VO, AC _ VI, AC _ BE, and AC _ BK are sequentially increased, and the transmission delay of the air interface is sequentially increased.
Figure 6 shows a queue allocation diagram for Wi-Fi device hardware in the related art. As shown in fig. 6, the Wi-Fi device hardware includes VO queue 11, VI queue 12, BE queue 13, and BK queue 14. These queues may be FIFO buffer queues. Wherein the priority of the VO queue 11, the VI queue 12, the BE queue 13, and the BK queue 14 is arranged from high to low. As shown in fig. 6, the MSDU maps the packet to a corresponding AC access category according to the User Priority (UP) corresponding to the packet, and the transmission queue corresponding to each AC access category is: VO (including main selection VO and alternative A _ VO), VI (including main selection VI and alternative A _ VI), BE and BK; the message is then added to the corresponding transmit queue (e.g., VO queue 11, VI queue 12, BE queue 13, or BK queue 14). Wherein each queue is configured with corresponding EDCA parameters to resolve internal collision conflicts. And, the higher the queue priority, the higher the ability to preempt the channel, so as to optimize the quality of network communication.
In daily life, transmission of different service data is involved, when an AP or STA device processes data transmission of different services, each service data is generally buffered by adopting a default priority queue, as shown in fig. 7, for a voice service, voice data is generally scheduled to a VO queue with the highest priority by default; for video class traffic (IPTV traffic), it is common to schedule video data to the medium priority VI queue by default; for the internet services such as game services, instant messaging services and screen projection services, the internet data are generally scheduled to a low-priority BE queue by default; for background class traffic, it is common to schedule background data to the lowest priority BK queue by default.
However, transmission requirements of different service data are different, and for some delay-sensitive data or data that a user wants to preferentially process, such as game-like messages, instant messaging-like messages, screen-casting-like messages and other network data belonging to delay-sensitive data, a low-priority BE queue is adopted for caching at present, so that the service may have a larger delay. When transmission delay occurs, data received by a receiving party is intermittent, which results in poor user experience.
In view of this, the present application provides a Wi-Fi chip, a Wi-Fi device, and a queue scheduling method, which can perform finer control on different priority classes for packets of different service types by adding one or more buffer queues on the basis of the existing conventional buffer queue and adding more priority classes on the basis of four priorities of VO/VI/BE/BK. Therefore, aiming at a large amount of messages to be transmitted, the Wi-Fi equipment can schedule the messages of different service types to FIFO queues of corresponding priorities in a targeted manner according to the service priorities which are divided more finely. For example, if the priority of the newly added buffer queue is set to be higher than that of the existing conventional buffer queue, some delay-sensitive data or data that the user wishes to process preferentially may be added to the newly added buffer queue for preferential transmission, thereby ensuring low-latency transmission of such data. By the scheme, the services with different QoS requirements compete for the channel with different priorities, a certain guarantee is provided for the service with higher QoS requirements, and the Wi-Fi application experience of a user is improved.
First embodiment
In a first embodiment, the present application provides a Wi-Fi chip that includes a processor and a plurality of FIFO queues. The processor may be configured to perform scheduling processing or control on the packet to be transmitted, for example, schedule the packet into one of the plurality of FIFO queues, and control the packets in the plurality of FIFO queues to be sequentially output according to the queue priority order.
The plurality of FIFO queues may include four first FIFO queues and N second FIFO queues, where the four first FIFO queues include a voice stream VO queue, a video stream VI queue, a best effort stream BE queue, and a background stream BK queue. The N second FIFO queues are newly added private FIFO queues for caching data sensitive to transmission delay or messages which a user wants to process preferentially. The N second FIFO queues specifically and respectively store data of which service types, and may be set by a system preset or a user defined according to actual usage requirements.
Fig. 8 is a schematic diagram of a hardware structure of a Wi-Fi chip provided in the embodiment of the present application, and as shown in fig. 8, in the embodiment of the present application, on the basis of four standard queues 21, i.e., a VO queue, a VI queue, a BE queue, and a BK queue, defined in 802.11, N private hardware queues 22 are added: FIFO 1# queue (corresponding to private access category AC 1#), FIFO 2# queue (corresponding to private AC 2#), …, FIFO N # queue (corresponding to private AC N #). It should be noted that the VO queue includes a main VO and an alternative a _ VO, and the VI queue includes a main VI and an alternative a _ VI, which are not shown in fig. 8 for simplicity and clarity of illustration.
That is, in the embodiment of the present application, the Wi-Fi chip supports an additional FIFO queue in addition to the VO/VI/BE/BK standard queue, and can BE applied specifically for transmitting data of a specific service independently of a conventional service data buffer. For example, for some delay-sensitive data or messages that the user wants to preferentially process, such as game-like messages, instant messaging-like messages, screen-casting-like messages and other internet-accessing data, which belong to delay-sensitive data, a private FIFO queue may be used for buffering.
Optionally, according to the practical use requirement, the priority ordering may be performed on the entire FIFO queue (including four standard FIFO queues and N newly added private FIFO queues). Wherein, the higher the message in the priority queue is, the higher the channel seizing capability is.
Illustratively, the priority of the FIFO queue may be set from high to low as: FIFO 1# queue > FIFO 2# queue > … … > FIFO N # queue > VO queue > VI queue > BE queue > BK queue. In practical implementation, the packets requiring the highest priority processing may be scheduled to the FIFO 1# queue, and the packets requiring the lowest priority processing may be scheduled to the BK queue, so as to ensure that the high-priority data can be transmitted with low latency.
It should be noted that, the above ordering of the priority levels of the FIFO queues is an exemplary list, and the embodiment of the present application is not limited to this, for example, the priority levels of the FIFO queues may be set as: FIFO1# queue > VO queue > FIFO 2# queue > … … > FIFO N # queue > VI queue > BE queue > BK queue. Of course, the priority of the FIFO queue may also have other possible orderings, which may be specifically determined according to actual usage requirements, and the embodiment of the present application is not limited.
For example, in the embodiment of the present application, a private hardware FIFO1# queue may be newly added on the basis of four standard queues, and the priority of the private hardware FIFO1# queue is higher than the priorities of the four standard queues, so that for a packet of specific data (for example, data with low latency requirement), the packet may be scheduled to be preferentially output to the newly added FIFO1# queue, so as to reduce packet transmission latency. For example, assuming that the game service is set as a specific service and low-latency transmission is required, it may be specified to add data of the game service to the private FIFO1# queue with the highest priority to ensure that such service data can be transmitted with low latency.
Further exemplarily, it is assumed that in the embodiment of the present application, four private FIFO queues are newly added on the basis of four standard FIFO queues, i.e., a VO queue, a VI queue, a BE queue, and a BK queue: FIFO1# queue, FIFO 2# queue, FIFO3# queue, and FIFO 4# queue. The priority of the FIFO queue can be set as follows from high to low: FIFO1# queue > FIFO 2# queue > FIFO3# queue > FIFO 4# queue > VO queue > VI queue > BE queue > BK queue. Because the transmission requirements of the messages of different service types are different, for certain specific services, such as game service, instant messaging service, screen projection service, IPTV service and other services with sensitive delay, the services may be set to correspond to different priority queues, and assuming that the data transmission rate requirements of the IPTV service, screen projection service, instant messaging service and game service are sequentially increased, the IPTV service, screen projection service, instant messaging service and game service may respectively correspond to FIFO 4# queue, FIFO3# queue, FIFO 2# queue and FIFO1# queue.
As shown in fig. 9, when the Wi-Fi chip obtains various types of messages, the messages corresponding to the specific service may be scheduled to a newly added private FIFO queue, for example, the game type messages corresponding to the game service are scheduled to the FIFO 1# queue for caching, the instant communication type messages corresponding to the instant communication service are scheduled to the FIFO 2# queue for caching, the screen-casting type messages corresponding to the screen-casting service are scheduled to the FIFO 3# queue for caching, and the IPTV type messages corresponding to the IPTV service are scheduled to the FIFO 4# queue for caching. Besides, other service messages except for specific services, such as voice services, video services, internet services, background services and the like, are respectively and correspondingly scheduled into the standard queues in a traditional manner. Because the probability that the FIFO queue with high priority competes for the channel is higher than that of the FIFO queue with low priority competes for the channel, the messages (the messages needing to be processed preferentially or the messages sensitive to delay) of certain specific services are scheduled to the newly-added private FIFO queue with high priority to realize preferential transmission. By the scheme, the services with different QoS requirements compete for the channel with different priorities, a certain guarantee is provided for the service with higher QoS requirements, and the Wi-Fi application experience of a user is improved.
Optionally, in some embodiments, the embodiments of the present application may be based on newly adding privacyThe hardware FIFO is provided, different EDCA parameters are set, the time length of a backoff waiting window is reduced, and the message air interface waiting delay is reduced. As mentioned above, EDCA parameters include AIFSN, ECWminAnd ECWmaxAnd TXOPL, the settings for these parameters are described separately below.
On the one hand, as described above, the smaller the AIFSN value, the smaller the idle waiting time, so that the transmission delay can be reduced by setting the value range of the AIFSN. Illustratively, the value of the AIFSN may be set to a smaller value within a reasonable range based on a newly added private hardware FIFO according to the actual usage requirement of the service to be processed, so as to reduce idle waiting time and reduce message air interface waiting delay.
In another aspect, as described above, ECWminAnd ECWmaxAn average back-off time value is determined, and the smaller these two values are, the shorter the average back-off time is, so that it is possible to set the ECWminAnd ECWmaxThe value range of (2) reduces the message transmission delay. Illustratively, the ECW can be adjusted within a reasonable range according to the actual use requirement of the service to be processed based on the newly added private hardware FIFOminAnd ECWmaxThe numerical values of the data are all set to be smaller values so as to reduce the time length of the backoff waiting window and reduce the waiting delay of the message air interface.
On the other hand, as described above, the smaller the value of the TXOPL, the shorter the duration that the Wi-Fi device can occupy the channel at one time, the smaller the message air interface waiting delay of other Wi-Fi devices, and thus the message transmission delay can also be reduced to a certain extent by setting the value range of the TXOPL. Illustratively, the value of the TXOPL may be set to a smaller value within a reasonable range according to the actual use requirement of the service to be processed based on the newly added private hardware FIFO, so as to reduce the message air interface waiting delay.
For example, taking the private FIFO queue as an example, which is set for buffering game traffic, the EDCA parameters set for the private FIFO queue are as follows: ECWmin=2,ECW max3, AIFSN 2, TXOPL 0. It should be noted that how to set EDCA parameters for the entire FIFO queue may be specifically determined according to actual use requirements, and this application is implementedThe examples are not limiting.
Optionally, in some embodiments, the highest air interface rate may be customized based on the addition of the private hardware FIFO. Aiming at the requirement of message delay, reducing the maximum rate of sending the message from the FIFO queue, so that the requirement of signal to noise ratio (SNR) of the message is reduced; because the requirement of the SNR of the message is reduced, the probability of retransmission caused by the interference of the message is reduced under the same interference scene, namely the retransmission times of the message are reduced, thereby reducing the transmission delay of the message. Therefore, the maximum rate of sending the message from the FIFO queue can be reduced in a reasonable range based on the newly added private hardware FIFO according to the actual use requirement of the service to be processed, so as to reduce the waiting delay of the message air interface.
For example, still taking the private FIFO queue as an example for caching the game service, for the private FIFO queue, the air interface rate may be set to be less than or equal to V megabits per second (Mbps), that is, the highest air interface rate is V; for example, V is 48 Mbps. It should be noted that how the maximum air interface rate takes a value for the entire FIFO queue may be determined specifically according to actual use requirements, and the embodiment of the present application is not limited.
Optionally, in some embodiments, the embodiments of the present application may configure, based on a hardware FIFO, the bandwidth or the traffic ratio of the Wi-Fi air interface occupied by the private queue and the standard queue according to an actual usage requirement of the service to be processed. For example, an Air Time Fair (ATF) scheduling manner may be adopted to allocate a Wi-Fi air occupation ratio to an entire FIFO queue (including four standard FIFO queues and N newly added private FIFO queues), so as to ensure high priority and bandwidth of the private queues, thereby reducing packet transmission delay.
For example, still taking the private FIFO queue as an example for caching the game service, for the private FIFO queue, the proportion that the private queue occupies the Wi-Fi air interface may BE set to 20%, and the sum of the proportions that the VO queue, the VI queue, the BE queue, and the BK queue occupy the Wi-Fi air interface is 80%. It should be noted that how to allocate the Wi-Fi air interface occupation ratio for the entire FIFO queue may be specifically determined according to actual use requirements, and the embodiment of the present application is not limited.
Optionally, in some embodiments, the embodiment of the present application may reduce a polymerization degree of an air interface message based on a hardware FIFO, and may reduce a waiting delay of an air interface message aggregation framing by reducing a polymerization degree of a high-priority message. Thus, high priority messages use a low degree of polymerization, which can reduce the transmission delay of the messages.
For example, still taking the example that a private FIFO queue is set for buffering game traffic, for this private FIFO queue, the a-MPDU aggregation degree may be set to be less than or equal to 16. It should be noted that how the value of the packet polymerization degree of the entire FIFO queue is taken may be determined specifically according to the actual use requirement, and the embodiment of the present application is not limited.
The embodiment of the application reduces the message transmission delay by measures of (1) setting different EDCA parameters, (2) configuring bandwidth or flow proportion of a private queue and a standard queue occupying a Wi-Fi air interface, (3) reducing the highest air interface rate (namely limiting the retransmission times of the air interface), and (4) reducing the polymerization degree of a message. Therefore, compared with the related art in which only the EDCA parameter is considered as a transmission delay factor, the embodiment of the present application considers not only the EDCA parameter but also other factors (e.g., (2), (3), and (4)) that affect the delay, thereby reducing the transmission delay of the high-priority packet. Of course, the embodiments of the present application do not exclude other measures from being taken to reduce the air interface delay, and may be determined specifically according to actual usage requirements, and the embodiments of the present application are not limited.
Compared with the prior art that the buffer queue planning is not reasonable enough, which causes the transmission delay of some messages (messages needing priority processing or messages sensitive to delay) of specific services to be larger, the embodiment of the application adds the messages into the corresponding buffer queues according to the delay requirements of the messages by adding the buffer queues with adjustable priority and finely dividing the messages to be transmitted, and the probability that the buffer queues with high priority compete for the channel is higher than that of the buffer queues with low priority for the channel, so that the delay sensitive data can be sent preferentially. By the scheme, the services with different QoS requirements compete for the channel with different priorities, a certain guarantee is provided for the service with higher QoS requirements, and the Wi-Fi application experience of a user is improved.
It should be noted that messages of different service types correspond to different user priorities, which are usually planned by an operator. Moreover, the message network access device (e.g. IPTV set-top box) usually marks (marks) the corresponding user priority. For example, the user priority corresponding to a voice over IP (VoIP) service message is 7, the user priority corresponding to an Internet Protocol Television (IPTV) service message is 5, and the user priority corresponding to an Internet access service message is 0.
The priority queue plan of an operator is not modified, and the improvement point is that one or more private FIFO queues are newly added on the basis of the existing four standard queues; in the process of transmitting the message between the AP device and the STA device, the messages of different services may be scheduled to FIFO queues of different priorities according to the characteristics and delay requirements of different services, and for a message of specific data (e.g., data with a low delay requirement), the message may be scheduled to the newly added FIFO queue for priority transmission, so as to reduce the message transmission delay.
Optionally, in the embodiment of the present application, when the Wi-Fi chip obtains a message to be transmitted, the processor of the Wi-Fi chip may be configured to identify a service type of the message; further, the processor may determine a corresponding FIFO queue according to the service type of the packet, and add the packet to the corresponding FIFO queue.
For example, in this embodiment of the present application, a packet type, that is, a service type corresponding to the packet, may be identified through five-tuple information of the first packet. The quintuple information comprises information such as a source MAC address, a destination MAC address, a source IP address, a destination IP address, a port number and the like; or, the five-tuple information includes information of a source IP address, a source port, a transport layer protocol, a destination IP address, a destination port, and the like. For example, the process of identifying the service type of the packet is as follows: after the first message is obtained, extracting the quintuple of the message, searching whether the table entry comprising the quintuple exists through the address routing table, if so, the service type corresponding to the message is the service type marked by the table entry.
Further illustratively, the process of identifying the service type of the packet is as follows: and after the first message is obtained, extracting the network address and the port pair of the message. And searching a table item comprising a network address and a port pair in an association table, wherein the association table stores the table item of the corresponding relation between the network address and the port and the service type. If the table entry comprising the network address and the port pair is found in the association table, determining that the service type corresponding to the message is the service type marked by the table entry.
It should be noted that, the foregoing exemplifies possible implementation manners for identifying the service type corresponding to the packet, and in actual implementation, the embodiment of the present application is not limited to this, and the service type corresponding to the packet may also be identified by other possible manners, which may be specifically determined according to actual usage requirements, and the embodiment of the present application is not limited.
It should be noted that, the above is described by taking an example of identifying a packet type through five-tuple information of a packet, and it may be understood that, in actual implementation, the embodiment of the present application is not limited thereto, and may also identify the packet type through the three-tuple information of the packet, where the three-tuple information includes a transport layer protocol, a source address, and a source port number. The method can be determined according to actual use requirements, and the embodiment of the application is not limited.
In actual implementation, as shown in fig. 10, the processor of the Wi-Fi chip may include an application identification module 31, a Wi-Fi management module 32, a network management module 33, and a HiLink SDK module 34. When a certain application sends a message transmission request (hereinafter, a message requested to be transmitted by the application is referred to as a first message), on one hand, the application identification module 31 may identify the application according to an application scene, determine the name of the application, determine message service features that need to be processed preferentially, and send the message features to the Wi-Fi management module 32; on the other hand, the network management module 33 acquires the quintuple information of the first packet, and sends the identification result to the Wi-Fi management module 32. Correspondingly, the Wi-Fi management module 32 compares the characteristics of the currently transmitted packet with the preset packet characteristics that need to be processed preferentially, identifies whether the currently transmitted packet needs to be processed preferentially, and schedules the packet to a corresponding FIFO queue for preferential transmission if the packet needs to be processed preferentially. Meanwhile, the Wi-Fi management module 33 may send the message characteristics that need to be processed preferentially to the HiLink SDK module 34. The HiLink SDK module 34 is a program module running on an SoC chip, and is used for realizing networking of devices and interconnection and intercommunication between the devices and the smart home cloud and the smart home APP. The HiLink SDK module 34 may send the packet quintuple information that needs to be processed preferentially to the connected Wi-Fi devices, so that the connected Wi-Fi devices can identify the packet priority and perform corresponding priority control.
In the embodiment of the application, in the process of interactively transmitting the message between the AP device and the STA device, two sides of the interactive device may respectively realize accelerated transmission of the message. On one hand, in the downlink direction of transmitting the message from the AP equipment to the STA equipment, the message is placed into FIFO queues with different priorities for scheduling processing on the AP side, and the accelerated transmission of the message in the downlink direction can be realized; on the other hand, in the uplink direction of transmitting the message from the STA device to the AP device, the STA side realizes that the message is put into FIFO queues of different priorities for scheduling processing, and can realize accelerated transmission of the message in the uplink direction.
In actual implementation, in the process of sending a message to the AP device by the STA device, the information of the five-tuple of the message may be transmitted to the AP device through the HiLink module (or other private processing modules), so that the AP device may identify the priority of the message and perform corresponding priority control.
For example, assume that preset on a handset (i.e., STA device): the target game is accelerated (e.g., the application name of the target game is added to the corresponding acceleration list). Then, when the user triggers the target game to start on the mobile phone, the mobile phone can recognize the message quintuple information of the target game. For the messages sent by the STA device to the AP device, the STA device may determine which messages in the messages to be sent are the messages of the target game according to the five-tuple information of the messages, and place the messages of the target game in the corresponding high-priority FIFO queue. Meanwhile, the STA device can transmit the message quintuple information corresponding to the target game to the corresponding AP device through the HiLink module so as to inform the AP device that the target game needs to be accelerated. Further, when the AP device receives the packet sent by the network side and sends the packet to the STA device, it identifies whether the packet characteristics are consistent with the packet quintuple information corresponding to the target game, and if so, it indicates that the packet is a packet of the target game, and places the packet in a corresponding high-priority FIFO queue, thereby implementing accelerated transmission of the packet in the direction from the AP device to the STA device. Therefore, the service message with higher QoS requirement can be transmitted according to high priority on both sides of the interactive equipment.
It should be noted that, in the embodiment of the present application, one or more buffer queues added on the basis of the existing conventional buffer queue may be a hardware FIFO queue or a software FIFO queue, and may be determined specifically according to actual use requirements, which is not limited in the embodiment of the present application.
Second embodiment
In a second embodiment, the present application provides an AP device comprising the Wi-Fi chip of the first embodiment described above.
Optionally, the AP device may establish a wireless connection with one or more terminal devices (i.e., STA devices) through a Wi-Fi protocol, that is, establish a Wi-Fi transmission channel, and further, the AP device and the one or more STA devices may transmit a packet to each other on the Wi-Fi transmission channel. In the embodiment of the present application, in the downlink direction in which the packet is transmitted from the AP device to the STA device, the packet may be placed in FIFO queues of different priorities on the AP side for scheduling.
Exemplarily, referring to fig. 11, in a downlink direction in which the AP device 41 forwards a packet to the terminal device 42, if the AP device 41 obtains the packet to be forwarded, the AP device may first identify a service type of the packet to be forwarded, then determine a corresponding FIFO queue according to the service type of the forwarded packet, and add the packet to the corresponding FIFO queue, in this way, the packets of different service types are scheduled to the FIFO queues of different priorities according to characteristics and delay requirements of different services. For a packet of specific data (e.g., data with a low latency requirement), the packet may be scheduled to the newly added FIFO queue (e.g., a newly added FIFO 1# queue, a newly added FIFO 2# queue, a newly added FIFO 3# queue, and/or a newly added FIFO 4# queue) for priority transmission, so as to reduce the packet transmission latency. Further, the AP device 41 may sequentially send the packets in each FIFO queue to the terminal device 42 according to the priority of the queue from high to low.
That is, the AP device may forward the packet received from the STA device to the network server, and put the packet received from the network server into FIFO queues of different priorities for scheduling processing, and then forward the packet to the STA device.
Third embodiment
In a third embodiment, the present application provides a terminal device supporting Wi-Fi protocol, also referred to as STA device, which includes the Wi-Fi chip in the first embodiment described above. The terminal device can establish wireless connection with the AP device through a Wi-Fi protocol, namely, a Wi-Fi transmission channel is established, and then the terminal device and the AP device can mutually transmit messages on the Wi-Fi transmission channel. In the embodiment of the present application, in the uplink direction in which the STA device transmits a packet to the AP device, the STA side may perform scheduling processing by putting the packet into FIFO queues of different priorities.
For example, referring to fig. 11 again, in the uplink direction in which the terminal device 42 sends messages of various service types to the AP device 41, if the terminal device 42 acquires a message to be forwarded, the terminal device 42 may first identify the service type of the message to be forwarded, then determine a corresponding FIFO queue according to the service type of the message to be forwarded, and schedule the message to the corresponding FIFO queue, in this way, according to the characteristics and the delay requirements of different services, schedule the messages of different service types to FIFO queues of different priorities. For a packet of specific data (e.g., data with a low latency requirement), the packet may be scheduled to the newly added FIFO queue (e.g., a newly added FIFO 1# queue, a newly added FIFO 2# queue, a newly added FIFO 3# queue, and/or a newly added FIFO 4# queue) for priority transmission, so as to reduce the packet transmission latency. Further, the terminal device 42 may sequentially send the packets in each FIFO queue to the AP device 41 according to the priority of the queue from high to low.
Optionally, the scheme of the embodiment of the application may also be applied to packet transmission in a Wi-Fi direct connection scenario. Specifically, the STA device 1 may directly establish a wireless connection with the STA device 2 through a Wi-Fi protocol, that is, the two STA devices establish a Wi-Fi direct channel, and then both the STA device 1 and the STA device 2 may transmit a packet on the Wi-Fi direct channel. In the process of transmitting messages between two STA devices, the messages can be placed into FIFO queues with different priorities to be scheduled on any STA side.
Fourth embodiment
In a fourth embodiment, the present application provides a queue scheduling method based on a wireless local area network, which may be implemented by using the Wi-Fi chip in the first embodiment.
In some embodiments, the method may be applied to the AP device in the second embodiment described above, which includes the Wi-Fi chip in the first embodiment described above. In other embodiments, the method may be applied to the terminal device in the third embodiment, where the terminal device includes the Wi-Fi chip in the first embodiment. In still other embodiments, the method may be applied to both the AP device in the second embodiment described above and the terminal device in the third embodiment described above.
Fig. 12 is a flowchart illustrating a method for queue scheduling based on a wireless local area network according to an embodiment of the present application. The queue scheduling method is implemented by using the FIFO queues (including four standard queues and N newly added private hardware queues) shown in fig. 8. Referring to FIG. 12, the method 200 includes steps S210-S240 described below.
S210, the Wi-Fi equipment acquires the first message.
The Wi-Fi device may be an AP device or an STA device (i.e., a terminal device supporting a Wi-Fi protocol), which may be specifically determined according to actual usage requirements, and the embodiment of the present application is not limited.
Illustratively, a user performs input operation on a Wi-Fi device to trigger starting of a game application, that is, a currently processed service is a game service; correspondingly, the Wi-Fi device may package, in response to an input operation of a user on the Wi-Fi device, data related to a game service to obtain a game-like message (i.e., the first message).
S220, the Wi-Fi equipment judges whether the service type corresponding to the first message is the first type.
Illustratively, as described above, the Wi-Fi device may identify the traffic type of the first packet according to the five-tuple information of the first packet. Further, the Wi-Fi device may compare the service type of the first packet with a preset first type to determine whether the service type corresponding to the first packet is the preset service type. And if the preset first type comprises the service type of the first message or the preset first type and the service type of the first message have the same information, determining that the service type corresponding to the first message is the first type.
The preset first type can be specifically set by a system or can be set by a user in a self-defined manner. For example, the system sets a preset first type as a game service. For another example, the user may custom set the preset first type as the electronic red envelope service.
On one hand, if the service type corresponding to the first packet is the first type, the following S230 is continuously performed. On the other hand, if the service type corresponding to the first packet is not the first type, the following S240 is continuously performed.
And S230, the Wi-Fi equipment schedules the first message to a first buffer queue, the first buffer queue is an additional buffer queue except for a second buffer queue in a buffer of the Wi-Fi equipment, and the second buffer queue comprises a VO queue, a VI queue, a BE queue and a BK queue.
The first type and the first buffer queue have a mapping relationship or a corresponding relationship, which can be set by a system or a user. For example, the user-defined electronic red envelope service (first type) has a mapping relation with a first buffer queue.
And S240, when the service type corresponding to the first message is the second type, the Wi-Fi equipment schedules the first message to a queue corresponding to the second type in a second cache queue.
The second type may be any one of several service types currently planned by an operator, for example, the second type may be a voice service and corresponds to a VO queue; or video service, corresponding to the VI queue; or the service is an internet access service and corresponds to the BE queue; or background class traffic, corresponding to BK queues.
Optionally, the priorities of the first buffer queue and the second buffer queue may be set according to actual use requirements, which is not limited in this embodiment of the application. Illustratively, the priority of the first buffer queue is higher than the priority of the second buffer queue.
Further, the messages in the first buffer queue and the messages in the second buffer queue may be sequentially output according to the queue priority order.
In the embodiment of the application, messages of different service types are dispatched to FIFO queues of different priorities according to the characteristics and the time delay requirements of different services. For a packet of specific data (e.g., data with low latency requirement), the packet may be scheduled to the newly added FIFO queue for priority transmission, so as to reduce the packet transmission delay. And measures such as setting different empty port weight times, reducing transmission rate, setting EDCA parameters, setting message polymerization degree, and/or setting ATF specified flow proportion can be used for reducing the empty port transmission delay of the message.
In practical implementation, in the downlink direction from the AP device to the STA device, priority elevation may be implemented through the private FIFO of the AP router, so as to reduce downlink packet transmission delay. In addition, in the uplink direction from the STA equipment to the AP equipment, priority promotion can be realized through the private FIFO of the mobile phone, and uplink message transmission delay is reduced. In this way, bidirectional priority boosting can be achieved between the AP device and the STA device. Because the probability that the FIFO queue with high priority competes for the channel is higher than that of the FIFO queue with low priority competes for the channel, the messages (the messages needing to be processed preferentially or the messages sensitive to delay) of certain specific services are scheduled to the newly-added private FIFO queue with high priority to realize preferential transmission.
Aiming at the situation that the Wi-Fi air interface has unequal transmission delay from 0 millisecond (ms) to 2000ms in low signal strength scenes with different interferences in different scenes of the existing Wi-Fi service, the embodiment of the application preferentially processes high-priority messages such as instant messaging messages and game messages through hardware and software optimization, reduces the message delay and controls the estimated delay to be 0ms to 250 ms.
Illustratively, in a home interference scenario, if a game message is set to the VO priority, an average value of transmission delay of a message air interface reaches about 87.49ms, where a proportion of messages with delay exceeding 100ms is about 15.5%, and a proportion of messages with delay exceeding 200ms is about 0.82%. If the game message is placed in FIFO 1# priority, the average delay reaches 72.98ms, wherein the proportion of messages with delay exceeding 100ms is about 2.78%, and the proportion of messages with delay exceeding 200ms is about 0%.
In summary, the priority queue plan of the operator is not modified in the embodiment of the present application, and the improvement point is that one or more private FIFO queues are newly added on the basis of the existing four standard queues; in the process of transmitting the message between the AP device and the STA device, the messages of different services may be scheduled to FIFO queues of different priorities according to the characteristics and delay requirements of different services, and for a message of specific data (e.g., data with a low delay requirement), the message may be scheduled to the newly added FIFO queue for priority transmission, so as to reduce the message transmission delay. Compared with the Wi-Fi equipment priority classification in the related technology which is not fine enough and the EDCA parameters are only considered for transmission delay factors with different priorities, the embodiment of the application finely processes the Wi-Fi equipment priority, further subdivides the service types (such as games, payment, screen projection and the like) and the flow and other characteristics, and considers the EDCA parameters and other factors influencing delay to reduce the transmission delay of the high-priority message. By the scheme, the services with different QoS requirements compete for the channel with different priorities, and certain guarantee is provided for the services with higher QoS requirements.
It should also be noted that in the embodiments of the present application, "greater than" may be replaced by "greater than or equal to" and "less than or equal to" may be replaced by "less than", or "greater than or equal to" may be replaced by "greater than" and "less than" may be replaced by "less than or equal to".
The various embodiments described herein may be implemented as stand-alone solutions or combined in accordance with inherent logic, all of which are contemplated to fall within the scope of the present application.
It is understood that the methods and operations implemented by the Wi-Fi device in the above embodiments of the method may also be implemented by a component (e.g., a chip or a circuit) that can be used for the Wi-Fi device.
Embodiments of the methods provided herein are described above, and embodiments of the apparatus provided herein are described below. It should be understood that the description of the apparatus embodiment corresponds to the description of the method embodiment, and therefore, for the sake of brevity, details which are not described in detail above may be referred to the method embodiment.
The solutions provided in the embodiments of the present application have been described above mainly in terms of method steps. It is understood that, in order to implement the above functions, the Wi-Fi device implementing the method includes corresponding hardware structures and/or software modules for performing the respective functions. Those of skill in the art would appreciate that the various illustrative components and algorithm steps described in connection with the embodiments disclosed herein may be implemented as hardware or combinations of hardware and computer software. Whether a function is performed as hardware or computer software drives hardware depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
In the embodiment of the present application, according to the method example, functional modules of the Wi-Fi device may be divided, for example, the functional modules may be divided corresponding to the functions, or two or more functions may be integrated in one processing module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. It should be noted that, the division of the modules in the embodiment of the present application is schematic, and is only one logical function division, and other feasible division manners may be available in actual implementation. The following description will be given taking the example of dividing each functional module corresponding to each function.
Fig. 13 is a schematic block diagram of a queue scheduling apparatus 800 according to an embodiment of the present application. The apparatus 800 may be used to perform the actions performed by the Wi-Fi devices in the above method embodiments. The apparatus 800 comprises a processing unit 810 and a storage unit 820. The storage unit 820 includes M FIFO queues including a first FIFO queue and a second FIFO queue. The first FIFO queue includes a VO queue, a VI queue, a BE queue and a BK queue.
The processing unit 810 is configured to schedule the packet to be transmitted to an FIFO queue corresponding to the service type of the packet to be transmitted in the M FIFO queues.
And the storage unit 820 is used for sequentially outputting the buffered messages in the M FIFO queues from high to low according to the queue priority.
The messages cached in the second FIFO queue are messages of a preset service type, and the priority of the second FIFO queue is higher than that of each queue in the first FIFO queue.
In some implementations, where the second FIFO queue includes a plurality of FIFO queues, at least one of the second FIFO queues has a higher priority than each of the queues in the first FIFO queue. And the priorities of the BK queue, the BE queue, the VI queue and the VO queue are sequentially increased.
In some implementations, the processing unit 810 is further configured to: identifying the service type of a message to be transmitted; and determining an FIFO queue corresponding to the service type of the message to be transmitted according to the preset corresponding relation. The preset corresponding relation is the corresponding relation between the service type of the message to be transmitted and one queue in the M FIFO queues.
In some implementations, the processing unit 810 is specifically configured to: acquiring quintuple information of a message to be transmitted; and identifying the service type of the message to be transmitted according to the quintuple information of the message to be transmitted. The quintuple information comprises a source MAC address, a destination MAC address, a source IP address, a destination IP address and a port number.
In some implementations, the apparatus 800 further includes a transceiving unit 830, the transceiving unit 830 configured to: after the storage unit 820 sequentially outputs the buffered packets in the M FIFO queues according to the sequence from high queue priority to low queue priority, the packets sequentially output by the M FIFO queues are transmitted to the target device through the Wi-Fi channel.
In some implementations, when the apparatus 800 is an AP device, the transceiver unit 830 is specifically configured to transmit, to the STA device, messages sequentially output by M FIFO queues in the AP device through a Wi-Fi channel. Or, when the apparatus 800 is a first STA device, the transceiver unit 830 is specifically configured to transmit messages sequentially output by M FIFO queues in the first STA device to the AP device or a second STA device through a Wi-Fi channel.
In some implementation manners, when the apparatus 800 is an AP device, the processing unit 810 is further configured to receive five-tuple information of a to-be-transmitted packet sent by the STA device, identify a service type of the to-be-transmitted packet according to the five-tuple information of the to-be-transmitted packet, and determine, according to a preset corresponding relationship, an FIFO queue corresponding to the service type of the to-be-transmitted packet. The preset corresponding relation is the corresponding relation between the service type of the message to be transmitted and one queue in the M FIFO queues.
In some implementations, the EDCA parameters corresponding to the second FIFO queue include an arbitration frame gap number AIFSN, a transmission opportunity limit TXOPL, a minimum contention window exponent form ECWminAnd maximum contention window index form ECWmax. Wherein the value of AIFSN is set to be less than or equal to a preset gap number threshold; and/or the value of TXOPL is set to be less than or equal to a preset transmission opportunity threshold; and/or, ECWminIs set to be less than or equal to a preset minimum window threshold; and/or, ECWmaxIs set to be less than or equal to a preset maximum window threshold.
In some implementations, the maximum rate of packet transmission corresponding to the second FIFO queue is set to be less than or equal to a preset rate threshold.
In some implementations, the bandwidth occupancy of the Wi-Fi air interface corresponding to the second FIFO queue is set to be greater than or equal to a preset bandwidth occupancy threshold.
In some implementations, the aggregation level of the Wi-Fi air interface packet corresponding to the second FIFO queue is set to be less than or equal to a preset aggregation level threshold.
The apparatus 800 according to the embodiment of the present application may correspond to performing the method described in the embodiment of the present application, and the above and other operations and/or functions of the units in the apparatus 800 are respectively for implementing corresponding flows of the method, and are not described herein again for brevity.
Fig. 14 is a schematic structural diagram of a Wi-Fi device 900 provided in an embodiment of the present application. It should be understood that the Wi-Fi device 900 may correspond to an AP device or a STA device in the above-described embodiments of the present application. The Wi-Fi apparatus 900 includes: a processor 910, a memory 920, a communication interface 930, and a bus 940.
The processor 910 may be connected to the memory 920. The memory 920 may be used to store the program codes and data. Therefore, the memory 920 may be a storage unit inside the processor 910, an external storage unit independent of the processor 910, or a component including a storage unit inside the processor 910 and an external storage unit independent of the processor 910.
Optionally, Wi-Fi device 900 may also include a bus 940. The memory 920 and the communication interface 930 may be connected to the processor 910 through a bus 940. The bus 940 may be a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. The bus 940 may be divided into an address bus, a data bus, a control bus, and the like. For ease of illustration, only one line is shown in FIG. 14, but it is not intended that there be only one bus or one type of bus.
It should be understood that, in the embodiment of the present application, the processor 910 may employ a Central Processing Unit (CPU). The processor may also be other general purpose processors, Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, and the like. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. Or the processor 910 may employ one or more integrated circuits for executing related programs to implement the technical solutions provided in the embodiments of the present application.
The memory 920 may include a read-only memory and a random access memory, and provides instructions and data to the processor 910. A portion of the processor 910 may also include non-volatile random access memory. For example, the processor 910 may also store information of the device type.
When the Wi-Fi apparatus 900 is in operation, the processor 910 executes computer-executable instructions in the memory 920 to perform the operational steps of the queue scheduling method described above.
It should be understood that the Wi-Fi apparatus 900 provided in the embodiments of the present application may correspond to the apparatus 800 in the embodiments of the present application, the processor 910 in the Wi-Fi apparatus 900 may correspond to the processing unit 810 in the apparatus 800 in fig. 13, and the memory 920 in the Wi-Fi apparatus 900 may correspond to the storage unit 820 in the apparatus 800 in fig. 13. The above and other operations and/or functions of each unit in the apparatus 800 are respectively for implementing the corresponding processes of the above method, and are not described herein again for brevity.
In an embodiment of the application, the Wi-Fi device comprises a hardware layer, an operating system layer running on the hardware layer, and an application layer running on the operating system layer. The hardware layer may include hardware such as a Central Processing Unit (CPU), a Memory Management Unit (MMU), and a memory (also referred to as a main memory). The operating system of the operating system layer may be any one or more computer operating systems that implement business processing through processes (processes), such as a Linux operating system, a Unix operating system, an Android operating system, an iOS operating system, or a windows operating system. The application layer may include applications such as a browser, an address book, word processing software, and instant messaging software.
Optionally, in some embodiments, the present application further provides a computer readable medium, which stores program code and when the computer program code runs on a computer, causes the computer to execute the method in the above aspects.
Optionally, in some embodiments, the present application further provides a computer program product, where the computer program product includes: computer program code which, when run on a computer, causes the computer to perform the method of the above-mentioned aspects.
The embodiment of the present application does not particularly limit a specific structure of an execution subject of the method provided by the embodiment of the present application, as long as communication can be performed by the method provided by the embodiment of the present application by running a program in which codes of the method provided by the embodiment of the present application are recorded. For example, an execution main body of the method provided by the embodiment of the present application may be a terminal device, or a functional module capable of calling a program and executing the program in the terminal device.
Various aspects or features of the disclosure may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques. The term "article of manufacture" as used herein is intended to encompass a computer program accessible from any computer-readable device, carrier, or media. For example, computer-readable media may include, but are not limited to: magnetic storage devices (e.g., hard disk, floppy disk, or magnetic tape), optical disks (e.g., Compact Disk (CD), Digital Versatile Disk (DVD), etc.), smart cards, and flash memory devices (e.g., erasable programmable read-only memory (EPROM), card, stick, or key drive, etc.).
Various storage media described herein can represent one or more devices and/or other machine-readable media for storing information. The term "machine-readable medium" can include, but is not limited to: wireless channels and various other media capable of storing, containing, and/or carrying instruction(s) and/or data.
It should be understood that the processor mentioned in the embodiments of the present application may be a Central Processing Unit (CPU), and may also be other general purpose processors, Digital Signal Processors (DSPs), Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, and the like. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
It will also be appreciated that the memory referred to in the embodiments of the application may be either volatile memory or nonvolatile memory, or may include both volatile and nonvolatile memory. The non-volatile memory may be a read-only memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an electrically Erasable EPROM (EEPROM), or a flash memory. Volatile memory can be Random Access Memory (RAM). For example, RAM can be used as external cache memory. By way of example and not limitation, RAM may include the following forms: static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), and direct bus RAM (DR RAM).
It should be noted that when the processor is a general-purpose processor, a DSP, an ASIC, an FPGA or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component, the memory (memory module) may be integrated into the processor.
It should also be noted that the memory described herein is intended to comprise, without being limited to, these and any other suitable types of memory.
Those of ordinary skill in the art will appreciate that the various illustrative elements and steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one type of logical functional division, and other divisions may be realized in practice, for example, multiple units or components may be combined or integrated into another system, or some features may be omitted, or not executed. Furthermore, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the present application, or portions thereof, may be embodied in the form of a computer software product stored in a storage medium, the computer software product including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to perform all or part of the steps of the methods described in the embodiments of the present application. The foregoing storage media may include, but are not limited to: various media capable of storing program codes, such as a U disk, a removable hard disk, a ROM, a RAM, a magnetic disk, or an optical disk.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein in the description of the present application is for the purpose of describing particular embodiments only and is not intended to be limiting of the application.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (26)

1. A Wi-Fi chip is characterized in that the Wi-Fi chip comprises a processor supporting a Wi-Fi protocol and M first-in first-out (FIFO) queues connected with the processor, wherein the M FIFO queues comprise a first FIFO queue and a second FIFO queue, and the first FIFO queue comprises a voice stream (VO) queue, a video stream (VI) queue, a best effort stream (BE) queue and a background stream (BK) queue;
the processor is used for scheduling the message to be transmitted to an FIFO queue corresponding to the service type of the message to be transmitted in the M FIFO queues;
the M FIFO queues are respectively used for caching the messages scheduled by the processor and sequentially outputting the cached messages from high to low according to the queue priority;
the priority of the second FIFO queue is higher than that of each queue in the first FIFO queue, and the messages cached in the second FIFO queue are messages of a preset service type.
2. The Wi-Fi chip of claim 1, wherein the processor is further configured to:
identifying the service type of the message to be transmitted according to the quintuple information of the message to be transmitted;
determining an FIFO queue corresponding to the service type of the message to be transmitted according to a preset corresponding relation;
the preset corresponding relation is the corresponding relation between the service type of the message to be transmitted and one of the M FIFO queues, and the quintuple information comprises a source physical MAC address, a destination MAC address, a source IP address, a destination IP address and a port number.
3. The Wi-Fi chip of claim 1 or claim 2, further comprising a transceiver coupled to the M FIFO queues;
and the transceiver is used for transmitting the messages sequentially output by the M FIFO queues to target equipment through a Wi-Fi channel.
4. The Wi-Fi chip of claim 3,
the Wi-Fi chip is arranged on wireless access point AP equipment, and the target equipment is station STA equipment; alternatively, the first and second liquid crystal display panels may be,
the Wi-Fi chip is arranged on a first STA device, and the target device is an AP device or a second STA device.
5. The Wi-Fi chip of claim 3 or 4,
the transceiver is further configured to transmit quintuple information of the packet to be transmitted to the target device.
6. The Wi-Fi chip of any of claims 1-5, wherein the Enhanced Distributed Channel Access (EDCA) parameters for the second FIFO queue comprise an arbitration frame gap number (AIFSN), a transmission opportunity limit (TXOPL), a minimum contention window exponential form (ECW)minAnd maximum contention window index form ECWmax
Wherein the value of AIFSN is set to be less than or equal to a preset gap number threshold; and/or the value of the TXOPL is set to be less than or equal to a preset transmission opportunity threshold; and/or, the ECWminIs set to be less than or equal to a preset minimum window threshold; and/or, the ECWmaxIs set to be less than or equal to a preset maximum window threshold.
7. The Wi-Fi chip of any one of claims 1 to 6, wherein a bandwidth occupancy of a Wi-Fi air interface corresponding to the second FIFO queue is greater than or equal to a preset bandwidth occupancy threshold.
8. The Wi-Fi chip of any one of claims 1 to 7, wherein a maximum rate of messaging corresponding to the second FIFO queue is set to be less than or equal to a preset rate threshold.
9. The Wi-Fi chip of any one of claims 1 to 8, wherein a degree of aggregation of Wi-Fi air interface packets corresponding to the second FIFO queue is set to be less than or equal to a preset threshold value of degree of aggregation.
10. The Wi-Fi chip of any one of claims 1 to 9, wherein, if the second FIFO queue comprises a plurality of FIFO queues, a priority of at least one queue of the plurality of FIFO queues is higher than a priority of each queue of the first FIFO queue; wherein the BK queue, the BE queue, the VI queue and the VO queue in the first FIFO queue have sequentially increasing priorities.
11. A Wi-Fi device applied to a station, STA, side, characterized in that the Wi-Fi device comprises a Wi-Fi chip according to any one of claims 1 to 10;
the Wi-Fi device is to:
responding to the input operation of a user on a first application loaded in the Wi-Fi equipment, and generating or calling a message to be transmitted corresponding to the first application;
and sending the message to be transmitted to wireless access point AP equipment or other Wi-Fi equipment through the Wi-Fi chip.
12. A Wi-Fi device applied to an AP side of a wireless access point, wherein the Wi-Fi device comprises the Wi-Fi chip of any one of claims 1 to 10;
The Wi-Fi device is to:
forwarding the message received from the STA equipment of the first station to the second STA equipment through the Wi-Fi chip; alternatively, the first and second electrodes may be,
forwarding the message received from the first STA equipment to a network server through the Wi-Fi chip; and/or forwarding the message received from the network server to the first STA equipment through the Wi-Fi chip.
13. A method for queue scheduling, the method comprising:
scheduling a message to be transmitted to an FIFO queue corresponding to the service type of the message to be transmitted in M FIFO queues;
sequentially outputting the messages cached in the M FIFO queues from high to low according to the queue priority;
the M FIFO queues comprise a first FIFO queue and a second FIFO queue, and the first FIFO queue comprises a voice stream VO queue, a video stream VI queue, a best effort stream BE queue and a background stream BK queue; the messages cached in the second FIFO queue are messages of a preset service type, and the priority of the second FIFO queue is higher than that of each queue in the first FIFO queue.
14. The method according to claim 13, wherein before the dispatching the packet to be transmitted to the FIFO queue corresponding to the service type of the packet to be transmitted, the method further comprises:
Identifying the service type of the message to be transmitted;
determining an FIFO queue corresponding to the service type of the message to be transmitted according to a preset corresponding relation;
the preset corresponding relation is the corresponding relation between the service type of the message to be transmitted and one of the M FIFO queues.
15. The method according to claim 14, wherein the identifying the service type of the packet to be transmitted comprises:
acquiring quintuple information of the message to be transmitted;
identifying the service type of the message to be transmitted according to the quintuple information of the message to be transmitted;
the quintuple information comprises a source physical MAC address, a destination MAC address, a source IP address, a destination IP address and a port number.
16. The method according to any one of claims 13 to 15, wherein after sequentially outputting the buffered packets in the M FIFO queues according to the queue priority from high to low, the method further comprises:
and transmitting the messages sequentially output by the M FIFO queues to target equipment through a Wi-Fi channel.
17. The method according to claim 16, wherein the transmitting the packets sequentially output from the M FIFO queues to a target device via a Wi-Fi channel comprises:
The wireless access point AP equipment transmits the messages sequentially output by the M FIFO queues to the station STA equipment through a Wi-Fi channel; alternatively, the first and second liquid crystal display panels may be,
and the first station STA equipment transmits the messages sequentially output by the M FIFO queues to the AP equipment or the second STA equipment through a Wi-Fi channel.
18. The method according to any one of claims 13 to 17, further comprising:
the method comprises the steps that AP equipment receives quintuple information of a message to be transmitted, which is sent by STA equipment, identifies the service type of the message to be transmitted according to the quintuple information of the message to be transmitted, and determines an FIFO queue corresponding to the service type of the message to be transmitted according to a preset corresponding relation;
the preset corresponding relation is the corresponding relation between the service type of the message to be transmitted and one of the M FIFO queues.
19. The method according to any one of claims 13 to 18, wherein the EDCA parameters corresponding to the second FIFO queue include an arbitration frame gap number AIFSN, a transmission opportunity limit TXOPL, a minimum contention window exponential form ECWminAnd maximum contention window index form ECWmax
Wherein the value of AIFSN is set to be less than or equal to a preset gap number threshold; and/or the value of the TXOPL is set to be less than or equal to a preset transmission opportunity threshold; and/or, the ECW minIs set to be less than or equal to a preset minimum window threshold; and/or, the ECWmaxIs set to be less than or equal to a preset maximum window threshold.
20. The method according to any of claims 13 to 19, wherein the maximum rate of packet transmission for the second FIFO queue is set to be less than or equal to a preset rate threshold.
21. The method according to any one of claims 13 to 20, wherein a bandwidth occupancy of a Wi-Fi air interface corresponding to the second FIFO queue is set to be greater than or equal to a preset bandwidth occupancy threshold.
22. The method according to any one of claims 13 to 21, wherein a degree of aggregation of Wi-Fi air interface packets corresponding to the second FIFO queue is set to be less than or equal to a preset threshold value of degree of aggregation.
23. The method according to any one of claims 13 to 22, wherein in the case where the second FIFO queue comprises a plurality of FIFO queues, the priority of at least one of the second FIFO queues is higher than the priority of each of the first FIFO queues; wherein the priorities of the BK queue, the BE queue, the VI queue and the VO queue are sequentially increased.
24. A Wi-Fi apparatus comprising a processor coupled with a memory, the processor to execute a computer program or instructions stored in the memory to cause the Wi-Fi apparatus to implement the method of any of claims 13-23.
25. A computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program which, when run on a Wi-Fi device, causes the Wi-Fi device to perform the method of any one of claims 13 to 23.
26. A computer program product, characterized in that the computer program product comprises a computer program which, when executed by a computer, causes the computer to carry out the method according to any one of claims 13 to 23.
CN202110308193.7A 2020-10-14 2021-03-23 Wi-Fi chip, Wi-Fi equipment and queue scheduling method Pending CN114430591A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP21879238.0A EP4213446A4 (en) 2020-10-14 2021-09-26 Wifi chip, wifi device and queue scheduling method
PCT/CN2021/120698 WO2022078192A1 (en) 2020-10-14 2021-09-26 Wifi chip, wifi device and queue scheduling method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2020111011895 2020-10-14
CN202011101189 2020-10-14

Publications (1)

Publication Number Publication Date
CN114430591A true CN114430591A (en) 2022-05-03

Family

ID=81309979

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110308193.7A Pending CN114430591A (en) 2020-10-14 2021-03-23 Wi-Fi chip, Wi-Fi equipment and queue scheduling method

Country Status (1)

Country Link
CN (1) CN114430591A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115242726A (en) * 2022-07-27 2022-10-25 阿里巴巴(中国)有限公司 Queue scheduling method and device and electronic equipment
CN116016362A (en) * 2023-03-28 2023-04-25 北京六方云信息技术有限公司 Flow control method, device, terminal equipment and storage medium
CN116095019A (en) * 2022-08-19 2023-05-09 荣耀终端有限公司 Route processing method, device, equipment and storage medium

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115242726A (en) * 2022-07-27 2022-10-25 阿里巴巴(中国)有限公司 Queue scheduling method and device and electronic equipment
CN115242726B (en) * 2022-07-27 2024-03-01 阿里巴巴(中国)有限公司 Queue scheduling method and device and electronic equipment
CN116095019A (en) * 2022-08-19 2023-05-09 荣耀终端有限公司 Route processing method, device, equipment and storage medium
CN116095019B (en) * 2022-08-19 2024-03-26 荣耀终端有限公司 Route processing method, device, equipment and storage medium
CN116016362A (en) * 2023-03-28 2023-04-25 北京六方云信息技术有限公司 Flow control method, device, terminal equipment and storage medium

Similar Documents

Publication Publication Date Title
KR101354130B1 (en) Method for transmitting and receiving the frame in wireless LAN
WO2022078192A1 (en) Wifi chip, wifi device and queue scheduling method
CN114430591A (en) Wi-Fi chip, Wi-Fi equipment and queue scheduling method
JP2009105989A (en) Access point having selective communication speed, scheduling control, and related method relating to wireless local area network (wlan)
Memon et al. A survey on 802.11 MAC industrial standards, architecture, security & supporting emergency traffic: Future directions
US20200374907A1 (en) Method and apparatus for reporting quantity of data for direct-link transmission in a wireless network
US20070047563A1 (en) Priority queuing of frames in a TDMA network
TWI795089B (en) A device and a method for scheduling data transmission
US9253792B2 (en) Method and apparatus of frame scheduling in wireless local area network system
CN106332153B (en) Bandwidth control method and device in WLAN
US11368940B2 (en) Systems and methods for data transmission over Wi-Fi and LTE-U coexistence framework
Ahemd et al. QoS and Admission Controller in IEEE 802.11 e WLAN
CN114513861A (en) System and method for priority channel access for 802.11ax clients in BSS with hybrid clients
Ni et al. QoS support for IEEE 802.11 Wireless LAN
GB2582027A (en) Backoff management for EDCA transmission in 802.11AX networks
WO2021179918A1 (en) Method and apparatus for priority transmission of wlan frames
Rathnakar Acharya et al. WLAN QoS issues and IEEE 802.11 e QoS enhancement
Yu et al. Distributed resource reservation mechanism for IEEE 802.11 e-based networks
Farooq et al. Implementation and Evaluation of IEEE 802.11 e Wireless LAN in GloMoSim
WO2024021860A1 (en) Data transmission method and apparatus, storage medium, and program product
Visoottiviseth et al. Adaptive bandwidth allocation for per-station fairness on wireless access router
WO2024009399A1 (en) Transmission station and transmission method
US20240137324A1 (en) Uplink transmission method in wireless local area network (wlan) and station device
Hasan Performance enhancement of the EDCA protocol for the channel access in next generation IEEE 802.11 AX WLAN
Gangaprasad et al. Throughput Performance of 802.11 e for Different Versions of Wi-Fi Standard

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination