System and method for improving beacon frame reception success rate in wireless network

By calculating the time difference between the AP and STA, the customer site optimizes the wake-up time to receive beacon frames, solving the problem of low reception success rate of battery-powered equipment in energy-saving mode, and achieving power saving and improved reception success rate.

CN120857262APending Publication Date: 2025-10-28BEKEN CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410518893.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-04-26
Publication Date
2025-10-28

AI Technical Summary

Technical Problem

In wireless networks, battery-powered client devices often struggle to accurately receive beacon frames in power-saving mode, resulting in wasted power and low reception success rates.

Method used

The customer site calculates the time difference between the AP and STA by receiving the timestamp value of the beacon frame, determines the wake-up advance, optimizes the wake-up time to receive subsequent beacon frames, reduces power consumption and improves the reception success rate.

Benefits of technology

By optimizing wake-up time, customer sites can wake up promptly in energy-saving mode, improving the success rate of beacon frame reception, reducing power consumption, and ensuring network connection stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120857262A_ABST
    Figure CN120857262A_ABST
Patent Text Reader

Abstract

A system and method optimizes a wakeup schedule of a client device based on an optimal wakeup advance to improve the success rate of receiving beacon frames from an AP in a wireless network by determining the optimal wakeup advance to compensate for clock errors of the AP, thereby achieving reliable data transmission while taking into account minimum power consumption. The client device determines the optimal wake-up advance by analyzing the beacon frames, identifying a difference between the clock of the AP and the client site's own clock. The wake-up time of the client device is optimized from an energy saving mode, enabling the client sites to prepare prior to beacon frame broadcast, ensuring their consistent reception.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The technical field of this disclosure generally relates to wireless communication, and more specifically, to a system and method for improving the success rate of beacon frame reception in a wireless network. Background Technology

[0002] This disclosure generally relates to wireless communication systems, and more specifically, to wireless networks (such as WLANs). In a wireless network, an access point periodically broadcasts beacon frames to announce the presence of the network and allow client devices to connect and maintain the connection. To conserve battery power, battery-powered client devices such as mobile phones and laptops typically enter a power-saving mode between data transmissions. Summary of the Invention

[0003] The method involves a customer site (STA) performing several steps: receiving a first beacon frame with a first Time Synchronization Function (TSF) value from an access point (AP), measuring the first reception time of the frame, receiving a second beacon frame with a second TSF value from the AP, measuring the second reception time of the frame, determining an AP time interval based on the difference between the first and second TSF values, determining a STA time interval based on the difference between the first and second reception times, determining a STA-AP time difference based on the AP and STA time intervals, determining a wake-up advance based on the STA-AP time difference, waking the STA from power-saving mode according to the wake-up advance to prepare for receiving subsequent beacon frames, and receiving subsequent beacon frames with TSF values.

[0004] In one embodiment, the client site apparatus includes a transceiver and one or more processors, as well as a memory storing instructions configured to execute the method.

[0005] In another embodiment, the non-transitory computer-readable storage medium contains instructions that, when executed by a client site, cause the client site to perform the method. Attached Figure Description

[0006] To facilitate identification of any discussion of a particular element or action, the most important number in the figure labels corresponds to the figure number in which the element is first introduced.

[0007] Figure 1 A schematic diagram of a network environment according to an embodiment of this application is shown.

[0008] Figure 2 A block diagram of a sample customer site module according to an embodiment of this application is shown.

[0009] Figure 3The present application illustrates the components and timeline of an example beacon frame according to an embodiment of the present application, showing the process of the beacon frame being transmitted from the access point to the client site and the moment when the client site is awakened to receive the beacon frame.

[0010] Figure 4 Conceptual diagrams of two timelines according to embodiments of this application are shown, illustrating example timing of beacon frame transmission from an access point to a customer site.

[0011] Figure 5 Two timeline concept diagrams illustrate example timing of beacon frame transmission from an access point to a client site in the presence of network traffic, according to embodiments of this application.

[0012] Figure 6 A flowchart illustrating a method for improving beacon frame reception success rate according to an embodiment of this application is shown.

[0013] Figure 7 A schematic representation of a customer site according to an embodiment of this application is shown. Detailed Implementation

[0014] The following description includes systems, methods, techniques, instruction sequences, and computer program products embodying illustrative embodiments of the present disclosure. In the following description, numerous specific details are described for purposes of explanation to facilitate understanding of various embodiments of the subject matter of the invention. However, it will be apparent to those skilled in the art that various embodiments of the subject matter of the invention can be practiced without these specific details. Generally, well-known examples of instructions, protocols, structures, and techniques need not be shown in detail. In the examples provided below, the time unit is expressed in milliseconds (ms); however, the system and methods are not limited to any particular time unit. In some examples, microseconds (μs) may be used instead of ms to obtain more precise time values.

[0015] Figure 1 This is a schematic diagram illustrating a network environment 100 according to some examples.

[0016] Network environment 100 includes network 102, access point 104, customer site 106, and customer site 108. Network environment 100 represents the configuration of devices and connections in a wireless communication environment.

[0017] Access point 104 connects to network 102 and acts as an intermediary between network 102 and wireless devices such as client site 106 and client site 108. Client site 106 may be included in a device such as a smartphone or laptop. Client site 106 is wirelessly connected to network 102 via access point 104. This connection enables client site 106 to access network resources, communicate with other devices, and exchange data. In some examples, client site 106 may be considered as access point 104 of client site 108.

[0018] Figure 2 Based on some examples, a framework diagram of the various modules of the Customer Site (STA) is shown.

[0019] Customer site 106 includes customer site RX module 202, beacon frame RX module 204, error detection and compensation module 206, time synchronization module 208, and TBTT calculation module 210. Error detection and compensation module 206 includes beacon frame storage module 212, error estimation module 214, and wake-up advance determination module 216.

[0020] The customer site RX module 202 processes the wireless signals received and processed at the customer site 106. In some examples, the wireless signals include beacon frames broadcast from an access point (AP).

[0021] The beacon frame RX module 204 processes the received beacon frame, extracts the timestamp (e.g., Time Synchronization Function (TSF) value) from the received beacon frame, and thus determines the transmission time of the received beacon frame. In some examples, the transmission time of the beacon frame is measured when the TSF field of the beacon frame is transmitted to the air interface.

[0022] The error detection and compensation module 206 includes submodules for estimating errors in the AP clock and determining wake-up advance to compensate for estimation errors in the AP clock and preparation time of other hardware components (e.g., antenna).

[0023] The beacon frame storage module 212 stores the beacon frames received by the beacon frame RX module 204 for analysis by other modules.

[0024] Error estimation module 214 estimates the error of AP clock based on STA time interval and AP time interval.

[0025] The wake-up advance determination module 216 can determine the wake-up advance using an estimated AP clock error, which includes the offset of the AP clock error (e.g., the optimally normalized STA-AP time difference and the best STA-AP time difference) and other hardware preparation time. The customer site 106 can enter a power-saving mode between received signal transmissions and wake up from power-saving mode at an optimal time before the transmission time of subsequent beacon frames, thereby saving power and improving the success rate of beacon frame reception.

[0026] The time synchronization module 208 aligns the customer site clock ("STA clock") with the AP clock based on the TSF value obtained from the beacon frame.

[0027] The TBTT calculation module 210 calculates the Target Beacon Transmission Time (TBTT) based on the predetermined beacon interval and the reception time of the current beacon frame, so that the client site 106 knows when to expect subsequent beacon frames.

