Communication method and related device
By sending and receiving information indicating the jump time in a wireless LAN, the STA can determine whether the other party has jumped at the same time, solving the communication performance problem under the influence of hidden nodes, and achieving improvement in communication performance.
Patent Information
- Application Number
- CN202311376071.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-10-20
- Publication Date
- 2025-04-22
AI Technical Summary
In wireless LANs, STAs may be affected by hidden nodes, which will make it impossible to confirm whether the other party jumps at the same time, which will affect communication performance.
By sending and receiving information indicating the jump time, the STA can determine whether the other party has jumped at the same time, thereby taking corresponding measures to improve communication performance.
It effectively improves the communication performance between STAs and ensures communication stability under the influence of hidden nodes.
Smart Images

Figure CN119865919A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communications, and in particular to a communication method and related devices. Background Art
[0002] A wireless local area network (WLAN) is a local area network that uses wireless channels as transmission media, including multiple stations (STA). WLAN uses the 802.11 protocol for wireless data transmission over the air interface. The 802.11 protocol specifies the carrier sense multiple access with collision avoidance (CSMA / CA) mechanism, which means that before a device sends data, it first listens to whether there is a data packet being transmitted in the current channel. If there is, it needs to wait until the current data packet is transmitted before performing a random backoff.
[0003] When a station uses a non-primary channel to access, it may be affected by hidden nodes. Hidden nodes are nodes that are unaware of each other's existence due to different coverage areas. For example, Figure 4 As shown in the figure, STA3 is a hidden node for STA1 (STA1 is not aware of the existence of STA3). Therefore, when STA3 sends, STA1 may detect that the primary sub-channel is idle. Therefore, STA1 may still stay on the primary sub-channel when STA3 occupies the primary channel and does not jump to the secondary sub-channel. Since STA3 is not a hidden node of STA 2, STA 2 jumps to the secondary sub-channel after discovering that STA 3 is occupying the primary sub-channel. However, STA 2 does not know that STA 1 has not jumped to the secondary sub-channel. Therefore, STA 1 cannot receive the data packet sent by STA 2, and the two cannot communicate. Summary of the invention
[0004] The present application provides a communication method and related devices, so that STAs can confirm whether the other party jumps at the same time as themselves, thereby improving communication performance.
[0005] In the first aspect, the present application provides a communication method, which can be executed by a first device, or the method can also be executed by a component configured in the first device (such as a chip, a chip system, etc.), or it can also be implemented by a logic module or software that can implement all or part of the functions of the first device. The present application does not limit this.
[0006] Exemplarily, the method includes: sending first information, the first information indicating the time of each jump of the first device in one or more jumps, and the above-mentioned jump is from using a primary sub-channel for physical-layer protocol data unit (PPDU) synchronization to using a secondary sub-channel for PPDU synchronization; receiving second information from a second device, the second information indicating whether the second device jumps each time the first device jumps.
[0007] Among them, using the main sub-channel for PPDU synchronization means using the center frequency of the main sub-channel as the synchronization frequency of the PPDU. Similarly, using the secondary sub-channel for PPDU synchronization means using the center frequency of the secondary sub-channel as the synchronization frequency of the PPDU. That is to say, the jump can be understood as adjusting the synchronization frequency of the PPDU from the center frequency of the main sub-channel to the center frequency of the secondary sub-channel. In addition, in this application, the secondary sub-channel can also be called a non-main channel, and the main sub-channel can also be called a main channel. This application does not specifically limit their names.
[0008] In the above technical solution, the first device can send the time of each jump in one or more jumps, and the other device (the second device) can determine whether it has also jumped based on the time of each jump of the first device, and then report it to the first device. In this way, the first device can determine whether the other party has jumped at the same time as itself, and then facilitate the adoption of corresponding measures to improve communication performance.
[0009] In combination with the first aspect, in some possible implementations of the first aspect, when the first device is an access point (AP) and the second device is a non-access point station (non-AP STA), the first information is sent via broadcast or multicast, or the first information is sent to the non-AP STA via unicast.
[0010] In the scenario of infrastructure basic service set (infrastructureBSS), the AP can send the first information in the form of broadcast, multicast or unicast to indicate the time of each jump in one or more jumps, and then determine whether the non-AP STA jumps at the same time as itself based on the second information reported by the non-AP STA.
[0011] It can be understood that the AP and non-AP STA in the structured basic service set are only illustrative examples, but this should not constitute any limitation to the present application. The present application can also be applied to scenarios where two stations communicating directly in other types of BSSs detect that they are affected by hidden nodes. In other types of BSSs, the names of the first device and the second device may change. For example, in an independent basic service set (IBSS), the first device and the second device can both be called STA.
[0012] In combination with the first aspect, in some possible implementations of the first aspect, when the first device is a non-APSTA and the second device is an AP, the first information is sent by the non-AP STA to the AP via unicast.
[0013] In the scenario of the structured basic service set, the non-AP STA may send the first information in the form of unicast to indicate the time of each jump in one or more jumps, and then determine whether the AP jumps at the same time as itself based on the second information sent by the AP.
[0014] In combination with the first aspect, in some possible implementations of the first aspect, when the first device is a first non-AP STA and the second device is a second non-AP STA, the first information is sent by the first non-AP STA to the second non-AP STA via unicast.
[0015] The first non-AP STA may send the first information to the second non-AP STA in a unicast manner, and then determine whether the second non-AP STA has jumped at the same time as the first non-AP STA according to the second information sent by the second non-AP STA. The first non-AP STA and the second non-AP STA are any two non-AP STAs in the same basic service set.
[0016] It should be understood that in a structured basic service set, the first non-AP STA and the second non-AP STA can be two non-AP STAs that establish a point-to-point connection. In an independent basic service set, since there is no distinction between AP and non-AP STA, the name of the first non-AP STA can be replaced by the first STA, and the name of the second non-AP STA can be replaced by the second STA, that is, in an independent basic service set, the first device and the second device can be any two STAs. It should also be understood that the names of the first device and the second device are only examples, but this should not constitute any limitation to the present application. In different types of basic service sets, the names of the first device and the second device may be different. For example, in a mesh basic service set (MBSS), the first device and the second device can be any two mesh STAs, which are not listed one by one here.
[0017] On the second aspect, the present application provides a communication method, which can be executed by a second device, or the method can also be executed by a component configured in the second device (such as a chip, a chip system, etc.), or it can also be implemented by a logic module or software that can realize all or part of the functions of the second device. The present application does not limit this.
[0018] Exemplarily, the method includes: receiving first information, the first information indicating the time of each jump of one or more jumps of the first device, the above-mentioned jump refers to the change from using the main sub-channel for PPDU synchronization to using the secondary sub-channel for PPDU synchronization; sending second information to the first device, the second information indicating whether the second device jumps each time the first device jumps.
[0019] In the above technical solution, the second device can determine whether it has also jumped according to the time of each jump of the first device, and then report it to the first device. In this way, the first device can determine whether the other party has jumped at the same time as itself, and then take corresponding measures to improve communication performance.
[0020] In combination with the first aspect and the second aspect, in some possible implementations, the one or more jumps mentioned above are one or more jumps within a preset time period, and the first information mentioned above also indicates one or more of the following: the start time of the preset time period, the end time of the preset time period, or the duration of the preset time period.
[0021] The first information may indicate the time of each jump in one or more jumps within a preset time period, and may also indicate one or more of the start time, end time, or duration of the preset time period. When the first information also indicates one of the start time, end time, or duration of the preset time period, the other two may be predefined. For example, the start time of the preset time period may be the time of the first jump. For another example, the end time of the preset time period may be the time when the first device sends a data packet carrying the first information. For another example, the duration of the preset time period may be a beacon cycle.
[0022] In combination with the first aspect and the second aspect, in some possible implementations, the first information also indicates one or more of the following: the number of jumps, the color of the basic service set (BSS) corresponding to each jump, the secondary sub-channel to which each jump is directed, or the length of time spent in the secondary sub-channel, wherein each jump is triggered by a site within the corresponding BSS occupying the main sub-channel, and the BSS corresponding to each jump is a BSS that overlaps with the BSS coverage range where the first device is located.
[0023] The BSS that overlaps with the BSS coverage of the first device can be recorded as an overlapping basic service set (OBSS). The color of the BSS corresponding to each jump can be understood as the color of the OBSS where the PPDU causing the jump is located.
[0024] When the first information indicates the time of each jump in one or more jumps within a preset time period, the first information can also indicate one or more of the start time of the preset time period, the end time of the preset time period, the duration of the preset time period, the number of jumps, the color of the BSS corresponding to each jump, the secondary sub-channel to which each jump is directed, or the duration of residence in the secondary sub-channel. The first device indicates the relevant information of each jump in more detail, thereby facilitating more accurate determination of whether the other party follows the jump.
[0025] When the first information indicates the time of each jump in the most recent one or more jumps (that is, the above-mentioned one or more jumps are the most recent one or more jumps, and the preset time period is not indicated), the first information can also indicate one or more of the number of jumps, the color of the BSS corresponding to each jump, the secondary sub-channel to which each jump is directed, or the duration of residence in the secondary sub-channel. There is no need to indicate the start time, end time and duration of the preset time period, which is beneficial to saving signaling overhead.
[0026] In combination with the first aspect and the second aspect, in some possible implementations, the second information indicates a bitmap.
[0027] Exemplarily, when the bit value is 1, it means that the second device also jumps when the first device jumps, and when the bit value is 0, it means that the second device does not jump when the first device jumps; or, when the bit value is 0, it means that the second device also jumps when the first device jumps, and when the bit value is 1, it means that the second device does not jump when the first device jumps.
[0028] On the third aspect, the present application provides a communication method, which can be executed by a non-AP STA, or the method can be executed by a component configured in the non-AP STA (such as a chip, a chip system, etc.), or it can be implemented by a logic module or software that can implement all or part of the non-AP STA functions, and the present application does not limit this.
[0029] Exemplarily, the method includes: generating third information, the third information indicating the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period, and the above-mentioned jump refers to the change from using the primary sub-channel for PPDU synchronization to using the secondary sub-channel for PPDU synchronization; sending the third information to a third device.
[0030] Optionally, the third device may be an AP or a non-AP STA, or other station that can directly communicate with the non-AP STA that sends the third information.
[0031] It should be noted that this application does not specifically limit the name of the site. For example, in an independent basic service set, there is no distinction between AP and non-AP STA, and the name of non-AP STA can be replaced by STA. In a mesh basic service set, the name of non-AP STA can be replaced by mesh STA. They are not listed here one by one.
[0032] In the above technical solution, the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period can reflect whether the third device has jumped at the same time as the non-AP STA. The non-AP STA reports the third information to the third device, which facilitates the third device to take corresponding measures, thereby improving communication performance. In addition, the non-AP STA reports the reception status of the first data packet sent after one or more jumps within a preset time period, without reporting detailed information of the jump, and the overhead is relatively small.
[0033] In combination with the third aspect, in some possible implementations of the third aspect, before generating the third information, the above method also includes: receiving a request message from a third device, wherein the request message is used to request the non-AP STA to report to the third device the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period.
[0034] In a fourth aspect, the present application provides a communication method, which can be executed by a third device, or the method can also be executed by a component configured in the third device (such as a chip, a chip system, etc.), or it can also be implemented by a logic module or software that can realize all or part of the functions of the third device. The present application does not limit this.
[0035] Exemplarily, the method includes: receiving third information, the third information indicating the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period, and the above-mentioned jump refers to the change from using the main sub-channel for PPDU synchronization to using the secondary sub-channel for PPDU synchronization; based on the third information, determining whether to turn off the non-main channel access function of the non-AP STA.
[0036] Optionally, the third device may be an AP or a non-AP STA, or other station that can directly communicate with the non-AP STA that sends the third information.
[0037] In the above technical solution, the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period can reflect whether the third device jumps at the same time as the non-AP STA. The non-AP STA reports the third information to the third device, which facilitates the third device to determine whether to turn off the non-primary channel receiving function of the non-AP STA, thereby improving the communication performance. In addition, the non-AP STA reports the reception status of the first data packet sent after one or more jumps within a preset time period, and the overhead is relatively small.
[0038] In combination with the fourth aspect, in some possible implementations of the fourth aspect, before receiving the third information, the above method also includes: sending a request message to the non-AP STA, wherein the request message is used to request the non-AP STA to report to the third device the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period.
[0039] In combination with the third aspect and the fourth aspect, in some possible implementations, the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period includes a first packet success rate after the non-AP STA jumps one or more times within the preset time period, and the first packet success rate = m / M, wherein m represents the sum of the numbers of first data packets sent by the non-AP STA after one or more jumps that are successfully received, and M represents the total number of first data packets sent by the non-AP STA after one or more jumps.
[0040] In other words, the reception status of the first data packet sent by the non-AP STA after one or more jumps within the preset period is represented by the first packet success rate of the non-AP STA after one or more jumps within the preset period.
[0041] In combination with the third aspect and the fourth aspect, in some possible implementations, the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period includes a first packet failure rate after the non-AP STA jumps one or more times within the preset time period, and the first packet failure rate = n / M, where n represents the sum of the number of reception failures (or transmission failures) of the first data packets sent by the non-AP STA after the one or more jumps, and M represents the total number of first data packets sent by the non-AP STA after one or more jumps.
[0042] In other words, the reception status of the first data packet sent by the non-AP STA after one or more jumps within the preset period is represented by the first packet failure rate of the non-AP STA after one or more jumps within the preset period.
[0043] It is understood that in the third aspect and the fourth aspect, the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period can be represented by the first packet success rate or the first packet failure rate, but this should not constitute any limitation to the present application. For example, in actual applications, the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period can also be represented by the number of first packet successes or the number of first packet failures, and the present application does not limit this.
[0044] In combination with the third aspect and the fourth aspect, in some possible implementations, the method further includes: the third device sends fourth information to the non-AP STA, where the fourth information instructs the non-AP STA to turn off or turn on the non-primary channel access function. Accordingly, the non-AP STA receives the fourth information.
[0045] One possible implementation method is, when the first packet success rate is less than the first preset threshold, sending fourth information to the non-APSTA, the fourth information instructing the non-AP STA to turn off the non-main channel access function; when the first packet success rate is greater than or equal to the first preset threshold, sending fourth information to the non-AP STA, the fourth information instructing the non-AP STA to turn on (or not turn off) the non-main channel access function.
[0046] Another possible implementation method is, when the first packet failure rate is greater than the second preset threshold, sending fourth information to the non-APSTA, the fourth information instructing the non-AP STA to turn off the non-main channel access function; when the first packet failure rate is less than or equal to the second preset threshold, sending fourth information to the non-AP STA, the fourth information instructing the non-AP STA to turn on (or not turn off) the non-main channel access function.
[0047] In a fifth aspect, the present application provides a communication method, which can be executed by a non-AP STA, or the method can be executed by a component configured in the non-AP STA (such as a chip, a chip system, etc.), or it can be implemented by a logic module or software that can implement all or part of the non-AP STA functions. The present application does not limit this.
[0048] Exemplarily, the method includes: generating fifth information indicating a reception status of a data packet sent by the non-AP STA on each sub-channel in at least one sub-channel within a preset time period; and sending the fifth information to a third device.
[0049] The at least one sub-channel may include a primary sub-channel and a secondary sub-channel. Optionally, the third device may be an AP or a non-AP STA, or other station that can directly communicate with the non-AP STA that sends the third information.
[0050] In the above technical solution, the non-AP STA can report to the third device the reception status of the data packets sent on each sub-channel in at least one sub-channel within a preset time period, so that the third device can determine the target channel with better quality for data transmission based on the above reception status and improve the communication performance.
[0051] In conjunction with the fifth aspect, in some possible implementations of the fifth aspect, the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within a preset period includes the number of failed receptions of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset period. That is, the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset period is represented by the number of failed receptions of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset period.
[0052] It can be understood that after the receiving end receives the number of failed receptions of data packets sent on each subchannel in at least one subchannel, it can calculate the packet failure rate on the subchannel by combining its own statistics on the number of data packets successfully received on the corresponding subchannel, that is, the total number of packets on the channel is the sum of the number of data packets that failed to be received and the number of data packets that were successfully received, and the packet failure rate is the ratio of the number of data packets that failed to be received to the total number of packets, which makes it easier to judge whether the subchannel is suitable for non-main channel access.
[0053] In combination with the fifth aspect, in some possible implementations of the fifth aspect, the above method also includes: receiving sixth information from a third device, the sixth information indicating a sub-channel in at least one channel whose packet failure rate is less than a third preset threshold, and the packet failure rate of each sub-channel is the ratio of the number of data packets sent that failed to be received to the total number of data packets sent.
[0054] In conjunction with the fifth aspect, in some possible implementations of the fifth aspect, the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within a preset period includes the number of data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset period that are successfully received. That is, the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset period is represented by the number of data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset period that are successfully received.
[0055] It can be understood that after receiving the number of successfully received data packets sent on each sub-channel in at least one sub-channel, the receiving end can further determine whether the sub-channel is suitable for non-primary channel access.
[0056] In combination with the fifth aspect, in some possible implementations of the fifth aspect, the above method also includes: receiving seventh information from a third device, the seventh information indicating a sub-channel in which the number of data packets sent in the at least one sub-channel that are successfully received is greater than a fourth preset threshold.
[0057] In the sixth aspect, the present application provides a communication method, which can be executed by a third device, or the method can also be executed by a component configured in the third device (such as a chip, a chip system, etc.), or it can also be implemented by a logic module or software that can realize all or part of the functions of the third device. The present application does not limit this.
[0058] Exemplarily, the method includes: receiving fifth information indicating a reception status of a data packet sent by a non-AP STA on each subchannel in at least one subchannel within a preset time period; and determining a target channel according to the fifth information.
[0059] The at least one sub-channel may include a primary sub-channel and a secondary sub-channel. Optionally, the third device may be an AP or a non-AP STA, or other station that can directly communicate with the non-AP STA that sends the third information.
[0060] In the above technical solution, the third device can determine a target channel with better quality for transmission based on the reception status of data packets sent on each subchannel in at least one subchannel within a preset time period reported by the non-AP STA, thereby improving communication performance.
[0061] In combination with the sixth aspect, in some possible implementations of the fifth aspect, the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset time period includes the number of failed receptions of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset time period. That is, the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset time period is represented by the number of failed receptions of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset time period.
[0062] In combination with the sixth aspect, in some possible implementations of the fifth aspect, the above method also includes: sending sixth information to the non-APSTA, the sixth information indicating a sub-channel in at least one channel whose packet failure rate is less than a third preset threshold, and the packet failure rate of each sub-channel is the ratio of the number of failed receptions of sent data packets to the total number of sent data packets.
[0063] In conjunction with the sixth aspect, in some possible implementations of the sixth aspect, the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within a preset period includes the number of data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset period that are successfully received. That is, the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset period is represented by the number of data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset period that are successfully received.
[0064] In combination with the sixth aspect, in some possible implementations of the sixth aspect, the above method also includes: sending seventh information to the non-APSTA, the seventh information indicating the sub-channel in which the number of data packets sent in the at least one sub-channel that are successfully received is greater than the fourth preset threshold.
[0065] In a seventh aspect, the present application provides a communication device that can implement the method described in the first aspect to the sixth aspect and any possible implementation of the first aspect to the sixth aspect. The device includes a corresponding module for executing the above method. The module included in the device can be implemented by software and / or hardware.
[0066] In an eighth aspect, the present application provides a communication device, the device comprising a processor. The processor is coupled to a memory and can be used to execute a computer program in the memory to implement the method in the first to sixth aspects and any possible implementation of the first to sixth aspects.
[0067] Optionally, the device further includes a communication interface, and the processor is coupled to the communication interface. The communication interface is used to receive signals from other communication devices outside the device and transmit them to the processor, or send signals from the processor to other communication devices outside the device. Exemplarily, the communication interface can be a transceiver, circuit, bus, module or other type of communication interface.
[0068] Optionally, the device further comprises a memory, and the processor is coupled to the memory. The memory is used to store program instructions and data.
[0069] In the ninth aspect, the present application provides a computer-readable storage medium, which stores a computer program or instructions. When the computer program or instructions are executed, the method in the first to sixth aspects and any possible implementation method of the first to sixth aspects is implemented.
[0070] In a tenth aspect, the present application provides a computer program product, which includes instructions, and when the instructions are executed, the method in the first to sixth aspects and any possible implementation manner of the first to sixth aspects is implemented.
[0071] In the eleventh aspect, the present application provides a chip system, which includes at least one processor for supporting the implementation of the functions involved in the above-mentioned first to sixth aspects and any possible implementation method of the first to sixth aspects, for example, receiving or processing the data involved in the above-mentioned method, etc.
[0072] In one possible design, the chip system also includes a memory, which is used to store program instructions and data, and the memory is located inside or outside the processor.
[0073] The chip system may be composed of the chip, or may include the chip and other discrete devices.
[0074] In the twelfth aspect, the present application provides a communication system, comprising a first device for implementing the method described in the first aspect and any possible implementation of the first aspect, and a second device for implementing the method described in the second aspect and any possible implementation of the second aspect; or, comprising a non-AP STA for implementing the method described in the third aspect and any possible implementation of the third aspect, and a third device for implementing the method described in the fourth aspect and any possible implementation of the fourth aspect; or, comprising a non-AP STA for implementing the method described in the fifth aspect and any possible implementation of the fifth aspect, and a third device for implementing the method described in the sixth aspect and any possible implementation of the sixth aspect.
[0075] It should be understood that the seventh to twelfth aspects of the present application correspond to the technical solutions of the first to sixth aspects of the present application, and the beneficial effects achieved by each aspect and the corresponding feasible implementation methods are similar and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0076] Figure 1 is a schematic diagram of a structural basic service set provided in an embodiment of the present application;
[0077] Figure 2 is a schematic diagram of each sub-channel provided in an embodiment of the present application;
[0078] Figure 3 is a schematic diagram of a hidden node provided in an embodiment of the present application;
[0079] Figure 4 It is a schematic diagram of the influence of hidden nodes provided in an embodiment of the present application;
[0080] Figure 5 It is a schematic diagram of the defects of the prior art provided by the embodiment of the present application;
[0081] Figure 6 It is a schematic diagram of another defect of the prior art provided by the embodiment of the present application;
[0082] Figure 7 is a schematic flow chart of a communication method provided in an embodiment of the present application;
[0083] Figure 8 is a schematic diagram of a hidden node list provided in an embodiment of the present application;
[0084] Fig. 9 It is a format diagram of a hidden node influence list provided in an embodiment of the present application;
[0085] Fig.10 is a schematic flow chart of another communication method provided in an embodiment of the present application;
[0086] Fig.11 is a schematic flow chart of another communication method provided in an embodiment of the present application;
[0087] Fig.12 is a schematic block diagram of a communication device provided in an embodiment of the present application;
[0088] Fig.13 is another schematic block diagram of a communication device provided in an embodiment of the present application;
[0089] Fig.14 This is another schematic block diagram of a communication device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0090] The technical solution in this application will be described below in conjunction with the accompanying drawings.
[0091] Before introducing the method provided in the embodiments of the present application, the following points are explained.
[0092] First, in order to facilitate the clear description of the technical solutions of the embodiments of the present application, in the embodiments of the present application, the words "first", "second", etc. are used to distinguish the same items or similar items with substantially the same functions and effects. For example, the first device and the second device are only used to distinguish different devices, and their order is not limited. Those skilled in the art can understand that the words "first", "second", etc. do not limit the quantity and execution order, and the words "first", "second", etc. do not necessarily limit them to be different.
[0093] Second, in the embodiments shown in this document, various terms and English words, such as hopping time, hopped channel, duration, etc., are illustrative examples given for the convenience of description and shall not constitute any limitation to this application. This application does not exclude the possibility of defining other terms that can achieve the same or similar functions in existing or future protocols.
[0094] Third, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the associated objects before and after are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b and c can mean: a, or b, or c, or a and b, or a and c, or b and c, or a, b and c, where a, b, c can be single or multiple.
[0095] Fourth, in this application, indication includes direct indication (also called explicit indication) and implicit indication (also called indirect indication). Direct indication of information A means including the information A; implicit indication of information A means indicating information A through the correspondence between information A and information B and direct indication of information B. The correspondence between information A and information B can be predefined, pre-stored, pre-burned, or pre-configured.
[0096] Fifth, in this application, information C is used to determine information D (or information D is determined based on information C), which includes information D being determined based only on information C, and information D being determined based on information C and other information. In addition, information C is used to determine information D, and it can also be indirectly determined, for example, information D is determined based on information E, and information E is determined based on information C.
[0097] Sixth, in this application, the words "example", "exemplarily", "for example" or "such as" are used to indicate examples, illustrations or explanations. Any embodiment or design described as "example", "exemplarily", "for example" or "such as" in this application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "example", "exemplarily", "for example" or "such as" is intended to present related concepts in a concrete way.
[0098] Seventh, the present application can be applied to wireless LAN systems that support the Institute of Electrical and Electronics Engineers (IEEE) 802.11ax next-generation wireless fidelity (Wi-Fi) protocol, such as the next-generation standard IEEE 802.11be (also known as Wi-Fi 7, or extremely high throughput (EHT protocol)), and can also be applied to wireless LAN systems that support 802.11be next-generation Wi-Fi protocols, such as Wi-Fi 8, UHR, or Wi-Fi AI.
[0099] Eighth, the present application can be applied to the scenario where the AP and non-AP STA in the same structural basic service set recognize each other's synchronization with themselves (or the extent to which the other party is affected by the hidden node); it can also be applied to the scenario where any two directly connected STAs in an independent basic service set recognize each other's synchronization with themselves; it can also be applied to other scenarios between STAs that can directly communicate wirelessly, and the present application does not limit its application scenarios. Among them, the synchronization situation refers to whether the other party jumps at the same time as oneself. In actual applications, the synchronization situation may refer to whether the other party jumps to the same sub-channel at the same time as oneself, that is, device 1 jumps to sub-channel 1, and device 2 jumps to sub-channel 1 at the same time, which is considered to be synchronization between device 1 and device 2. It should be understood that the above synchronization is only an example and should not constitute any limitation to this application. For example, when the jump time of two devices is less than a threshold, the two devices can also be considered to be synchronized.
[0100] In order to better understand the method provided in the embodiments of the present application, the terms involved in the present application are briefly explained below.
[0101] 1. BSS: includes one or more STAs, and STAs can communicate with each other without going through a distributed system (DS). According to the connection method of STAs inside the BSS (i.e., the topology of the network inside the BSS), the BSS can be divided into multiple types, such as a structural basic service set and an independent basic service set. Among them, the structural basic service set includes AP (special STA) and non-AP STA, and non-AP STAs are all connected to this AP to access a larger network (such as DS). Any two STAs in the independent basic service set can communicate directly, and there is no role similar to AP. It can be understood that the above-mentioned types of BSS are only examples and should not constitute any limitation to the embodiments of the present application. The present application can also be applied to other types of BSS, such as MBSS, personal basic service set (personal basic service set, PBSS), etc., which are not listed here one by one.
[0102] Figure 1 It is a schematic diagram of the structural basic service set provided in the embodiment of the present application.
[0103] like Figure 1 As shown, the structured basic service set is a star-shaped topology, and the coverage of a basic service set can be represented in two dimensions by a circle or an ellipse (a circle is used as an example in the figure). The structured basic service set includes an AP and multiple non-AP STAs, such as non-AP STA 1, non-AP STA 2, and non-AP STA 3. Each non-AP STA is connected to the AP, and any two non-AP STAs cannot communicate directly. In an independent basic service set, any two STAs can communicate directly, and there is no role similar to AP.
[0104] 2. CSMA / CA: From the definition of BSS, we know that there may be multiple STAs inside the BSS. These STAs use the same resources (such as the same time domain and the same frequency band) to transmit data, which will cause interference to the receiving end. The 802.11 protocol stipulates the CSMA / CA mechanism, that is, before a device sends data, it first listens to whether there is a data packet being transmitted in the current channel. If so, it needs to wait until the current data packet is transmitted before performing a random backoff. The random backoff of CSMA / CA can be understood as: when the device determines that it needs to backoff, it first generates a random number. Every time a time slot passes, this random number is reduced by one. In other words, this random number is like a countdown timer. If the channel is detected to be occupied again during the countdown of the timer, the timer will stop (at this time, the device cannot transmit data) and wait for the channel to be idle again before continuing to count down. After the countdown ends, the device can transmit data.
[0105] 3. Clear channel assessment (CCA): STA can use carrier sense (CS) technology to detect whether the channel is busy (or idle) before transmitting data. CS is divided into physical CS and virtual CS. Physical CS is to detect the energy in the channel (or medium). When the energy is greater than a certain threshold, the channel is considered occupied (busy), otherwise it is idle. This process is also called CCA. Virtual CS refers to the length of the data packet obtained by parsing the packet. The network allocation vector (NAV) value is set according to the packet length. After the value is set, it is reduced by one after each time slot, similar to a countdown timer. After the countdown is over, the virtual CS result can be considered to be "channel idle".
[0106] 4. Main sub-channel and secondary sub-channel: Among them, the main sub-channel can also be called the main channel, and the secondary sub-channel can also be called the non-main channel. This application does not specifically limit their names. When STA uses a channel with a larger bandwidth to send data packets, it can divide the channel into multiple sub-channels, one of which is used as the main sub-channel and the rest as secondary sub-channels. For example, when using a channel with a bandwidth greater than 20 Mega Hertz (MHz), the channel will be divided into multiple sub-channels in units of 20 MHz, and one of the sub-channels is defined as the main 20 channel. According to the position of the main 20 channel, the secondary 20 channel, secondary 40 channel, secondary 80 channel, etc. are defined.
[0107] Figure 2 Schematic diagram of each sub-channel provided in the embodiment of the present application. Figure 2 As shown in FIG. 1 , the 160 MHz channel is divided into a primary 20 channel, a secondary 20 channel, a secondary 40 channel, and a secondary 80 channel. The positions of the sub-channels are shown in FIG. Figure 2 As shown, the BSS can determine the location of the main 20 channel and each secondary sub-channel according to actual needs, and the present application does not limit their specific locations.
[0108] In the present application, when the BSS is established, it will determine its own working channel (large bandwidth) (such as the 160MHz mentioned above) and the main 20 channels. When the non-AP STA joins the BSS, it can determine the working channel and the main 20 channels of the BSS. When the STA in the BSS receives a data packet (such as a PPDU), it does not know the bandwidth and other information of the PPDU to be received, so it does not know the center frequency of the PPDU. Therefore, it is necessary to perform a PPDU search (or PPDU synchronization) based on a frequency value. In general, the STA performs PPDU synchronization based on the center frequency of the main 20 channels. In the present application, the jump can be understood as the STA changing from performing PPDU synchronization based on the center frequency of the main 20 channels to performing PPDU synchronization based on the center frequency of the secondary sub-channel.
[0109] 5. Non-primary channel access: AP deployment is becoming more and more dense, which can easily cause the main 20 channels corresponding to a BSS to be occupied by data packets transmitted in the OBSS. In this way, even if only the main 20 channels of the BSS's working channel (such as 160MHz) are busy and the remaining sub-channels are idle, the remaining idle sub-channels cannot be used, which leads to a decrease in channel utilization. In order to improve channel utilization, a mechanism of "using the remaining sub-channels for transmission when the main sub-channel is occupied by the OBSS" is proposed (similar to allowing the main sub-channel to be punched). This mechanism is called non-primary channel access. Using non-primary channel access can be understood as both the transmitter and the receiver adjust the PPDU synchronization frequency from the center frequency of the main 20 channels to the center frequency of a 20MHz secondary sub-channel. In other words, PPDU synchronization is performed based on the center frequency of a certain primary sub-channel.
[0110] 6. Hidden nodes: refers to nodes that are unaware of each other's existence due to different coverage. Figure 3 A detailed explanation of hidden nodes is given.
[0111] Figure 3 It is a schematic diagram of a hidden node provided in an embodiment of the present application.
[0112] like Figure 3As shown in the figure, the solid circle represents the coverage of AP, and the dotted circle represents the coverage of non-AP STA1. When AP sends PPDU to non-AP STA 1, non-AP STA2 and non-AP STA 3 can also receive the PPDU from AP, that is, their CCA results are "Channel Busy" at this time; when non-AP STA1 sends PPDU to AP, since non-AP STA2 and non-AP STA3 are not within the coverage of non-AP STA 1, they cannot receive the PPDU, so their CCA results are "Channel Idle" at this time. Therefore, non-AP STA 1 is a hidden node for non-AP STA 2 and non-AP STA 3. It is not difficult to understand that when non-AP STA 1 sends PPDU to AP, since non-AP STA 2 is unaware of this, non-AP STA 2 also sends it to AP, which causes AP (receiving end) to mix the two PPDUs together and cannot receive them. Therefore, the impact of hidden nodes is greater.
[0113] When STA uses non-primary channels to access, it may be affected by hidden nodes. Figure 4 Elaborate on the impact of hidden nodes.
[0114] Figure 4 It is a schematic diagram of the influence of hidden nodes provided in an embodiment of the present application.
[0115] like Figure 4 As shown in the figure, for example, STA3 is a hidden node for STA 1 (STA1 is not aware of the existence of STA 3), so when STA3 sends, STA 1's detection result for the primary sub-channel may be idle, so STA 1 may still stay on the primary sub-channel when STA3 occupies the primary channel and does not jump to the secondary sub-channel. Since STA 3 is not a hidden node for STA 2, STA2 jumps to the secondary sub-channel after discovering that STA 3 is occupying the primary sub-channel. However, STA 2 does not know that STA 1 has not jumped to the secondary sub-channel, so STA 1 cannot receive the data packet sent by STA 2, and the two cannot communicate.
[0116] It is not difficult to understand that if STA1 knows the synchronization status of STA2 with itself (or the extent to which the other party is affected by the hidden node), it can take corresponding measures to enable the two parties to communicate, thereby improving communication performance.
[0117] Currently, there is a method to help AP identify non-AP STA with low synchronization rate, where the synchronization rate refers to the probability that non-APSTA and AP can jump to the same non-primary sub-channel at the same time. Specifically, within a period of time (such as a beacon period), AP and non-AP STA each count the number of times they jump to the secondary sub-channel; after the end of this period, AP broadcasts the number of times it jumps to the secondary sub-channel, and non-AP STA compares the number of times broadcast by AP with the number of times it actually jumps to the secondary sub-channel. If the difference between the two is large, the non-AP STA reports its own jump number to AP to indicate that "it is more affected by the hidden node (or the synchronization rate between non-AP STA and AP is low)". However, the synchronization situation determined by the above method is less accurate. The following will combine Figure 5 Explain it in detail.
[0118] Figure 5 It is a schematic diagram of the defects of the prior art provided in the embodiment of the present application. Figure 5 a) in the figure shows the jump between non-STA 1 and AP. Figure 5 b) in FIG. 1 shows the jump between non-AP STA 2 and AP. The horizontal black solid line shows the time (left is first, right is later). The downward arrow indicates that the AP jumps to the secondary sub-channel at this moment, and the upward arrow indicates that the non-APSTA jumps to the secondary sub-channel at this moment.
[0119] like Figure 5 As shown, AP jumps to the secondary subchannel 4 times in one beacon period, non-AP STA 1 jumps 4 times, and non-AP STA 2 jumps 2 times. According to the above method, the number of jumps of non-AP STA 1 is the same as that of AP, while the number of jumps of non-APSTA 2 is much different from that of AP, so "non-AP STA 1 has better synchronization with AP". But in fact, although non-AP STA 1 and AP also jump 4 times, they jump at different times; and although non-AP STA 2 only jumps 2 times, they jump at the same time as AP; so in fact, it should be "non-AP STA 2 has better synchronization with AP".
[0120] Currently, there is also a method to help AP identify non-AP STA with low synchronization rate. Specifically, within a period of time (such as a beacon period), the non-AP STA counts the data packets sent by the AP detected on a certain sub-channel (not necessarily sent to the non-AP STA, as long as the PPDU sent by the AP is counted); when the time is up, the AP broadcasts the number of PPDUs it has sent on the sub-channel during this period, and the non-AP STA compares the number of PPDUs sent by the AP detected on the sub-channel. If the two values differ greatly, the non-AP STA reports the number it has detected to indicate that "the synchronization rate between itself and the AP is poor (that is, it is greatly affected by the hidden node)". However, the synchronization status determined by the above method is also less accurate. The following will combine Figure 6 Explain it in detail.
[0121] Figure 6 This is a schematic diagram of another defect of the prior art provided by the embodiment of the present application. The horizontal solid line represents the time axis; the solid rectangle represents the corresponding station jumps to the secondary sub-channel during this period; the vertical dotted line represents the start time when the AP jumps to a certain secondary sub-channel; the vertical solid line represents the time when the AP has a PPDU to send.
[0122] like Figure 6 As shown in the figure, according to the above method, AP sent 3 PPDUs on the secondary subchannel, while non-AP STA 1 did not receive any data packets on the secondary subchannel, and non-AP STA 2 received 3 data packets on the secondary subchannel, so "non-AP STA 2 has good synchronization with AP". But the fact is that non-AP STA1 and AP jumped to the secondary subchannel twice together, but AP did not send any PPDU during these two times, but AP sent PPDU during the two times when they did not jump at the same time; although non-APSTA 2 detected the 3 PPDUs sent by AP, it was not because it jumped to the secondary subchannel at the same time as AP, but because AP happened to stay on the secondary subchannel when sending PPDU. Therefore, the actual situation should be "non-AP STA 1 has good synchronization with AP". Therefore, after analysis, it can be seen that when the AP's downlink load (the number of PPDUs sent) is small, this method cannot accurately reflect the actual synchronization situation (synchronization rate); when the AP's downlink load is unevenly distributed (such as sometimes the AP sends a lot of PPDUs after the jump, but sometimes the AP only sends a few or even no PPDUs after the jump), the accuracy of this method will also be low.
[0123] To this end, the present application provides a communication method, in which a first device can send the time of each jump in one or more jumps (which can be one or more jumps within a preset time period, or the most recent one or more jumps), and another device (second device) can determine whether it has also jumped at the same time based on the time of each jump of the first device, and then report it to the first device. In this way, the first device can determine whether the other party has jumped at the same time as itself, and then facilitate the adoption of corresponding measures to improve communication performance.
[0124] The communication method provided in the embodiments of the present application will be described in detail below with reference to the accompanying drawings.
[0125] Figure 7 It is a schematic flow chart of the communication method provided in an embodiment of the present application. Figure 7 The method 700 shown may include step 710 and step 720. Each step in the method 700 is described in detail below.
[0126] It should be understood that Figure 7 The embodiment shown describes the method from the perspective of the interaction between the first device and the second device, but does not constitute any limitation on the execution subject of the method. As long as the program that can record the code of the method provided by the embodiment of the present application can be run, the method provided by the embodiment of the present application can be executed. For example, the first device can also be replaced by a component configured in the first device (such as a chip, a chip system, etc.), or other functional modules that can call and execute the program, and the second device can also be replaced by a component configured in the second device (such as a chip, a chip system, etc.), or other functional modules that can call and execute the program. The embodiment of the present application does not limit this.
[0127] In step 710, the first device sends first information, where the first information indicates the time of each jump in one or more jumps of the first device. Correspondingly, the second device receives the first information.
[0128] In the present application, the jump refers to changing from using the primary subchannel for PPDU synchronization to using the secondary subchannel for PPDU synchronization. Among them, using the primary subchannel for PPDU synchronization means using the center frequency of the primary subchannel as the synchronization frequency of the PPDU, and similarly, using the secondary subchannel for PPDU synchronization means using the center frequency of the secondary subchannel as the synchronization frequency of the PPDU, that is, the jump can be understood as adjusting the synchronization frequency of the PPDU from the center frequency of the primary subchannel to the center frequency of the secondary subchannel.
[0129] In addition, in the present application, the time of each jump in one or more jumps of the first device may refer to the start time of each jump.
[0130] One possible scenario is that, in a structured basic service set, the first device is an AP, the second device is a non-AP STA, the first information is sent by broadcast or multicast, or the first information is sent to the non-APSTA by unicast. In other words, the AP may send the first information by broadcast, multicast, or unicast to indicate the time of each jump in one or more jumps.
[0131] Another possible scenario is that, in a structured basic service set, the first device is a non-AP STA, the second device is an AP, and the first information is sent by the non-AP STA to the AP via unicast. In other words, the non-AP STA can send the first information in a unicast form to indicate the time of each jump in one or more jumps.
[0132] Another possible scenario is that the first device is a first non-AP STA, the second device is a second non-AP STA, and the first information is sent by the first non-AP STA to the second non-AP STA via unicast. In other words, the first non-AP STA can send the first information to the second non-AP STA via unicast.
[0133] It should be understood that in a structured basic service set, the first non-AP STA and the second non-AP STA can be two non-AP STAs that establish a point-to-point connection. In an independent basic service set, since there is no distinction between AP and non-AP STA, the name of the first non-AP STA can be replaced by the first STA, and the name of the second non-AP STA can be replaced by the second STA, that is, in an independent basic service set, the first device and the second device can be any two STAs. It should also be understood that the names of the first device and the second device mentioned above are only examples, but this should not constitute any limitation to the present application. In different types of basic service sets, the names of the first device and the second device may be different. For example, in a mesh basic service set, the first device and the second device can be any two mesh STAs, which are not listed one by one here.
[0134] A possible design for one or more jumps is one or more jumps of the first device within a preset time period. That is, the first device sends first information, and the first information indicates one or more jumps of the first device within a preset time period. Under this design, the first information also indicates one or more of the following: the start time of the preset time period, the end time of the preset time period, or the duration of the preset time period. When the first information also indicates one of the start time, end time or duration of the preset time period, the other two items may be predefined.
[0135] For example, when the first information also indicates the end time and duration of the preset period, the start time of the preset period may be the time of the first jump. For another example, when the first information also indicates the start time and duration of the preset period, the end time of the preset period may be the time when the first device sends a data packet carrying the first information. For another example, when the first information also indicates the start time and end time of the preset period, the duration of the preset period may be determined based on the start time and end time. If the first information does not indicate the start time, end time and duration of the preset period, the start time of the preset period may be the time of the first jump, and the duration may be one beacon period.
[0136] It should be noted that the start time and end time of the above-mentioned preset time period can be a value corresponding to the time synchronization function (TSF). The TSF can be understood as a clock inside the device. The length of the TSF is 8 bytes, and each TSF value corresponds to a time value in the real world that is accurate to microseconds. In the present application, the start time and end time of the preset time period can be, for example, the minimum 2 bytes or 3 bytes of the TSF; or, the start time and end time of the above-mentioned preset time period can also be an offset value starting from the previous target beacon transmission time (TBTT), but this should not constitute any limitation to the embodiments of the present application. The above-mentioned start time and end time can also be in other forms, and the present application does not limit this.
[0137] Optionally, the first information also indicates one or more of the following: the number of jumps, the color of the BSS corresponding to each jump, the secondary sub-channel to which each jump is directed, or the length of time spent in the secondary sub-channel, wherein each jump is triggered by a station in the corresponding BSS occupying the main sub-channel, and the BSS corresponding to each jump is a BSS that overlaps with the BSS coverage range where the first device is located. Among them, the BSS that overlaps with the BSS coverage range where the first device is located can be recorded as an OBSS. The color of the BSS corresponding to each jump can be understood as the color of the OBSS where the PPDU that caused the jump is located (color of OBSS).
[0138] Exemplarily, the first device sends first information, which indicates the time of each jump of the first device in one or more jumps within a preset time period, the start time of the preset time period, the end time of the preset time period, the number of jumps, the color of the BSS corresponding to each jump, the secondary sub-channel to which each jump is made, and the length of time stayed in the secondary sub-channel.
[0139] Among them, the time of each jump can be the start time of each jump. If the first information includes the start time and / or end time of the preset time period, the expression of the start time of each jump is consistent with the expression of the start time and end time of the preset time period.
[0140] Another possible design of one or more jumps is that one or more jumps refer to the most recent one or more jumps, for example, the most recent one or more jumps before the first device sends the first information, and the jumps are not limited to a certain time period. Under this design, the first information may not indicate the start time, end time, and duration of the preset time period, but the first information may also indicate one or more of the following: the number of jumps, the color of the BSS corresponding to each jump, the secondary sub-channel to which each jump is directed, or the duration of residence in the secondary sub-channel, wherein each jump is triggered by the occupation of the main sub-channel by a site in the corresponding BSS, and the BSS corresponding to each jump is a BSS that overlaps with the BSS coverage of the first device.
[0141] Exemplarily, the first device sends first information indicating the number of jumps, the time of each jump of the first device in the first device's most recent one or more jumps, the color of the BSS corresponding to each jump, the secondary sub-channel to which each jump is directed, and the length of time spent on the secondary sub-channel.
[0142] It can be understood that the above-mentioned first information can be carried in a data frame or a beacon frame in the form of a hidden node influence list (hidden node influencelist), and the first information can be set as a field (field) or as an element (element), which is not limited in this application.
[0143] Figure 8 It is a schematic diagram of a hidden node list provided in an embodiment of the present application.
[0144] like Figure 8 As shown, the hidden node list includes list basic information and jump information. The list basic information may include the start time of the preset time period, the end time of the preset time period, and the number of entries, wherein the number of entries refers to the relevant information of how many jumps are recorded in the jump information, or the number of entries is the number of jumps. The jump information includes the time of each jump (such as the first jump, the second jump, etc.), the color of the OBSS, the secondary sub-channel to which it jumps, and the length of time it stays in the secondary sub-channel.
[0145] Understandably, Figure 8The contents of the hidden node list shown in are only examples and should not constitute any limitation to the embodiments of the present application. For example, in practical applications, the basic information of the list may also include the duration of the preset time period, or the basic information of the list may not include the start time or end time of the preset time period. For another example, the jump information may include one or more of the time of each jump (such as the first jump, the second jump, etc.), the color of the OBSS, the secondary sub-channel to which it jumps, and the duration of residence in the secondary sub-channel. For details, please refer to the relevant description of the first information, which will not be repeated here.
[0146] The following will be combined Fig. 9 Describes the hidden node influence list in detail.
[0147] Fig. 9 It is a schematic diagram of the format of the hidden node impact list provided in an embodiment of the present application.
[0148] like Fig. 9 As shown in a) in FIG. 1 , the hidden node impact list includes a list basic information field and a list entry field. Fig. 9 As shown in b), the basic information field of the list includes a start time subfield, an end time subfield, and a number of entries subfield. The meanings of the start time subfield and the end time subfield can be found in the above explanation of the start time and end time of the preset time period, which will not be repeated here. The number of entries refers to the number of hopping information subfields contained in the list entry, which can also be understood as the number of jumps.
[0149] The list entry field contains one or more jump information subfields. Fig. 9As shown in c), each hopping information subfield includes a hopping time (hopping time) (the hopping time may be the start time of the hopping), the color of the OBSS (that is, the color of the BSS corresponding to each hopping as described above) (if there is no such value, it may be set to a special value to express "unknown", such as 255), the secondary subchannel to be hopped to, and the duration (that is, the duration of stay in the secondary subchannel). It should be noted that the definitions of the various fields above are only examples and should not constitute any limitation on the embodiments of the present application. The present application does not exclude the possibility of adopting other definitions in future protocols. For example, the hopping time subfield may also be expressed as an OBSS PPDU monitoring time (OBSS PPDU detection time) (the OBSS PPDU monitoring time refers to the time when the OBSS PPDU is detected), so that the first information can be used in a wider range of application scenarios where the impact of hidden nodes needs to be known.
[0150] In step 720, the second device sends second information, where the second information indicates whether the second device jumps each time the first device jumps. Correspondingly, the first device receives the second information.
[0151] After receiving the first information, the second device determines whether a jump occurs each time the first device jumps, and reports the result to the first device.
[0152] Optionally, the second information may indicate a bit map.
[0153] One possible design is that the bitmap includes multiple bits, and its length (number of bits) is the value of the number of entries (number of jumps). Each bit in the bitmap represents whether the second device also jumps when the first device jumps. For example, the xth bit corresponds to the xth jump in the hidden node impact list, and is used to indicate whether the second device also jumps when the first device jumps for the xth time.
[0154] Exemplarily, when the bit value is 1, it means that the second device also jumps when the first device jumps, and when the bit value is 0, it means that the second device does not jump when the first device jumps; or, when the bit value is 0, it means that the second device also jumps when the first device jumps, and when the bit value is 1, it means that the second device does not jump when the first device jumps.
[0155] It can be understood that the above bit map is only an example and should not constitute any limitation to the present application.
[0156] It should be noted that the present application does not specifically limit the meaning of "the second device also jumps when the first device jumps". For example, in actual applications, when the difference between a certain jump time of the second device and a certain jump time of the first device does not exceed a certain threshold, it can be considered that the two jump at the same time. For another example, in some scenarios, such as the scenario where the first information indicates a jump to a secondary sub-channel, only when the first device and the second device both jump to the same secondary sub-channel can it be considered that the second device also jumps when the first device jumps. In other scenarios, such as the scenario where the first information does not indicate a jump to a secondary sub-channel, the first device and the second device jump to different non-primary sub-channels, which also counts as the second device also jumping when the first device jumps.
[0157] It is understood that after the first device determines the synchronization status of the second device with itself, it can take corresponding measures, such as turning off the non-primary channel access function of the second device, to improve communication performance. For example, when the first device jumps, the second device also jumps, which means that the synchronization status is good, and the non-primary channel access function of the second device may not be turned off. It should be understood that the present application does not limit the measures taken according to the synchronization status.
[0158] Based on the above technical solution, the first device can send the time of each jump in one or more jumps, and the other device (the second device) can determine whether it has also jumped according to the time of each jump of the first device, and then report it to the first device, so that the first device can determine the synchronization status of the other party with itself, and then take corresponding measures according to the synchronization status to improve communication performance. In addition, the first device accurately indicates the time of each jump, and then the second device determines whether it has jumped at the same time, which is conducive to improving the accuracy of the determined synchronization status.
[0159] Fig.10 It is a schematic flowchart of another communication method provided in an embodiment of the present application. Fig.10 The method 1000 shown may include steps 1010 to 1030. Each step in the method 1000 is described in detail below.
[0160] It should be understood that Fig.10The illustrated embodiment describes the method from the perspective of the interaction between the non-AP STA and the third device, but does not constitute any limitation on the execution subject of the method. As long as the program that records the code of the method provided by the embodiment of the present application can be run, the method provided by the embodiment of the present application can be executed. For example, the non-AP STA can also be replaced by a component configured in the non-AP STA (such as a chip, a chip system, etc.), or other functional modules that can call and execute programs, and the third device can also be replaced by a component configured in the third device (such as a chip, a chip system, etc.), or other functional modules that can call and execute programs. The embodiment of the present application does not limit this.
[0161] In step 1010, the non-AP STA generates third information, where the third information indicates a reception status of a first data packet sent by the non-AP STA after one or more jumps within a preset time period.
[0162] The above jump refers to changing from using the primary subchannel for PPDU synchronization to using the secondary subchannel for PPDU synchronization. Among them, using the primary channel for PPDU synchronization means using the center frequency of the primary subchannel as the synchronization frequency of the PPDU. Similarly, using the secondary subchannel for PPDU synchronization means using the center frequency of the secondary subchannel as the synchronization frequency of the PPDU. In other words, the jump can be understood as adjusting the synchronization frequency of the PPDU from the center frequency of the primary subchannel to the center frequency of the secondary subchannel.
[0163] The reception status of the first data packet sent by the non-AP STA after one or more jumps within the preset time period can be used to reflect the synchronization status of the AP and the non-AP STA. Exemplarily, when the reception status of the first data packet sent by the non-AP STA after one or more jumps within the preset time period is good, it means that the synchronization status of the AP and the non-AP STA is good. For example, the reception status of the first data packet sent by the non-AP STA after one or more jumps within the preset time period is represented by the first packet success rate of the non-AP STA after one or more jumps within the preset time period. The higher the first packet success rate, the higher the synchronization rate between the AP and the non-AP STA.
[0164] A possible implementation manner is that the non-AP STA generates the third information according to the reception status of the first data packet sent by itself after one or more jumps within a preset time period.
[0165] Optionally, the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period includes a first packet success rate after the non-AP STA jumps one or more times within the preset time period, and the first packet success rate = m / M, where m represents the sum of the numbers of first data packets sent by the non-AP STA after one or more jumps that are successfully received, and M represents the total number of first data packets sent by the non-AP STA after one or more jumps. Wherein, 0≤m≤M, m and M are integers.
[0166] In other words, the reception status of the first data packet sent by the non-AP STA after one or more jumps within the preset period is represented by the first packet success rate of the non-AP STA after one or more jumps within the preset period.
[0167] For example, after the non-AP STA jumps to the secondary sub-channel each time, if the first data packet sent is successfully received, this data packet is counted into the first packet success number m, and the first packet success rate in the preset time period = m / M. Among them, M is less than or equal to the number of jumps (because not necessarily every jump will have a data packet to send).
[0168] Optionally, the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period includes a first packet failure rate after the non-AP STA jumps one or more times within the preset time period, where the first packet failure rate=n / M, wherein n represents the sum of the number of first data packet reception failures (or transmission failures) sent by the non-AP STA after the one or more jumps, and M represents the total number of first data packets sent by the non-AP STA after one or more jumps. Wherein, 0≤n≤M, n and M are integers.
[0169] In other words, the reception status of the first data packet sent by the non-AP STA after one or more jumps within the preset period is represented by the first packet failure rate of the non-AP STA after one or more jumps within the preset period.
[0170] For example, after the non-AP STA jumps to the secondary subchannel each time, if the first data packet sent fails to be received (or the first data packet fails to be sent), this data packet is counted into the first packet failure number n, and the first packet success rate in the preset time period = n / M, where M is less than or equal to the number of jumps.
[0171] It can be understood that the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period can be represented by the first packet success rate or the first packet failure rate, but this should not constitute any limitation to this application. For example, in actual applications, the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period can also be represented by the number of first packet successes or the number of first packet failures, and this application does not limit this.
[0172] In step 1020, the non-AP STA sends third information to the third device. Correspondingly, the third device receives the third information.
[0173] The third device may be an AP or another non-AP STA.
[0174] It should be noted that the present application does not specifically limit the name of the site. For example, in the structured basic service set, the third device can be an AP or another non-AP STA that establishes a point-to-point connection with the non-AP STA; in the independent basic service set, there is no distinction between AP and non-AP STA, and the name of non-AP STA can be replaced by STA. That is, in the independent basic service set, Fig.10 The method shown can be applied between any two STAs. In the mesh basic service set, the name of non-AP STA can be replaced by mesh STA, that is, in the mesh basic service set, Fig.10 The methods shown can be applied between any two mesh STAs and are not listed here one by one.
[0175] Exemplarily, after generating the third information, the non-AP STA sends the third information to the third device to indicate the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period.
[0176] In step 1030, the third device determines whether to disable the non-primary channel access function of the non-AP STA according to the third information.
[0177] Disabling the non-primary channel access function of the non-AP STA can be understood as the non-AP STA cannot use the center frequency of the secondary sub-channel for PPDU synchronization.
[0178] Exemplarily, the third device may determine whether to disable the non-primary channel access function of the non-AP STA according to the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period.
[0179] One possible implementation method is that when the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period is represented by the first packet success rate of the non-AP STA after one or more jumps within the preset time period, when the first packet success rate is less than a first preset threshold, it is determined to turn off the non-primary channel access function of the non-AP STA; when the first packet success rate is greater than or equal to the first preset threshold, it is determined not to turn off (or turn on) the non-primary channel access function of the non-AP STA.
[0180] Another possible implementation method is that when the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period is represented by the first packet failure rate of the non-AP STA after one or more jumps within the preset time period, when the first packet failure rate is greater than a second preset threshold, it is determined to turn off the non-AP STA's non-main channel access function; when the first packet failure rate is less than or equal to the second preset threshold, it is determined not to turn off (or turn on) the non-APSTA's non-main channel access function.
[0181] Optionally, Fig.10 The method 1000 shown also includes: the third device sends fourth information to the non-AP STA, where the fourth information instructs the non-AP STA to turn off or on a non-primary channel access function. Accordingly, the non-AP STA receives the fourth information.
[0182] Exemplarily, after the third device determines whether to turn off the non-primary channel access function of the non-AP STA based on the third information, it can send fourth information to the non-AP STA to instruct the non-AP STA to turn off or turn on the non-primary channel access function, thereby improving communication performance.
[0183] Optionally, Fig.10 The method 1000 shown also includes: before the third device receives the third information, the above method also includes: the third device sends a request message to the non-AP STA, and the request message is used to request the non-AP STA to report to the third device the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period.
[0184] That is to say, the non-AP STA can actively report to the third device the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period, or report the reception status of the first data packet sent by itself after one or more jumps within a preset time period when the third device requests it to report. This application does not limit this.
[0185] Based on the above technical solution, the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period can reflect the synchronization status of the third device and the non-AP STA. The non-AP STA reports the third information to the third device, which facilitates the third device to take corresponding measures according to the synchronization status, thereby improving the communication performance. In addition, the non-AP STA reports the reception status of the first data packet sent after one or more jumps within a preset time period, without reporting the detailed information of the jump, and the overhead is relatively small.
[0186] Fig.11 It is a schematic flow chart of another communication method provided in an embodiment of the present application. Fig.11 The method 1100 shown may include steps 1110 to 1130. Each step in the method 1100 is described in detail below.
[0187] It should be understood that Fig.11 The illustrated embodiment describes the method from the perspective of the interaction between the non-AP STA and the third device, but does not constitute any limitation on the execution subject of the method. As long as the program that records the code of the method provided by the embodiment of the present application can be run, the method provided by the embodiment of the present application can be executed. For example, the non-AP STA can also be replaced by a component configured in the non-AP STA (such as a chip, a chip system, etc.), or other functional modules that can call and execute programs, and the third device can also be replaced by a component configured in the third device (such as a chip, a chip system, etc.), or other functional modules that can call and execute programs. The embodiment of the present application does not limit this.
[0188] In step 1110, the non-AP STA generates fifth information, where the fifth information indicates a reception status of a data packet sent by the non-AP STA on each sub-channel of at least one sub-channel within a preset period of time.
[0189] The at least one sub-channel may include a primary sub-channel and a secondary sub-channel.
[0190] One possible design is that the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within a preset period includes the number of data packets that failed to be received (or successfully sent) sent by the non-AP STA on each subchannel in at least one subchannel within the preset period. In other words, the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset period is represented by the number of data packets that failed to be received sent by the non-AP STA on each subchannel in at least one subchannel within the preset period.
[0191] Another possible design is that the reception status of the data packets sent by the non-AP STA on each subchannel in the at least one subchannel within the preset time period includes the number of data packets sent by the non-AP STA on each subchannel in the at least one subchannel within the preset time period that are successfully received. That is, the reception status of the data packets sent by the non-AP STA on each subchannel in the at least one subchannel within the preset time period is represented by the number of data packets sent by the non-AP STA on each subchannel in the at least one subchannel within the preset time period that are successfully received.
[0192] Exemplarily, the non-AP STA generates the fifth information according to the reception status of the data packets sent on each subchannel in at least one subchannel within its own preset time period. The duration of the preset time period may be a beacon period, which is not limited in the present application.
[0193] In step 1120, the non-AP STA sends fifth information to the third device. Correspondingly, the third device receives the fifth information.
[0194] The third device may be an AP or another non-AP STA.
[0195] It should be noted that the present application does not specifically limit the name of the site. For example, in the structured basic service set, the third device can be an AP or another non-AP STA that establishes a point-to-point connection with the non-AP STA; in the independent basic service set, there is no distinction between AP and non-AP STA, and the name of non-AP STA can be replaced by STA. That is, in the independent basic service set, Fig.11 The method shown can be applied between any two STAs. In the mesh basic service set, the name of non-AP STA can be replaced by mesh STA, that is, in the mesh basic service set, Fig.11 The methods shown can be applied between any two mesh STAs and are not listed here one by one.
[0196] Exemplarily, after generating the fifth information, the non-AP STA sends the fifth information to the third device to indicate the reception status of the data packets sent on each sub-channel in at least one sub-channel within a preset time period.
[0197] In step 1130, the third device determines a target channel according to the fifth information.
[0198] The target channel is used for the third device to transmit data.
[0199] One possible implementation method is that when the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within a preset time period is represented by the number of failed receptions of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset time period, the third device can use the subchannel in at least one channel whose packet failure rate is less than a third preset threshold as the target channel, wherein the packet failure rate of each subchannel is the ratio of the number of failed receptions of the sent data packets to the total number of sent data packets.
[0200] It can be understood that after the receiving end receives the number of failed receptions of data packets sent on each subchannel in at least one subchannel, it can calculate the packet failure rate on the subchannel by combining its own statistics on the number of data packets successfully received on the corresponding subchannel, that is, the total number of packets on the channel is the sum of the number of data packets that failed to be received and the number of data packets that were successfully received, and the packet failure rate is the ratio of the number of data packets that failed to be received to the total number of packets, which makes it easier to judge whether the subchannel is suitable for non-main channel access.
[0201] Another possible implementation method is that when the reception status of the data packets sent by the non-AP STA on each subchannel in at least one subchannel within a preset time period is represented by the number of successfully received data packets sent by the non-AP STA on each subchannel in at least one subchannel within the preset time period, the third device may take the subchannel in which the number of successfully received data packets sent in at least one subchannel is greater than a fourth preset threshold as the target channel.
[0202] It can be understood that after the receiving end receives the number of successfully received data packets sent on each sub-channel in at least one sub-channel, it can further determine whether the sub-channel is suitable for non-primary channel access.
[0203] Optionally, when the reception status of the data packets sent by the non-AP STA on each sub-channel in the at least one sub-channel within the preset time period is represented by the number of failed receptions of the data packets sent by the non-AP STA on each sub-channel in the at least one sub-channel within the preset time period, Fig.11 The method 1100 shown also includes: the non-AP STA receives sixth information from a third device, where the sixth information indicates a sub-channel in at least one channel whose packet sending failure rate is less than a third preset threshold.
[0204] When the reception status of the data packets sent by the non-AP STA on each of the at least one sub-channel within the preset time period is represented by the number of data packets sent by the non-AP STA on each of the at least one sub-channel within the preset time period that are successfully received, Fig.11The method 1100 shown also includes: the non-AP STA receives seventh information from the third device, the seventh information indicating a sub-channel in which the number of successfully received data packets sent in the at least one sub-channel is greater than a fourth preset threshold.
[0205] Optionally, Fig.11 The method 1100 shown also includes: before the third device receives the fifth information, the above method also includes: the third device sends a request message to the non-AP STA, and the request message is used to request the non-AP STA to report to the third device the reception status of the data packets sent by the non-AP STA on each sub-channel in at least one sub-channel within a preset time period.
[0206] That is to say, the non-AP STA can actively report to the third device the reception status of the data packets sent by the non-AP STA on each sub-channel in at least one sub-channel within a preset time period, and can also report the reception status of the data packets sent by itself on each sub-channel in at least one sub-channel within a preset time period when the third device requires it to report. This application does not limit this.
[0207] Based on the above technical solution, the non-AP STA can report to the third device the reception status of the data packets sent on each sub-channel in at least one sub-channel within a preset time period, so that the third device can determine the target channel with better quality for data transmission based on the above reception status and improve the communication performance.
[0208] The following will be combined Figure 12 to Figure 14 The communication device provided by the present application is described in detail.
[0209] Fig.12 It is a schematic block diagram of a communication device 1200 provided in an embodiment of the present application.
[0210] like Fig.12 As shown, the communication device 1200 includes a sending module 1210 and a receiving module 1220 .
[0211] The above device 1200 can be used to implement the above Figure 7 The function of the first device in the method embodiment shown, or the above device 1200 is used to implement the above Figure 7 The function of the second device in the method embodiment is shown.
[0212] When the device 1200 is used to implement Figure 7When the function of the first device in the method embodiment shown is performed, the sending module 1210 can be used to send first information, which indicates the time of each jump of the first device in one or more jumps, and the above jump refers to the change from using the main sub-channel for PPDU synchronization to using the secondary sub-channel for PPDU synchronization; the receiving module 1220 can be used to receive second information from the second device, which indicates whether the second device jumps each time the first device jumps.
[0213] When the device 1200 is used to implement Figure 7 When the function of the second device in the method embodiment shown is performed, the receiving module 1220 can be used to receive first information, which indicates the time of each jump of the first device in one or more jumps, and the above jump refers to the change from using the main sub-channel for PPDU synchronization to using the secondary sub-channel for PPDU synchronization; the sending module 1210 can be used to send second information to the first device, which indicates whether the second device jumps each time the first device jumps.
[0214] For more detailed description of the sending module 1210 and the receiving module 1220, please refer to Figure 7 The relevant description in the method embodiment shown is directly obtained and will not be repeated here.
[0215] Fig.13 It is a schematic block diagram of a communication device 1300 provided in an embodiment of the present application.
[0216] like Fig.13 As shown, the communication device 1300 includes a transceiver module 1310 and a processing module 1320 .
[0217] The above device 1300 can be used to implement the above Fig.10 or Fig.11 The function of the non-AP STA in the method embodiment shown, or the above-mentioned device 1300 is used to implement the above-mentioned Fig.10 or Fig.11 The function of the third device in the method embodiment is shown.
[0218] When the device 1300 is used to implement Fig.10 In the method embodiment shown, when the function of non-AP STA is performed, the processing module 1320 can be used to generate third information, which indicates the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period, and the above-mentioned jump refers to the change from using the main sub-channel for PPDU synchronization to using the secondary sub-channel for PPDU synchronization; the transceiver module 1310 can be used to send the third information to a third device.
[0219] When the device 1300 is used to implement Fig.10When the function of the third device in the method embodiment shown is performed, the transceiver module 1310 can be used to receive third information, which indicates the reception status of the first data packet sent by the non-AP STA after one or more jumps within a preset time period, and the above-mentioned jump refers to the change from using the primary sub-channel for PPDU synchronization to using the secondary sub-channel for PPDU synchronization; the processing module 1320 can be used to determine whether to turn off the non-primary sub-channel access function of the non-AP STA based on the third information.
[0220] When the device 1300 is used to implement Fig.11 In the method embodiment shown, when the function of non-AP STA is realized, the processing module 1320 can be used to generate fifth information, which indicates the reception status of data packets sent by the non-AP STA on each sub-channel in at least one sub-channel within a preset time period; the transceiver module 1310 can be used to send the fifth information to a third device.
[0221] When the device 1300 is used to implement Fig.11 When the function of the third device in the method embodiment shown is performed, the transceiver module 1310 can be used to receive fifth information, which indicates the reception status of data packets sent by the non-AP STA on each sub-channel in at least one sub-channel within a preset time period; the processing module 1320 can be used to determine the target channel based on the fifth information.
[0222] For more detailed description of the transceiver module 1310 and the processing module 1320, please refer to Fig.10 or Fig.11 The relevant description in the method embodiment shown is directly obtained and will not be repeated here.
[0223] It should be understood that the division of modules in the embodiments of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation. In addition, each functional module in each embodiment of the present application may be integrated into a processor, or may exist physically separately, or two or more modules may be integrated into one module. The above-mentioned integrated modules may be implemented in the form of hardware or in the form of software functional modules.
[0224] Fig.14 1 is a schematic block diagram of a communication device 1400 provided in an embodiment of the present application. The device 1400 may be a chip system, or may be a device configured with a chip system for implementing the method described in the above method embodiment. In the embodiment of the present application, the chip system may be composed of a chip, or may include a chip and other discrete devices.
[0225] like Fig.14As shown, the device 1400 may include a processor 1410 and a communication interface 1420. The communication interface 1420 may be used to communicate with other devices through a transmission medium, so that the device 1400 can communicate with other devices. The communication interface 1420 may be, for example, a transceiver, an interface, a bus, a circuit, or a device capable of implementing transceiver functions. The processor 1410 may use the communication interface 1420 to input and output data, and to implement Figure 7 , Fig.10 or Fig.11 Specifically, the device 1400 can be used to implement the above Figure 7 The function of the first device or the second device in the embodiment shown; or, for implementing the above Fig.10 The functions of the non-AP STA or the third device in the embodiment shown; or, for implementing the above Fig.11 The functions of a non-AP STA or a third device in the illustrated embodiment.
[0226] Optionally, the device 1400 also includes at least one memory 1430 for storing program instructions and / or data. The memory 1430 is coupled to the processor 1410. The coupling in the embodiment of the present application is an indirect coupling or communication connection between devices, units or modules, which can be electrical, mechanical or other forms, and is used for information exchange between devices, units or modules. The processor 1410 may operate in conjunction with the memory 1430. The processor 1410 may execute program instructions stored in the memory 1430. At least one of the at least one memory may be included in the processor.
[0227] The specific connection medium between the processor 1410, the communication interface 1420 and the memory 1430 is not limited in the embodiment of the present application. Fig.14 The processor 1410, the communication interface 1420 and the memory 1430 are connected via a bus 1440. The bus 1440 is connected to the processor 1410, the communication interface 1420 and the memory 1430 via a bus 1440. Fig.14 The connections between the other components are shown in bold lines, which are only for illustration and are not intended to be limiting. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.14 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0228] The present application also provides a computer program product, the computer program product comprising: a computer program (also referred to as code, or instruction), when the computer program is executed, can achieve Figure 7 , Fig.10 or Fig.11 The method described in the illustrated embodiments.
[0229] The present application also provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program (also referred to as code or instruction). When the computer program is executed, Figure 7 , Fig.10 or Fig.11 The method described in the illustrated embodiments.
[0230] An embodiment of the present application provides a communication system, which includes the first device and the second device as described above; or, includes the non-AP STA and the third device as described above.
[0231] It should be understood that the processor in the embodiment of the present application can be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method embodiment can be completed by the hardware integrated logic circuit or software instructions in the processor. The above processor can be a general processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general processor can be a microprocessor or the processor can also be any conventional processor. The steps of the method disclosed in the embodiment of the present application can be directly embodied as a hardware decoding processor to perform, or the hardware and software modules in the decoding processor can be combined to perform. The software module can be located in a mature storage medium in the field such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.
[0232] It should also be understood that the memory in the embodiments of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), and direct RAM (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0233] The terms "unit", "module", etc. used in this specification may be used to represent computer-related entities, hardware, firmware, a combination of hardware and software, software, or software in execution. The units and modules in the embodiments of the present application have the same meaning and can be used interchangeably.
[0234] It will be appreciated by those skilled in the art that the various illustrative logical blocks and steps described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or in combination with computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application. In the several embodiments provided in this application, it should be understood that the disclosed devices, equipment and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of the units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point, the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0235] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0236] In addition, each functional unit in each embodiment of the present 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.
[0237] In the above embodiments, the functions of each functional unit can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions (programs). When the computer program instructions (programs) are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. 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 computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. 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 available media integrated. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a digital video disc (DVD)), or a semiconductor medium (eg, a solid state disk (SSD)).
[0238] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the technology or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as USB flash drives, mobile hard drives, ROM, RAM, magnetic disks, or optical disks.
[0239] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. A communication method, characterized in that: Applied to a first device, the method includes: Sending first information, where the first information indicates a time of each jump in one or more jumps of the first device, where the jump refers to changing from using a primary subchannel for physical layer protocol data unit PPDU synchronization to using a secondary subchannel for PPDU synchronization; Second information is received from a second device, where the second information indicates whether the second device jumps each time the first device jumps.
2. The method according to claim 1, characterized in that The one or more jumps are one or more jumps within a preset time period, and the first information further indicates one or more of the following: a start time of the preset time period, an end time of the preset time period, or a duration of the preset time period.
3. The method according to claim 1 or 2, characterized in that The first information also indicates one or more of the following: the number of jumps, the color of the basic service set BSS corresponding to each jump, the secondary sub-channel to which each jump is directed, or the length of time spent in the secondary sub-channel, wherein each jump is triggered by a station within the corresponding BSS occupying the main sub-channel, and the BSS corresponding to each jump is a BSS that overlaps with the BSS coverage range where the first device is located.
4. The method according to any one of claims 1 to 3, characterized in that When the first device is an access point AP and the second device is a non-access point station non-AP STA, the first information is sent through broadcast or multicast, or the first information is sent to the non-AP STA through unicast.
5. The method according to any one of claims 1 to 3, characterized in that When the first device is a non-AP STA and the second device is an AP, the first information is sent by the non-AP STA to the AP through unicast.
6. The method according to any one of claims 1 to 3, characterized in that When the first device is a first non-AP STA and the second device is a second non-AP STA, the first information is sent by the first non-AP STA to the second non-AP STA through unicast.
7. The method according to any one of claims 1 to 6, characterized in that The second information indicates a bit map.
8. A communication method, characterized in that: Applied to the second device, the method includes: Receive first information, where the first information indicates a time of each jump in one or more jumps of the first device, where the jump refers to changing from using a primary subchannel for physical layer protocol data unit PPDU synchronization to using a secondary subchannel for PPDU synchronization; Second information is sent to the first device, where the second information indicates whether the second device jumps each time the first device jumps.
9. The method according to claim 8, characterized in that The one or more jumps are one or more jumps within a preset time period, and the first information further indicates one or more of the following: a start time of the preset time period, an end time of the preset time period, or a duration of the preset time period.
10. The method according to claim 8 or 9, characterized in that The first information also indicates one or more of the following: the number of jumps, the color of the basic service set BSS corresponding to each jump, the secondary sub-channel to which each jump is directed, or the length of time spent in the secondary sub-channel, wherein each jump is triggered by a station within the corresponding BSS occupying the main sub-channel, and the BSS corresponding to each jump is a BSS that overlaps with the BSS coverage range where the first device is located.
11. The method according to any one of claims 8 to 10, characterized in that The second information indicates a bit map.
12. A communication device, characterized in that: The method comprises a module for implementing the method according to any one of claims 1 to 7, or comprises a module for implementing the method according to any one of claims 8 to 11.
13. A communication device, characterized in that: comprising a processor and a memory, wherein: The memory is used to store computer programs; The processor is configured to call the computer program so that the communication device implements the method according to any one of claims 1 to 7, or implements the method according to any one of claims 8 to 11.
14. A computer-readable storage medium, characterized in that: The storage medium stores a computer program or instruction. When the computer program or instruction is executed by a computer, the method according to any one of claims 1 to 7 is implemented, or the method according to any one of claims 8 to 11 is implemented.
15. A computer program product, characterized in that The computer program product comprises instructions, and when the instructions are executed by a computer, the method according to any one of claims 1 to 7 is implemented, or the method according to any one of claims 8 to 11 is implemented.