Method, apparatus, device and storage medium for transmitting data
By establishing direct links between multiple terminals in an 802.11be network, controlling data transmission time alignment, and using CTS-to-AP/CTS-to-PeerSTA message transmission parameters, the interference problem between multiple terminals is solved, network transmission efficiency and data reliability are improved, and the requirements for high throughput and low latency are met.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHENGDU XGIMI TECH CO LTD
- Filing Date
- 2021-12-01
- Publication Date
- 2026-07-03
AI Technical Summary
In 802.11be networks, interference between adjacent bands in direct links of multi-link terminals and links connected to access points leads to low data transmission efficiency, making it difficult to meet the requirements of high throughput and low latency.
By establishing direct links between multi-link terminals, controlling data transmission time alignment, and using CTS-to-AP/CTS-to-PeerSTA message transmission parameters, interference is avoided, data transmission order is optimized, and timers are used to manage data transmission between links.
It reduces data interference between direct links and traditional links, improves network transmission efficiency, reduces packet loss rate, and meets the requirements of high throughput and low latency.
Smart Images

Figure CN116367356B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of wireless communication, and more particularly to a method, apparatus, device, and storage medium for transmitting data. Background Technology
[0002] 802.11be networks, also known as Extremely High Throughput (EHT) networks, achieve extremely high throughput through a range of system features and multiple mechanisms. With the continued growth in the use of Wireless Local Area Networks (WLANs), providing wireless data services in many environments, such as homes, businesses, and hotspots, is becoming increasingly important. In particular, video traffic will continue to be a major traffic type in many WLAN deployments. The throughput requirements for these applications are constantly evolving due to the emergence of 4K and 8K video (uncompressed rates of 20Gbps). New high-throughput, low-latency applications such as virtual reality or augmented reality, gaming, remote offices, and cloud computing will proliferate (e.g., latency of less than 5 milliseconds for real-time gaming).
[0003] Given the high throughput and stringent real-time latency requirements of these applications, users expect higher throughput, greater reliability, less latency and jitter, and higher power efficiency when supporting their applications via WLAN. Users also expect improved integration with Time-Sensitive Networking (TSN) to support applications on heterogeneous Ethernet and wireless LANs. 802.11be networks are designed to ensure the competitiveness of WLANs by further increasing overall throughput and reducing latency, while ensuring backward compatibility and coexistence with older technology standards. 802.11 compliant devices operate in the 2.4 GHz, 5 GHz, and 6 GHz bands. Summary of the Invention
[0004] Terminals can reduce data transmission relay links, improve transmission rate, and reduce transmission latency by establishing direct connection links, also known as Direct Targeting Links (TDLS). With the introduction of multi-link technology, a device with multi-link capability (i.e., a multi-link device) can operate on more than two links simultaneously. Multi-link terminals can establish multiple direct connection links, further improving transmission rate and reducing transmission latency by simultaneously using multi-link and direct connection technologies. However, when a multi-link terminal establishes a direct connection on a single link, if the direct connection link and other links connected to the access point are in adjacent frequency bands, mutual transmission will cause interference. In view of this, embodiments of this application provide a method, apparatus, device, and storage medium for transmitting data.
[0005] In a first aspect, embodiments of this application provide a method for transmitting data, including:
[0006] The first terminal device and the second terminal device establish a direct link on the first link. Both the first terminal device and the second terminal device are multi-link devices, and both the first terminal device and the second terminal device are connected to the access device on the second link. The first link and the second link are NSTR links to each other.
[0007] If the first terminal device needs to send data to the second terminal device on the first link and also needs to send data to the access device on the second link, then the first terminal device will align the data transmission start time on the first link and the second link and send data simultaneously.
[0008] If the first terminal device only needs to send data to the second terminal device on the first link, then at the same time the first terminal device starts sending data to the second terminal device on the first link, it sends a first message to the access device on the second link. The first message contains a first parameter, which is set according to the sending duration of the first terminal device on the first link.
[0009] If the first terminal device only needs to send data to the access device on the second link, then at the same time the first terminal device starts sending data to the access device on the second link, it sends a second message to the second terminal device on the first link. The second message contains a second parameter, which is based on the sending duration of the first terminal device on the second link.
[0010] In one possible implementation, the first message is a CTS-to-AP message, the first parameter is the Duration parameter in the CTS-to-AP message, and the value of the Duration parameter in the CTS-to-AP message is set to the transmission duration of the first terminal device on the first link; the second message is a CTS-to-PeerSTA message, the second parameter is the Duration parameter in the CTS-to-PeerSTA message, and the value of the Duration parameter in the CTS-to-PeerSTA message is set to the transmission duration of the first terminal device on the second link.
[0011] One possible implementation also includes:
[0012] After receiving the first message, the access device sets and starts Timer1 according to the first parameter in the first message, and transmits data according to at least one of the following:
[0013] During the operation of Timer1, the access device does not send data to the first terminal device on the second link;
[0014] During the operation of Timer1, the access device does not send data to the second terminal device on the second link, or the access device determines the duration of sending data packets on the second link based on the remaining duration of Timer1, so that the data packets sent by the access device to the second terminal device on the second link end at the same time as the data packets sent by the first terminal device to the second terminal device on the first link.
[0015] One possible implementation also includes:
[0016] After receiving the second message, the second terminal device sets and starts timer2 according to the second parameter in the second message. While timer2 is running, the second terminal device does not send data to the first terminal device on the first link.
[0017] In one possible implementation, establishing a direct link between the first terminal device and the second terminal device on the first link includes:
[0018] The direct connection initiator sends a direct connection link establishment request message to the direct connection responder on the first link or the second link. The direct connection link establishment request message contains link information, which is set according to the link settings requested by the direct connection initiator to establish the direct connection link. The direct connection initiator is the first terminal device and the direct connection responder is the second terminal device, or the direct connection initiator is the second terminal device and the direct connection responder is the first terminal device.
[0019] The direct link initiator receives a direct link establishment response message sent by the direct link responder on the first link or the second link, wherein the direct link establishment response message indicates agreement to establish a direct link on the first link;
[0020] The direct link initiator sends a direct link establishment confirmation message to the direct link responder on the first or second link.
[0021] In one possible implementation, the link information includes parameters BSSID, TDLS initiator, and TDLSresponder. The link information, based on the link settings for establishing a direct link according to the direct link initiator's request, includes:
[0022] If a request is made to establish a direct link on the first link, the parameter BSSID is set to the address of the logical entity operating on the first link in the access device, the parameter TDLS initiator is set to the address of the logical entity operating on the first link in the direct link initiator, and the parameter TDLS responder is set to the address of the logical entity operating on the first link in the direct link responder.
[0023] If a request is made to establish a direct link on the second link, the parameter BSSID is set to the address of the logical entity operating on the second link in the access device, the parameter TDLS initiator is set to the address of the logical entity operating on the second link in the direct link initiator, and the parameter TDLS responder is set to the address of the logical entity operating on the second link in the direct link responder.
[0024] If a request is made to establish a direct link on the first link and the second link, the BSSID parameter is set to the address of the access device, the TDLS initiator parameter is set to the address of the direct link initiator, and the TDLS responder parameter is set to the address of the direct link responder.
[0025] Secondly, embodiments of this application provide a data transmission apparatus, including a processing module, the processing module being configured to perform the following steps:
[0026] A direct link is established between the first terminal device and the second terminal device on the first link. Both the first terminal device and the second terminal device are multi-link devices, and both the first terminal device and the second terminal device are connected to the access device on the second link. The first link and the second link are NSTR links to each other.
[0027] If the first terminal device needs to send data to the second terminal device on the first link and also needs to send data to the access device on the second link, then the first terminal device aligns the data transmission start time on the first link and the second link and sends the data simultaneously.
[0028] If the first terminal device only needs to send data to the second terminal device on the first link, then at the same time the first terminal device starts sending data to the second terminal device on the first link, it sends a first message to the access device on the second link. The first message contains a first parameter, which is set according to the sending duration of the first terminal device on the first link.
[0029] If the first terminal device only needs to send data to the access device on the second link, then at the same time the first terminal device starts sending data to the access device on the second link, it sends a second message to the second terminal device on the first link. The second message contains a second parameter, which is based on the sending duration of the first terminal device on the second link.
[0030] In one possible implementation, the first message is a CTS-to-AP message, the first parameter is the Duration parameter in the CTS-to-AP message, and the value of the Duration parameter in the CTS-to-AP message is set to the transmission duration of the first terminal device on the first link; the second message is a CTS-to-PeerSTA message, the second parameter is the Duration parameter in the CTS-to-PeerSTA message, and the value of the Duration parameter in the CTS-to-PeerSTA message is set to the transmission duration of the first terminal device on the second link.
[0031] In one possible implementation, the processing module is further configured to perform the following steps:
[0032] After receiving the first message through the access device, the timer Timer1 is set and started according to the first parameter in the first message, and data is transmitted according to at least one of the following:
[0033] During Timer1 operation, the access device does not send data to the first terminal device on the second link;
[0034] During the operation of Timer1, the access device may either not send data to the second terminal device on the second link, or determine the duration of sending data packets on the second link based on the remaining duration of Timer1, so that the data packets sent by the access device to the second terminal device on the second link end at the same time as the data packets sent by the first terminal device to the second terminal device on the first link.
[0035] In one possible implementation, the processing module is further configured to perform the following steps:
[0036] After receiving the second message through the second terminal device, the second terminal device sets and starts the timer2 according to the second parameter in the second message. During the operation of the timer2, the second terminal device does not send data to the first terminal device on the first link.
[0037] In one possible implementation, establishing a direct link between the first terminal device and the second terminal device on the first link includes:
[0038] The direct connection initiator sends a direct connection link establishment request message to the direct connection responder on the first or second link. The direct connection link establishment request message contains link information, which is based on the link settings requested by the direct connection initiator to establish the direct connection link. The direct connection initiator is the first terminal device and the direct connection responder is the second terminal device, or the direct connection initiator is the second terminal device and the direct connection responder is the first terminal device.
[0039] The direct link initiator receives a direct link establishment response message sent by the direct link responder on the first or second link, and the direct link establishment response message indicates agreement to establish a direct link on the first link.
[0040] The direct link initiator sends a direct link establishment confirmation message to the direct link responder on the first or second link.
[0041] In one possible implementation, the link information includes parameters BSSID, TDLS initiator, and TDLSresponder. The link information, based on the link settings for establishing a direct link according to the direct link initiator's request, includes:
[0042] If a request is made to establish a direct link on the first link, the parameter BSSID is set to the address of the logical entity operating on the first link in the access device, the parameter TDLS initiator is set to the address of the logical entity operating on the first link in the direct link initiator, and the parameter TDLS responder is set to the address of the logical entity operating on the first link in the direct link responder.
[0043] If a request is made to establish a direct link on the second link, the parameter BSSID is set to the address of the logical entity operating on the second link in the access device, the parameter TDLS initiator is set to the address of the logical entity operating on the second link in the direct link initiator, and the parameter TDLS responder is set to the address of the logical entity operating on the second link in the direct link responder.
[0044] If a request is made to establish a direct link on the first link and the second link, the BSSID parameter is set to the address of the access device, the TDLS initiator parameter is set to the address of the direct link initiator, and the TDLS responder parameter is set to the address of the direct link responder.
[0045] Thirdly, embodiments of this application provide a data transmission device, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the steps of the method described in the first aspect or a possible implementation of the first aspect.
[0046] Fourthly, embodiments of this application provide a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the steps of the method described in the first aspect or a possible implementation of the first aspect.
[0047] Fifthly, embodiments of this application provide a computer program product including instructions that, when executed by a processor, implement the steps of the method described in the first aspect or a possible implementation of the first aspect.
[0048] It should be noted that the apparatus described in the second aspect, the device described in the third aspect, the storage medium described in the fourth aspect, and the computer program product described in the fifth aspect are used to execute the method provided in the first aspect, and thus can achieve the same beneficial effects as the method described in the first aspect. The embodiments of this application will not be described in detail.
[0049] This application embodiment controls the data transmission of multi-link terminals with established direct links. By setting control frames, interference between direct links and traditional links in data transmission and reception is avoided, reducing packet loss rate and thus improving network transmission efficiency. Attached Figure Description
[0050] Figure 1 A schematic diagram illustrating a data transmission method provided in an embodiment of this application;
[0051] Figure 2 This is a schematic diagram of the device structure for transmitting data provided in an embodiment of this application. Detailed Implementation
[0052] To enable those skilled in the art to better understand the technical solutions in this application, the technical solutions in the embodiments of this application will be clearly and completely described below. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. It should be understood that the specific embodiments described herein are merely used to explain this application and are not intended to limit this application. Although the disclosure in this application is introduced according to one or several exemplary examples, it should be understood that each aspect of these disclosures can also constitute a complete technical solution on its own. Where there is no conflict, the following embodiments and features in the embodiments can be combined with each other.
[0053] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. Words such as "including" or "contains" mean that the element or object preceding the word covers the element or object listed after the word and its equivalents, without excluding other elements or objects. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can mean: a, b, c, a and b, a and c, b and c, or a and b and c, where a, b, and c can be single or multiple. In addition, in order to clearly describe the technical solutions of the embodiments of this application, the terms "first" and "second" are used in the embodiments of this application to distinguish the same or similar items with basically the same function and effect. Those skilled in the art can understand that the terms "first" and "second" do not limit the quantity or execution order, but are only used for illustration and to distinguish the described objects. They do not indicate any order, nor do they represent a special limitation on the number of devices in the embodiments of this application, and cannot constitute any limitation on the embodiments of this application.
[0054] In this application, the terms "example" or "for example" are used to indicate that something is being described as an example, illustration, or illustration. Any embodiment or design described as "example" or "for example" in this application should not be construed as being more preferred or advantageous than other embodiments or designs. Rather, the use of the terms "example" or "for example" is intended to present the relevant concepts in a specific manner.
[0055] It should be noted that a multi-link device contains multiple logical entities, each transmitting data through a separate link, and each logical entity contains an independent data transceiver module. A single-link device has only one logical entity and only one MAC address, while a multi-link device has one MAC address, and each logical entity belonging to the multi-link device has its own MAC address. For example, if a multi-link device operates with three logical entities, then there are four MAC addresses on this physical device: one for the multi-link device and one for each of the three logical entities.
[0056] In this embodiment of the application, the access device may be an access point (AP), a router, or other devices. This embodiment of the application uses an access point as an example for illustration, and the logical entity belonging to the terminal device is called a logical terminal, while the logical entity belonging to the access point is called a logical access point.
[0057] Assume that terminal devices Non-AP MLD1 and Non-APMLD2 both establish connections with access point AP MLD. Non-AP MLD1 has two logical terminals STA1 and STA2, and Non-APMLD2 has two logical terminals STA3 and STA4. AP MLD has two logical access points AP1 and AP2. STA1 and STA3 establish connections with AP1 on link 1, and STA2 and STA4 establish connections with AP2 on link 2. It should be noted that Non-AP MLD1, Non-APMLD2, and AP MLD can contain more than two logical entities, such as three or four logical entities, and the number of logical entities contained in each can be different.
[0058] Currently, Non-AP MLD1 and Non-AP MLD2 can directly transmit data by establishing a direct link. In the following embodiment, Non-AP MLD1 is the direct link initiator and Non-AP MLD2 is the direct link responder. In other embodiments, Non-AP MLD1 can also act as the direct link responder and Non-AP MLD2 as the direct link initiator. For example, the method for Non-AP MLD1 and Non-AP MLD2 to establish a direct link includes the following steps:
[0059] S1001. Non-AP MLD1 sends a direct link establishment request message (such as a TDLS setup request message) to Non-APMLD2. Specifically, Non-AP MLD1 first sends the direct link establishment request message to AP MLD, and then AP MLD sends it to Non-APMLD2. That is, STA1 or STA2 sends the direct link establishment request message to AP1 or AP2. After receiving the direct link establishment request message, AP1 or AP2 sends a direct link establishment request message to Non-APMLD2. This message can be sent by AP1 to STA3 or by AP2 to STA4.
[0060] The direct link establishment request message may include capability information and link information, which is the link configuration based on the Non-AP MLD1 request to establish a direct link. In some embodiments, if the Non-AP MLD1 request establishes a direct link on link1, the link information includes the parameters shown in Table 1.
[0061] Table 1
[0062] parameter illustrate BSSID Basic Service Set Identifier, set to the address of AP1. TDLS initiator Set the direct connection initiator address to the address of STA1. TDLS responder Set the direct responder address to the STA3 address.
[0063] If Non-AP MLD1 requests to establish a direct link on link2, the link information includes the parameters shown in Table 2.
[0064] Table 2
[0065] parameter illustrate BSSID The basic service set identifier is set to the address of AP2. TDLS initiator Set the direct connection initiator address to STA2's address. TDLS responder Set the direct responder address to the STA4 address.
[0066] If the Non-AP MLD1 request establishes direct links on both link1 and link2, the link information includes the parameters shown in Table 3. The direct link establishment request message also includes the parameter Multi-link element, which includes the parameters shown in Table 4.
[0067] Table 3
[0068] parameter illustrate BSSID The basic service set identifier is set to the address of AP MLD1. TDLS initiator The direct connection initiator address is set to the address of STA MLD1. TDLS responder Set the direct responder address to the address of STA MLD2.
[0069] Table 4
[0070] parameter illustrate STA1 profile STA1's capabilities and / or operating parameters STA2 profile STA2's capabilities and / or operating parameters
[0071] S1002. Non-AP MLD2 sends a direct link establishment response message (such as a TDLS setup response message) to Non-APMLD1. The direct link establishment response message indicates whether or not the establishment of a direct link is agreed upon. Specifically, Non-APMLD2 can send the direct link establishment response message directly to Non-APMLD1, or it can be sent to Non-APMLD1 through APMLD. That is, Non-AP MLD2 first sends it to AP MLD, and then AP MLD sends it to Non-AP MLD1.
[0072] For example, Non-AP MLD2 sends a direct link establishment response message in one of the following ways, but not limited to:
[0073] 1) If it is agreed to establish a direct link on link1, STA3 will directly send a direct link establishment response message to STA1.
[0074] 2) If it is agreed to establish a direct link on link2, STA4 will directly send a direct link establishment response message to STA2.
[0075] 3) If it is agreed to establish a direct link on link1 and link2, STA3 will send a direct link establishment response message to STA1 directly, or STA4 will send a direct link establishment response message to STA2 directly.
[0076] 4) If a direct link is agreed to be established, STA3 will send a direct link establishment response message to AP1, or STA4 will send a direct link establishment response message to AP2, and then AP1 will send it to STA1, or AP2 will send it to STA2.
[0077] 5) If the establishment of a direct link is not agreed, STA3 will send a direct link establishment response message to STA1, or STA4 will send a direct link establishment response message to STA2.
[0078] After receiving the direct link establishment response message, if the direct link establishment response message indicates that the direct link establishment is agreed to be established, then Non-AP MLD1 sends a direct link establishment confirmation message (such as a TDLS setup confirm message) to Non-AP MLD2; otherwise, it may not send a direct link establishment confirmation message to Non-AP MLD2.
[0079] For example, the Non-AP MLD1 sends a direct link establishment confirmation message in one of the following ways, but not limited to:
[0080] 1) If a direct link is established on link1, STA1 will send a direct link establishment confirmation message to STA3 through AP1.
[0081] 2) If a direct link is established on link2, STA2 will send a direct link establishment confirmation message to STA4 through AP2.
[0082] 3) If a direct link is established on link1 and link2, STA1 will send a direct link establishment confirmation message to STA3 through AP1, or STA2 will send a direct link establishment confirmation message to STA4 through AP2.
[0083] 4) If a direct link is established, STA1 will send a direct link establishment confirmation message to STA3 via AP1, or STA2 will send a direct link establishment confirmation message to STA4 via AP2.
[0084] In this embodiment, only a portion of the links between Non-APMLD1 and Non-APMLD2 are directly connected, and these directly connected links and other links connected to the APMLDs are NSTR (non-simultaneous transmit / receive) links. An NSTR link indicates that due to interference, data cannot be transmitted on one link while simultaneously received on the other link on the other. In this embodiment, it is assumed that link1 and link2 are NSTR links. For ease of description, it is assumed that a direct link is established on link1, but not on link2.
[0085] After a direct link is established between Non-APMLD1 and Non-APMLD2 on link1, data can be transmitted directly on link1. In this embodiment, Non-APMLD1 is the data sender and Non-APMLD2 is the data receiver. In other embodiments, Non-APMLD1 can also be the data receiver and Non-APMLD2 can also be the data sender.
[0086] If STA1 needs to send data to STA3 on link1, and STA2 needs to send data to AP2 on link2, then Non-APMLD1 controls STA1 and STA2 to align their data transmission start times and send data simultaneously on both links.
[0087] If STA1 needs to send data to STA3 on link1, but STA2 does not need to send data to AP2 on link2, then while STA1 starts sending data to STA3 on link1, it simultaneously sends a first message to AP2 on link2. This first message contains a first parameter, which is set according to the transmission duration of STA1 on link1. It should be noted that the value of this first parameter can be equal to the transmission duration of STA1 on link1, or it can be the transmission duration of STA1 on link1 minus transmission delays, as long as it indicates the time during which STA2 cannot receive data on link2. In some embodiments, the first message can be a CTS-to-AP message, and the Duration parameter in the CTS-to-AP message can be used as the first parameter, set to the transmission duration of STA1 on link1. For example, the CTS-to-AP message contains the parameters shown in Table 5.
[0088] Table 5
[0089]
[0090] After receiving the first message, AP2 sets and starts Timer1 according to the first parameter in the first message, and transmits data according to at least one of the following:
[0091] 1) Do not send data to STA2 while Timer1 is running.
[0092] Specifically, during the operation of Timer1, when data needs to be sent to STA2, the data is buffered and sent to STA2 only after Timer1 expires. "Retrying to send data" can mean that after Timer1 expires, the channel is checked for idleness or other restrictions on transmission (e.g., the NAV (Network Allocation Vector) value is not zero, or AP2 is in a quiet time period (i.e., AP2 is not sending or receiving data)). Data is sent only when the channel is idle and there are no other restrictions on transmission.
[0093] 2) While Timer1 is running, no data is sent to STA4, or the duration of data packet transmission is determined based on the remaining duration of Timer1, ensuring that the data packet sent to STA4 ends at the same time as the data packet sent from STA1 to STA3 on link1. It should be noted that "same end time" here can mean exactly the same or approximately the same. "Approximately the same" means the difference between their end times is within a certain range, such as less than or equal to 12 microseconds.
[0094] Specifically, during the operation of Timer1, when data needs to be sent to STA4, the data is buffered and sent to STA4 only after Timer1 expires; alternatively, the end time for sending data packets is determined based on the remaining duration of Timer1, so that the data packets sent to STA4 can have the same end time as the data packets sent from STA1 to STA3, as shown in the example below:
[0095] Obtain the remaining duration of Timer1, assuming it to be p1 (in milliseconds or other predefined time units); set the transmission duration parameter TXOP to p1 based on the remaining duration, or p1 - delay1, where delay1 includes the transmission delay of STA2 sending the message to AP2 and the processing delay of AP2 on the message; then calculate the time required to send the data packet, TX_ppdu = TXOP_value - SIFS - T_ack, where SIFS is the short inter-frame interval and T_ack is the time required to send the acknowledgment message; finally, determine the size of the data packet based on TX_ppdu and the modulation and coding mechanism, ensuring that the data packet is sent within the TX_ppdu time.
[0096] If STA2 needs to send data to AP2 on link2, but STA1 does not need to send data to STA3 on link1, then while STA2 starts sending data to AP2 on link2, a second message is sent to STA3 on link1. This second message contains a second parameter, which is set according to the transmission duration of STA2 on link2. It should be noted that the value of this second parameter can be equal to the transmission duration of STA2 on link2, or it can be the transmission duration of STA2 on link2 minus transmission delays, as long as it indicates the time during which STA1 cannot receive data on link1. In some embodiments, the second message can be a CTS-to-PeerSTA message, and the Duration parameter in the CTS-to-PeerSTA message can be used as the second parameter, with its value set to the transmission duration of STA2 on link2. For example, the CTS-to-PeerSTA message contains the parameters shown in Table 6.
[0097] Table 6
[0098]
[0099] After receiving the second message, STA3 sets and starts Timer2 according to the second parameter in the message. While Timer2 is running, no data is sent to STA1. Specifically, when there is data to be sent to STA1, the data is buffered and the attempt to send the data to STA1 is made after Timer2 expires.
[0100] This application embodiment also provides a data transmission apparatus, including a processing module, the processing module being configured to perform the following steps:
[0101] A direct link is established between the first terminal device and the second terminal device on the first link. Both the first terminal device and the second terminal device are multi-link devices, and both the first terminal device and the second terminal device are connected to the access device on the second link. The first link and the second link are NSTR links to each other.
[0102] If the first terminal device needs to send data to the second terminal device on the first link and also needs to send data to the access device on the second link, then the first terminal device aligns the data transmission start time on the first link and the second link and sends the data simultaneously.
[0103] If the first terminal device only needs to send data to the second terminal device on the first link, then at the same time the first terminal device starts sending data to the second terminal device on the first link, it sends a first message to the access device on the second link. The first message contains a first parameter, which is set according to the sending duration of the first terminal device on the first link.
[0104] If the first terminal device only needs to send data to the access device on the second link, then at the same time the first terminal device starts sending data to the access device on the second link, it sends a second message to the second terminal device on the first link. The second message contains a second parameter, which is based on the sending duration of the first terminal device on the second link.
[0105] Optionally, the processing module is further configured to perform the following steps:
[0106] After receiving the first message through the access device, the timer Timer1 is set and started according to the first parameter in the first message, and data is transmitted according to at least one of the following:
[0107] During Timer1 operation, the access device does not send data to the first terminal device on the second link;
[0108] During the operation of Timer1, the access device may either not send data to the second terminal device on the second link, or determine the duration of sending data packets on the second link based on the remaining duration of Timer1, so that the data packets sent by the access device to the second terminal device on the second link end at the same time as the data packets sent by the first terminal device to the second terminal device on the first link.
[0109] Optionally, the processing module is further configured to perform the following steps:
[0110] After receiving the second message through the second terminal device, the second terminal device sets and starts the timer2 according to the second parameter in the second message. During the operation of the timer2, the second terminal device does not send data to the first terminal device on the first link.
[0111] It should be understood that the apparatus described herein is embodied in the form of functional modules. The term "module" here can refer to application-specific integrated circuits (ASICs), electronic circuits, processors (e.g., shared processors, proprietary processors, or group processors) and memories for executing one or more software or firmware programs, integrated logic circuits, and / or other suitable components supporting the described functions. The apparatus described above has the function of implementing the corresponding steps in the methods described above; the functions described above can be implemented in hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the functions described above. In embodiments of this application, the apparatus can also be a chip or a chip system, such as a system-on-a-chip (SoC). This application does not impose any limitations on this.
[0112] This application also provides a data transmission device. Figure 2 This is a schematic diagram of the device structure for transmitting data provided in an embodiment of this application. Figure 2 As shown, device 200 includes processor 201, memory 202 and communication interface 203. The processor 201, memory 202 and communication interface 203 communicate with each other through bus 204. The memory 202 stores instructions that can be executed by the processor 201. The instructions are loaded and executed by the processor 201 to control the communication interface 203 to send and / or receive signals.
[0113] Optionally, the memory 202 may include read-only memory and random access memory, and provide instructions and data to the processor 201. A portion of the memory 202 may also include non-volatile random access memory. For example, the memory 202 may also store device type information. The processor 201 can be used to execute instructions stored in the memory 201, and when the processor 201 executes the instructions, the processor 201 can perform the corresponding steps and / or processes in the above method embodiments.
[0114] It should be understood that, in the embodiments of this application, the processor may be a central processing unit (CPU), or it may be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor.
[0115] In implementation, each step of the above method can be completed by integrated logic circuits in the processor's hardware or by instructions in software. The steps of the method disclosed in the embodiments of this application can be directly manifested as execution by a hardware processor, or as a combination of hardware and software modules within the processor. The software modules can reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. This storage medium is located in memory, and the processor executes the instructions in the memory, combining them with its hardware to complete the steps of the above method. To avoid repetition, detailed descriptions are omitted here.
[0116] The above embodiments can be implemented, in whole or in part, by software, hardware, firmware, or any other combination thereof. When implemented using software, the above embodiments can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer programs are loaded or executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more sets of available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium. A semiconductor medium can be a solid-state drive.
[0117] It should be understood that in the various embodiments of this application, the order of the above-mentioned processes does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0118] Those skilled in the art will recognize that the modules and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0119] In the embodiments provided in this application, it should be understood that the disclosed devices, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative. For instance, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. For example, one module or component can be divided into multiple modules or components, or multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed can be through some interfaces; the indirect coupling or communication connection between devices or modules can be electrical, mechanical, or other forms.
[0120] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs. Furthermore, the functional units in the various embodiments of this application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0121] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A method for transmitting data, characterized in that, include: The first terminal device and the second terminal device establish a direct link on the first link. Both the first terminal device and the second terminal device are multi-link devices, and both the first terminal device and the second terminal device are connected to the access device on the second link. The first link and the second link are NSTR links to each other. If the first terminal device needs to send data to the second terminal device on the first link and also needs to send data to the access device on the second link, then the first terminal device will align the data transmission start time on the first link and the second link and send data simultaneously. If the first terminal device only needs to send data to the second terminal device on the first link, then at the same time the first terminal device starts sending data to the second terminal device on the first link, it sends a first message to the access device on the second link. The first message contains a first parameter, which is set according to the sending duration of the first terminal device on the first link. If the first terminal device only needs to send data to the access device on the second link, then at the same time the first terminal device starts sending data to the access device on the second link, it sends a second message to the second terminal device on the first link. The second message contains a second parameter, which is based on the sending duration of the first terminal device on the second link.
2. The method for transmitting data according to claim 1, characterized in that, The first message is a CTS-to-AP message, the first parameter is the Duration parameter in the CTS-to-AP message, and the value of the Duration parameter in the CTS-to-AP message is set to the transmission duration of the first terminal device on the first link; the second message is a CTS-to-PeerSTA message, the second parameter is the Duration parameter in the CTS-to-PeerSTA message, and the value of the Duration parameter in the CTS-to-PeerSTA message is set to the transmission duration of the first terminal device on the second link.
3. The method for transmitting data according to claim 1, characterized in that, Also includes: After receiving the first message, the access device sets and starts Timer1 according to the first parameter in the first message, and transmits data according to at least one of the following: During the operation of Timer1, the access device does not send data to the first terminal device on the second link; During the operation of Timer1, the access device does not send data to the second terminal device on the second link, or the access device determines the duration of sending data packets on the second link based on the remaining duration of Timer1, so that the data packets sent by the access device to the second terminal device on the second link end at the same time as the data packets sent by the first terminal device to the second terminal device on the first link.
4. The method for transmitting data according to claim 1, characterized in that, Also includes: After receiving the second message, the second terminal device sets and starts timer2 according to the second parameter in the second message. While timer2 is running, the second terminal device does not send data to the first terminal device on the first link.
5. The method for transmitting data according to claim 1, characterized in that, The establishment of a direct link between the first terminal device and the second terminal device on the first link includes: The direct connection initiator sends a direct connection link establishment request message to the direct connection responder on the first link or the second link. The direct connection link establishment request message contains link information, which is set according to the link settings requested by the direct connection initiator to establish the direct connection link. The direct connection initiator is the first terminal device and the direct connection responder is the second terminal device, or the direct connection initiator is the second terminal device and the direct connection responder is the first terminal device. The direct link initiator receives a direct link establishment response message sent by the direct link responder on the first link or the second link, wherein the direct link establishment response message indicates agreement to establish a direct link on the first link; The direct link initiator sends a direct link establishment confirmation message to the direct link responder on the first or second link.
6. A method for transmitting data according to claim 5, characterized in that, The link information includes parameters BSSID, TDLSinitiator, and TDLS responder. The link information, based on the link settings for establishing a direct link according to the direct link initiator's request, includes: If a request is made to establish a direct link on the first link, the parameter BSSID is set to the address of the logical entity operating on the first link in the access device, the parameter TDLSinitiator is set to the address of the logical entity operating on the first link in the direct link initiator, and the parameter TDLS responder is set to the address of the logical entity operating on the first link in the direct link responder. If a request is made to establish a direct link on the second link, the parameter BSSID is set to the address of the logical entity operating on the second link in the access device, the parameter TDLSinitiator is set to the address of the logical entity operating on the second link in the direct link initiator, and the parameter TDLS responder is set to the address of the logical entity operating on the second link in the direct link responder. If a request is made to establish a direct link on the first link and the second link, the BSSID parameter is set to the address of the access device, the TDLSinitiator parameter is set to the address of the direct link initiator, and the TDLS responder parameter is set to the address of the direct link responder.
7. A data transmission device, comprising a processing module, characterized in that, The processing module is used to perform the following steps: A direct link is established between the first terminal device and the second terminal device on the first link. Both the first terminal device and the second terminal device are multi-link devices, and both the first terminal device and the second terminal device are connected to the access device on the second link. The first link and the second link are NSTR links to each other. If the first terminal device needs to send data to the second terminal device on the first link and also needs to send data to the access device on the second link, then the first terminal device aligns the data transmission start time on the first link and the second link and sends the data simultaneously. If the first terminal device only needs to send data to the second terminal device on the first link, then at the same time the first terminal device starts sending data to the second terminal device on the first link, it sends a first message to the access device on the second link. The first message contains a first parameter, which is set according to the sending duration of the first terminal device on the first link. If the first terminal device only needs to send data to the access device on the second link, then at the same time the first terminal device starts sending data to the access device on the second link, it sends a second message to the second terminal device on the first link. The second message contains a second parameter, which is based on the sending duration of the first terminal device on the second link.
8. The data transmission apparatus according to claim 7, characterized in that, The first message is a CTS-to-AP message, the first parameter is the Duration parameter in the CTS-to-AP message, and the value of the Duration parameter in the CTS-to-AP message is set to the transmission duration of the first terminal device on the first link; the second message is a CTS-to-PeerSTA message, the second parameter is the Duration parameter in the CTS-to-PeerSTA message, and the value of the Duration parameter in the CTS-to-PeerSTA message is set to the transmission duration of the first terminal device on the second link.
9. The data transmission device according to claim 7, characterized in that, The processing module is also used to perform the following steps: After receiving the first message through the access device, the timer Timer1 is set and started according to the first parameter in the first message, and data is transmitted according to at least one of the following: During Timer1 operation, the access device does not send data to the first terminal device on the second link; During the operation of Timer1, the access device may either not send data to the second terminal device on the second link, or determine the duration of sending data packets on the second link based on the remaining duration of Timer1, so that the data packets sent by the access device to the second terminal device on the second link end at the same time as the data packets sent by the first terminal device to the second terminal device on the first link.
10. A data transmission apparatus according to claim 7, characterized in that, The processing module is also configured to perform the following steps: After receiving the second message through the second terminal device, the second terminal device sets and starts the timer2 according to the second parameter in the second message. During the operation of the timer2, the second terminal device does not send data to the first terminal device on the first link.
11. The data transmission apparatus according to claim 7, characterized in that, The establishment of a direct link on the first link through the first terminal device and the second terminal device includes: The direct connection initiator sends a direct connection link establishment request message to the direct connection responder on the first or second link. The direct connection link establishment request message contains link information, which is based on the link settings requested by the direct connection initiator to establish the direct connection link. The direct connection initiator is the first terminal device and the direct connection responder is the second terminal device, or the direct connection initiator is the second terminal device and the direct connection responder is the first terminal device. The direct link initiator receives a direct link establishment response message sent by the direct link responder on the first or second link, and the direct link establishment response message indicates agreement to establish a direct link on the first link. The direct link initiator sends a direct link establishment confirmation message to the direct link responder on the first or second link.
12. The data transmission apparatus according to claim 11, characterized in that, The link information includes parameters BSSID, TDLSinitiator, and TDLS responder. The link information, based on the link settings for establishing a direct link according to the direct link initiator's request, includes: If a request is made to establish a direct link on the first link, the parameter BSSID is set to the address of the logical entity operating on the first link in the access device, the parameter TDLSinitiator is set to the address of the logical entity operating on the first link in the direct link initiator, and the parameter TDLS responder is set to the address of the logical entity operating on the first link in the direct link responder. If a request is made to establish a direct link on the second link, the parameter BSSID is set to the address of the logical entity operating on the second link in the access device, the parameter TDLSinitiator is set to the address of the logical entity operating on the second link in the direct link initiator, and the parameter TDLS responder is set to the address of the logical entity operating on the second link in the direct link responder. If a request is made to establish a direct link on the first link and the second link, the BSSID parameter is set to the address of the access device, the TDLSinitiator parameter is set to the address of the direct link initiator, and the TDLS responder parameter is set to the address of the direct link responder.
13. A data transmission device, comprising a memory, a processor, and a computer program stored in the memory, characterized in that, The processor executes the computer program to implement the steps of the method according to any one of claims 1-6.
14. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1-6.