[0028] Figure 3 Based on some examples, a conceptual diagram is shown showing the components of an example beacon frame, the beacon frame transmission from the access point to the STA, and the wake-up time for the STA to receive the beacon frame.

[0029] Timeline 316 shows the period during which beacon frame 302 is transmitted from access point 104 to client site 106 and the time it takes for client site 106 to wake up to receive beacon frame 302.

[0030] The beacon frame 302 includes a beacon header 304 and a beacon body 306.

[0031] The Beacon Header 304 is the first part of the beacon frame. In some examples, the Beacon Header 304 consists of the first 24 bytes of the beacon frame. In some examples, the Beacon Header 304 includes a Media Access Control (MAC) Header 308. The MAC Header 308 indicates what type of frame it is. In some examples, the MAC Header 308 indicates that the transmitted frame is a beacon frame 302.

[0032] The beacon body 306 includes additional information carried by the beacon frame 302. In some examples, the beacon body 306 includes a Time Synchronization Function (TSF) 310. The TSF 310 is a counter indicating the length of time since the AP was powered on. In other words, the TSF 310 can be a timestamp indicating when the beacon frame was transmitted according to the AP clock. The TSF 310 is contained in the TSF field. In a specific example, the TSF 310 indicates the timestamp (in microseconds (μs) at which the first bit of the TSF field of the beacon frame was transmitted to the air interface.

[0033] Timeline 316 illustrates the periodic transmission of beacon frames from access point 104 to client site 106, the wake-up advance 312 of client site 106, and the time client site 106 wakes up from power-saving mode before each beacon frame 302 according to the wake-up advance 312. After receiving a beacon frame, client site 106 can return to power-saving mode (i.e., sleep) until client site 106 wakes up in the next cycle.

[0034] The wake-up advance 312 is the amount of time that client site 106 wakes up from power-saving mode earlier than the expected transmission time of beacon frame 302. If the wake-up advance 312 is too large, client site 106 may wake up earlier than necessary, wasting energy; however, if the wake-up advance 312 is too small, client site 106 may wake up too late and miss beacon frame 302. The wake-up advance 312 can take into account one or more factors. In some examples, the wake-up advance 312 takes into account the time required for hardware components to prepare to receive data (e.g., turning on beacon frame RX module 204) and buffering for any errors in the AP clock. In a specific example, the wake-up advance 312 is 2ms, and the subsequent beacon frame is expected to be transmitted at 302.4ms, and client site 106 wakes up from power-saving mode at 300.4ms.

[0035] Figure 4 Based on some examples, a conceptual diagram is shown, which includes two timelines illustrating an example timing sequence for the transmission of beacon frames from the access point to the customer site.

[0036] Access point timeline 402 marks the time when beacon frames are sent according to the AP clock. Client site timeline 404 marks the time when beacon frames are received from the access point according to the STA clock. For simplicity, it is assumed that both access point timeline 402 and client site timeline 404 start at 0ms. In reality, the clocks of the access point and client site may start at any given time.

[0037] Access point 104 broadcasts a beacon frame (e.g., beacon frame 302) according to the Target Beacon Transmission Time ("TBTT"). TBTT indicates the scheduled time for broadcasting or transmitting the beacon frame. In some examples, TBTT can be predetermined. For example, TBTT = (N+1) × a predetermined beacon interval (where N is the number of cycles corresponding to the beacon frame). Figure 4 In the examples shown, the TBTT is 102.4, 204.8, 307.2, ..., 819.2, and 921.6 milliseconds (ms), meaning a beacon frame is scheduled to be transmitted every 102.4 ms. Alternatively, the STA can calculate the TBTT in real time based on the reception time of the current beacon frame or the previous beacon frame. For example, customer site 106 can determine the current cycle number by dividing the TSF value of the current beacon frame by the predetermined beacon interval and rounding down. For example: Where 110.0 is the TSF value of the current beacon frame, 102.4 is the predetermined beacon interval, and 1 indicates that the current period is the first period. The TBTT of subsequent beacon frames will be (current period + 1) × predetermined beacon interval. For example: (1 + 1) × 102.4 = 204.8 ms, this is the TBTT of subsequent beacon frames.

[0038] Access point 104 uses the AP clock to track the TBTT. The AP clock can be a counter that starts counting in response to power-on of access point 104. Access point 104 broadcasts or transmits beacon frame 302 in response to the AP clock reaching the TBTT. Figure 4 In the example shown, access point 104 transmits beacon frame 302 to the client site when the AP clock reaches 102.4, 204.8, 307.2, ..., 819.2, and 921.6 ms. In some examples, due to AP clock errors, the actual transmission time of each beacon frame may differ from the TBTT, possibly earlier or later. For example, access point 104 transmits beacon frame 302 in response to the AP clock reaching 102.4 ms, but in absolute time, beacon frame 302 is transmitted at 101.4 ms.

[0039] Customer site 106 receives each beacon frame from access point 104 and determines the reception time of each beacon frame based on the STA clock. It can be assumed that the STA clock tracks absolute time. Figure 4 In the example shown, due to the error of the AP clock (the AP clock runs faster than absolute time), access point 104 does not transmit beacon frame 302 at the Target Beacon Transmission Time ("TBTT"), but at a slightly earlier time, specifically 101.4, 202.8, 304.2, ..., 811.2 and 912.6 ms.

[0040] Optionally, access point 104 and the AP clock are powered on at 0 ms. At 0 ms, beacon frame 302 can be broadcast, followed by a second beacon frame at 102.4 ms. Alternatively, access point 104 may not broadcast any beacon frames upon startup. Instead, access point 104 broadcasts the first beacon frame at multiples of a predetermined beacon interval after startup (e.g., 102.4 ms or 204.8 ms).

[0041] Customer site 106 determines the estimated value of AP clock error based on the difference between the length of the STA time interval and the length of the AP time interval (i.e., the length of the STA time interval - the length of the AP time interval).

[0042] The length of the AP (Access Point) time interval can be determined by calculating the time interval between two beacon frame transmissions, i.e., the difference between the second TSF (Transmission Time Fraction) value and the first TSF value (e.g., second TSF value - first TSF value). In some examples, the first TSF value is related to the time of the previous beacon frame transmission, and the second TSF value is related to the time of the current beacon frame transmission. The previous beacon frame was transmitted before the current beacon frame. For example, if the first TSF value is 102.4 ms and the second TSF value is 204.8 ms, the length of the AP time interval is 204.8 - 102.4 = 102.4 ms.

[0043] The length of the STA time interval can be determined by calculating the time difference between the reception of two beacon frames (i.e., the second reception time minus the first reception time). The first reception time could be the time when the previous beacon frame was received by client site 106, and the second reception time could be the time when the current beacon frame was received by client site 106. In some examples, the previous and current beacon frames are received consecutively. For example, the first reception time is 101.4 ms, and the second reception time is 202.8 ms; in other words, according to the STA clock, the previous beacon frame was received at 101.4 ms, and the current beacon frame was received at 202.8 ms. The length of the STA time interval is 202.8 - 101.4 = 101.4 ms. In some examples, if the TSF value used to calculate the AP time value length represents the time when the TSF field was transmitted to the air interface, then the reception time used to calculate the STA timeline length needs to represent the time when the TSF field was received by client site 106 to ensure that the two time measurements use the same reference (e.g., the TSF field).

[0044] In some examples, the methods for determining the lengths of the AP and STA time intervals are applicable to non-contiguous beacon frames. For instance, the length of the STA time interval can be calculated based on the reception times of the first and fourth received beacon frames, skipping the intermediate second and third beacon frames. Similarly, the length of the AP time interval can be determined based on the TSF values ​​of the first and fourth beacon frames. Essentially, the methods described herein can flexibly utilize non-contiguous beacon frames to establish time intervals, as long as the intervals are based on the same set of beacon frames and the same set of reference points (e.g., the TSF fields of the same set of beacon frames).

[0045] Customer site 106 determines the STA-AP time difference based on the difference between the length of the STA time interval and the length of the AP time interval (e.g., STA-AP time difference = length of STA time interval - length of AP time interval). For example, the STA-AP time difference is 101.4ms - 102.4ms = -1ms. The STA-AP time difference can be an estimation error in the AP clock. This process can be repeated across multiple beacon frames to determine the optimal STA-AP time difference. Customer site 106 can use the optimal STA-AP time difference to determine the optimal wake-up advance, enabling customer site 106 to exit power-saving mode in a timely manner to reliably receive beacon frames from the access point, while maximizing the time spent in power-saving mode without waking up prematurely as necessary.

[0046] exist Figure 4 In the example shown, customer site 106 can determine that the additional AP time interval is 102.4ms (i.e., 307.2ms - 204.8ms) and the additional STA time interval is 101.4ms (i.e., 304.2ms - 202.8ms). Therefore, the additional STA-AP time difference is -1ms (i.e., 101.4ms - 102.4ms = -1ms).

[0047] After repeatedly determining one or more STA-AP time differences, resulting in multiple STA-AP time differences, the client site 106 can select the optimal STA-AP time difference from these multiple differences. In some examples, if the multiple STA-AP time differences include at least one negative number, the optimal STA-AP time difference is the minimum among the multiple STA-AP time differences, because a negative STA-AP time difference indicates that the STA time interval is shorter than the AP time interval, meaning the AP clock runs faster than the STA clock. To account for this error, the client site 106 uses the largest negative number (i.e., the minimum) as the offset. This ensures that the client site 106 can wake up in time to receive beacon frames even if there is a large error in the AP clock. In some examples, the client site 106 selects the minimum among the multiple STA-AP time differences as the optimal STA-AP time difference.

[0048] Figure 5 Based on some examples, a conceptual diagram is shown, which includes two timelines illustrating an example timing sequence of beacon frame transmission from the access point to the customer site in the presence of network traffic.

[0049] Access point 104 attempts to broadcast beacon frame 302 according to TBTT. However, in some examples, due to internet traffic, access point 104 cannot broadcast beacon frame 302 at the scheduled time (e.g., TBTT), and access point 104 must wait until the air interface (e.g., wireless interface, wireless medium, RF interface, radio communication interface) is idle before it can transmit, thus waiting for a period of time after TBTT. Therefore, the time interval length between each transmission is different, and the error in the AP clock will contribute differently to each time interval. The time interval needs to be normalized according to the length of each time interval.

[0050] exist Figure 5 In the example shown, access point 104 attempts to broadcast the first beacon frame at 102.4ms, but due to medium busy or other transmissions, access point 104 is unable to broadcast the first beacon frame at 102.4ms. Instead, access point 104 waits until 110.0ms before broadcasting the first beacon frame. Due to AP clock errors, although the first beacon frame received by client site 106 displays the first TSF value obtained according to the TSF 310 contained in the frame, indicating that the beacon frame transmission time is 110.0ms, according to the clock of client site 106, the site actually receives the beacon frame at 109.15ms. Client site 106 determines that the first TSF value is 110.0ms and the first reception time is 109.15ms.

[0051] In this example, during the second time interval, access point 104 attempts to broadcast a second beacon frame according to TBTT; however, again due to internet traffic, access point 104 is unable to broadcast the second beacon frame at TBTT (i.e., 204.8ms). Instead, after the traffic clears, it waits until 211.6ms before broadcasting the second beacon frame. The second TSF value derived from TSF 310 contained in the second beacon frame indicates that the second beacon frame was sent at 211.6ms, but according to the STA's clock, client site 106 receives the second beacon frame at 209.77ms. Client site 106 determines that the second TSF value is 211.6ms and the second reception time is 209.77ms.

[0052] The client site 106 can calculate the AP time interval based on the first TSF value and the second TSF value (e.g., first AP time interval = second TSF value - first TSF value = 211.6ms - 110.0ms = 101.6ms). The client site 106 can also calculate the STA time interval based on the first reception time and the second reception time (e.g., first STA time interval = second reception time - first reception time = 209.77ms - 109.15ms = 100.62ms). The client site 106 can further calculate the STA-AP time difference based on the AP time interval and the STA time interval (e.g., first STA-AP time difference = first STA time interval - first AP time interval = 100.62ms - 101.6ms = -0.98ms).

[0053] During the third time interval, access point 104 attempts to broadcast a third beacon frame according to TBTT. Because internet traffic is unobstructed, access point 104 manages to broadcast the third beacon frame at TBTT (i.e., 307.2ms). The third TSF value derived from the third beacon frame's TSF 310 indicates that the third beacon frame was sent at 307.2ms, but according to the STA's clock, client site 106 receives the third beacon frame at 304.45ms (i.e., the third reception time is 304.45ms).

[0054] The client site 106 can calculate the second AP time interval based on the second TSF value and the third TSF value (i.e., second AP time interval = third TSF value - second TSF value = 307.2ms - 211.6ms = 95.6ms). The client site 106 can also calculate the second STA time interval based on the second reception time and the third reception time (e.g., second STA time interval = third reception time - second reception time = 304.45ms - 209.77ms = 94.68ms). The client site 106 can further calculate the second STA-AP time difference based on the second AP time interval and the second STA time interval (e.g., second STA-AP time difference = second STA time interval - second AP time interval = 94.68ms - 95.6ms = -0.92ms).

[0055] For the sake of brevity, Figure 5 The fourth, fifth, sixth, and seventh time intervals are omitted.

[0056] During the eighth time interval, access point 104 attempts to broadcast the eighth beacon frame according to TBTT; however, again due to internet traffic, access point 104 is unable to broadcast the eighth beacon frame at TBTT (i.e., 819.2ms). Instead, after other transmissions are completed, it waits until 860.6ms before broadcasting the eighth beacon frame. The transmission time of the eighth beacon frame (i.e., 860.0ms) can be derived from the TSF 310 of the eighth beacon frame, but according to the STA's clock, client site 106 receives the eighth beacon frame at 854.21ms.

[0057] During the ninth time interval, access point 104 attempts to broadcast the ninth beacon frame according to the TBTT. Because the window is open, access point 104 manages to broadcast the ninth beacon frame at the TBTT (i.e., 921.6 ms). The transmission time of the ninth beacon frame (i.e., 921.6 ms) can be derived from the TSF 310 contained in the ninth beacon frame, but according to the STA's clock, client site 106 receives the ninth beacon frame at 914.62 ms.

[0058] Client site 106 can calculate the eighth AP time interval based on the ninth TSF value and the eighth TSF value (i.e., eighth AP time interval = ninth TSF value - eighth TSF value = 921.6ms - 860.6ms = 61ms). Client site 106 can also calculate the eighth STA time interval based on the ninth reception time and the eighth reception time (e.g., eighth STA time interval = ninth reception time - eighth reception time = 914.62ms - 854.21ms = 60.41ms). Client site 106 can further calculate the eighth STA-AP time difference based on the eighth AP time interval and the eighth STA time interval (e.g., eighth STA-AP time difference = eighth STA time interval - eighth AP time interval = 60.41ms - 61ms = -0.59ms).

[0059] After repeatedly determining one or more STA-AP time differences (e.g., first STA-AP time difference, second STA-AP time difference, eighth STA-AP time difference, etc.), the client site 106 can select the optimal STA-AP time difference from the one or more STA-AP time differences. In some examples, the client site 106 selects the minimum value among the one or more STA-AP time differences as the optimal STA-AP time difference. In some examples, the one or more STA-AP time differences include at least one negative number, and the optimal STA-AP time difference is the minimum value among the one or more STA-AP time differences. For example, in three STA-AP time differences, they are -0.98ms, -0.92ms, and -0.59ms, respectively. Based on the fact that at least one STA-AP time difference is negative and -0.98ms is the minimum value among the three STA-AP time differences, the optimal STA-AP time difference will be -0.98ms. The minimum value is chosen because this will create the maximum buffer for the client site 106 to wake from sleep, ensuring that the client site 106 does not miss any beacon frames. In some examples, one or more STA-AP time differences contain only non-negative values ​​(i.e., positive numbers or zero), with an optimal STA-AP time difference of 0 ms. This is because a positive STA-AP time difference indicates that the AP's clock is running slower than the STA's clock, thus eliminating the need for early wake-up to account for errors in the AP clock. However, customer site 106 may still need to wake up early to create a buffer for the preparation of other hardware components. In other words, in these examples, the components considering errors in the AP clock are zero, but the wake-up advance may or may not be zero. Alternatively, customer site 106 may select a value from one or more STA-AP time differences as the optimal STA-AP time difference.

[0060] Customer site 106 can determine a normalized STA-AP time difference for each defined STA-AP time difference to account for variations in the time interval between beacon frame transmissions. For example... Figure 5As shown, due to factors such as network traffic, the intervals between beacon frame transmissions may vary, resulting in different contributions of the error in the AP clock to each interval. In some examples, the normalization process is performed in response to determining each STA-AP time difference. The normalization process involves finding the ratio between a predetermined beacon interval and the time length between the two beacon frames being evaluated (e.g., STA time value, AP time value), and then multiplying that ratio by the error (e.g., the STA-AP time difference). For example, the normalized STA-AP time difference can be determined by multiplying the STA-AP time difference by the ratio of the predetermined beacon interval to the STA time interval (i.e., normalized STA-AP time difference = STA-AP time difference × predetermined beacon interval / STA time interval). This is determined under the assumption that the STA time interval is the elapsed time between two beacon frame transmissions in absolute time.

[0061] for Figure 5 In the example shown, the second STA-AP time difference is -0.92ms. The normalized second STA-AP time difference is equal to the second STA-AP time difference × the predetermined beacon interval / the second STA time interval (i.e., -0.92ms × 102.4ms / 94.68ms ≈ -0.995ms).

[0062] In some examples, client site 106 determines a normalized STA-AP time difference in response to determining the STA-AP time difference. After repeatedly determining one or more normalized STA-AP time differences (e.g., normalizing a first STA-AP time difference, a second STA-AP time difference, an eighth STA-AP time difference, etc.), client site 106 can select the optimal normalized STA-AP time difference from the one or more normalized STA-AP time differences. In some examples, client site 106 selects the minimum of the one or more normalized STA-AP time differences as the optimal normalized STA-AP time difference. In some examples, the one or more normalized STA-AP time differences include at least one negative number, and the optimal normalized STA-AP time difference is the minimum of the one or more normalized STA-AP time differences. For example, in three normalized STA-AP time differences, they are -0.9973ms, -0.995ms, and -1ms, respectively. The optimal STA-AP time difference is -1ms, based on the premise that at least one STA-AP time difference is negative and -1ms is the minimum of the three normalized STA-AP time differences. The minimum is chosen because this creates the largest buffer for client site 106 to wake from sleep, ensuring that client site 106 does not miss any beacon frames. In some examples, the normalized STA-AP time differences only contain non-negative values, and the optimal normalized STA-AP time difference is 0ms. This is because a positive normalized STA-AP time difference indicates that the AP clock runs slower than the STA clock, therefore, early wake-up is not required to account for errors in the AP clock. However, client site 106 may still need to wake up early to create a buffer for the preparation of other hardware components. In other words, in these examples, the components that account for errors in the AP clock are zero, but the wake-up advance may or may not be zero. Alternatively, client site 106 may select a value from one or more normalized STA-AP time differences as the optimal normalized STA-AP time difference.

[0063] Client site 106 can predict the next reception time in response to receiving a beacon frame. In some examples, after client site 106 selects the optimal normalized STA-AP time difference as the estimated clock error value for the AP clock (e.g., an error of -1 ms for each predetermined interval of 102.4 ms beacon period), client site 106 predicts the timing of subsequent beacon frames as follows: Client site 106 synchronizes its clock based on the TSF value of the last received beacon frame (e.g., the current beacon frame). For example, if the TSF value of the last received beacon frame is 110.0 ms, client site 106 sets the STA clock to 110.0 ms. In another example, client site 106 can slightly adjust the TSF value to account for the time elapsed to receive the entire TSF field, thereby synchronizing with its clock. For example, if the TSF value of the current beacon frame is 110.0 ms, client site 106 compensates for the time required to receive the entire TSF field, which may be approximately 64 microseconds (μs). Therefore, client site 106 can optionally set the STA clock to 110.064 ms. In response to setting the STA clock, client site 106 calculates the current cycle number corresponding to the beacon frame by dividing the TSF value of the received beacon frame by a predetermined beacon interval and then performing a floor operation. For example: Customer site 106 calculates the Target Beacon Transmission Time (TBTT) of the subsequent beacon frame by multiplying the next beacon cycle number (i.e., the current cycle number + 1) by the predetermined beacon interval. For example: (1 + 1) × 10².4 = 204.8 ms. This is the TBTT of the subsequent beacon frame. Customer site 106 calculates the next reception time by taking into account errors in the AP clock. For Figure 5 In the example shown, the next reception time after the second beacon frame is calculated as follows: 204.8ms + (-1ms) × (204.8ms - 110.0ms) / 102.4ms ≈ 203.9ms. This is the next reception time after accounting for errors in the AP clock. Customer site 106 can determine the wake-up advance based on the next reception time and the additional time required for hardware components to prepare for receiving subsequent beacon frames.

[0064] In some examples, it is optional for client site 106 to synchronize its clock with the timestamp of the last received beacon frame (i.e., client site 106 does not need to synchronize the STA's clock with the AP's clock). In these examples, client site 106 calculates the next reception time as follows: TBTT - TSF value of the current beacon frame + reception time of the current beacon frame + estimated clock error value × (TBTT - TSF value) / predetermined beacon interval). For example, if TBTT is 204.8 ms, the TSF value of the current beacon frame is 110.0 ms, and the reception time of the current beacon frame is 109.15 ms, the next reception time for subsequent beacon frames is: 204.8 - 110.0 + 109.15 + (-1) × (204.8 - 110.0) / 102.4 ms ≈ 203.02 ms. Client site 106 can determine the wake-up advance based on the next reception time and other time required for hardware components to prepare for receiving subsequent beacon frames.

