CN114765742B - Multicast communication method, device and related equipment - Google Patents

Multicast communication method, device and related equipment Download PDF

Info

Publication number
CN114765742B
CN114765742B CN202110038501.9A CN202110038501A CN114765742B CN 114765742 B CN114765742 B CN 114765742B CN 202110038501 A CN202110038501 A CN 202110038501A CN 114765742 B CN114765742 B CN 114765742B
Authority
CN
China
Prior art keywords
data frame
sta
data
frame
identifier
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.)
Active
Application number
CN202110038501.9A
Other languages
Chinese (zh)
Other versions
CN114765742A (en
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 CN202110038501.9A priority Critical patent/CN114765742B/en
Publication of CN114765742A publication Critical patent/CN114765742A/en
Application granted granted Critical
Publication of CN114765742B publication Critical patent/CN114765742B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/04Error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • H04W28/14Flow control between communication endpoints using intermediate storage

Abstract

The embodiment of the application discloses a multicast communication method, which is applied to the field of communication. The AP multicasts X data frames to N STAs, wherein the X data frames comprise a first data frame, the first data frame comprises a first serial number SN of an MAC layer, the N STAs comprise the first STAs, N and X are integers more than 0, and the AP caches the X data frames in a cache queue of the MAC layer; the AP receives a feedback frame from the first STA, wherein the feedback frame comprises a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of a first data frame; and the AP sends a first data frame to the first STA according to the first identifier. The AP caches the first data frame at the MAC layer, and the STA establishes a cache queue behind the MAC layer, thereby realizing a cross-layer retransmission mechanism. Therefore, the change of the MAC layer of the STA is reduced, and the realization is simple.

Description

Multicast communication method, device and related equipment
Technical Field
The present application relates to the field of communications, and in particular, to a multicast communication method, apparatus, and related device.
Background
Multicast transmissions typically use a Best Effort technique which does not require acknowledgement by the receiving device and is therefore unreliable.
To solve this problem, a multicast to unicast technique may be used. The specific process is as follows: a MAC Address (Media Access Control Address) of a multicast group and MAC addresses of stations (Station, STA) belonging to the multicast group are recorded in a wireless Access Point (AP). When the AP receives the data frame, whether the MAC address is a multicast MAC address or not is analyzed. And when the MAC address is a multicast address, copying the data frame once for each STA in the multicast group, changing the MAC address of the copied data frame into the MAC address of the corresponding STA, and transmitting the data frame through a unicast interface. Because the unicast transmission has a feedback and retransmission mechanism, the transmission of the multicast service is guaranteed.
However, for each more STA in the multicast group, the unicast transmission needs to occupy twice more bandwidth, thereby occupying a large amount of bandwidth resources.
Disclosure of Invention
The application provides a multicast communication method, a device and related equipment, which can save bandwidth resources on the premise of improving the reliability of multicast transmission. Moreover, the change of the MAC layer of the STA can be reduced, and the realization is simple.
A first aspect of the present application provides a method of multicast communication. The method comprises the following steps: the wireless access point AP multicasts X data frames to the N stations STA. The X data frames include a first data frame including a first Sequence Number (SN) of the MAC layer. The N STAs include a first STA, and N and X are integers greater than 0. The AP buffers X data frames in a buffer queue of the MAC layer. The AP receives a feedback frame from the first STA, the feedback frame including a first identification. The first Identifier is obtained from a first Identifier (ID) of an IP layer of the first data frame. And the AP sends a first data frame to the first STA according to the first identifier. The first identifier is obtained according to the first ID, which can be understood as that the first identifier is the first ID, or the first identifier is obtained according to the first ID and a mapping relation, where the mapping relation is used to characterize a corresponding relation between the SN and the ID.
According to the method and the device, the bandwidth resource is saved on the basis of ensuring the reliability of multicast transmission by a mode of multicast transmission and feedback retransmission. And the AP buffers the first data frame at the MAC layer, and the STA establishes a buffer queue behind the MAC layer, thereby realizing a cross-layer retransmission mechanism. Therefore, the change of the MAC layer of the STA is reduced, and the realization is simple.
In an optional manner of the first aspect, the first identifier is a first ID, and the method further includes: and the AP obtains a first SN according to the first ID and the mapping relation, and the mapping relation is used for representing the corresponding relation between the SN and the ID. The AP transmits a data frame including a first SN to the first STA. In the present application, since a cross-layer retransmission mechanism is adopted, there is a problem of ID and SN conversion, that is, a mapping relationship is required. In practical applications, the AP may convert the ID into the SN, or the STA may convert the ID into the SN. The application limits the maintenance of mapping relations by the AP and converts IP into SN. Because the AP generally needs to serve multiple STAs, only one mapping is needed to be maintained by the AP. Compared with the mode that a plurality of STAs maintain a mapping relation respectively, the storage space can be saved, and the cost is reduced.
In an optional manner of the first aspect, the AP receives M feedback frames sent by M STAs, where each feedback frame includes a first identifier, the N STAs includes M STAs, the M STAs and the M feedback frames are in one-to-one correspondence, the M STAs includes a first STA, and M is an integer greater than 0 and less than or equal to N. If M is or
Figure BDA0002894380550000021
If the value is greater than the first threshold value, the AP multicasts a data frame comprising the first SN to the N STAs. When more STAs in the N STAs lose the same data frame, multicast retransmission is adopted, and transmission resources are saved.
In an alternative form of the first aspect, the method further comprises: and the AP obtains the average packet loss rate of the N STAs according to the M feedback frames. And the AP determines the rate of multicasting the first data frame to the N STAs according to the average packet loss rate. The AP is provided with a mapping table of an average packet loss rate and a transmission rate. And the AP adopts corresponding transmission rate according to different average packet loss rates. When the average packet loss rate is too high, the AP transmits a first data frame at a lower rate; and when the average packet loss rate is lower, the AP transmits the first data frame at a higher speed. Therefore, multicast retransmission efficiency can be improved.
In an alternative form of the first aspect, if M or
Figure BDA0002894380550000022
Less than or equal to the first threshold, the AP unicasts the first data frame to the M STAs. When the smaller STA of the N STAs loses the same data frame, unicast retransmission is adopted, and retransmission efficiency is improved.
In an optional manner of the first aspect, the AP obtains M packet loss rates of the M STAs according to the M feedback frames, where the M packet loss rates correspond to the M STAs one to one. And the AP determines the rate of unicasting the first data frame to the M STAs according to the M packet loss rates. The AP is provided with a mapping table of average packet loss rate and transmission rate so as to improve unicast retransmission efficiency.
In an alternative form of the first aspect, the method further comprises: and the AP sends a retransmission prompt to the first STA, wherein the retransmission prompt is used for prompting the first STA to send a feedback frame to the AP when the first data frame is lost. In practical applications, not all multicast service data need to be fed back and retransmitted. Therefore, when the AP multicasts the service data whose reliability needs to be guaranteed, the AP sends a retransmission prompt to the first STA to inform that the first STA can request the AP to perform data retransmission when the data is lost. Therefore, the method and the device improve the adaptability to different service data.
In an optional manner of the first aspect, the AP sends the retransmission hint to the first STA through five-tuple information of the first data frame. The AP needs to distinguish which multicast service data needs to be fed back and retransmitted, and which multicast service data does not need to be fed back and retransmitted. For the service data which needs to be fed back and retransmitted, the AP needs to perform buffering. Through the five-tuple information, such as the source IP address, or the destination port, the AP determines which multicast service data needs to be retransmitted for feedback. Therefore, the AP is prevented from caching the service data which does not need to be fed back and retransmitted, and the storage space of the AP is further saved.
In an alternative form of the first aspect, the method further comprises: and when the buffering duration of the first data frame in the buffering queue reaches the first duration, the AP releases the first data frame. Wherein for some classes of first data frames, for example, a video live or a video conference. If the buffering time of the first data frame reaches the first time length, the AP requests to retransmit the first data frame even if the AP subsequently receives the feedback frame of the STA. Since the first duration is exceeded, the application layer of the STA discards the first data frame after receiving it. Therefore, the first data frame is released, so that transmission resources can be saved, and useless data frames are prevented from being transmitted.
A second aspect of the present application provides a method of multicast communication. The method comprises the following steps: the first STA receives X-1 data frames multicast by the AP, wherein X is an integer larger than 1. After the MAC layer processes the X-1 data frames, the first STA buffers the X-1 data frames in a buffer queue. And if the first data frame is missed in the cache queue, the first STA sends a feedback frame to the AP, wherein the feedback frame comprises a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame. The first STA receives a first data frame sent by the AP.
According to the method and the device, the bandwidth resource is saved on the basis of ensuring the reliability of multicast transmission by a mode of multicast transmission and feedback retransmission. And the STA establishes a buffer queue behind the MAC layer, thereby reducing the change on the MAC layer and being simple to realize.
In an alternative form of the second aspect, the first identifier is a first ID. In the present application, since a cross-layer retransmission mechanism is adopted, there is a problem of ID and SN conversion, that is, a mapping relationship is required. In practical applications, the AP may convert the ID into the SN, or the STA may convert the ID into the SN. The application limits the maintenance of mapping relations by the AP and converts IP into SN. The AP generally needs to serve multiple STAs, and only one mapping relationship needs to be maintained when the AP maintains the mapping relationship. Compared with the mode that a plurality of STAs maintain a mapping relation respectively, the storage space can be saved, and the cost is reduced.
In an alternative form of the second aspect, the method further comprises: the first STA submits X data frames (in-order submission for short) to the IP layer according to the ID sequence, wherein the X data frames comprise a first data frame and X-1 data frames, and the first data frame is a data frame to be submitted. And if the ID of the data frame received by the first STA is equal to the first ID, submitting the received data frame to the IP layer by the first STA, and updating the data frame to be submitted. When the ID of the data frame is equal to the first ID, the data frame is indicated as the first data frame. If the first STA does not submit in sequence, the first STA may consider the actual uncommitted data frame as having submitted and does not feed back to the AP, resulting in the data frame being lost, thereby affecting the user experience. Therefore, the user experience can be improved by submitting the data in the whole order.
In an optional manner of the second aspect, if an ID of a target data frame received by a first STA is not equal to the first ID and the buffer queue does not include the target data frame, the first STA buffers the target data frame in the buffer queue.
In an alternative form of the second aspect, the X-1 data frames include a second data frame that is not a to-be-committed data frame. The method further comprises the following steps: and if the caching duration of the second data frame in the caching queue reaches a second duration, the first STA submits the second data frame to the IP layer. Wherein for some classes of first data frames, for example, a video live or a video conference. If the buffering time of the second data frame reaches a certain threshold, the application layer of the STA discards the second data frame after receiving the second data frame. Therefore, even if the second data frame is not a data frame to be submitted, the STA needs to submit the second data frame to the IP layer in time within a certain threshold. And the second data frame is avoided to be missed under the condition that the data frame in front of the second data frame is missed, so that the user experience is further reduced.
In an alternative form of the second aspect, the X-1 data frames include a third data frame, the third data frame not being a data frame to be submitted. The method further comprises the following steps: and if the caching duration of the third data frame in the caching queue reaches the third duration, the first STA submits the third data frame to the IP layer. The third data frame is an I frame, the second data frame is a B frame or a P frame, and the third duration is greater than the second duration. Where I-frames can be decoded separately, P-frames need to be dependent on previous and following frames. And when the third duration is longer than the second duration, the I frame obtains more retransmission opportunities, so that the opportunity that the first STA obtains the I frame is improved, and the user experience is improved.
In an optional manner of the second aspect, the first STA sends the feedback frame to the AP when the first STA receives a retransmission prompt sent by the AP.
A third aspect of the present application provides a multicast communication system. The system comprises: an AP and N STAs. The AP is configured to multicast X data frames to N STAs, where the X data frames include a first data frame, the first data frame includes a first sequence number SN of an MAC layer, the N STAs include a first STA, N is an integer greater than 0, and X is an integer greater than 1. The AP caches X data frames in a cache queue of the MAC layer;
the first STA is used for receiving X-1 data frames sent by the AP, caching the X-1 data frames in a cache queue after the X-1 data frames are processed by the MAC layer, and sending a feedback frame to the AP if the cache queue lacks the first data frames, wherein the feedback frame comprises a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame;
the AP is used for sending a first data frame to the first STA according to the first identifier;
the first STA is configured to receive a first data frame.
In an optional manner of the third aspect, the first identifier is a first ID. The AP is further used for obtaining a first SN according to the first ID and the mapping relation, and the mapping relation is used for representing the corresponding relation between the SN and the ID. The AP is specifically configured to send a data frame including the first SN to the first STA.
In an optional manner of the third aspect, the AP is specifically configured to receive M feedback frames sent by M STAs, where each feedback frame includes a first ID, each of the N STAs includes M STAs, the M STAs and the M feedback frames are in one-to-one correspondence, and the M STAs include a first STA, and M is an integer greater than 0 and less than or equal to N. AP is specifically applied to if M or
Figure BDA0002894380550000041
If the value is larger than the first threshold value, the data frame comprising the first SN is multicast to the N STAs.
In an optional manner of the third aspect, the AP is further configured to send a retransmission hint to the first STA. The first STA is specifically configured to send a feedback frame to the AP when the retransmission alert is received.
In an optional manner of the third aspect, when the buffering duration of the first data frame in the buffer queue reaches a first duration, the AP is further configured to release the first data frame.
In an optional manner of the third aspect, the first STA is further configured to submit X data frames to the IP layer according to the ID sequence, where the first data frame is a data frame to be submitted. The first STA is further configured to submit the received data frame to the IP layer and update the data frame to be submitted if the ID of the received data frame is equal to the first ID.
In an optional manner of the third aspect, the AP is further configured to obtain an average packet loss rate of the N STAs according to the M feedback frames;
the AP is further configured to determine a rate at which the first data frame is multicast to the N STAs according to the average packet loss rate.
In an optional manner of the third aspect, the AP is further configured to send a retransmission prompt to the first STA, where the retransmission prompt is used to prompt the first STA to send the feedback frame to the AP when the first data frame is lost.
In an optional manner of the third aspect, the X-1 data frames include the second data frame, which is not a data frame to be submitted;
the first STA is further configured to submit the second data frame to an IP layer if a buffering duration of the second data frame in the buffer queue reaches a second duration.
In an optional manner of the third aspect, the X-1 data frames include a third data frame, which is not a data frame to be submitted;
the first STA is further used for submitting the third data frame to an IP layer if the caching duration of the third data frame in the caching queue reaches a third duration;
the third data frame is an I frame, the second data frame is a B frame or a P frame, and the third duration is greater than the second duration.
A fourth aspect of the present application provides a multicast communication apparatus. The multicast communication apparatus includes: a sending module, configured to multicast X data frames to N STAs, where the X data frames include a first data frame, the first data frame includes a first serial number SN of an MAC layer, the N STAs include a first STA, N and X are integers greater than 0, and the device caches the X data frames in a cache queue of the MAC layer;
a receiving module, configured to receive a feedback frame from the first STA, where the feedback frame includes a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame;
the sending module is further configured to send the first data frame to the first STA according to the first identifier. The multicast communication device may be a Media Access Control (MAC) chip or a baseband chip. Or a device including both the MAC chip and the baseband chip, for example, a WiFi chip including the MAC chip and the baseband chip may be used.
In an optional manner of the fourth aspect, the first identifier is the first ID, and the apparatus further comprises:
the processing module is used for obtaining the first SN according to the first ID and a mapping relation, and the mapping relation is used for representing the corresponding relation between the SN and the ID;
the sending module is specifically configured to send a data frame including the first SN to the first STA. In an optional manner of the fourth aspect, the receiving module is specifically configured to receive M feedback frames sent by M STAs, where each feedback frame includes the first identifier, the N STAs includes the M STAs, the M STAs includes the first STA, and M is an integer greater than 0 and less than or equal to N;
the sending module is specifically configured to send the message if M or
Figure BDA0002894380550000051
If the SN is greater than the first threshold, the data frame comprising the first SN is multicast to the N STAs.
In an optional manner of the fourth aspect, the processing module is specifically configured to obtain an average packet loss rate of the N STAs according to the M feedback frames;
the processing module is further configured to determine a rate at which the first data frame is multicast to the N STAs according to the average packet loss rate.
In an optional manner of the fourth aspect, the sending module is further configured to send a retransmission prompt to the first STA, where the retransmission prompt is used to prompt the first STA to send the feedback frame to the apparatus when the first data frame is lost.
In an optional manner of the fourth aspect, the processing module is further configured to release the first data frame when a buffering duration of the first data frame in the buffering queue reaches a first duration.
A fifth aspect of the present application provides a multicast communication apparatus. The multicast communication apparatus includes: the receiving module is used for receiving X-1 data frames multicast by the AP, wherein X is an integer larger than 1;
the processing module is used for caching the X-1 data frames in a cache queue after the X-1 data frames are processed by the MAC layer;
a sending module, configured to send a feedback frame to the AP if the cache queue misses a first data frame, where the feedback frame includes the first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame;
the receiving module is further configured to receive the first data frame sent by the AP.
The multicast communication device may be a Media Access Control (MAC) chip or a baseband chip. Or a device including both the MAC chip and the baseband chip, for example, a WiFi chip including the MAC chip and the baseband chip may be used.
In an alternative form of the fifth aspect, the first identifier is the first ID.
In an optional manner of the fifth aspect, the processing module is further configured to submit X data frames to the IP layer according to an ID sequence, where the X data frames include the first data frame and the X-1 data frames, and the first data frame is a data frame to be submitted;
the processing module is further configured to submit the received data frame to an IP layer and update a data frame to be submitted if the ID of the first data frame is equal to the first ID.
In an optional manner of the fifth aspect, the X-1 data frames include the second data frame, which is not a data frame to be submitted;
the processing module is further configured to submit the second data frame to an IP layer if the buffering duration of the second data frame in the buffer queue reaches a second duration.
In an optional manner of the fifth aspect, the X-1 data frames include a third data frame, which is not a data frame to be submitted;
the processing module is further configured to submit the third data frame to an IP layer if a buffering duration of the third data frame in the buffer queue reaches a third duration;
the third data frame is an I frame, the second data frame is a B frame or a P frame, and the third duration is greater than the second duration.
In an optional manner of the fifth aspect, the sending module is specifically configured to, when the apparatus receives a retransmission prompt sent by the AP, send the feedback frame to the AP by the first STA.
A sixth aspect of the present application provides an AP. The AP comprises: a processor and a transceiver;
the transceiver is used for multicasting X data frames to N Stations (STA), wherein the X data frames comprise a first data frame, the first data frame comprises a first Serial Number (SN) of an MAC layer, the N STAs comprise the first STA, N and X are integers larger than 0, and the AP caches the X data frames in a cache queue of the MAC layer;
the transceiver is further configured to receive a feedback frame from the first STA, where the feedback frame includes a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of a first data frame;
the processor is used for reading a first identifier in the feedback frame;
the sending module is further configured to send the first data frame to the first STA according to the first identifier.
A seventh aspect of the present application provides a STA. The STA comprises: a processor and a transceiver;
the transceiver is used for receiving X-1 data frames multicast by the AP, wherein X is an integer greater than 1;
the processor is used for caching the X-1 data frames in the cache queue after the X-1 data frames are processed in the MAC layer;
the transceiver is further configured to send a feedback frame to the AP if the buffer queue misses the first data frame, where the feedback frame includes a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame;
the transceiver is further configured to receive a first data frame transmitted by the AP.
An eighth aspect of the present application provides a digital processing chip, where the chip includes a processor and a memory, the memory and the processor are interconnected by a line, and the memory stores instructions, and the processor is configured to execute the method according to the first aspect or any one of the embodiments of the first aspect, or the method according to the second aspect or any one of the embodiments of the second aspect.
A ninth aspect of the present application provides a computer storage medium having stored thereon instructions that, when executed on a computer, cause the computer to perform the method according to the first aspect or any one of the embodiments of the first aspect, or cause the computer to perform the method according to the second aspect or any one of the embodiments of the second aspect.
A tenth aspect of the present application provides a computer program product, which, when executed on a computer, causes the computer to perform the method according to the first aspect or any one of the embodiments of the first aspect, or causes the computer to perform the method according to the second aspect or any one of the embodiments of the second aspect.
Drawings
FIG. 1 is a schematic diagram of a network framework for converting multicast to unicast;
FIG. 2 is a schematic diagram of a network framework provided in an embodiment of the present application;
fig. 3 is a schematic flowchart of a multicast communication method provided in an embodiment of the present application;
fig. 4 is a schematic structural diagram of a protocol stack provided in an embodiment of the present application;
fig. 5 is a schematic structural diagram of a cache queue of an AP provided in an embodiment of the present application;
fig. 6 is a schematic structural diagram of a buffer queue of an STA provided in an embodiment of the present application;
fig. 7 is a schematic structural diagram of a feedback frame provided in an embodiment of the present application;
fig. 8 and fig. 9 are schematic structural diagrams of the feedback unit Info provided in the embodiment of the present application;
fig. 10 is another schematic flow chart of a multicast communication method provided in an embodiment of the present application;
fig. 11 is a diagram illustrating MAC address translation provided in an embodiment of the present application;
fig. 12 is a schematic structural diagram of a multicast communication apparatus provided in an embodiment of the present application;
fig. 13 is another schematic structural diagram of a multicast communication apparatus provided in an embodiment of the present application;
fig. 14 is a schematic structural diagram of a computer device provided in an embodiment of the present application.
Detailed Description
The application provides a multicast communication method, a device and related equipment, which can save bandwidth resources on the premise of improving the reliability of multicast transmission. Moreover, the change of the MAC layer of the STA can be reduced, and the realization is simple. It should be understood that the features or contents identified by broken lines in the drawings of the embodiments of the present application can be understood as optional operations or optional structures of the embodiments of the present application. In the description of the embodiments of the present application, the terms "first," "second," and the like, are used for descriptive purposes only and are not to be construed as indicating or implying relative importance, nor order.
The multicast communication method provided by the application can be applied to a Wireless Local Area Network (WLAN). WLAN is a computer local area network using wireless channel as transmission medium, and is an important complement and extension of wired networking. The basic network structure includes network devices such as stations (STA, station), access Points (AP), access Control points (AC), and the like. The AP serves to connect the STA with an existing wired or wireless network. The STA may be a computer equipped with a wireless network card, a smart phone with a wireless module, a tablet computer, an internet of things terminal device, or a handheld device, a vehicle-mounted device, a wearable device, a computing device and other terminal devices with a wireless communication function.
An AP is typically connected to multiple STAs. For many multicast services, such as video applications, the AP may send data frames to multiple STAs simultaneously in a multicast manner. But is not reliable because the multicast data frame does not require acknowledgement by the STA. To solve this problem, a multicast to unicast technique may be employed.
Specifically, fig. 1 is a schematic diagram of a network framework for converting multicast to unicast. As shown in fig. 1, the AP101 is connected to STAs 102 and 103. The AP1010 records the MAC address of the multicast group and the MAC addresses of STAs belonging to the multicast group. The MAC addresses of both STA102 and STA103 belong to the multicast group, or STA102 and STA103 belong to the multicast group. After the AP101 receives the data frame, the AP101 analyzes whether the MAC address of the data frame is a multicast MAC address. When the MAC address is a multicast address, the data frame is also referred to as a multicast frame. The AP101 copies the data frame to obtain a copied data frame. The AP101 modifies the MAC address of the copied multicast frame to the MAC address of the STA102, and invokes a unicast frame processing flow to perform unicast transmission. After that, the AP101 copies the data frame again, modifies the MAC address of the copied data frame to the MAC address of the STA103, and performs unicast transmission. Because the unicast transmission has a feedback and retransmission mechanism, the transmission of the multicast service is guaranteed.
However, a larger bandwidth is required to be occupied when multicast transmission is converted into unicast transmission, and if there are N STAs in a multicast group, newly transmitted data of a multicast service needs to occupy N times of bandwidth, which greatly affects the transmission efficiency of the multicast service. And due to bandwidth limitation, the method can only support a small number of multicast users. The data that the AP transmits to the STA for the first time is called new data, and the data that the AP retransmits to the STA according to the feedback of the STA is called retransmission data.
Therefore, the application provides a multicast communication method. Specifically, fig. 2 is a schematic diagram of a network framework provided in an embodiment of the present application. As shown in fig. 2, AP201 is connected to STA202 and STA 203. After the AP201 receives the multicast frame, the AP201 multicasts X data frames to N STAs in a multicast manner, where the N STAs include the STA202 and the STA203, and the X data frames include the first data frame. Before the AP201 multicasts the first data frame, the AP201 buffers the first data frame in a buffer queue of the MAC layer. Therefore, if the AP201 receives a feedback frame with a first identifier sent by a certain STA (e.g., the STA 202), the AP201 sends a first data frame corresponding to the first identifier to the STA 202.
According to the method and the device, the bandwidth resource is saved on the basis of ensuring the reliability of multicast transmission by a mode of multicast transmission and feedback retransmission. And, the first identifier is obtained according to the first ID of the first data frame, that is, the STA202 establishes a buffer queue after the MAC layer, and the AP201 establishes a buffer queue at the MAC layer, thereby implementing a cross-layer retransmission mechanism. Therefore, the change of the MAC layer of the STA is reduced, and the realization is simple.
It should be noted that fig. 2 is only an example for understanding the technical solution of the present application, and should not be taken as a basis for limiting the scope of the present application. For example, in practical applications, the AP201 may be connected to only one STA; alternatively, the AP201 is not a smartphone, but a smart band.
The multicast communication method provided by the present application is described below. Fig. 3 is a flowchart illustrating a multicast communication method provided in an embodiment of the present application.
In step 301, the AP buffers X data frames in the buffer queue of the MAC.
The AP receives X data frames from the network before the AP buffers the X data frames. For example, the AP receives X data frames from a certain STA, or a certain router, switch. X is an integer greater than 0, and the X data frames include a first data frame. After the AP receives the X data frames, it may determine whether the X data frames are multicast frames or unicast frames by identifying destination MAC addresses of the X data frame frames. Specifically, the MAC address is 48 bits in length. The 8 th bit of the destination MAC address of the multicast frame is 1 and the 8 th bit of the destination MAC address of the unicast frame is 0.
After determining that the X data frames are multicast frames, the AP buffers the X data frames in a buffer queue of the MAC layer. As shown in fig. 4, fig. 4 is a schematic structural diagram of a protocol stack provided in this embodiment of the present application. The protocol stack in fig. 4 includes, from top to bottom, an application layer, a transport layer, a network layer (also referred to as an IP layer), a data link (also referred to as a MAC layer), and a physical layer, and the AP passes X received data frames from the upper layer to the lower layer. After the MAC layer receives the data packet of the IP layer, the AP establishes a cache queue of X data frames in the MAC layer. The X data frames include respective SNs.
SN is described in detail below. For example, the 802.11 frame format is specified in the 802.11 related protocol. In a Sequence Control field (SC) of a MAC header of a Data frame, a 12-bit Sequence Number (SN) representing a MAC Service Data Unit (MSDU) or a MAC Management Service Data Unit (MMSDU) and a 4-bit Fragment Number (FN) representing the Number of each Fragment of the MSDU and the MMSDU are composed. Where FN may be understood as a carry of SN. Wherein the first data frame includes a first SN.
In other embodiments, the AP sets X timers for X data frames in the buffer queue. As shown in fig. 5, fig. 5 is a schematic structural diagram of a buffer queue of an AP provided in this embodiment. And the buffer queue of the AP comprises a data frame X-3, a data frame X-2 and a data frame X-1. Data frame X-3 corresponds to timer X-3 in the timer queue, data frame X-2 corresponds to timer X-2, and data frame X-1 corresponds to timer X-1. When a buffer data frame X is newly added in the buffer queue, the AP sets a timer X corresponding to the data frame X. When the timing duration (or the buffering duration of the data frame) of a certain timer is longer than the first duration, the AP releases the data frame corresponding to the timer. In practical applications, the earlier the buffered data frame is buffered, the easier the buffering duration of the buffered data frame reaches the first duration. Therefore, fig. 5 has a dividing line corresponding to the first duration. The data frame before the division line is released by the AP, and the data frame after the division line is not released by the AP.
In other embodiments, the first duration is set in accordance with a maximum tolerated delay of the data frame. For many time-sensitive services, such as live broadcast services, information of a data frame that arrives after exceeding the maximum tolerable delay has lost value, for example, a picture corresponding to the data frame has been skipped. The timeliness may be different for different timeliness services, i.e. the maximum tolerated delay is different. For this reason, the AP may set the corresponding first duration according to its timeliness.
It should be added that the AP in this application may receive one data frame of the X data frames. And buffering the received data frame in the MAC layer while receiving in the receiving process. However, for convenience of description, it will be described that after X data frames are received, X data frames are buffered. Therefore, after receiving X data frames, buffering X data frames should be understood as being buffering while receiving. Similarly, in the following description, the time sequence is also literally defined, and should be actually understood in the above manner.
In addition to caching X data frames, the AP also maintains a mapping relationship, which is a correspondence relationship between SNs and IDs.
The ID is part of the IP header of the IP protocol. Taking the structure of the IPv4 header as an example, the IP header includes an Identifier (ID) field, and the length of the ID field is 16 bits. The ID field is used in combination with a flag (0 Flags) field and a Fragment offset (Fragment offset) field to perform a fragmentation operation on a large upper layer packet. After the AP splits one packet, all the split small packets are marked with the same value, so that the STA can distinguish which data frame belongs to a part of the split packet. The initial value of the ID is random and is incremented by 1 each time a packet is sent. All fragments of the same packet have the same identification value.
In step 302, the AP multicasts X data frames to the first STA.
After caching the X data frames and the mapping relationship, the AP multicasts the X data frames to the N STAs. Wherein the N STAs comprise a first STA. For convenience of description, the first STA will be taken as an example in the following of the present embodiment.
In step 303, the first STA buffers X-1 data frames in a buffer queue.
Since data transmission may be interfered by various factors, the first STA has successfully received only X-1 data frames of the X data frames. The processing flow of the first STA for X-1 data frames is shown in fig. 4. The first STA transfers the received X-1 data frames from the lower layer to the upper layer. After the MAC layer processes the X-1 data frames, the first STA reads the ID of the X-1 data frames and buffers the X-1 data frames in a buffer queue according to the ID. And submit the data frames to the IP layer according to the ID order. It is assumed here that the first data frame is a data frame to be submitted, i.e. the ID of the first data frame is the smallest among the X data frames. Since the first STA needs to submit data frames to the IP layer in the ID order and the first data frame is missing, the first STA buffers the following X-1 data frames.
The first STA sets X-1 timers for X-1 data frames in the buffer queue. The X-1 data frames include a second data frame that is not a to-be-committed data frame. And if the caching duration of the second data frame in the caching queue reaches a second duration, the first STA submits the second data frame to the IP layer. As shown in fig. 6, fig. 6 is a schematic structural diagram of a buffer queue of an STA provided in this embodiment. The missing first data frame is the data frame to be submitted. And the buffer queue of the first STA comprises a data frame X-3, a data frame X-2 and a data frame X-1. Data frame X-3 corresponds to timer X-3 in the timer queue, data frame X-2 corresponds to timer X-2, and data frame X-1 corresponds to timer X-1. The second data frame may be any of the data frames described above. And the timer corresponding to the second data frame is responsible for maintaining the second duration.
In other embodiments, the X-1 data frames further include a third data frame that is also not a to-be-committed data frame. And if the caching duration of the third data frame in the caching queue reaches a third duration, the first STA submits the third data frame to the IP layer. The third data frame is an I frame, the second data frame is a B frame or a P frame, and the third duration is longer than the second duration. For example, the third data frame is any one of the data frames in fig. 6 except the second data.
In other embodiments, the first STA sends the retransmission hint to the AP before receiving X-1 data frames. The retransmission hint characterizes that the first STA may request the AP to retransmit lost data frames when it finds that X data frames are missing some data frames. Therefore, the first STA buffers X-1 data frames in the buffer queue only when receiving the retransmission hint, and determines whether to lose the data frames. For the AP, after receiving X data frames, the AP may determine whether to send a retransmission hint to the first STA according to the five-tuple information in the data frames. The quintuple information refers to one or more of a source IP address, a source port, a destination IP address, a destination port, or a transport layer protocol of the data frame. For example, when the destination port of the data frame is the first port, the AP buffers X data frames in the MAC layer and sends a retransmission hint to the first STA.
In step 304, the first STA acknowledges the missing first data frame.
The first STA establishes a buffer queue for buffering X data frames after the MAC layer, and confirms that the first data frame is lost when only X-1 data frames exist in the buffer queue. Specifically, as can be seen from the processing flow in the protocol stack of fig. 4, after the MAC layer of the first STA processes the data frame, the data frame does not carry the MAC header. Therefore, the data frames in the buffer queue do not include SN. That is, after the MAC layer processes the data frame, the first STA cannot directly read the SN of the data frame. Therefore, the first STA reads the ID of the X-1 data frames, and puts the X-1 data frames into corresponding positions in the buffer queue according to the ID. And when the first STA reads the data frame with the second ID and does not read the data frame with the first ID, the first STA determines that the first data frame is missed. Wherein the second ID is greater than the first ID in case that the flag (0 Flags) fields are the same. Further, since there may be a situation where data frames are received out of order in WLAN transmission, the first STA may determine that the first data frame is lost after the first data frame is lost for a certain time period.
In step 305, the first STA sends a feedback frame to the AP, where the feedback frame includes a first ID corresponding to the first data frame.
Since the first STA does not receive the first data frame, the first ID is not directly derived from the first data frame. But since the first ID is equal to the ID of the IP layer of the first data frame, it can be considered that the first ID is obtained from the IP layer of the first data frame.
In other embodiments, the feedback frame may carry other information in addition to the first ID. Two feedback frames will be described below by taking a bitmap feedback frame using a bitmap feedback mechanism and an efficient feedback frame using an efficient feedback mechanism as examples.
First, the bitmap feedback frame is described. As shown in fig. 7, fig. 7 is a schematic structural diagram of a feedback frame provided in the embodiment of the present application. The feedback Frame includes an 802.11 header field, a Logical Link Control (LLC) header field, an IP header field, a Data (Data) field, and a Frame Check Sequence (FCS) field. In the Data field, a reception Window (receving Window) field, record info field, and Reserved field are included. The receving Window field includes a Start IP ID field. The Record info field includes a bitmap field. Wherein, the multicast IP address is recorded in the IP header field. The Start IP ID field records the ID of the first data frame in error. The bitmap field is a 16-bit bitmap feedback mechanism, with 0 indicating error (or 0 indicating loss) and 1 indicating correct (or 0 indicating reception). For example, the Start IP ID is 100, the bitmap field is 1111 1111 0000 0000. It means that the first STA has lost the data frame with ID 100; the first STA successfully receives the data frames with IDs 101 to 108, and the first STA misses the data frames with IDs 109 to 116.
Second, an efficient feedback frame is described. With continued reference to fig. 7. The difference between the efficient feedback frame and the bitmap feedback frame is that: the bitmap field in the bitmap feedback frame is replaced with the feedback unit Info field. Each feedback unit Info field contains a feedback Type RE Type field and a feedback information RE Info field. Wherein, the RE Type field is 4 bits, and the RE Info field is 12 bits. The feedback types comprise three types of bitmaps, positive offsets and negative offsets, and are used for describing the distribution situation of data frame errors. The feedback information is used to indicate the receiving status of the data frame within the receiving window. The feedback unit Info may select the format shown in fig. 8 and 9. Fig. 8 and 9 are schematic structural diagrams of the feedback unit Info provided in the embodiment of the present application.
As shown in fig. 8, when the RE Type field is 1111, the feedback Type is a bitmap, which indicates that the feedback unit Info is a bitmap feedback mechanism. At this time, each bit in the feedback information RE Info field corresponds to the reception status of one frame, 0 indicates error, and 1 indicates correct. For example, the Start IP ID is 100, the bitmap field is 1111 1100 0000. It means that the first STA has lost the data frame with ID 100; the first STA receives the data frames having IDs 101 to 106, and the first STA misses the data frames having IDs 107 to 112. In practical applications, a bitmap feedback mechanism is generally adopted when the distribution of data frame loss is uniform.
As shown in fig. 8, when the RE Type field is 0001, the feedback Type is a negative offset. The offset1 field in the feedback information RE Info field is an offset, which represents the offset of the next erroneous data frame relative to the Start IP ID field. The Offset2 field is also an Offset value representing an Offset amount of a next erroneous data frame with respect to the Offset1 field, and a data frame corresponding to the Offset value is erroneously received and other data frames are correctly received. For example, start IP ID is 100, offset1 field is 0011, offset2 field is 1111, offset 3 field is 1111, and offset 4 field is 0001. It means that the first STA has lost the data frame with ID 100; the Offset1 field is used to indicate that the first STA received data frames with IDs of 101 to 103 and the first STA lost the data frame with ID of 104; the Offset2 field is used to indicate that the first STA received data frames with IDs 105 to 119 and the first STA lost the data frame with ID 120. The meaning of the Offset 3 field and the Offset 4 field can be derived from the above.
As shown in fig. 8, when the RE Type field is 0001, the feedback Type is a positive offset. The offset1 field in the feedback information RE Info field is an offset, which represents the offset of the next correctly received data frame relative to the Start IP ID field. The Offset2 field is also an Offset value, which represents an Offset amount of a next correctly received data frame relative to the Offset1 field, a data frame corresponding to the Offset value is correctly received, and other data frames are incorrectly received or lost. For example, start IP ID is 100, offset1 field is 0011, offset2 field is 1111, offset 3 field is 1111, and offset 4 field is 0001. It means that the first STA has lost the data frame with ID 100; the Offset1 field is used to indicate that the first STA has lost the data frames with IDs 101 to 103 and correctly received the data frame with ID 104; the Offset2 field is used to indicate that the first STA has lost the data frames with IDs 105 to 119 and correctly received the data frame with ID 120. The meaning of the Offset 3 field and the Offset 4 field can be derived from the above.
The contents of the other RE Type fields in fig. 8 and 9 can be understood by referring to the foregoing contents, and are not described herein again. Through the bitmap feedback frame or the efficient feedback frame, the first STA may periodically feed back the data transmission state to the AP, so that the AP obtains more information, for example, a ratio of lost data frames (packet loss rate for short) of the first STA.
It should be noted that the feedback frame includes the first ID and does not mean that the feedback frame necessarily includes the first ID. For example, in the efficient feedback frame with the positive offset, when the Start IP ID is 100, the offset1 field is 0011, and the offset2 field is 1111, the frame is generated. Assume that the first ID of the first data frame is 106. At this point, 106 is not included in the high efficiency feedback frame. But it can be derived that the first STA missed a data frame with ID 106. Accordingly, it can also be understood that the feedback frame includes the first ID.
In step 306, the AP obtains a first SN according to the first ID and the mapping relationship.
As can be seen from the above description of step 301, the AP maintains a mapping relationship in addition to buffering X data frames. Therefore, after receiving the feedback frame, the AP obtains the first SN of the first data frame according to the first ID and the mapping relationship of the feedback frame.
In step 307, the AP transmits a data frame including the first SN to the first STA.
After the AP obtains the first SN according to the first ID, the AP searches a data frame with the SN of the first SN in the cache queue, and the data frame is the first data frame. Thereafter, the AP transmits a data frame including the first SN to the first STA.
As can be seen from the above description of step 303, a buffer queue is maintained in the first STA. When the ID of the received data frame is equal to the ID of the data frame to be submitted, the first STA submits the data frame to the IP layer. And, the first STA updates the ID of the data frame to be submitted. And when the data frame corresponding to the updated ID already exists in the buffer queue, the first STA continues to submit the data frame to the IP layer. When the ID of the received data frame is not equal to the ID of the data frame to be submitted (the ID of the received data frame is larger than the ID of the data frame to be submitted), if the data frame corresponding to the ID is not included in the cache queue, the first STA caches the data frame; and if the buffer queue comprises the data frame corresponding to the ID, the first STA discards the data frame. Through the mode, the first STA realizes the merging and sequential submission of the newly transmitted data and the retransmitted data.
In step 307 above, the AP may unicast or multicast retransmit the first data frame to the first STA. How the AP selects the transmission mode is described below. As shown in fig. 10, fig. 10 is another schematic flow chart of the multicast communication method provided in this embodiment of the present application.
In step 1001, the AP multicasts X data frames to N STAs.
The step refers to the description in step 301 and step 302.
In step 1002, the AP receives M feedback frames, each of which includes a first ID corresponding to the first data frame.
The M feedback frames include the feedback frame sent by the first STA, where M is an integer greater than 0 and less than or equal to N. The description of any one of the M feedback frames may refer to the description of the feedback frame of the first STA in step 303, step 304, and step 305.
In step 1003, the AP determines whether M or M/N is greater than a first threshold. When M or M/N is larger than the first threshold, executing step 1005; when M or M/N is less than or equal to the first threshold, step 1004 is executed.
In step 1004, the AP unicasts the first data frame to M STAs corresponding to the M feedback frames.
As shown in fig. 11, fig. 11 is a schematic diagram of MAC address translation provided in the embodiment of the present application. Take the first STA as an example. The AP receives a feedback frame sent by the first STA, and the MAC head of the feedback frame comprises a sending address and a destination address. The destination address is the MAC address of the AP and the transmit address is the MAC address of the first STA. After determining to employ unicast retransmission, the first STA copies the first data frame in the buffer queue. Reference may be made to the description of step 306 above as to how the first STA determines the content of the first data frame according to the feedback frame. After copying to the first data frame, the AP takes the transmission address in the feedback frame as the MAC destination address of the first data frame. Similarly, if M is greater than 1, the AP continues to copy the first data frame, replacing the MAC destination address in the first data frame with the unicast MAC address of the STA. After the MAC destination address is converted, the AP unicasts a first data frame to M STAs corresponding to the M feedback frames.
In other embodiments, the AP does not replace the IP address in the first data frame, i.e. the IP address of the retransmitted first data frame is still the multicast IP address. Since the AP buffers the first data frame at the MAC layer, the first data frame in the buffer queue does not include an IP header. If the AP replaces the multicast IP address in the first data frame with the unicast IP address of the STA, the AP needs to add an IP header to the first data frame again. Thereby increasing the transmission delay of the first data frame. In this embodiment of the present application, the IP destination address of the retransmitted first data frame is a multicast IP address, and the MAC destination address is a unicast MAC address.
In step 1005, the AP multicasts the first data frame to the N STAs.
After determining to adopt the multicast retransmission, the AP copies the first data frame in the buffer queue, and multicasts the first data frame to the N STAs. When the AP does not change the MAC destination address of the retransmitted first data frame, the MAC destination address of the first data frame is still the original multicast MAC address. The STAs belonging to the multicast group corresponding to the multicast MAC address can all receive the retransmitted first STA. Among the N STAs, when STAs other than the M STAs receive the retransmitted first data frame, the STA discards the retransmitted first data frame. With respect to the description that the M STAs receive the retransmitted first data frame, reference may be made to the description that the first STA receives the retransmitted first data frame in the foregoing step 307.
In other embodiments, the AP obtains the average packet loss rate of the N STAs according to the M feedback frames. And the AP determines the rate of multicasting the first data frame to the N STAs according to the average packet loss rate. The AP is provided with a mapping table of an average packet loss rate and a transmission rate. And the AP adopts corresponding transmission rate according to different average packet loss rates. When the average packet loss rate is too high, the AP retransmits the first data frame at a lower rate; and when the average packet loss rate is lower, the AP retransmits the first data frame at a higher rate. Therefore, multicast retransmission efficiency can be improved. The M feedback frames in this embodiment may be the bitmap feedback frame or the high-efficiency feedback frame in fig. 7 described above. When the M feedback frames are bitmap feedback frames, the packet loss rate of one feedback frame is equal to the ratio of 0 to 1 in the bitmap field. Therefore, M packet loss rates can be obtained. The packet loss rate of the feedback frame of the STA which is not received is default to 0. The average packet loss rate of the N STAs is equal to the M packet loss rates divided by N.
In addition, as can be seen from the above description in step 301, the AP may transmit data frames to the N STAs while receiving the data frames. That is, when the AP has not received X data frames, the AP has already transmitted a part of the X data frames to the N STAs. The AP may thus receive M feedback frames for feeding back the reception status of the partial data frames. After the average packet loss rate from the M feedback frames to the N STAs, the AP may also determine the rate of the newly transmitted data frame accordingly.
In unicast retransmission, the success rate of the STA receiving end is different due to different channel qualities of the users. The AP sets different retransmission rate grades for different STAs, so that the service packet loss rate and the time delay are in a relatively good range. Specifically, the AP obtains M packet loss rates of the M STAs according to the M feedback frames, where the M packet loss rates correspond to the M STAs one to one. And the AP determines the rate of unicasting the first data frame to the M STAs according to the M packet loss rates. The AP is provided with a mapping table of an average packet loss rate and a transmission rate. When the average packet loss rate is too high, the AP unicasts a first data frame to the M STAs at a lower rate; and when the average packet loss rate is lower, the AP unicasts the first data frame to the M STAs at a higher rate. For example, in order to dynamically adjust the relationship between the packet loss rate and the time delay, the unicast retransmission rate may be set at the AP end by feeding back the packet loss rate of the frame. When the packet loss rate is less than 1%, the unicast rate is MCS _ N; when the packet loss rate is greater than 5%, reducing the retransmission rate by a level K1; and when the packet loss rate is more than 10%, reducing the retransmission rate by a level K2. And the corresponding data transmission rate is adaptively provided according to the difference of the packet loss rates of different users so as to optimize the service quality.
The multicast communication method in the present application is described above, and the multicast communication apparatus provided in the present application is described below.
Fig. 12 is a schematic structural diagram of a multicast communication apparatus provided in an embodiment of the present application. As shown in fig. 12, the multicast communication apparatus includes a sending module 1201, configured to multicast X data frames to N STAs, where the X data frames include a first data frame, the first data frame includes a first sequence number SN of a MAC layer, the N STAs include a first STA, N and X are integers greater than 0, and the apparatus buffers the X data frames in a buffer queue of the MAC layer.
A receiving module 1202, configured to receive a feedback frame from a first STA, where the feedback frame includes a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of a first data frame;
the sending module 1201 is further configured to send a first data frame to the first STA according to the first identifier.
In other embodiments, the multicast communication apparatus may further include a processing module. The module in the multicast communication apparatus is specifically configured to perform all or part of the operations that the AP may perform in the embodiment corresponding to fig. 3 or fig. 10. For example, the processing module is configured to execute step 301 in fig. 3, and the sending module 1201 is configured to execute step 302.
Fig. 13 is another schematic structural diagram of a multicast communication apparatus provided in this embodiment. As shown in fig. 13, the multicast communication apparatus includes: a receiving module 1301, configured to receive X-1 data frames multicast by an AP. The processing module 1302 is configured to buffer X-1 data frames in a buffer queue after the MAC layer processes the X-1 data frames. A sending module 1303, configured to send a feedback frame to the AP if the buffer queue misses the first data frame, where the feedback frame includes a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame. The receiving module 1301 is further configured to receive a first data frame sent by the AP.
In other embodiments, the modules in the multicast communication apparatus are specifically configured to perform all or part of the operations that the first STA may perform in the embodiments corresponding to fig. 3 or fig. 10. For example, the processing module 1302 is configured to execute step 303 in fig. 3, and the sending module 1303 is configured to execute step 305.
The following describes a computer device in an embodiment of the present application. Fig. 14 is a schematic structural diagram of a computer device provided in an embodiment of the present application.
The computer device includes a processor 1401 and a transceiver 1402. The processor 1401 and the transceiver 1402 are interconnected by a wire.
Processor 1401 may be a Central Processing Unit (CPU), a Network Processor (NP), or a combination of a CPU and an NP. Processor 1401 may further include a hardware chip or other general purpose processor. The hardware chip may be an Application Specific Integrated Circuit (ASIC), a Programmable Logic Device (PLD), or a combination thereof.
The transceiver 1402 may be a fiber optic transceiver, a wireless radio module, or the like.
Optionally, the computer device further comprises a memory 1403. The memory 1403 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 PROM (EEPROM), or a flash Memory.
The computer device may be the AP, or the first STA, corresponding to the embodiments of fig. 3 or fig. 10 described above.
When the computer device is an AP, the processor 1401 and the transceiver 1402 in the AP are configured to perform all or part of the operations that the AP in fig. 3 or fig. 10 may perform. For example, processor 1401 is configured to perform step 301 of fig. 3 and transceiver 1402 is configured to perform step 302.
When the computer device is a first STA, the processor 1401 and the transceiver 1402 in the first STA are configured to perform all or part of the operations described above in fig. 3 or fig. 10 that the first STA may perform. For example, processor 1401 is configured to perform step 303 of fig. 3 and transceiver 1402 is configured to perform step 305.
The application also provides a digital processing chip. Integrated with circuitry and one or more interfaces to implement the functions of processor 1401 as described above. When integrated with memory, the digital processing chip may perform the method steps of any one or more of the preceding embodiments. When the digital processing chip is not integrated with the memory, the digital processing chip can be connected with the external memory through an interface. The digital processing chip implements the actions performed by the AP or the first STA in the above embodiments according to the program code stored in the external memory.

Claims (25)

1. A method of multicast communication, comprising:
a wireless Access Point (AP) multicasts X data frames to N Stations (STA), wherein the X data frames comprise a first data frame, the first data frame comprises a first Serial Number (SN) of an MAC layer, the N STAs comprise the first STA, N and X are integers larger than 0, and the X data frames are cached in a cache queue of the MAC layer by the AP;
the AP receives a feedback frame from the first STA, wherein the feedback frame comprises a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame;
and the AP sends the first data frame to the first STA according to the first identifier.
2. The method of claim 1, wherein the first identifier is the first ID, the method further comprising:
the AP obtains the first SN according to the first ID and a mapping relation, wherein the mapping relation is used for representing the corresponding relation between the SN and the ID;
the AP sending the first data frame to the first STA according to the first identifier comprises:
the AP sends a data frame including the first SN to the first STA.
3. The method of claim 1 or 2, wherein the AP receiving the feedback frame from the first STA comprises:
the AP receives M feedback frames sent by M STAs, each feedback frame comprises the first identifier, the N STAs comprise M STAs, the M STAs and the M feedback frames are in one-to-one correspondence, the M STAs comprise the first STA, M is an integer which is greater than 0 and less than or equal to N;
the AP sending the first data frame including the first SN to the first STA comprises:
if said M is or
Figure FDA0003983888240000011
If the SN is greater than the first threshold, the AP multicasts the data frame comprising the first SN to the N STAs.
4. The method of claim 3, further comprising:
the AP obtains the average packet loss rate of the N STAs according to the M feedback frames;
and the AP determines the rate of multicasting the first data frame to the N STAs according to the average packet loss rate.
5. The method of any one of claims 1 to 4, further comprising:
and the AP sends a retransmission prompt to the first STA, wherein the retransmission prompt is used for prompting the first STA to send the feedback frame to the AP when the first data frame is lost.
6. The method according to any one of claims 1 to 5,
the method further comprises the following steps:
and when the buffering duration of the first data frame in the buffering queue reaches a first duration, the AP releases the first data frame.
7. A method of multicast communication, comprising:
a first station STA receives X-1 data frames multicast by a wireless access point AP, wherein X is an integer greater than 1;
after the MAC layer processes the X-1 data frames, the first STA buffers the X-1 data frames in a buffer queue;
if the cache queue misses a first data frame, the first STA sends a feedback frame to the AP, wherein the feedback frame comprises a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame;
and the first STA receives the first data frame sent by the AP.
8. The method of claim 7, wherein the first identifier is the first ID.
9. The method of claim 8, further comprising:
the first STA submits X data frames to an IP layer according to an ID sequence, wherein the X data frames comprise the first data frame and the X-1 data frames, and the first data frame is a data frame to be submitted;
and if the ID of the data frame received by the first STA is equal to the first ID, the first STA submits the received data frame to an IP layer and updates the data frame to be submitted.
10. The method of claim 9, wherein the X-1 data frames comprise a second data frame that is not a data frame to be submitted;
the method further comprises the following steps:
and if the caching duration of the second data frame in the caching queue reaches a second duration, the first STA submits the second data frame to an IP layer.
11. The method of claim 10, wherein the X-1 data frames comprise a third data frame, the third data frame not being a data frame to be committed;
the method further comprises the following steps:
if the caching duration of the third data frame in the caching queue reaches a third duration, the first STA submits the third data frame to an IP layer;
the third data frame is an I frame, the second data frame is a B frame or a P frame, and the third duration is greater than the second duration.
12. The method according to any one of claims 7 to 11, characterized in that:
the first STA sending a feedback frame to the AP includes:
and under the condition that the first STA receives a retransmission prompt sent by the AP, the first STA sends the feedback frame to the AP.
13. A multicast communication system, comprising:
a wireless access point AP and N stations STA;
the AP is configured to multicast X data frames to the N STAs, where the X data frames include a first data frame, the first data frame includes a first serial number SN of an MAC layer, the N STAs include a first STA, N is an integer greater than 0, X is an integer greater than 1, and the AP caches the X data frames in a cache queue of the MAC layer;
the first STA is used for receiving X-1 data frames sent by the AP, caching the X-1 data frames in a cache queue after the X-1 data frames are processed by an MAC layer, and sending a feedback frame to the AP if the cache queue misses a first data frame, wherein the feedback frame comprises a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame;
the AP is used for sending the first data frame to the first STA according to the first identifier;
the first STA is configured to receive the first data frame.
14. The system of claim 13, wherein the first identifier is the first ID;
the AP is further used for obtaining the first SN according to the first ID and a mapping relation, and the mapping relation is used for representing the corresponding relation between the SN and the ID;
the AP is specifically configured to send a data frame including the first SN to the first STA.
15. The system of claim 14,
the AP is specifically configured to receive M feedback frames sent by M STAs, where each feedback frame includes the first ID, the N STAs include the M STAs, the M STAs and the M feedback frames are in one-to-one correspondence, the M STAs include the first STA, and M is an integer greater than 0 and less than or equal to N;
the AP is specifically used if M or
Figure FDA0003983888240000031
If the SN is greater than the first threshold, the data frame comprising the first SN is multicast to the N STAs.
16. The system of any one of claims 13 to 15,
the AP is further used for sending a retransmission prompt to the first STA;
the first STA is specifically configured to send the feedback frame to the AP when the retransmission prompt is received.
17. The system of claim 13,
the first STA is further used for submitting the X data frames to an IP layer according to an ID sequence, and the first data frame is a data frame to be submitted;
the first STA is further configured to submit the received data frame to an IP layer and update a data frame to be submitted if the ID of the data frame received by the first STA is equal to the first ID.
18. A multicast communication apparatus, comprising:
a sending module, configured to multicast X data frames to N STAs, where the X data frames include a first data frame, the first data frame includes a first serial number SN of an MAC layer, the N STAs include a first STA, N and X are integers greater than 0, and the device caches the X data frames in a cache queue of the MAC layer;
a receiving module, configured to receive a feedback frame from the first STA, where the feedback frame includes a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame;
the sending module is further configured to send the first data frame to the first STA according to the first identifier.
19. The apparatus of claim 18, wherein the first identifier is the first ID, the apparatus further comprising:
the processing module is used for obtaining the first SN according to the first ID and a mapping relation, and the mapping relation is used for representing the corresponding relation between the SN and the ID;
the sending module is specifically configured to send the first data frame including the first SN to the first STA.
20. The apparatus of claim 18 or 19,
the receiving module is specifically configured to receive M feedback frames sent by M STAs, where the M STAs correspond to the M feedback frames one to one, each feedback frame includes the first identifier, the N STAs include the M STAs, the M STAs include the first STA, and M is an integer greater than 0 and less than or equal to N;
the sending module is specifically configured to send the message if M or
Figure FDA0003983888240000032
If the value is larger than the first threshold value, the packet is multicast to the N STAsThe first data frame including the first SN.
21. A multicast communication apparatus, comprising:
the receiving module is used for receiving X-1 data frames multicast by the wireless access point AP, wherein X is an integer greater than 1;
the processing module is used for caching the X-1 data frames in a cache queue after the X-1 data frames are processed by the MAC layer;
a sending module, configured to send a feedback frame to the AP if the cache queue misses a first data frame, where the feedback frame includes a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame;
the receiving module is further configured to receive the first data frame sent by the AP.
22. The apparatus of claim 21, wherein the first identifier is the first ID.
23. The apparatus of claim 22, wherein the processing module is further configured to submit X data frames to the IP layer in the ID order, and wherein the X data frames include the first data frame and the X-1 data frames, and wherein the first data frame is a data frame to be submitted;
the processing module is further configured to submit the received data frame to an IP layer and update a data frame to be submitted if the ID of the received data frame is equal to the first ID.
24. A wireless Access Point (AP), comprising: a processor and a transceiver;
the transceiver is used for multicasting X data frames to N Stations (STA), wherein the X data frames comprise a first data frame, the first data frame comprises a first Serial Number (SN) of an MAC layer, the N STAs comprise the first STA, N and X are integers larger than 0, and the AP caches the X data frames in a cache queue of the MAC layer;
the transceiver is further configured to receive a feedback frame from the first STA, where the feedback frame includes a first identifier, which is obtained according to a first identifier ID of an IP layer of the first data frame;
the processor is used for reading a first identifier in the feedback frame;
the transceiver is further configured to transmit the first data frame to the first STA according to the first identifier.
25. A Station (STA), comprising: a processor and a transceiver;
the transceiver is used for receiving X-1 data frames multicast by the wireless access point AP, wherein X is an integer greater than 1;
the processor is used for caching the X-1 data frames in a cache queue after the X-1 data frames are processed by the MAC layer;
the transceiver is further configured to send a feedback frame to the AP if the cache queue misses a first data frame, where the feedback frame includes a first identifier, and the first identifier is obtained according to a first identifier ID of an IP layer of the first data frame;
the transceiver is further configured to receive the first data frame sent by the AP.
CN202110038501.9A 2021-01-12 2021-01-12 Multicast communication method, device and related equipment Active CN114765742B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110038501.9A CN114765742B (en) 2021-01-12 2021-01-12 Multicast communication method, device and related equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110038501.9A CN114765742B (en) 2021-01-12 2021-01-12 Multicast communication method, device and related equipment

Publications (2)

Publication Number Publication Date
CN114765742A CN114765742A (en) 2022-07-19
CN114765742B true CN114765742B (en) 2023-03-24

Family

ID=82363647

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110038501.9A Active CN114765742B (en) 2021-01-12 2021-01-12 Multicast communication method, device and related equipment

Country Status (1)

Country Link
CN (1) CN114765742B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116389178B (en) * 2023-04-07 2023-11-03 国家气象信息中心(中国气象局气象数据中心) Method and device for compensating and adjusting UDP multicast lost frame level of data file

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101521586A (en) * 2008-02-28 2009-09-02 株式会社Ntt都科摩 Multicast method in wireless local area network
CN102067497A (en) * 2008-06-26 2011-05-18 汤姆逊许可公司 Method and apparatus for acknowledgement and retransmission of multicast data in wireless local area networks
CN102316419A (en) * 2011-09-22 2012-01-11 华为技术有限公司 Method for developing multimedia service in wireless local area network, device and system
CN104038902A (en) * 2013-03-06 2014-09-10 华为技术有限公司 Multicast data packet transmission method and multicast data packet transmission device
CN105519057A (en) * 2014-02-26 2016-04-20 华为技术有限公司 Multicast transmitting device, multicast receiving device and multicast transmission acknowledgement method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080192661A1 (en) * 2004-06-02 2008-08-14 Yasuo Hamamoto Radio Transmission Method
US20200029376A1 (en) * 2018-07-19 2020-01-23 Qualcomm Incorporated Selective retransmission procedure

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101521586A (en) * 2008-02-28 2009-09-02 株式会社Ntt都科摩 Multicast method in wireless local area network
CN102067497A (en) * 2008-06-26 2011-05-18 汤姆逊许可公司 Method and apparatus for acknowledgement and retransmission of multicast data in wireless local area networks
CN102316419A (en) * 2011-09-22 2012-01-11 华为技术有限公司 Method for developing multimedia service in wireless local area network, device and system
CN104038902A (en) * 2013-03-06 2014-09-10 华为技术有限公司 Multicast data packet transmission method and multicast data packet transmission device
CN105519057A (en) * 2014-02-26 2016-04-20 华为技术有限公司 Multicast transmitting device, multicast receiving device and multicast transmission acknowledgement method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于BMW无线局域网MAC层多播纠错协议的改进;陈荣强等;《电子技术应用》;20101106(第11期);全文 *

Also Published As

Publication number Publication date
CN114765742A (en) 2022-07-19

Similar Documents

Publication Publication Date Title
US7542438B2 (en) Reliable multicast data retransmission method by grouping wireless terminals in wireless communication medium and apparatus for the same
US8924809B2 (en) Cell dependent multi-group hybrid automatic repeat method for multicast wireless networks
KR102356204B1 (en) Communication method and communication device
JP2010522468A (en) Throughput improvement in LAN by managing TCPACK
CN1866831A (en) Broadband access device and its application
WO2005078985A1 (en) System and method for transmitting and receiving data frames in a nak-based window protocol
JP2007318759A (en) Method and device for processing packet data in wireless communication system
WO2021213203A1 (en) Harq-ack feedback method, terminal and base station
WO2016161594A1 (en) Data transmission method and apparatus
WO2008134984A1 (en) A polling method, system and device
CN114765742B (en) Multicast communication method, device and related equipment
WO2011026414A1 (en) Data transmission method and apparatus thereof
WO2016003250A1 (en) Method and device for transmitting and receiving multimedia data
CN107820218B (en) Method and equipment for setting message transmission mode
US20230179343A1 (en) Efficient uplink hybrid automatic repeat request feedback for point to multipoint transmissions
WO2023020555A1 (en) Data transmission method, electronic device and computer-readable storage medium
WO2020010511A1 (en) Data transmission method and base station
WO2022094974A1 (en) Data transmission method and apparatus, computer device and storage medium
WO2018191863A1 (en) Method and device for data transmission
WO2022001934A1 (en) Data transmission method and apparatus
US20220158771A1 (en) Method of enabling harq, network entity and computer program
JP2013013093A (en) Improving throughput in lan by managing tcp acks
Long et al. A hybrid DMB-T and WLAN network for broadband wireless access services
CN114125508B (en) Reliability guarantee method for video multicast in wireless domain
CN115051777B (en) Error detection and retransmission implementation method based on TDMA networking PMP communication

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
GR01 Patent grant
GR01 Patent grant