Transmission device, reception device and corresponding methods
By deleting unresponsive data units in the bidirectional link between the transmission device and the reception device, the transmission device deletes the unresponsive data units and the reception device directly forwards all data units, the problem of data units in the WLAN is solved and more efficient data transmission is achieved.
Patent Information
- Application Number
- CN202380083036.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-12-06
- Filing Date
- 2023-11-28
- Publication Date
- 2025-07-11
AI Technical Summary
In the existing WLAN implementation mode, the automatic retransmission request mechanism of the bidirectional link data unit leads to a misalignment problem between the downlink data unit and the uplink data unit, affecting the order and delay of data transmission.
By establishing a bidirectional link between the transmission device and the reception device, the transmission device deletes the data unit before receiving the response, and the reception device forwards all received data units directly to the higher layer regardless of the status, retransmitting the wrong data unit only when explicitly indicated, using enhanced ARQ operations to reduce delays and misalignments.
It effectively reduces the delay and misalignment between data units in the bidirectional link, improves the accuracy and efficiency of data transmission, and is especially suitable for real-time applications such as virtual reality and video telephones.
Smart Images

Figure CN120303894A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a transmitting device, a receiving device, and corresponding methods, particularly for exchanging data units using a two-way link. Background Art
[0002] A two-way link is defined as a link between two communication devices (e.g., two stations (STAs) or an access point (AP) and an STA), which are generally referred to herein as a transmitting device and a receiving device), and this link can be used by the application layer in both directions, i.e., to transmit / exchange user data units bidirectionally. The automatic repeat request (ARQ) mechanism used in current WLAN implementations stipulates that data units that are erroneously received or decoded should be retransmitted, which may result in misalignment between downlink data units and uplink data units. For example, an uplink data unit related to a previously received downlink data unit may be retransmitted at a later time point. This may enable the successful delivery of the uplink data unit, but may cause misalignment between the downlink data unit and the uplink data unit or data stream.
[0003] The "Background" description provided herein is for the purpose of generally presenting the context of the present disclosure. The work done by the presently named inventors described in this background section, and aspects that may not qualify as prior art at the time of filing, whether explicitly or implicitly, are not admitted as prior art to the present disclosure. Summary of the Invention
[0004] The object herein is to provide a transmitting device, a receiving device, and corresponding methods that help or enable avoiding or reducing misalignment between downlink data units and uplink data units or data streams within a two-way link. Another object is to provide a corresponding method, as well as a corresponding computer program and a non-volatile computer-readable recording medium storing a computer program product for implementing the method.
[0005] According to one aspect, there is provided a transmitting device including circuitry configured to:
[0006] - Establish a two-way link with a receiving device for transmitting and receiving data units;
[0007] - Transmit data units stored in a transmission queue for transmission to the receiving device using the two-way link; and
[0008] - Immediately after transmission or if no response indicating that the transmitting device should retransmit the data unit is received from the receiving device, delete the transmitted data unit from the transmission queue.
[0009] According to another aspect, there is provided a receiving device including circuitry configured to:
[0010] - Establish a two-way link with the transmission device for the transmission and reception of data units;
[0011] - Receive data units from the transmission device using the two-way link; and
[0012] - Provide the received data units to higher layer processing regardless of their reception status, and according to the higher layer processing, the data units are received and decoded correctly or incorrectly, wherein a reception status indicator indicating the reception status is provided to the higher layer processing together with each data unit.
[0013] According to a further aspect, a corresponding method, a computer program, the computer program comprising program means for causing a computer to perform the steps of the method disclosed herein when the computer program is executed on a computer, and a non-transitory computer-readable recording medium storing a computer program product, the computer program product causing the method disclosed herein to be executed when executed by a processor.
[0014] Embodiments are defined in the dependent claims. It should be understood that the disclosed method, the disclosed computer program, and the disclosed computer-readable recording medium have similar and / or identical further embodiments to the claimed apparatus and as defined in and / or disclosed herein in the dependent claims.
[0015] Aspects of the present invention provide enhanced ARQ operation, which minimizes the delay and misalignment between data units (also referred to as two-way traffic) transmitted in each direction of a two-way link including a forward link (from the transmission device to the receiving device) and a reverse link (from the receiving device to the transmission device). The transmission device typically discards all data units after transmission. The data units are retransmitted only when explicitly indicated by the receiving device, i.e., not all erroneously received or decoded data units are retransmitted. The receiving device forwards all data units to the higher layer regardless of the reception status that is separately indicated or should be separately indicated to the higher layer (i.e., even if the reception status is "erroneous").
[0016] The foregoing paragraphs have been provided by way of general introduction and are not intended to limit the scope of the appended claims. The described embodiments and other advantages will be best understood by reference to the following detailed description in conjunction with the accompanying drawings. Brief Description of the Drawings
[0017] When considered in conjunction with the accompanying drawings, the present disclosure is better understood, and a more complete understanding of the present disclosure and many of its attendant advantages will be more readily obtained by reference to the following detailed description, wherein
[0018] Figure 1 A schematic diagram is shown illustrating different options for system setup and implementation of a two-way link.
[0019] Figure 2 A schematic diagram showing a conventional communication scheme illustrating misalignment between data units.
[0020] Figure 3 Shows Figure 2 A schematic diagram of the conventional communication scheme including additional retransmissions shown in
[0021] Figure 4 A schematic diagram showing an embodiment of a communication scheme according to the present disclosure.
[0022] Figure 5 A schematic diagram showing a general architecture of a communication device according to the present disclosure.
[0023] Figure 6 A schematic diagram showing a comparison between a conventional communication scheme and another embodiment of a communication scheme according to the present disclosure.
[0024] Figure 7 A schematic diagram showing how a transmitter can detect a non - existent two - way link.
[0025] Figure 8 A schematic diagram showing a state machine illustrating the processing of a receiving device.
[0026] Figure 9 A schematic diagram showing another embodiment of a communication scheme according to the present disclosure.
[0027] Figure 10 A schematic diagram showing another embodiment of a communication scheme according to the present disclosure.
[0028] Figure 11 A flowchart showing an embodiment of a transmission method according to the present disclosure.
[0029] Figure 12 A flowchart showing an embodiment of a receiving method according to the present disclosure. Detailed Description
[0030] Now referring to the drawings, in which, in all views, the same reference numerals denote the same or corresponding parts, Figure 1 A schematic diagram showing system setups and different options for implementing a two - way link is shown. For example, in an interactive scenario (e.g., a virtual reality application that renders a downlink video based on motion information in the uplink), such a two - way link exists. In Figure 1Between two communication devices, typically capable of transmitting and receiving (but also referred to herein as transmitting device STA1 and receiving device STA2), there is a bidirectional link that can be utilized by the application layer in both directions for the two-way exchange of user data units. Such a link can be established by different technical means, for example (as Figure 1 shown):
[0031] - Time Division Duplex (TDD), where communication from the first communication device to the second communication device (downlink) alternates with communication from the second communication device to the first communication device (uplink). In TDD, two-way communication is simulated by time-interleaved one-way communication.
[0032] - Frequency Division Duplex (FDD), where the downlink and uplink reside in different frequency bands. In FDD, simultaneous two-way communication can be achieved, i.e., the downlink and uplink can exist simultaneously.
[0033] - In-Band Full Duplex (IBFD), which is similar to FDD but has at least partially overlapping frequency bands.
[0034] In Figure 1 , data units (DUs) transmitted by the first communication device STA1 are represented without an apostrophe (‘), while DUs transmitted by the second communication device STA2 are represented with an apostrophe (‘). A Block Acknowledgment (BAck) has an apostrophe when it is a response to a DU with an apostrophe; thus, BAck’ is transmitted by STA1 in response to DU’ transmitted by STA2.
[0035] Hereinafter, the period during which two-way data transmission occurs is referred to as a Transmit Opportunity (TXOP). The following figures consider the latter two options, FDD and IBFD, i.e., the case where a bidirectional link exists simultaneously. However, the same problems and solutions exist for the TDD case, i.e., the present disclosure is not limited to the use of FDD and IBFD.
[0036] In a link where data units can be exchanged bidirectionally at the application layer, the traffic flows of the downlink and uplink from the application layer are typically related to each other in the sense that an uplink data unit can be considered a response to a previous downlink data unit and vice versa. For example, the well-known TCP / IP protocol occasionally creates an uplink data unit that acknowledges a previous downlink data unit.
[0037] In this regard, the ARQ mechanism of the current WLAN implementation should be revised because retransmission of data units may lead to misalignment between downlink data units and uplink data units. For example, the uplink data unit associated with a previously received downlink data unit is retransmitted at a later time point. This retransmission may enable the successful delivery of the uplink data unit; however, it causes misalignment between the downlink data unit and the uplink data unit or data stream. Generally, different types of misalignment may occur: for example, the order of data unit transmission may be different from first-in-first-out (FIFO) and / or a specific time dependence may exist between the downlink data unit and the uplink data unit, such that buffering of received data units may result in unacceptable delays within the application layer. Further, since the ARQ mechanism attempts to preserve the order of data units, not only the retransmitted data unit but also subsequent data units are generally affected.
[0038] Figure 2 FIG. shows a schematic diagram illustrating the operation of a conventional communication scheme demonstrating misalignment between data units. The first row shows the content of the receive buffer of the receiving device (STA2), the second row shows the higher layer output of the receiving device, and the third row shows the content of the receive buffer of the transmitting device (STA1). As Figure 2 shown, data unit (DU) #3 is erroneously received by STA2, which causes the successfully received DUs #4 and #5 to be stored by STA2 for later forwarding to the higher layer. However, the data units arriving at STA1 (DU’) continue to be correctly received, which results in the (exemplary) relationship / alignment between data units DU and DU’ being disrupted. The receiving device STA2 can check whether a data unit is in error by, for example, checking the CRC (cyclic redundancy check) code included in the received data unit (e.g., in the PPDU (physical protocol data unit) or MPDU (MAC protocol data unit) or any other data included in the data unit for this purpose).
[0039] Figure 3 FIG. shows Figure 2 a schematic diagram of the conventional communication scheme including additional retransmission as shown in. When the erroneously received data unit (DU#3) is successfully retransmitted (e.g., in response to corresponding information from the transmitting device STA1, such as in response to a corresponding Ack), this data unit (DU#3) and all subsequent successfully received data units (DUs #4 and #5) are forwarded to the higher layer. This may also create bandwidth issues as many data units may be released to the higher layer simultaneously.
[0040] Figure 4A schematic diagram showing an embodiment of a communication scheme according to the present disclosure is presented. According to the present disclosure, the receiver unit of any communication device participating in a two-way TXOP should generally forward (rather than discard) the received data unit to the higher layer, even if it may be incorrect. To improve fault tolerance, the communication device may indicate, as part of a separate signaling or via a station management entity (SME), which currently forwarded data units are incorrect or which data units within the forwarded data units are incorrect.
[0041] As Figure 4 shown, the erroneously received DU#3 is forwarded to the higher layer. Additionally, an indicator (also referred to herein as the "received status indicator") is provided to the higher layer, as Figure 4 shown in the last line of Figure 4 indicating whether the forwarded DU is correct (in this example, the indicator "correct") or incorrect (in this example, the indicator "incorrect"). As Figure 2 shown in 3 compared with the conventional communication scheme shown in Figure 2 the exemplary relationship only disrupts for the incorrect data unit (DU#3) and not for other data units. However, the operation of the higher layer should be resilient to such errors. For example, the higher layer may consider lost packets less important (e.g., in video transmission - important I-frames versus less important P-frames), or the higher layer protocol may include an erasure code that can reconstruct incorrect data units. Generally, the proposed communication scheme is particularly suitable for real-time, fast-response applications that require strict latency bounds but tolerate some errors, such as VR / AR, video telephony, and machine control.
[0042] A two-way connection is typically characterized by response frames, such as acknowledgments (e.g., Figure 1 the Back frame shown in Figure 1 ), for transmission. Such response frames are generated by the MAC and typically need to be transmitted on each link for management reasons (detection of overlapping transmissions) and channel access reservation. The content of the response frame transmitted as a response to one or more received data frames usually reflects the actual reception status, as the transmitting device receiving such an Ack frame needs to adapt communication parameters such as the modulation coding scheme (MCS) or the spatial stream (also referred to as transmission parameters).
[0043] According to the present disclosure, if the transmitting device participating in a two-way TXOP is a response frame (e.g., Ack or Back), it generally does not perform an action based on the response frame. Thus, in one embodiment, the transmitting device may discard any data units that have been transmitted because there is no future retransmission, and generally will not transmit a data unit more than once. So, according to one embodiment, no retransmission is performed at all, while according to another embodiment, retransmission of one or more data units is performed only in a response (e.g., Ack or Back), where the receiving device explicitly requests the retransmission and / or explicitly indicates which data unit or data units will be retransmitted. Thus, according to the present disclosure, immediately after transmitting or if no response indicating to the transmitting device to retransmit a data unit is received from the receiving device, the transmitting device deletes the data unit transmitted from its transmission queue (e.g., deletes it from the transmission buffer).
[0044] In the following, more details and embodiments of the present disclosure will be described, and in particular, how the receiving device and the transmitting device can operate will be illustrated. The transmitting device is generally connected to a data unit source (e.g., a server, a user device, a central controller, a machine controller, a content delivery system, a game server, etc.), while the receiving device is connected to a data unit receiver (e.g., another user device, a human-machine interface device, a VR headset, a controlled device, a manufacturing device, an end-user device, etc.). Generally, both the transmitting device and the receiving device have transmitter and receiver functions. For example, the receiving device can transmit a response frame, such as Ack or Back, to the transmitting device.
[0045] Figure 5 A schematic diagram showing a general architecture of a communication device 10 according to the present disclosure is shown. This architecture is applicable to both the transmitting device and the receiving device. The communication device 10 includes a PHY layer 11, a MAC layer 12, and (optionally) a logical link control (LLC) layer 13. Within these layers, data as well as control information can be exchanged. The PHY layer 11 and the MAC layer 12 are controlled by a STA management entity (SME) 14, which can also control higher layers such as an application layer 15. Each layer / entity can be implemented by a corresponding unit or circuit, e.g., a processor, a processing circuit, a computer, dedicated hardware, etc., which perform the functions of the device. Alternatively, a common unit or circuit (e.g., a common processor or computer) can implement one or more layers / entities, or separate units or elements representing a common circuit can be used.
[0046] Before the mechanisms described herein can be used, an establishment process can be performed, where two STAs are configured to use these mechanisms. The mechanisms for fast-forwarding ARQ as part of this disclosure can be applied only to user data units, and fixed rules apply to all other frames, such as control or management frames. Additionally, the proposed mechanisms can be applied only to user data units originating from a specific source and / or destination, which can be defined by a specific traffic identifier (TID).
[0047] On the transmitter side, the MAC transmits each data unit only once and does not perform a retransmission action upon receipt of an acknowledgment frame if it indicates an erroneous data unit. However, the transmitting STA can use this information for link adaptation, i.e., to determine the link quality and whether the MCS needs to be changed, thereby, for example, reducing the error rate.
[0048] For link adaptation, there are different options. According to one option, a suggestion that the transmitter change the MCS to MCS A or use a specific TXVECTOR can be received from the receiving device. According to another option, the transmitter can count the number of correctly received data units and the number of erroneously received data units within a specific time span. It establishes a ratio, and if there are too many erroneously received data units, the MCS is changed, and if there are many correctly received data units, the MCS is fine and can be maintained or changed to a higher MCS. Thus, both successfully received data units and erroneously received data units (and those erroneously received data units that need to be retransmitted) are used.
[0049] Once a data unit is transmitted, the transmitting STA can discard the data unit from its queue (unless "tri-state Ack" has been established as described below). Additionally, the transmitting STA transmits data units in a first-in-first-out (FIFO) manner.
[0050] Figure 6 A schematic diagram is shown comparing another embodiment of a communication scheme of a conventional communication scheme with a communication scheme for frame exchange from STA1 (transmitter) to STA2 (receiver) according to this disclosure. There is also a reverse link, as Figure 1 shown, Figure 6 not shown in Figure 6 The link shown in Figure 1 corresponds to link 1 (downlink) of the FDD scheme shown in
[0051] At the start, four data units (DUs) are stored in the transmitter queue 20 (also known as the transmission queue or Tx queue) in a FIFO manner. Once STA1 obtains channel access and has an established two-way link, it starts transmitting the DUs in FIFO order. According to the conventional scheme, the transmitted DUs remain in the transmitter queue (as reflected in the transmitter queue 21) until STA2 transmits a block acknowledgment (BAck) as a response to the transmitted DUs, indicating that they have been correctly received or that one or more of the transmitted DUs are in error. This response can be in the form of a 1-bit indicator, where the first value (e.g., 1) indicates correct reception and the second value (e.g., 0) indicates an erroneous transmission. In Figure 6 this indicator (also known as the error indicator) is shown below the BAck in the form of "(x, y)", where x represents the indicator of the first DU transmitted in the previous interval (or PPDU), and y represents the indicator of the second DU transmitted in the previous interval (or PPDU). This indication can be transmitted as part of the BAck or separately from the BAck as a separate response.
[0052] If they have been correctly received, they are removed from the transmitter queue. In Figure 6 the example shown, DU#1 has been correctly received and removed from the transmitter queue after receiving BAck31 (as reflected in the transmitter queue 22), while DU#2 is in error and thus not removed from the transmitter queue after receiving BAck31 (also as reflected in the transmitter queue 22). The reception status is indicated from STA2 to STA1 by the corresponding response "(1, 0)" (shown below Back31), where 1 indicates the correct reception of DU#1 and 0 indicates the erroneous reception of DU#2. Then, DU#2 is retransmitted before transmitting the subsequent DU#3. They have both been correctly received by STA2, which is acknowledged by the next BAck32, so that they are both removed from the transmitter queue (as reflected in the transmitter queue 23).
[0053] According to the proposed scheme, the initial transmitter queue 24 is the same as the transmitter queue 21. Once a DU is transmitted, it is immediately removed from the transmitter queue (as reflected in the transmitter queue 25). After transmitting DUs #1 and #2, STA2 transmits a block acknowledgment (BAck) 34 as a response to the DUs. Although BAck34 indicates that DU#2 is in error, STA1 continues to transmit the next DU in the queue, i.e., DU#3, followed by DU#4, both of which are removed from the transmitter queue after transmission (as reflected in the transmitter queue 26), regardless of the content of the BAck.
[0054] If the transmitter detects that the two-way link no longer exists, it may discard data units belonging to the two-way traffic flow or de-prioritize data units belonging to the two-way traffic flow. These two options can be selected during establishment, or it can even depend on the implementation. De-prioritization of data units means that data units belonging to the two-way traffic flow are not transmitted; instead, data units belonging to other traffic flows are transmitted. Different traffic flows can be distinguished by TID (Traffic Identifier) or SCSID (Stream Classification Service, also known as Stream Identifier).
[0055] The non-existent two-way link means that at least one direction of the two-way link is unavailable or does not operate as expected. The transmitter can detect the non-existent two-way link through one or more of the following options, all of which are described in Figure 7 (the four cases usually do not occur simultaneously):
[0056] - Losing response frames, for example, the (block) acknowledgment of its first (initial) transmitted data unit after channel access, or two lost response frames for its non-first (non-initial) transmitted data units after channel access ( Figure 7 Case A in
[0057] - Missing or incorrect PPDU in the reverse link ( Figure 7 Case B in
[0058] - If the BAck response to the received data unit indicates that all or a specific percentage of the received data units within the last received PPDU are already in error (unless "Tri-State Ack" is used) ( Figure 7 Case C in
[0059] - If in the initialization phase of the two-way link, the reverse link is not established (i.e., the missing PPDU in the reserved link) after a certain time interval ( Figure 7 Case D in
[0060] If the MAC layer at the transmitter decides to use aggregation, it should only aggregate data units belonging to two-way traffic, i.e., data units with the same TID within the A-MPDU (Aggregate MAC Protocol Data Unit). In addition, the MAC headers of the MPDUs contained in the A-MPDU should have the same settings and the same content in the MAC headers, except for the sequence number. This especially means that the MAC headers have the same length and the same optional sub-fields (if any). If the transmitter decides to transmit the same data unit multiple times to achieve, for example, higher reliability, the repetition factor should be exchanged between the transmitter and the receiver during establishment, and the same repetition factor should be applied to each data unit (e.g., each data unit appears twice).
[0061] In the following description of the receiver operation, the reasons for these limitations will become apparent. Inside the receiver, special attention should be paid to the fact that only data units (whether error or non-error) are forwarded to the higher layers if and only if the data unit is destined for the receiving STA. Further, the fast-forward operation should only be used for data units belonging to the bi-directional link and the existing setup. For this purpose, a state machine as shown in Figure 8 may be used, Figure 8 which shows an embodiment of the receiving method 100 performed by the receiving device.
[0062] If a PPDU is detected, first it is checked (step 101) whether the PPDU preamble is valid (non-error), and if so, whether the PPDU is destined for the receiving STA (step 102). The latter check can only be done for PPDU types having an indication of the receiving STA within the preamble. In the case where the PPDU preamble is in error or the PPDU is destined for a different STA, the PHY layer gives an indication (step 103) to the MAC layer and / or SME that the receiving process ends via the PHY-RXEND.indication primitive, optionally attaching a detailed reason code.
[0063] When PPDU reception continues, the MAC layer checks whether the first MPDU is in error (step 104). If not, it checks (step 105) within the MAC header by evaluating the MAC address whether the MPDU is destined for the receiving STA, and whether there is a TID and whether it belongs to the bi-directional traffic. If so, the receiving STA assumes that the MAC header is valid for all other MPDUs within the PPDU (if any) at least in terms of the destination and the TID (step 106). Next, the MAC layer processes the first MPDU and forwards the included data unit to the higher layer via the MA-UNITDATA.indication including the valid CRC check result (step 107). If the first MPDU is in error, another first MPDU is determined (if any) (step 108). If no other MPDU can be determined or does not exist, the PPDU is assumed to end, which is indicated by the PHY-RXEND.indication (step 109).
[0064] If, after successfully detecting a first MPDU and forwarding it to a higher layer, it is determined whether a second MPDU exists (step 110), and then the second MPDU is processed according to an assumption applied based on at least the destination and TID of the MAC header of the first MPDU (step 111). In the case of a valid CRC, the CRC result will be reflected in the MA-UNITDATA.indication as well as in the extracted data unit. In the case of an invalid CRC, the inclusion of the (error) data unit is optional, and the extraction of the error data unit is done according to further settings such as the length of the header or relevant information (e.g., current subfield) within the MAC header of the first MPDU. Other MPDUs are processed as the second MPDU.
[0065] The number of MPDUs considered as the first MPDU during this process can be restricted during the establishment of a two-way link. This is because during this period, at the MAC layer, there is no output that will cause the relationship between uplink and downlink data units to be interrupted. The MA-UNIDATA.indication can carry not only the data unit and the reception status, but also a sequence number indicating the order of the received data units from the MAC header. The sequence number signaling can replace the reception status signaling within the MA-UNITDATA.indication.
[0066] If the received data unit requests an acknowledgment, the receiver MAC layer shall report the reception status in the response frame. The reception status shall reflect the actual reception status, and the BAck shall contain the reception status of the most recently received data unit, i.e., the data unit that causes at least one reception status to be signaled to the higher layer via the MA-UNITDATA.indication, as Figure 8 shown, "added to the BAck scoreboard" (steps 112, 113, 116).
[0067] In the case where the receiver detects an MPDU that is directed to itself but belongs to a non-two-way TID (step 114), the receiver performs conventional processing, i.e., each MPDU is processed independently until the end of the PPDU (step 115).
[0068] Figure 9 A schematic diagram shows another embodiment of a communication scheme according to the present disclosure. The implementation of fast-forward ARQ requires that the higher layer (above the MAC) has error recovery capabilities. Depending on the implementation of the higher layer, error recovery has its limitations in the sense that a specific error rate can be tolerated but a higher error rate causes the application to fail. For such a situation, in an embodiment, a "three-state Ack" mechanism can be used, where the receiver determines the instantaneous error rate. If it drops below a specific threshold set during the establishment phase, the receiver can request a retransmission of the data unit. Thus, the acknowledgment not only has a "no error" (in Figure 9) and "Error but no retransmission" (in Figure 9 ) and has an "error and retransmission" (in Figure 9 2). Therefore, the error indicator can have three states.
[0069] exist Figure 9 The schematic diagram shown in shows the envisioned operation under the assumption that the receiver requires at least one successfully received data unit (DU) or PPDU transmitted by STA1 to be exchanged per frame. STA1 transmits DU#1 and DU#2 of the initial TX queue 41 to STA2, however, STA2 receives both data units incorrectly. Therefore, because both data units failed, STA2 indicates in the subsequent BAck51 that both DUs are incorrect, but only DU#2 should be retransmitted from the left. Therefore, only DU#1 is removed from the TX queue (as reflected by TX queue 42). Subsequently, DU#2 and #3 are (re)transmitted, which are assumed to be correctly received at STA2, so that the two DUs are deleted from the Tx queue (as reflected by TX queue 42) in response to the corresponding BAck52. Next, STA1 transmits DU#4 and #5 to STA2, where only DU#5 fails. Since DU#4 was received correctly, there is no need for a retransmission with DU#5; therefore, the contents of BAck53 are set accordingly by STA2, causing DU#4 and #5 to be deleted from the Tx queue (as reflected by TX queue 44).
[0070] If the transmitter and receiver agree on this "three-state Ack" mechanism in the setup phase, the transmitter should not discard the data unit before it receives an Ack response indicating "no error" or "error but no retransmission" of the data unit. If the transmitter receives an "error and retransmission" indication for a certain data unit, the transmitter should transmit the data unit as soon as possible, i.e., first before other data units are to be transmitted and / or even before other control data units (such as BAck or trigger frames) are to be transmitted.
[0071] Figure 10 A schematic diagram showing another embodiment of a communication scheme according to the present disclosure is shown, which shows that Figure 9 1 and 2. The misalignment between STA1 and STA's data units under the operation of the "Tri-State Ack" scheme shown in FIG. As can be seen, the retransmission essentially causes a time offset in the exemplary relationship. There is only a misalignment of one data unit, rather than two data units caused by the retransmission of DU#1 and DU#2. Depending on the application, this may be less critical to higher layers than having two failed subsequent data units.
[0072] To operate using the mechanisms disclosed herein, a new type of STA can be deployed. However, the WLAN has characteristics of many legacy devices, in which case, the following two settings can be made to implement some of the features of fast forward ARQ (i.e., the mechanisms disclosed herein). According to the first setting, the transmitter can set the lifetime of all data units belonging to a bi-directional link to zero, set the BAck window size to one, and not allow fragmentation of data units. This BAck window (also known as the response window) defines the number of data units reporting the reception status included in the response (frame). For example, if the BAck window is set to N, it means that the response frame after the transmission of one or more data units includes the reception status of the last (at least) N data units.
[0073] Alternatively, according to the second setting, the transmitter can set the lifetime of all data units belonging to a bi-directional link to zero, and transmit data units interleaved with Block Acknowledgment Request (BAR) frames in the sense of DU, BAR, DU, BAR, DU, BAR, … with DU and BAR as basic elements. The basic elements should be transmitted together, i.e., in the same PPDU.
[0074] The above settings stipulate that the transmitter discards all data units once transmitted. The receiver forwards all correct (non-error) data units to the higher layer. However, during the forwarding process to the higher layer, error data units are discarded or skipped, and there is no indication of data unit errors at the higher layer either. In addition, the response of the receiver in the form of an acknowledgment can only contain the reception status of the last received data unit. For this reason, the link adaptation at the transmitter has insufficient data to fully judge the channel quality. Usually, "tri-state Ack" is not supported either.
[0075] For example, during the establishment of a bi-directional link, different information can be transmitted by the transmitting device and / or the receiving device or included / added to one or more data units. Such information can include one or more of the following:
[0076] - A bi-directional identifier indicating which of the one or more data units belong to bi-directional traffic;
[0077] - A traffic identifier and / or a stream identifier indicating the traffic or transmission stream of the bi-directional traffic;
[0078] - A traffic identifier and / or a stream identifier indicating the type of the traffic or transmission stream;
[0079] - A receiver identifier indicating the receiving device to which one or more bi-directional data units are addressed;
[0080] - An acknowledgment policy identifier indicating which acknowledgment policy the receiving device applies to acknowledge the reception of data units;
[0081] - An error rate threshold above which the receiving device will transmit a response to the transmitting device indicating that the transmitting device retransmit the data unit; and
[0082] - A link quality threshold below which the receiving device will transmit a response including a suggestion for new transmission parameters.
[0083] Thus, according to the present disclosure, a transmission method can be performed by a first communication device acting as a transmitting device, and a receiving method can be performed by a second communication device acting as a receiving device, the second communication device communicating with the first communication device via a two-way link.
[0084] Figure 11 A flowchart of an embodiment of a transmission method 200 according to the present disclosure is shown. The transmission method 200 includes: step 201, establishing a two-way link with a receiving device for transmission and reception of data units; step 202, transmitting, using the two-way link, the data units stored in a transmission queue for transmission to the receiving device; and a third step 203, deleting, immediately after transmission or if a response indicating that the transmitting device retransmit the data unit is not received from the receiving device, the transmitted data units from the transmission queue.
[0085] Figure 12 A flowchart of an embodiment of a receiving method 300 according to the present disclosure is shown. The receiving method 300 includes: step 301, establishing a two-way link with a transmitting device for transmission and reception of data units; step 302, receiving, using the two-way link, data units from the transmitting device; and step 303, providing the received data units to a higher layer process regardless of their reception status, according to which the data units are received and decoded correctly or incorrectly, wherein a reception status indicator indicating the reception status is provided to the higher layer process together with each data unit.
[0086] In summary, the present disclosure addresses MAC layer operations for a two-way link for quasi-instantaneous exchange of data units between two communication devices. Thereby, any operational delay of the MAC layer due to ARQ operations should be avoided. The present disclosure proposes an enhanced ARQ operation which minimizes the delay and misalignment between data units transmitted in each direction. In an embodiment, the transmitter discards all data units after transmission, while the receiver forwards all data units to the higher layer regardless of the reception status, which is however indicated separately to the higher layer. Further embodiments address error handling and three-state acknowledgments.
[0087] Accordingly, the foregoing discussion has only disclosed and described exemplary embodiments of the present disclosure. As those skilled in the art will understand, the present disclosure may be embodied in other specific forms without departing from the spirit or essential characteristics of the present disclosure. Therefore, the disclosure of the present disclosure is intended to be illustrative and not to limit the scope of the present disclosure and other claims. The present disclosure (including any readily distinguishable variations of the teachings herein) partially defines the scope of the foregoing claim terms such that no inventive subject matter is dedicated to the public.
[0088] In a claim, the word "comprising" does not exclude other elements or steps, and the indefinite article "a" or "an" does not exclude a plurality. A single element or other unit may perform the functions of several items recited in the claims. The fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used advantageously.
[0089] Insofar as embodiments of the present disclosure are described as being implemented at least in part by a data processing device controlled by software, it should be understood that a non-transitory machine-readable medium bearing such software, such as an optical disc, a magnetic disk, a semiconductor memory, etc., is also considered to embody embodiments of the present disclosure. Further, such software may be distributed in other forms, such as via the Internet or other wired or wireless telecommunications systems.
[0090] Elements of the disclosed apparatus, device, and system may be implemented by corresponding hardware and / or software elements (e.g., appropriate circuitry or circuits). A circuit is a structural assembly of electronic components including conventional circuit elements, integrated circuits including application-specific integrated circuits, standard integrated circuits, application-specific standard products, and field-programmable gate arrays. In addition, a circuit includes a central processing unit, a graphics processing unit, and a microprocessor programmed or configured according to software code. A circuit does not include pure software, although a circuit includes the hardware that executes the software. A line or circuit may be implemented by a single device or unit, or multiple devices or units, or a chipset or a processor.
[0091] A list of additional embodiments of the disclosed subject matter that follow is as follows:
[0092] 1. A transmission device (STA1) comprising a circuit configured to:
[0093] - Establish a two-way link with a receiving device (STA2) for the transmission and reception of data units;
[0094] - Transmit data units stored in a transmission queue for transmission to the receiving device using the two-way link; and
[0095] - Immediately after transmission or if no response indicating that the transmitting device should retransmit the data unit is received from the receiving device, delete the transmitted data unit from the transmission queue.
[0096] 2. The transmitting device according to Embodiment 1,
[0097] wherein the circuit is configured to: delete the transmitted data unit from the transmission queue immediately after the transmission of the data unit, regardless of whether a response is received from the receiving device, in particular within the response period, the response indicating whether the data unit has been erroneously received or decoded by the receiving device.
[0098] 3. The transmitting device according to Embodiment 1 or 2,
[0099] wherein the circuit is configured to:
[0100] - If a response is received from the receiving device, in particular within the response period, retransmit the data unit, the response indicating that the transmitting device should retransmit the data unit; and
[0101] - Immediately after the retransmission, delete the data unit from the transmission queue.
[0102] 4. The transmitting device according to Embodiment 3,
[0103] wherein the circuit is configured to: transmit the data units stored in the transmission queue in a first-in-first-out order and retransmit any data unit before transmitting the subsequent data units stored in the transmission queue.
[0104] 5. The transmitting device according to any one of the foregoing embodiments,
[0105] wherein the circuit is configured to: adjust one or more transmission parameters of the link to the receiving device based on a response from the receiving device suggesting transmission parameters to be used and / or based on a received response from the receiving device indicating that the transmitting device should retransmit the data unit and / or indicating that the data unit has been erroneously received or decoded and / or indicating that the data unit has been correctly received or decoded by the receiving device.
[0106] 6. The transmitting device according to any one of the foregoing embodiments,
[0107] wherein the circuit is configured to: aggregate one or more data units belonging to a bi-directional flow into an aggregated data unit and transmit the aggregated data unit, the one or more data units particularly having a flow identifier or stream identifier identifying the bi-directional flow.
[0108] 7. The transmitting device according to any one of the foregoing embodiments,
[0109] Wherein, the circuit is configured to: aggregate one or more data units belonging to a two-way traffic and data units not belonging to the two-way traffic into an aggregated data unit and transmit the aggregated data unit, and each data unit carries a traffic identifier or a flow identifier for identifying a traffic type.
[0110] 8. The transmission device according to any one of the foregoing embodiments,
[0111] Wherein, the circuit is configured to:
[0112] - Detect whether the two-way link is available and operating; and
[0113] - If it is detected that the two-way link is unavailable and / or not operating, discard or reduce the transmission priority of the remaining data units stored in the transmission queue and belonging to the two-way traffic.
[0114] 9. The transmission device according to embodiment 8,
[0115] Wherein, the circuit is configured to detect that the two-way link is unavailable and / or not operating by detecting one or more of the following:
[0116] - A loss response to the transmission of one or more data units from the receiving device within a response period;
[0117] - Lost data units from the receiving device via the reverse link of the two-way link;
[0118] - Receiving one or more error data units from the receiving device via the reverse link of the two-way link;
[0119] - Receiving at least a predefined number of error data units from the receiving device via the reverse link of the two-way link;
[0120] - Receiving a response from the receiving device indicating that multiple data units or all data units transmitted by the transmission device are in error; and
[0121] - Losing reverse link establishment.
[0122] 10. The transmission device according to any one of the foregoing embodiments,
[0123] Wherein, the circuit is configured to: as part of the establishment of the two-way link, transmit one or more of the following to the receiving device or include one or more of the following in or add one or more of the following to one or more data units:
[0124] - A two-way identifier indicating which of the one or more data units belong to the two-way traffic;
[0125] - A traffic identifier and / or a stream identifier that indicates the traffic or transport stream of a bidirectional traffic;
[0126] - A traffic identifier and / or a stream identifier that indicates the type of the traffic or transport stream;
[0127] - A receiver identifier that indicates the receiving device to which one or more bidirectional data units are addressed;
[0128] - An acknowledgment policy identifier that indicates which acknowledgment policy the receiving device applies to acknowledge the reception of a data unit;
[0129] - An error rate threshold above which the receiving device will transmit a response to the transmitting device indicating that the transmitting device retransmits the data unit; and
[0130] - A link quality threshold below which the receiving device will transmit a response including a suggestion for new transmission parameters.
[0131] 11. The transmitting device according to any one of the foregoing embodiments,
[0132] wherein the circuit is configured to: agree with the receiving device on an acknowledgment policy, the acknowledgment policy indicating whether the receiving device should apply a two-state or a three-state acknowledgment policy,
[0133] wherein, according to the two-state acknowledgment policy, a response should be transmitted by the receiving device, the response indicating whether the data unit has been correctly received and decoded as a first state or indicating whether the data unit has been incorrectly received and / or decoded as a second state, and
[0134] wherein, according to the three-state acknowledgment policy, a response should be transmitted by the receiving device, the response indicating whether the data unit should be retransmitted as a third state in addition to the first state and the second state.
[0135] 12. The transmitting device according to any one of the foregoing embodiments,
[0136] wherein the circuit is configured to perform one or more of the following:
[0137] - Set the life cycle of the data unit of the bidirectional traffic to zero;
[0138] - Set the response window size to one, the response window size defining the number of data units for which the receiving device reports the reception status in the response;
[0139] - Do not allow segmentation of the data unit; and
[0140] - Alternately transmit the data unit and an acknowledgment request for requesting the receiving device to transmit a response.
[0141] 13. A receiving device (STA2) includes circuitry configured to:
[0142] - Establish a two-way link with a transmitting device (STA1) for transmission and reception of data units;
[0143] - Receive data units from the transmitting device using the two-way link; and
[0144] - Provide the received data units to higher layer processing regardless of their reception status, according to which the data units are received and decoded correctly or incorrectly, wherein a reception status indicator indicating the reception status is provided to higher layer processing together with each data unit.
[0145] 14. The receiving device according to embodiment 13,
[0146] wherein incorrect data units are provided to higher layer processing by providing empty or invalid data units.
[0147] 15. The receiving device according to embodiment 13 or 14,
[0148] wherein the circuitry is configured to: as part of higher layer processing, ignore or correct data units for which the reception status indicator indicates that they are received and / or decoded incorrectly.
[0149] 16. The receiving device according to any one of embodiments 13 to 15,
[0150] wherein the circuitry is configured to: as part of establishing the two-way link, receive one or more of the following from the transmitting device or derive one or more of the following from one or more data units:
[0151] - A two-way identifier indicating whether one or more data units belong to two-way traffic and which of the one or more data units belong to two-way traffic;
[0152] - A traffic identifier and / or a stream identifier indicating the traffic or transport stream of two-way traffic;
[0153] - A receiver identifier indicating the receiving device to which one or more two-way data units are addressed;
[0154] - An acknowledgment policy identifier indicating which acknowledgment policy the receiving device applies to acknowledge reception of data units;
[0155] - An error rate threshold above which the receiving device will transmit a response to the transmitting device indicating that the transmitting device retransmit the data units; and
[0156] - A link quality threshold below which the receiving device will transmit a response including a suggestion for new transmission parameters.
[0157] 17. The receiving device according to any one of embodiments 13 to 16,
[0158] wherein the circuit is configured to:
[0159] - Derive from a correctly received and decoded first data unit a traffic identifier and / or a stream identifier indicating a traffic or a transmission stream and a receiver identifier indicating a receiving device to which one or more data units are addressed; and
[0160] - For one or more subsequently received data units, assuming that they belong to the same traffic or transmission stream and are addressed to the same receiving device, the one or more subsequently received data units particularly include all subsequent data units in a physical layer protocol data unit (PPDU).
[0161] 18. The receiving device according to any one of embodiments 13 to 17,
[0162] wherein the circuit is configured to: if a data unit transmitted from a transmitting device is received, transmit to the transmitting device a response suggesting transmission parameters to be used by the transmitting device, and / or transmit to the transmitting device a response indicating that the transmitting device should retransmit the data unit and / or indicating that the data unit has been erroneously received or decoded by the receiving device and / or indicating that the data unit has been correctly received.
[0163] 19. The receiving device according to embodiment 18,
[0164] wherein the circuit is configured to: transmit to the transmitting device a response indicating that the transmitting device should retransmit the data unit only when an error rate threshold of the data unit has been exceeded.
[0165] 20. A transmission method, comprising:
[0166] - Establishing a two-way link with a receiving device (STA2) for the transmission and reception of data units;
[0167] - Transmitting, using the two-way link, data units stored in a transmission queue for transmission to the receiving device; and
[0168] - Immediately after transmission or if a response indicating that the transmitting device (STA1) should retransmit the data unit is not received from the receiving device, deleting the transmitted data unit from the transmission queue.
[0169] 21. A receiving method, comprising:
[0170] - Establish a two-way link with a transmission device (STA1) for the transmission and reception of data units;
[0171] - Receive data units from the transmission device using the two-way link; and
[0172] - Provide the received data units to higher layer processing regardless of their reception status, and according to the higher layer processing, receive and decode the data units correctly or incorrectly, wherein a reception status indicator indicating the reception status is provided to the higher layer processing together with each data unit.
[0173] 22. A non-transitory computer-readable recording medium storing a computer program product that, when executed by a processor, causes the method according to Embodiment 20 or 21 to be performed.
[0174] 23. A computer program comprising program code means that, when the computer program is executed on a computer, cause the computer to perform the steps of the method according to Embodiment 20 or 21.
Claims
1. A transmission device, comprising a circuit, the circuit being configured to: - Establish a two-way link with a receiving device for the transmission and reception of data units; - Use the two-way link to transmit data units stored in a transmission queue for transmission to the receiving device; and - Immediately delete the transmitted data units from the transmission queue after the transmission of the data units or if a response indicating that the transmission device retransmits the data units is not received from the receiving device.
2. The transmission device according to claim 1, Among them, the circuit being configured to: Immediately delete the transmitted data units from the transmission queue after the transmission of the data units, regardless of whether a response is received from the receiving device, especially within a response period, the response indicating whether the data units have been erroneously received or decoded by the receiving device.
3. The transmission device according to claim 1, Among them, the circuit being configured to: - If a response is received from the receiving device, especially within a response period, retransmit the data units, the response indicating that the transmission device retransmits the data units; and - Immediately delete the data units from the transmission queue after the retransmission of the data units.
4. The transmission device according to claim 3, Among them, the circuit being configured to: Transmit the data units stored in the transmission queue in a first-in-first-out order and retransmit any data unit before transmitting subsequent data units stored in the transmission queue.
5. The transmission device according to claim 1, Among them, the circuit being configured to: Adjust one or more transmission parameters of the link to the receiving device based on a response from the receiving device suggesting transmission parameters to be used and / or based on a received response from the receiving device indicating that the transmission device retransmits data units and / or indicating that data units have been erroneously received or decoded and / or indicating that data units have been correctly received or decoded by the receiving device.
6. The transmission device according to claim 1, Among them, the circuit being configured to: Aggregate one or more data units belonging to a two-way traffic into an aggregated data unit and transmit the aggregated data unit, the one or more data units particularly having a traffic identifier or a flow identifier identifying the two-way traffic.
7. The transmission device according to claim 1, Among them, the circuit being configured to: - Detect whether the two-way link is available and operational; and - If it is detected that the two-way link is unavailable and / or not operational, discard or reduce the transmission priority of the remaining data units stored in the transmission queue and belonging to the two-way traffic.
8. The transmission device according to claim 7, Among them, the circuit being configured to: Detect that the two-way link is unavailable and / or not operational by detecting one or more of the following: - A lost response to the transmission of one or more data units from the receiving device within a response period; - Lost data units from the receiving device via the reverse link of the two-way link; - The reception of one or more erroneous data units from the receiving device via the reverse link of the two-way link; - Receiving, via the reverse link of the bidirectional link, at least a predefined number of erroneous data units from the receiving device; - Receiving a response from the receiving device, the response indicating that multiple data units or all data units transmitted by the transmitting device are erroneous; And - Losing reverse link establishment.
9. The transmitting device according to claim 1, Among them, The circuit is configured to: as part of the establishment of the bidirectional link, transmit one or more of the following to the receiving device or include one or more of the following in or add one or more of the following to one or more data units: - A bidirectional identifier indicating which of the one or more data units belong to bidirectional traffic; - A traffic identifier and / or a stream identifier indicating the traffic or transport stream of the bidirectional traffic; - A traffic identifier and / or a stream identifier indicating the type of traffic or transport stream; - A receiver identifier indicating the receiving device to which one or more bidirectional data units are addressed; - An acknowledgment policy identifier indicating which acknowledgment policy the receiving device applies to acknowledge the receipt of data units; - An error rate threshold above which the receiving device will transmit a response to the transmitting device indicating that the transmitting device retransmits the data unit; And - A link quality threshold below which the receiving device will transmit a response including a suggestion for new transmission parameters.
10. The transmitting device according to claim 1, Among them, The circuit is configured to: agree with the receiving device on an acknowledgment policy, the acknowledgment policy indicating whether the receiving device should apply a two-state or a three-state acknowledgment policy, wherein, according to the two-state acknowledgment policy, the receiving device should transmit a response indicating whether the data unit has been correctly received and decoded as a first state or indicating whether the data unit has been erroneously received and / or decoded as a second state, and wherein, according to the three-state acknowledgment policy, the receiving device should transmit a response indicating whether the data unit should be retransmitted as a third state in addition to the first state and the second state.
11. The transmitting device according to claim 1, Among them, The circuit is configured to perform one or more of the following: - Set the lifecycle of the data units of the bidirectional traffic to zero; - Set the response window size to one, the response window size defining the number of data units for which the receiving device reports the reception status in the response; - Do not allow segmentation of data units; And - Alternately transmit data units and acknowledgment requests requesting the receiving device to transmit a response.
12. A receiving device, comprising a circuit configured to: - Establish a bidirectional link with a transmitting device for the transmission and reception of data units; - Receive data units from the transmitting device using the bidirectional link; and - Provide the received data unit to higher layer processing regardless of the reception status of the data unit, and receive and decode the data unit correctly or incorrectly according to the higher layer processing, wherein, Provide a reception status indicator indicating the reception status to the higher layer processing together with each data unit.
13. The receiving device according to claim 12, Among them, The circuit is configured to, as part of the higher layer processing, ignore or correct data units for which the reception status indicator indicates that the data units have been received and / or decoded erroneously.
14. The receiving device according to claim 12, Among them, The circuit is configured to, as part of the establishment of the bi-directional link, receive one or more of the following from the transmitting device or derive one or more of the following from one or more data units: - A bi-directional identifier indicating whether the one or more data units belong to bi-directional traffic and which of the one or more data units belong to the bi-directional traffic; - A traffic identifier and / or a stream identifier indicating the traffic or transport stream of the bi-directional traffic; - A receiver identifier indicating the receiving device to which one or more bi-directional data units are addressed; - An acknowledgement policy identifier indicating which acknowledgement policy the receiving device applies to acknowledge the reception of data units; - An error rate threshold above which the receiving device will transmit a response to the transmitting device indicating that the transmitting device retransmits the data unit; and - A link quality threshold below which the receiving device will transmit a response including a suggestion for new transmission parameters.
15. The receiving device according to claim 12, Among them, The circuit is configured to: - Derive a traffic identifier and / or a stream identifier indicating the traffic or transport stream from a first data unit that has been received and decoded correctly and a receiver identifier indicating the receiving device to which one or more data units are addressed; and - For one or more subsequently received data units, assume that the data units belong to the same traffic or transport stream and are addressed to the same receiving device, the one or more subsequently received data units particularly including all subsequent data units in a physical layer protocol data unit (PPDU).
16. The receiving device according to claim 12, Among them, The circuit is configured to: if a data unit transmitted from the transmitting device is received, transmit a response to the transmitting device suggesting transmission parameters to be used by the transmitting device, and / or transmit a response to the transmitting device indicating that the transmitting device retransmits the data unit and / or indicating that the data unit has been received or decoded erroneously by the receiving device and / or indicating that the data unit has been received correctly.
17. The receiving device according to claim 16, Among them, The circuit is configured to transmit a response to the transmitting device indicating that the transmitting device retransmits the data unit only when the error rate threshold of the data unit has been exceeded.
18. A transmission method, comprising: - Establishing a bi-directional link with a receiving device for the transmission and reception of data units; - Transmitting, using the bi-directional link, data units stored in a transmission queue for transmission to the receiving device; and - Immediately deleting the transmitted data units from the transmission queue after the transmission of the data units or if a response indicating that the transmitting device retransmits the data unit is not received from the receiving device.
19. A receiving method, comprising: - Establish a two-way link with a transmission device for the transmission and reception of data units; - Receive data units from the transmission device using the two-way link; And - Provide the received data units for higher layer processing, regardless of the reception status of the data units, and receive and decode the data units correctly or incorrectly according to the higher layer processing, wherein a reception status indicator indicating the reception status is provided to the higher layer processing together with each data unit.
20. A non-transitory computer-readable recording medium storing a computer program product, the computer program product, when executed by a processor, causes the method according to claim 18 or 19 to be executed.