[0065] Figure 6 Based on some examples, a flowchart of method 600 for improving the success rate of beacon frame reception is shown.

[0066] Method 600 may be embodied in computer-readable instructions for execution by one or more processors, such that the operations of method 600 can be performed wholly or partially by the functional components of client site 106; therefore, method 600 is described below with reference to client site 106 as an example. However, it should be understood that at least some operations of method 600 can be deployed on various other hardware configurations besides client site 106. Note that the following description of the operations of method 600 may represent only one iteration cycle, and multiple cycles may be executed.

[0067] In operation 602, client site 106 receives a first beacon frame from access point. The first beacon frame contains a first TSF value, which is determined based on the access point's clock. Client site 106 can derive a timestamp corresponding to the transmission time of the first beacon frame based on the first TSF value.

[0068] In operation 604, client site 106 measures the first reception time of the first beacon frame based on its own clock (e.g., the STA's clock). It is assumed that the STA's clock tracks absolute time. In some examples, the first reception time is measured in response to receiving the TSF field of the first beacon frame. In some other examples, the first reception time is measured in response to receiving the first bit of the beacon header (e.g., beacon header 304) of the first beacon frame. The relationship between the time to receive the first bit of the beacon header and the time to receive the first bit of the TSF field is as follows: if the beacon frame transmission rate is 1 Mbps and the beacon header is 24 bytes or 192 bits, transmitting the beacon header will take 0.192 ms. This means that if the time to receive the beacon header is 110.0 ms, the time to receive the TSF field will be 110.192 ms.

[0069] In operation 606, client site 106 receives a second beacon frame from the access point. The second beacon frame contains a second TSF value based on the AP's clock. Client site 106 can derive a timestamp corresponding to the transmission time of the second beacon frame based on the second TSF value.

[0070] In operation 608, client site 106 measures the reception time of the second beacon frame based on its own clock (e.g., the clock of the STA). In some examples, the second reception time is measured in response to receiving the TSF field of the second beacon frame. In some other examples, the second reception time is measured in response to receiving the first bit of the beacon header (e.g., beacon header 304) of the second beacon frame.

[0071] In operation 610, customer site 106 determines a first AP time interval based on the difference between a second TSF value from the access point and a first TSF value. This calculates the time length between two beacon frame transmissions from the AP's perspective, which may differ from the absolute time elapsed.

[0072] In operation 612, customer site 106 determines a first STA time interval based on the difference between a second reception time and a first reception time, according to the STA's clock. This calculates the length of time between two beacon frame transmissions, determined according to the STA's clock, which is assumed to be consistent with absolute time, representing a true, accurate, and objective measurement of time.

[0073] In operation 614, customer site 106 determines a first STA-AP time difference based on a first AP time interval and a first STA time interval. The first STA-AP time difference represents the measured difference between the clock of the STA and the clock of the AP within the same time interval. In some examples, customer site 106 determines the first STA-AP time difference based on first and second reception times and first and second TSF values.

[0074] In operation 616, customer site 106 calculates a normalized STA-AP time difference based on the STA-AP time difference (e.g., the first STA-AP time difference).

[0075] In decision block 618, client site 106 determines whether the number of normalized STA-AP time differences exceeds a first predetermined number N (e.g., 3). If not, client site 106 continues with operation 606, receiving subsequent beacon frames. However, in subsequent operations, the subsequent beacon frame is treated as a second beacon frame, and the previous second beacon frame is treated as a first beacon frame. By repeating operations 606-616, client site 106 can obtain multiple normalized STA-AP time differences. If the number of normalized STA-AP time differences exceeds the first predetermined number N (e.g., 3), decision block 618 returns yes, and client site 106 continues with operation 620.

[0076] In operation 620, the customer site 106 selects the optimal normalized time difference between the customer site and the access point (i.e., the optimal normalized STA-AP time difference) from multiple values ​​as the estimated clock error value of the access point.

[0077] In operation 622, customer site 106 uses Figure 5 The method disclosed in the description determines the wake-up advance based on the optimally normalized STA-AP time difference.

[0078] In operation 624, customer site 106 wakes up from power-saving mode before the transmission time of subsequent beacon frames based on wake-up advance, in order to prepare to receive subsequent beacon frames.

[0079] In some examples, client site 106 responds to operation 624 by repeatedly executing method 600 to further optimize the optimally normalized STA-AP time difference, thereby further improving the estimated clock error value. In some examples, client site 106 repeatedly executes method 600 to obtain two or more optimally normalized STA-AP time differences, and client site 106 selects the minimum value among the two or more optimally normalized STA-AP time differences as the optimized optimally normalized STA-AP time difference.

[0080] In decision block 626, client site 106 determines whether the number of consecutive failures to receive subsequent beacon frames exceeds a second predetermined number M (e.g., 5). If yes, client site 106 proceeds to operation 602 to restart method 600. If no, client site 106 proceeds to operation 624.

[0081] Figure 7This is an illustrative representation of client site 700, wherein executable instructions 710 (e.g., software, program, application, applet, application, or other executable code) cause client site 700 to perform any one or more methods discussed herein. For example, instructions 710 may cause client site 700 to perform any one or more methods described herein. Instructions 710 transform a generic, non-programmed client site 700 into a specific client site 700 programmed to perform the described and illustrated functions in the manner shown. Client site 700 may operate as a standalone device or coupled (e.g., networked) to other machines. In a networked deployment, client site 700 may operate as a server machine or a client machine in a server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. Client site 700 may include, but is not limited to, server computers, client computers, personal computers (PCs), tablets, laptops, netbooks, set-top boxes (STBs), entertainment media systems, cellular phones, smartphones, mobile devices, wearable devices (e.g., smartwatches), smart home devices (e.g., smart appliances), other smart devices, network devices, network routers, network switches, network bridges, or any machine capable of sequentially or otherwise executing instructions 710 specifying actions to be taken by client site 700. Furthermore, while a single client site 700 is illustrated, the term "machine" may include a collection of machines that individually or jointly execute instructions 710 to perform any one or more of the methods discussed herein.

[0082] Client site 700 may include processor 704, memory 706, and I / O components 702, which may be configured to communicate via bus 740. In some examples, processor 704 (e.g., a central processing unit (CPU), a reduced instruction set computing (RISC) processor, a complex instruction set computing (CISC) processor, a graphics processing unit (GPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a radio frequency integrated circuit (RFIC), other processors, or any suitable combination) may include processors 708 and 712 that execute instructions 710. The term "processor" is intended to include multi-core processors, which may include two or more independent processors (sometimes referred to as "cores") capable of executing instructions 710 simultaneously. Although Figure 7 Multiple processors 704 are shown, but customer site 700 may include a single processor with a single core, a single processor with multiple cores (e.g., a multi-core processor), multiple processors with a single core, multiple processors with multiple cores, or any combination thereof.

[0083] Memory 706 includes main memory 714, static memory 716, and memory cells 718, which are accessible by processor 704 via bus 740. Main memory 706, static memory 716, and memory cells 718 store instructions 710 embodying any one or more methods or functions described herein. During execution of instructions 710 at client site 700, instructions 710 may also reside wholly or partially in main memory 714, static memory 716, machine-readable medium 720 within memory cells 718, processor 704 (e.g., within the processor's cache memory), or any suitable combination thereof.

[0084] I / O component 702 may include various components to receive input, provide output, generate output, transmit information, exchange information, or capture measurement values. The specific I / O component 702 included in a particular machine depends on the type of machine. For example, a portable machine (such as a mobile phone) may include a touch input device or other such input mechanism, while a headless server machine may not include such a touch input device. I / O component 702 may include... Figure 7 Many other components are not shown. In various examples, I / O component 702 may include output component 726 and input component 728. Output component 726 may include visual components (e.g., displays such as plasma display panels (PDPs), light-emitting diode (LED) displays, liquid crystal displays (LCDs), projectors, or cathode ray tube (CRTs), acoustic components (e.g., speakers), haptic components (e.g., vibration motors, resistance mechanisms), or other signal generators. Input component 728 may include alphanumeric input components (e.g., keyboards, touchscreens configured to receive alphanumeric input, photoelectric keyboards, or other alphanumeric input components), point-based input components (e.g., mice, touchpads, trackballs, joysticks, motion sensors, or other pointing tools), haptic input components (e.g., physical buttons, touchscreens or other haptic input components that provide position and / or force for touch or touch gestures), audio input components (e.g., microphones), etc.

[0085] In a further example, I / O component 702 may include biometric component 730, motion component 732, environmental component 734, or position component 736, as well as various other components. For example, biometric component 730 includes components for detecting facial expressions (e.g., hand gestures, facial expressions, vocal expressions, body posture, or eye tracking), measuring biosignals (e.g., blood pressure, heart rate, body temperature, sweating, or brainwaves), or identifying a person (e.g., voice recognition, retinal recognition, facial recognition, fingerprint recognition, or EEG-based recognition). Motion component 732 includes accelerometer components (e.g., accelerometers), gravity sensor components, and rotation sensor components (e.g., gyroscopes). Environmental component 734 includes, for example, one or more cameras, lighting sensor components (e.g., photometers), temperature sensor components (e.g., one or more thermometers that detect ambient temperature), humidity sensor components, pressure sensor components (e.g., barometers), acoustic sensor components (e.g., one or more microphones that detect background noise), proximity sensor components (e.g., infrared sensors that detect nearby objects), gas sensors (e.g., gas detection sensors for the safe detection of hazardous gas concentrations or the measurement of pollutants in the atmosphere), or other components that can provide indication, measurement, or signaling of the surrounding physical environment. Position component 736 includes position sensor components (e.g., Global Positioning System (GPS) receiver components), altitude sensor components (e.g., altimeters or barometers that detect air pressure and thereby derive altitude), orientation sensor components (e.g., magnetometers), etc.

[0086] Communication can be implemented using various technologies. I / O component 702 also includes a communication component 738 operable to couple client site 700 to network 722 or device 724 via respective couplings or connections. For example, communication component 738 may include a network interface component or another suitable device to interface with network 722. In further examples, communication component 738 may include a wired communication component, a wireless communication component, a cellular communication component, a near-field communication (NFC) component, etc. Components (e.g., (low energy) Components and other communication components to provide communication in other ways. Device 724 can be another machine or any of various peripheral devices (e.g., a peripheral device coupled via USB).

[0087] Furthermore, the communication component 738 can detect identifiers or include components operable to detect identifiers. For example, the communication component 738 may include a radio frequency identification (RFID) tag reader component, an NFC smart tag detection component, an optical reader component (e.g., an optical sensor for detecting one-dimensional barcodes (such as Universal Product Code (UPC) barcodes), multi-dimensional barcodes (such as Quick Response (QR) codes, Aztec codes, data matrices, data glyphs, maximum codes, PDF417, Ultra Code, UCC RSS-2D barcodes, and other optical codes)), or an acoustic detection component (e.g., a microphone for identifying audio signals with tags). Additionally, various information can be derived through the communication component 738, such as location geolocation via Internet Protocol (IP), etc. The location can be determined by signal triangulation or by detecting the location of an NFC beacon signal that indicates a specific location.

[0088] Various memories (e.g., main memory 714, static memory 716, and / or the memory of processor 704) and / or storage units 718 may store one or more sets of instructions and data structures (e.g., software) that embody or are used by any one or more methods or functions described herein. When processor 704 executes these instructions (e.g., instruction 710), various operations are caused to implement the disclosed examples.

[0089] Instruction 710 can be sent or received via network 722 using a transmission medium through a network interface device (e.g., a network interface component included in communication component 738) and using any of several well-known transport protocols (e.g., Hypertext Transfer Protocol (HTTP)). Similarly, instruction 710 can be sent to or received from device 724 via a transmission medium through coupling (e.g., peer-to-peer coupling).

[0090] The system and method described provide an effective technique for compensating for access point clock errors in wireless networks. By analyzing the timing patterns of received beacon frames, the client device estimates the AP's clock error. The client device's wake-up time is then adjusted to account for the estimated AP clock error. This allows the client device to wake from power-saving mode at the appropriate time to ensure reliable beacon frame reception while minimizing power consumption. Key advantages include optimized client device wake-up time, reduced client device power consumption, and robust beacon frame reception in the presence of access point clock errors.

[0091] Example

[0092] Example 1 is a method comprising: receiving a first beacon frame from an access point (AP) by a transceiver of a customer site (STA), the first beacon frame including a first time synchronization function (TSF) value according to the clock of the AP; measuring a first reception time of the first beacon frame by one or more processors of the STA according to the clock of the STA; receiving a second beacon frame from the AP by a transceiver of the STA, the second beacon frame including a second TSF value according to the clock of the AP; measuring a second reception time of the second beacon frame by one or more processors of the STA according to the clock of the STA; determining an AP time interval by one or more processors of the STA based on the difference between the second TSF value and the first TSF value; determining an STA time interval by one or more processors of the STA based on the difference between the second reception time and the first reception time; determining a STA-AP time difference by one or more processors of the STA based on the AP time interval and the STA time interval; determining a wake-up advance by one or more processors of the STA based on the STA-AP time difference; waking up the STA from a power-saving mode by one or more processors of the STA according to the wake-up advance to prepare for receiving one or more subsequent beacon frames; and receiving one or more subsequent beacon frames including the TSF value by a transceiver of the STA.

[0093] Example 2 further includes, based on Example 1, calculating a normalized STA-AP time difference based on the STA-AP time difference, a predetermined beacon interval value, and the STA time interval; and wherein determining the wake-up advance based on the STA-AP time difference includes: determining the wake-up advance based on the normalized STA-AP time difference.

[0094] Example 3 further includes, based on Examples 1-2, that the normalized STA-AP time difference is calculated using the following formula: Normalized STA-AP time difference = STA-AP time difference × predetermined beacon interval value / STA time interval.

[0095] Example 4, building upon Examples 1-3, further includes the following: the STA-AP time difference is a first STA-AP time difference; and the method further includes: for each beacon frame in one or more subsequent beacon frames, measuring the reception time of each beacon frame according to the STA clock; determining an additional AP time interval based on the difference between the TSF value of each beacon frame and the TSF value of the previous beacon frame; determining an additional STA time interval based on the difference between the reception time of each beacon frame and the reception time of the previous beacon frame; and determining an additional STA-AP time difference based on the difference between the additional STA time interval and the additional AP time interval, resulting in one or more additional STA-AP time differences; selecting the optimal STA-AP time difference from the one or more additional STA-AP time differences and the first STA-AP time difference as the estimated clock error value of the AP clock; and wherein a wake-up advance is determined based on the optimal STA-AP time difference.

[0096] Example 5 further includes, based on Examples 1-4, that the optimal STA-AP time difference is the minimum of one or more additional STA-AP time differences and the first STA-AP time difference.

[0097] Example 6 further includes, based on Examples 1-5, a normalized STA-AP time difference that is a first normalized STA-AP time difference; and the method further includes: for each beacon frame in one or more subsequent beacon frames, measuring the reception time of each beacon frame according to the clock of the STA; determining an additional AP time interval based on the difference between the TSF value of each beacon frame and the TSF value of the previous beacon frame; determining an additional STA time interval based on the difference between the reception time of each beacon frame and the reception time of the previous beacon frame; and determining an additional AP time interval based on the difference between the additional STA time interval and the additional AP time interval. The difference between the two values ​​determines the additional STA-AP time difference; and based on the additional STA-AP time difference, the predetermined beacon interval value, and the additional STA time interval, an additional normalized STA-AP time difference is calculated to obtain one or more additional normalized STA-AP time differences; and the optimal normalized STA-AP time difference is selected from the one or more additional normalized STA-AP time differences and the first normalized STA-AP time difference as the estimated clock error value of the AP clock; and the wake-up advance is determined based on the optimal normalized STA-AP time difference.

[0098] Example 7 further includes, based on Examples 1-6, that the optimal normalized STA-AP time difference is the minimum of one or more additional normalized STA-AP time differences and the first normalized STA-AP time difference.

[0099] Example 8 further includes, based on Examples 1-7, that if one or more additional normalized STA-AP time differences and the first normalized STA-AP time difference consist only of non-negative numbers, then the optimal normalized STA-AP time difference is zero.

[0100] Example 9, building upon Examples 1-8, further includes detecting M consecutive failures to receive beacon frames from the access point; in response to detecting M consecutive failures to receive beacon frames from the access point, restarting the following steps: receiving one or more subsequent beacon frames, including TSF values, by the transceiver of the STA; for each of the one or more subsequent beacon frames, measuring the reception time of each beacon frame according to the clock of the STA; determining an additional AP time interval based on the difference between the TSF value of each beacon frame and the TSF value of the previous beacon frame; determining an additional STA time interval based on the difference between the reception time of each beacon frame and the reception time of the previous beacon frame; and based on the additional... The difference between the added STA time interval and the added AP time interval determines the additional STA-AP time difference; and based on the additional STA-AP time difference, the predetermined beacon interval value, and the additional STA time interval, an additional normalized STA-AP time difference is calculated to obtain one or more additional normalized STA-AP time differences; and the optimal normalized STA-AP time difference is selected from the one or more additional normalized STA-AP time differences and the first normalized STA-AP time difference as the estimated clock error value of the AP clock; and the wake-up advance is determined based on the optimal normalized STA-AP time difference.

[0101] Example 10, building upon Examples 1-9, further includes determining the wake-up advance based on the optimally normalized STA-AP time difference by: determining the current cycle number by dividing the TSF value of the current beacon frame by a predetermined beacon interval and rounding down; determining the target beacon transmission time (TBTT) of subsequent beacon frames based on the current cycle number; and predicting the wake-up advance based on the TBTT of subsequent beacon frames, the optimally normalized STA-AP time difference, and the predetermined beacon interval.

[0102] Example 11 is at least one machine-readable medium including instructions that, when executed by one or more processors, cause one or more processors to perform operations to implement any one of Examples 1-10.

[0103] Example 11 is a customer site that includes a device for implementing any of Examples 1-10.

Claims

1. A method for improving the success rate of beacon frame reception in a wireless network, characterized in that, include: The transceiver at the customer site (STA) receives a first beacon frame from the access point (AP), the first beacon frame including a first time synchronization function (TSF) value based on the AP's clock; The first reception time of the first beacon frame is measured by one or more processors of the STA according to the clock of the STA; The STA receives a second beacon frame from the AP via its transceiver, the second beacon frame including a second TSF value based on the AP's clock; The second reception time of the second beacon frame is measured by one or more processors of the STA according to the clock of the STA; The AP time interval is determined by one or more processors of the STA based on the difference between the second TSF value and the first TSF value; The STA time interval is determined by one or more processors of the STA based on the difference between the second reception time and the first reception time; The STA-AP time difference is determined by one or more processors of the STA based on the AP time interval and the STA time interval; The wake-up advance is determined by one or more processors of the STA based on the STA-AP time difference; The STA is woken up from power-saving mode by one or more processors of the STA according to the wake-up advance, in order to prepare to receive one or more subsequent beacon frames; as well as The STA receives one or more subsequent beacon frames, including TSF values, via its transceiver.

2. The method according to claim 1, characterized in that, Also includes: Calculate the normalized STA-AP time difference based on the STA-AP time difference, the predefined beacon interval value, and the STA time interval; as well as Determining the wake-up advance based on the STA-AP time difference includes: The wake-up advance is determined based on the normalized STA-AP time difference.

3. The method according to claim 2, characterized in that, The normalized STA-AP time difference is calculated using the following formula: The normalized STA-AP time difference = the STA-AP time difference × the predefined beacon interval value / the STA time interval.

4. The method according to claim 1, characterized in that, The STA-AP time difference is a first STA-AP time difference; and the method further includes: For each of the one or more subsequent beacon frames, The reception time of each beacon frame is measured according to the clock of the STA; The additional AP time interval is determined based on the difference between the TSF value of each beacon frame and the TSF value of the previous beacon frame; An additional STA time interval is determined based on the difference between the reception time of each beacon frame and the reception time of the previous beacon frame; and An additional STA-AP time difference is determined based on the difference between the additional STA time interval and the additional AP time interval, resulting in one or more additional STA-AP time differences; and Select the optimal STA-AP time difference from the one or more additional STA-AP time differences and the first STA-AP time difference as the estimated clock error value of the AP's clock; and The wake-up advance amount is determined based on the optimal STA-AP time difference.

5. The method according to claim 4, characterized in that, The optimal STA-AP time difference is the minimum of the one or more additional STA-AP time differences and the first STA-AP time difference.

6. The method according to claim 2, characterized in that, The normalized STA-AP time difference is the first normalized STA-AP time difference; and the method further includes: For each of the one or more subsequent beacon frames, The reception time of each beacon frame is measured according to the clock of the STA; The additional AP time interval is determined based on the difference between the TSF value of each beacon frame and the TSF value of the previous beacon frame; An additional STA time interval is determined based on the difference between the reception time of each beacon frame and the reception time of the previous beacon frame; The additional STA-AP time difference is determined based on the difference between the additional STA time interval and the additional AP time interval; and Based on the additional STA-AP time difference, the predefined beacon interval value, and the additional STA time interval, an additional normalized STA-AP time difference is calculated to obtain one or more additional normalized STA-AP time differences; and Select the optimal normalized STA-AP time difference from the one or more additional normalized STA-AP time differences and the first normalized STA-AP time difference as the estimated clock error value of the AP's clock; and The wake-up advance is determined based on the optimal normalized STA-AP time difference.

7. The method according to claim 6, characterized in that, The optimal normalized STA-AP time difference is the minimum of the one or more additional normalized STA-AP time differences and the first normalized STA-AP time difference.

8. The method according to claim 6, characterized in that, If the one or more additional normalized STA-AP time differences and the first normalized STA-AP time difference consist only of non-negative numbers, then the optimal normalized STA-AP time difference is zero.

9. The method according to claim 6, characterized in that, Also includes: M consecutive failures were detected to receive beacon frames from the access point; In response to detecting M consecutive failures to receive beacon frames from the access point, the following steps are restarted: The STA receives one or more subsequent beacon frames, including TSF values, via its transceiver. For each of the one or more subsequent beacon frames, The reception time of each beacon frame is measured according to the clock of the STA; The additional AP time interval is determined based on the difference between the TSF value of each beacon frame and the TSF value of the previous beacon frame; An additional STA time interval is determined based on the difference between the reception time of each beacon frame and the reception time of the previous beacon frame; The additional STA-AP time difference is determined based on the difference between the additional STA time interval and the additional AP time interval; as well as Based on the additional STA-AP time difference, the predefined beacon interval value, and the additional STA time interval, calculate the additional normalized STA-AP time difference to obtain one or more additional normalized STA-AP time differences. as well as The optimal normalized STA-AP time difference is selected from the one or more additional normalized STA-AP time differences and the first normalized STA-AP time difference as the estimated clock error value of the AP's clock. as well as The wake-up advance is determined based on the optimal normalized STA-AP time difference.

10. The method according to claim 6, characterized in that, Determining the wake-up advance based on the optimally normalized STA-AP time difference includes: The current cycle number is determined by dividing the TSF value of the current beacon frame by the predefined beacon interval and then rounding down. The Target Beacon Transmission Time (TBTT) of subsequent beacon frames is determined based on the current cycle number; and The wake-up advance is predicted based on the TBTT of the subsequent beacon frames, the optimally normalized STA-AP time difference, and the predefined beacon interval.

11. A customer site, characterized in that, include: one or more processors; as well as Non-transitory memory storing instructions, configured by one or more processors to: The transceiver at the customer site (STA) receives a first beacon frame from the access point (AP), the first beacon frame including a first time synchronization function (TSF) value based on the AP's clock; The first reception time of the first beacon frame is measured by one or more processors of the STA according to the clock of the STA; The STA receives a second beacon frame from the AP via its transceiver, the second beacon frame including a second TSF value based on the AP's clock; The second reception time of the second beacon frame is measured by one or more processors of the STA according to the clock of the STA; The AP time interval is determined by one or more processors of the STA based on the difference between the second TSF value and the first TSF value; The STA time interval is determined by one or more processors of the STA based on the difference between the second reception time and the first reception time; The STA-AP time difference is determined by one or more processors of the STA based on the AP time interval and the STA time interval; The wake-up advance is determined by one or more processors of the STA based on the STA-AP time difference; The STA is woken up from power-saving mode by one or more processors of the STA according to the wake-up advance, in order to prepare to receive one or more subsequent beacon frames; as well as The STA receives one or more subsequent beacon frames, including TSF values, via its transceiver.

12. The customer site according to claim 11, characterized in that, The instruction further configures the customer site as follows: Calculate the normalized STA-AP time difference based on the STA-AP time difference, the predefined beacon interval value, and the STA time interval; as well as Determining the wake-up advance based on the STA-AP time difference includes: The wake-up advance is determined based on the normalized STA-AP time difference.

13. The customer site according to claim 12, characterized in that, The normalized STA-AP time difference is calculated using the following formula: The normalized STA-AP time difference = the STA-AP time difference × the predefined beacon interval value / the STA time interval.

14. The customer site according to claim 11, characterized in that, The STA-AP time difference is a first STA-AP time difference; and the instruction further configures the customer site as follows: For each of the one or more subsequent beacon frames, The reception time of each beacon frame is measured according to the clock of the STA; The additional AP time interval is determined based on the difference between the TSF value of each beacon frame and the TSF value of the previous beacon frame; An additional STA time interval is determined based on the difference between the reception time of each beacon frame and the reception time of the previous beacon frame; as well as An additional STA-AP time difference is determined based on the difference between the additional STA time interval and the additional AP time interval, resulting in one or more additional STA-AP time differences; as well as The optimal STA-AP time difference is selected from the one or more additional STA-AP time differences and the first STA-AP time difference as the estimated clock error value of the AP's clock; as well as Specifically, the determination of wake-up advance is performed based on the optimal STA-AP time difference.

15. The customer site according to claim 14, characterized in that, The optimal STA-AP time difference is the minimum of the one or more additional STA-AP time differences and the first STA-AP time difference.

16. The customer site according to claim 12, characterized in that, The normalized STA-AP time difference is the first normalized STA-AP time difference; and the instruction further configures the customer site as follows: For each of the one or more subsequent beacon frames, The reception time of each beacon frame is measured according to the clock of the STA; The additional AP time interval is determined based on the difference between the TSF value of each beacon frame and the TSF value of the previous beacon frame; An additional STA time interval is determined based on the difference between the reception time of each beacon frame and the reception time of the previous beacon frame; The additional STA-AP time difference is determined based on the difference between the additional STA time interval and the additional AP time interval; as well as Based on the additional STA-AP time difference, the predefined beacon interval value, and the additional STA time interval, calculate the additional normalized STA-AP time difference to obtain one or more additional normalized STA-AP time differences. as well as The optimal normalized STA-AP time difference is selected from the one or more additional normalized STA-AP time differences and the first normalized STA-AP time difference as the estimated clock error value of the AP's clock. as well as The wake-up advance is determined based on the optimal normalized STA-AP time difference.

17. The customer site according to claim 16, characterized in that, The optimal normalized STA-AP time difference is the minimum of the one or more additional normalized STA-AP time differences and the first normalized STA-AP time difference.

18. The customer site according to claim 16, characterized in that, The instruction further configures the customer site as follows: M consecutive failures were detected to receive beacon frames from the access point; In response to detecting M consecutive failures to receive beacon frames from the access point, the following steps are restarted: The STA receives one or more subsequent beacon frames, including TSF values, via its transceiver. For each of the one or more subsequent beacon frames, The reception time of each beacon frame is measured according to the clock of the STA; The additional AP time interval is determined based on the difference between the TSF value of each beacon frame and the TSF value of the previous beacon frame; An additional STA time interval is determined based on the difference between the reception time of each beacon frame and the reception time of the previous beacon frame; The additional STA-AP time difference is determined based on the difference between the additional STA time interval and the additional AP time interval; as well as Based on the additional STA-AP time difference, the predefined beacon interval value, and the additional STA time interval, calculate the additional normalized STA-AP time difference to obtain one or more additional normalized STA-AP time differences. as well as The optimal normalized STA-AP time difference is selected from the one or more additional normalized STA-AP time differences and the first normalized STA-AP time difference as the estimated clock error value of the AP's clock. as well as Specifically, the determination of wake-up advance is performed based on the optimally normalized STA-AP time difference.

19. The customer site according to claim 16, characterized in that, Predicting the next reception time of subsequent beacon frames based on the optimally normalized STA-AP time difference and the predefined beacon interval value includes: The current cycle number is determined by dividing the TSF value of the current beacon frame by the predefined beacon interval and then rounding down. The Target Beacon Transmission Time (TBTT) of subsequent beacon frames is determined based on the current cycle number; and The wake-up advance is predicted based on the TBTT of the subsequent beacon frames, the optimally normalized STA-AP time difference, and the predefined beacon interval.

20. A non-transitory computer-readable storage medium comprising instructions that, when executed by one or more processors of a client site, cause the client site to: The transceiver at the customer site (STA) receives a first beacon frame from the access point (AP), the first beacon frame including a first time synchronization function (TSF) value based on the AP's clock; The first reception time of the first beacon frame is measured by one or more processors of the STA according to the clock of the STA; The STA receives a second beacon frame from the AP via its transceiver, the second beacon frame including a second TSF value based on the AP's clock; The second reception time of the second beacon frame is measured by one or more processors of the STA according to the clock of the STA; The AP time interval is determined by one or more processors of the STA based on the difference between the second TSF value and the first TSF value; The STA time interval is determined by one or more processors of the STA based on the difference between the second reception time and the first reception time; The STA-AP time difference is determined by one or more processors of the STA based on the AP time interval and the STA time interval; The wake-up advance is determined by one or more processors of the STA based on the STA-AP time difference; The STA is woken up from power-saving mode by one or more processors of the STA according to the wake-up advance, in order to prepare to receive one or more subsequent beacon frames; as well as The STA receives one or more subsequent beacon frames, including TSF values, via its transceiver.