Methods, computing devices, articles of manufacture for channel allocation

By allocating multiple channels to APs in a wireless LAN during the beacon interval for multiple ranging measurements, the problems of AP ranging accuracy and network topology adaptability are solved, achieving higher-precision AP positioning.

CN116781190BActive Publication Date: 2026-01-06HEWLETT PACKARD ENTERPRISE DEV LP
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
CN202211313322.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2022-03-10
Filing Date
2022-10-25
Publication Date
2026-01-06
Estimated Expiration
2042-10-25

AI Technical Summary

Technical Problem

Existing technologies in wireless local area networks suffer from insufficient accuracy and flexibility in adapting to changes in network topology during ranging between access points (APs). In particular, ranging cannot be performed while the AP is communicating with the site, and multiple available channels are not effectively utilized for ranging.

Method used

By using computing devices to allocate multiple channels to multiple access points (APs) based on channel allocation during beacon intervals, multiple ranging measurements are performed, and the AP location is analyzed based on the ranging results, ensuring that each AP utilizes multiple available channels to improve ranging accuracy.

Benefits of technology

It improves the accuracy and flexibility of ranging between APs, can adapt to changes in network topology without interfering with communication, and enhances the accuracy of ranging results by utilizing channel diversity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116781190B_ABST
    Figure CN116781190B_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure relate to channel allocation for ranging between access points during a beacon interval. Examples described herein provide for channel allocation for ranging between network devices in a network during a beacon interval. Examples described herein can allocate a plurality of channels to a plurality of network devices based on a plurality of channel allocation permutations, and initiate ranging measurements between the plurality of network devices on the plurality of channels based on each channel allocation permutation during the beacon interval to generate ranging results.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-reference with related applications

[0002] This application relates to a co-pending U.S. application filed on December 2, 2021, entitled "COORDINATED RANGING BETWEEN ACCESS POINTS IN A NETWORK" (U.S. Application Serial No. 17 / 541,909), entitled "COORDINATED RANGING BETWEEN ACCESS POINTS IN A NETWORK" (U.S. Application Serial No. 17 / 541,872), also filed on December 2, 2021, entitled "RANGING BY A NETWORK DEVICE DURING A BEACON INTERVAL" (U.S. Application Serial No. 17 / 541,872), entitled "RANGING BY A NETWORK DEVICE DURING A BEACON INTERVAL" (U.S. Application Serial No. 17 / 541,872), entitled "RANGING BY A NETWORK DEVICE DURING A BEACON INTERVAL" (U.S. Application Serial No. 710230473US01), assigned to Hewlett Packard Enterprise Development LP. Background Technology

[0003] Typically, one or more access points (APs) can be deployed in a wireless local area network (WLAN). Communication devices such as laptops, personal computers, and smartphones can connect to the WLAN to exchange data within the network. These devices can send ranging requests to one or more APs.

[0004] Due to the wide compatibility between access points (APs) and communication devices, ranging technologies such as Fine Time Measurement (FTM) protocols have gained prominence. FTM protocols typically involve the exchange of messages between the AP and the communication device. From this information, time of flight, round-trip time, etc., can be derived, which are used to determine the location of the communication device relative to the AP. For example, time of flight (ToF) can be defined as the total time it takes for a signal to travel from the AP to a client device (e.g., the communication device) and back. From the time of flight information, the distance between the AP and the client device can be determined. Summary of the Invention

[0005] Typically, the example embodiments of this disclosure provide a solution for channel allocation for ranging between access points during beacon intervals.

[0006] In a first aspect, a method for channel allocation is provided, comprising: assigning a plurality of channels to a plurality of access point (AP) devices in a network based on a first channel allocation arrangement. During a first beacon interval, the computing device initiates a first ranging measurement between the plurality of APs on the plurality of channels based on the first channel allocation arrangement to generate a first ranging result. The computing device determines whether a total ranging measurement is performed for at least a threshold percentage of available links among the APs on the plurality of channels, wherein the total ranging measurement includes the first ranging measurement, and wherein the threshold percentage is a threshold in percentage form. Based on the determination that the total ranging measurement is not performed for a threshold percentage of available links among the APs on the plurality of channels, the computing device assigns the plurality of channels to the plurality of APs based on a second channel allocation arrangement. During a second beacon interval, the computing device initiates a second ranging measurement between the plurality of APs on the plurality of channels based on the second channel allocation arrangement to generate a second ranging result, and based on the first and second ranging results, the computing device resolves the locations of the plurality of APs.

[0007] In a second aspect, a computing device is provided, including processing resources; and a non-transitory machine-readable storage medium including instructions executable by the processing resources for allocating multiple channels to multiple access point (AP) devices based on a first channel allocation arrangement. During a first beacon interval, a first ranging measurement is initiated between the multiple APs on the multiple channels based on the first channel allocation arrangement to generate a first ranging result. A determination is made that a total ranging measurement is not performed for a threshold percentage of available links among the multiple APs on the multiple channels, wherein the total ranging measurement includes the first ranging measurement, and wherein the threshold percentage is a threshold in percentage form. Multiple channels are then allocated to the multiple APs based on a second channel allocation arrangement, and during a second beacon interval, a second ranging measurement is initiated between the multiple APs on the multiple channels based on the second channel allocation arrangement to generate a second ranging result; and the locations of the multiple APs are resolved based on the first and second ranging results.

[0008] In a third aspect, an article of art is provided comprising at least one non-transitory machine-readable storage medium, the at least one non-transitory machine-readable storage medium comprising instructions executable by at least one processing resource for allocating multiple channels to multiple network devices by a computing device based on a first channel allocation arrangement. During a first beacon interval, the computing device initiates a first ranging measurement between the multiple network devices on the multiple channels based on the first channel allocation arrangement to generate a first ranging result. The computing device determines that a total ranging measurement is not performed for a threshold percentage of available links among the multiple network devices on the multiple channels, wherein the total ranging measurement includes the first ranging measurement, and wherein the threshold percentage is a threshold in percentage form. The computing device allocates multiple channels to the multiple network devices based on a second channel allocation arrangement and, during a second beacon interval, initiates a second ranging measurement between the multiple network devices on the multiple channels based on the second channel allocation arrangement to generate a second ranging result, and the computing device resolves the location of the multiple network devices based on the first ranging result and the second ranging result. Attached Figure Description

[0009] Various features and advantages of the present invention will become apparent from the following description of examples of the invention, given by way of example only, with reference to the accompanying drawings, in which:

[0010] Figure 1 This is a block diagram of an example computing device for providing channel allocation for ranging between APs in a network during beacon intervals.

[0011] Figure 2 A block diagram of an example system for providing channel allocation for ranging between APs in a network during beacon intervals is shown.

[0012] Figure 3 This is a graph showing the cumulative distribution of FTM ranging errors between two APs on multiple 5GHz channels.

[0013] Figure 4 This is a flowchart illustrating an example method for channel allocation for ranging between APs in a network during beacon intervals.

[0014] Figure 5 This is a flowchart illustrating an example method for channel allocation for ranging between APs in a network during beacon intervals.

[0015] Figure 6 This is a block diagram of an example computer system in which various embodiments described herein can be implemented for providing channel allocation for ranging between APs in a network during beacon intervals. Detailed Implementation

[0016] The following detailed description is illustrated in the accompanying drawings. Where possible, the same reference numerals are used in the drawings and the following description to refer to the same or similar parts. However, it should be clearly understood that the drawings are for illustrative and descriptive purposes only. While several examples have been described herein, modifications, adaptations, and other implementations are possible. Therefore, the following detailed description does not limit the disclosed examples. Rather, the appropriate scope of the disclosed examples may be defined by the appended claims.

[0017] Recently, efforts have been focused on automatically locating access points (APs) within a network, such as automatically locating APs on a visual plan of the network. This automatic AP location is advantageous over manual AP location, as manual AP location can be an error-prone process. For example, when manually locating APs in a network, the AP's location may be measured or entered incorrectly, or the AP may have been moved or removed from service.

[0018] To support automatic location of an AP, the AP needs to perform packet switching with neighboring APs and then measure the round-trip time (RTT) of these packet switching to estimate the range of the AP to its corresponding neighboring AP. Performing ranging sequentially between AP pairs can result in increased call time overhead because a larger amount of available call time is used to perform ranging measurements between APs (e.g., compared to simultaneous or parallel ranging). Furthermore, ranging techniques typically do not allow APs to continue performing ranging when the network topology changes (e.g., when an AP is added to the network or removed from service) without interfering with communication between the AP and client devices connected to it. To address one or more of these issues, techniques for providing ranging by network devices during beacon intervals and for providing coordinated ranging between APs in a network are further described in U.S. Application Serial Nos. 17 / 541,909 and 17 / 541,872, which are incorporated herein by reference.

[0019] However, providing coordinated ranging between APs in a network may not always be feasible. For example, when an AP in a network is communicating with a station in the network (e.g., a client device), and when this communication between the AP and the station is not interrupted, initiating ranging between APs in the network on a given channel (e.g., a first channel, a second channel) may not be feasible. Furthermore, in some instances, when a network device performs ranging with an AP during beacon intervals (e.g., when a network device initiates ranging measurements with an AP during non-channel dwell periods when the network device is not communicating with a station), the ranging measurements initiated by the network device may not take into account the multiple available channel allocations for each AP to perform the ranging measurements. Additionally, as described herein, it has been found that performing ranging between pairs of APs, using multiple available channels for each AP, may improve the accuracy of such ranging.

[0020] To address these issues, the examples described herein provide channel allocation for ranging between network devices (e.g., access points) in a network during beacon intervals. The examples described herein allow a computing device to allocate multiple channels to multiple network devices based on multiple channel allocation permutations, and the computing device initiates ranging measurements between the multiple network devices on the multiple channels during the beacon interval based on each channel allocation permutation in the permutation to generate ranging results. The examples described herein allow a computing device to determine whether to perform a total ranging measurement for a threshold percentage of available links between the multiple network devices on multiple channels, where the total ranging measurement includes ranging measurements based on each channel allocation permutation. Based on the determination to perform a total ranging measurement for a threshold percentage of available links, the examples described herein allow a computing device to resolve the locations of multiple access points based on the ranging results.

[0021] The example described herein can involve a computing device assigning multiple channels to multiple APs based on a channel allocation arrangement, and the computing device initiating ranging measurements between the multiple APs based on the channel allocation arrangement during a beacon interval to generate ranging results. The example described herein can involve a computing device determining whether to perform a total ranging measurement for a threshold percentage of available links across multiple APs on multiple channels, where the total ranging measurement includes ranging measurements. Based on the determination that the total ranging measurement is not performed for a threshold percentage of available links across multiple APs on multiple channels, the example described herein can involve a computing device assigning multiple APs to multiple channels according to another channel allocation arrangement (e.g., a second channel allocation arrangement), and the computing device initiating additional ranging measurements (e.g., a second ranging measurement) between the multiple APs on multiple channels during a subsequent beacon interval (e.g., a second beacon interval) based on the other channel allocation arrangement to generate another ranging result (e.g., a second ranging result). Based on the determination that the total ranging measurement is performed for a threshold percentage of available links, the example described herein can involve a computing device resolving the location of multiple APs based on each ranging result for each channel allocation arrangement.

[0022] In this way, the examples described herein can provide multiple channel allocations for ranging between network devices (e.g., APs) in a network during beacon intervals, thereby improving the accuracy of ranging between APs. For example, the examples described herein can have a computing device determine whether to perform a total ranging measurement for a threshold percentage of available links among APs on multiple channels, thereby ensuring that the ranging measurement performed between APs utilizes multiple available channel allocations for each AP. Furthermore, based on the determination that the total ranging measurement is performed for a threshold percentage of available links, the examples described herein can have a computing device resolve the location of multiple APs based on each ranging result of each channel allocation per ...

[0023] computing devices

[0024] Now refer to the attached diagram, Figure 1 A block diagram of an example computing device 100 for providing channel allocation for ranging between network devices (e.g., APs) in a network during beacon intervals is depicted. The computing device 100 includes at least one processing resource 110 and at least one machine-readable storage medium 120, the storage medium 120 including (e.g., encoded with) an AP channel allocation instruction 122, a ranging initiation instruction 124, a link threshold determination instruction 126, and an AP location resolution instruction 128.

[0025] exist Figure 1 In some examples, computing device 100 may include a device that communicates with multiple network devices in the network to provide channel allocation for ranging among the network devices during beacon intervals. For example, computing device 100 may include a gateway router, a wireless local area network (WLAN) controller, a switch, a server, or a combination thereof. In some examples, computing device 100 may include an access point (AP) configured to communicate with multiple network devices in the network.

[0026] exist Figure 1In the example, computing device 100 can participate in any network data transmission operation, including but not limited to switching, routing, bridging, or combinations thereof. Furthermore, computing device 100 can collect network operation information from various nodes of one or more networks, including network traffic load information, network topology information, network usage information, etc. Additionally, computing device 100 can transmit commands to various nodes of one or more networks to change network topology and routing, thereby achieving various network efficiency and effectiveness objectives. It is understood that computing device 100 can include any suitable type(s) of computing devices configured to provide channel allocation for ranging between network devices in the network. Furthermore, computing device 100 can include any necessary hardware components for performing the invention disclosed herein, including but not limited to: processors, memory, display devices, input devices, communication devices, etc.

[0027] exist Figure 1 In the example, computing device 100 may be configured (e.g., using instruction encoding executable by at least one processing resource 110) to receive multiple network requests 150 from a network via multiple network paths 140. Multiple network paths 140 may include any suitable multiple links 142 (e.g., wired or wireless, direct or indirect, etc.) between computing device 100 and the network. Multiple network requests 150 may include any suitable instructions to instruct computing device 100 to provide channel allocation for ranging between network devices in the network. For example, multiple network requests 150 may include instructions to instruct computing device 100 to execute AP channel allocation instruction 122, ranging initiation instruction 124, link threshold determination instruction 126, and AP location resolution instruction 128.

[0028] In the examples described herein, a “network path” may include a combination of hardware (e.g., interfaces, links, etc.) and instructions (e.g., those that can be executed by processing resources) for transmitting (e.g., receiving, sending) commands (e.g., network request 150) to external resources (e.g., servers, cloud computing resources, etc.) connected to the network.

[0029] exist Figure 1In the example, computing device 100 may be configured (e.g., using instruction encoding executable by at least one processing resource 110) to send or receive communication signals 170 via communication path(s) 160 to perform ranging between network devices in the network during beacon intervals. Communication path(s) 160 may include any suitable link(s) 162 (e.g., wired or wireless, direct or indirect, etc.) between computing device 100 and one or more network devices. Communication signals 170 may include any suitable instructions for computing device 100 to provide channel allocation for performing ranging between network devices in the network (e.g., executing AP channel allocation instruction 122, ranging initiation instruction 124, link threshold determination instruction 126, and AP location resolution instruction 128).

[0030] In the examples described herein, a “communication path” may include a combination of hardware (e.g., an interface, a link, etc.) and instructions (e.g., instructions that can be executed by processing resources) to communicate with one or more network devices (e.g., to receive or send instructions to them).

[0031] Cumulative distribution of FTM ranging errors among APs on multiple channels

[0032] Figure 3 Figure 300 shows the cumulative distribution function (CDF) plot of the FTM ranging error between network device pairs (APs) on different channels in the 5 GHz band. Figure 3 As shown in the figure, the CDF plot illustrates the probability (represented as a value between 0 and 1) that the error in the estimated distance (range) between AP pairs of multiple APs will be less than a given distance (in meters). Figure 3 The CDF diagram shown is obtained by analyzing 26 Aruba channels across multiple channels. ® The distance was obtained by performing pairwise FTM ranging between the AP-505 network devices (APs). These 26 APs were deployed across floors of the building. Specifically, Figure 3 The results were obtained by performing paired FTM ranging between 26 APs on 6 channels (channels 36, 52, 100, 116, 132 and 149) according to the IEEE 802.11 protocol for the 5 GHz band.

[0033] like Figure 3As shown, curve 305 represents the cumulative distribution of FTM ranging errors between AP pairs on channel 36, curve 310 represents the cumulative distribution of FTM ranging errors between AP pairs on channel 52, curve 315 represents the cumulative distribution of FTM ranging errors between AP pairs on channel 100, curve 320 represents the cumulative distribution of FTM ranging errors between AP pairs on channel 116, curve 325 represents the cumulative distribution of FTM ranging errors between AP pairs on channel 132, and curve 330 represents the cumulative distribution of FTM ranging errors between AP pairs on channel 149. Figure 3 As shown, it was found that, compared to other channels, the cumulative distribution of FTM ranging errors between AP pairs on certain channels has an average value closer to 0 meters (and therefore corresponds to more accurate FTM ranging results). For example, as Figure 3 As shown, the cumulative distribution of FTM ranging errors between AP pairs on channel 116 (as shown by curve 320) has an average value closer to 0 meters compared to the cumulative distribution of FTM ranging errors between AP pairs on channel 132 (as shown by curve 325). Therefore, it was found that performing ranging between AP pairs on multiple available channels can provide different ranging results, thus allowing selection of ranging results (e.g., an average value closer to 0 meters) on available channels (or multiple available channels) with a more favorable cumulative distribution of ranging errors compared to one or more other available channels.

[0034] Channel allocation used for ranging between APs during beacon intervals.

[0035] See Figure 4 Some examples depict a method 400 for providing channel allocation for ranging between APs in a network during beacon intervals. Although references are given below... Figure 1 The computing device 100 described herein is used to describe the execution of method 400, but any suitable computing device can be used for the execution of method 400. Furthermore, the execution of method 400 is not limited to such an example. Although method blocks 405 to 420 are shown in method 400, method 400 may include other actions described herein. Furthermore, although these blocks are shown in sequence, Figure 4 The boxes depicted in the method 400 can be executed in any suitable order and at any time. Furthermore, one or more boxes in method 400 can be combined with one or more boxes in method 500 to be executed. Additionally, some boxes shown in method 400 may be omitted without departing from the spirit and scope of this disclosure.

[0036] At box 405, method 400 may include assigning multiple channels to multiple APs in the network based on channel allocation arrangement.

[0037] Channel allocation arrangements can be selected from a set of available channel allocation arrangements for multiple APs. For each channel allocation arrangement in the set, one or more APs can be assigned channels different from one or more other APs. Furthermore, for each channel allocation arrangement in the set, one or more APs can be assigned channels identical to one or more other APs. For each channel allocation arrangement, the multiple channels can be in any suitable frequency range(s). For example, each channel allocation arrangement can include multiple channels in the 2.4 GHz band or the 5 GHz band. The multiple channels in each channel allocation arrangement can conform to any suitable wireless communication standard (e.g., IEEE 802.11). The multiple channels in each channel allocation arrangement can be determined based on the capabilities of each AP (e.g., based on the communication capabilities of the multiple APs in the 2.4 GHz band, 5 GHz band, etc.).

[0038] Furthermore, the channel allocation arrangement can be determined by the computing device 100, or it can be received by the computing device 100 from an external source (e.g., from user input, a server, cloud resources, etc.) communicating with the computing device 100 via a network. The channel allocation arrangement can assign multiple available channels to multiple APs to minimize interference between APs while APs are communicating simultaneously on multiple channels (e.g., an AP is simultaneously communicating with client devices connected to one or more APs on multiple channels, one or more APs are simultaneously communicating with one or more other APs on multiple channels, etc.). The channel allocation arrangement can be part of a channel allocation plan determined by the computing device 100 or received by the computing device 100 from an external source (e.g., from user input, a server, cloud resources, etc.).

[0039] At box 410, method 400 may include: during the beacon interval, initiating ranging measurements between multiple APs on multiple channels based on channel allocation to generate ranging results (e.g., a first ranging result).

[0040] Initiating ranging measurements between multiple APs on multiple channels to generate ranging results can include: during a beacon interval (e.g., a first beacon interval), initiating ranging measurements between two APs on a first channel, wherein the first channel is assigned to one of the two APs (i.e., the first AP) based on a channel allocation arrangement. Furthermore, initiating ranging measurements between multiple APs on multiple channels can include: during another beacon interval (e.g., a second beacon interval), initiating ranging measurements between two APs on a second channel, wherein the second channel is assigned to the other of the two APs (i.e., the second AP) based on a channel allocation arrangement. Therefore, initiating ranging measurements between multiple APs on multiple channels based on a channel allocation arrangement can include performing pairwise ranging measurements between each AP pair on each of the two channels assigned to the AP pair.

[0041] Ranging measurements between multiple APs on multiple channels can be initiated for all APs of the multiple APs. For example, ranging between multiple APs on multiple channels can include: for each AP pair of the multiple APs, initiating a ranging measurement between the AP pair based on channel allocation on the channels(s) assigned to the AP pair. Alternatively, ranging measurements between multiple APs on multiple channels can be initiated for a subset of the multiple APs. For example, ranging between multiple APs on multiple channels can include: for each AP pair of a subset of the multiple APs, initiating a ranging measurement between the AP pair based on channel allocation on the channels(s) assigned to the AP pair. Furthermore, ranging measurements between multiple APs on multiple channels can occur during consecutive beacon intervals. For example, ranging between multiple APs on multiple channels can include: during a first beacon interval, for a first AP pair, initiating a ranging measurement between the first AP pair based on channel allocation on the channels assigned to the first AP pair; and then during a second beacon interval, for a second AP pair, initiating a ranging measurement between the second AP pair based on channel allocation on the channels assigned to the second AP pair. Two consecutive beacon intervals may include one or more intermediate beacon intervals between them.

[0042] As used herein, a “beacon” (i.e., a beacon frame) refers to a management frame transmitted by a network device (e.g., network device 100) containing information about the network that a station (e.g., a client device, another network device, etc.) needs to communicate with network devices in the network (e.g., transmit frames). A beacon can have a frame format conforming to the IEEE 802.11 standard. For example, a beacon may include an IEEE 802.11 Media Access Control (MAC) header, a body, and a Frame Check Sequence (FCS). The beacon body may include a timestamp, a beacon interval, a type field indicating information about network capabilities (e.g., whether the network is infrastructure-based or self-organizing), a Service Set Identifier (SSID), supported transmission rates, a Frequency Hopping (FH) parameter set, a Direct Sequence (DS) parameter set, a Contention-Free (CF) parameter set, a Time Indication Map (TIM), or a combination thereof. It is understood that a beacon can have any suitable format according to any suitable standard(s).

[0043] As used herein, a “beacon interval” (also known as a “target beacon transmission time”) refers to the frequency of beacon transmissions by a network device (e.g., an access point). In other words, a beacon interval is the duration between consecutive beacon transmissions (i.e., beacon broadcasts) by a network device. A beacon interval can correspond to a non-channel dwell period, which is the time period during which a network device does not communicate with one or more stations (e.g., client devices) on a given channel. Beacon intervals can be measured in units of time, where each unit corresponds to 1.024 milliseconds. It is understood that a beacon interval can be set to 100 time units, 300 time units, or any suitable duration. Furthermore, each beacon interval can have the same or different (shorter, longer) duration as consecutive beacon intervals.

[0044] Initiating ranging measurements between multiple APs on multiple channels can include configuring multiple APs to perform ranging measurements using channel bandwidths on multiple channels. For example, a pair of APs can be configured to use an 80 MHz channel bandwidth on a first channel to perform ranging measurements between that pair of APs. It is understood that multiple APs can be configured to perform ranging measurements between multiple APs using 20 MHz, 40 MHz, 80 MHz, 160 MHz, or any suitable channel bandwidth on selected channels. Furthermore, initiating ranging measurements between multiple APs can include configuring multiple APs to use antenna chains to perform ranging measurements between multiple APs. Configuring multiple APs to use antenna chains to perform ranging measurements between multiple APs can include selecting an antenna of the AP (among one or more antennas of the AP) to perform ranging measurements for each AP. Additionally, initiating ranging measurements between multiple APs can include configuring one or more APs to perform ranging measurements using transmitted effective isotropic radiated power (EIRP). For example, the first AP in a plurality of APs can be configured to use 100% of its available power (i.e., Pmax) of the first AP's transmission EIRP to perform ranging measurements between the first AP and another AP in the plurality of APs. It is understood that each AP in the plurality of APs can be configured to use 100% (Pmax), 90%, 75%, or any other suitable percentage of its available power of the AP's transmission EIRP to perform ranging measurements with one or more other APs in the plurality of APs.

[0045] Each AP in multiple ranging measurements (e.g., first ranging measurement, second ranging measurement) between multiple APs may include FTM, RTT, Time of Arrival (ToA), Time of Flight (ToF), Angle of Arrival (AoA), RSSI, Short Guard Interval (SGI), Long Guard Interval (LGI), Channel State Information (CSI), or combinations thereof between one or more AP pairs of multiple APs. It is understood that ranging measurements between multiple APs can have any suitable format. Furthermore, ranging measurements between multiple APs can be performed sequentially. For example, ranging measurements can be performed between first AP pairs of multiple APs (e.g., during a first beacon interval), and then between second AP pairs of multiple APs (e.g., during a second beacon interval).

[0046] Each generated ranging result can indicate a ranging measurement between one or more AP pairs among a plurality of APs. It will be understood that each ranging result can have any suitable format. For example, the ranging results of multiple APs can be indicated (e.g., included therein) by one or more packets transmitted by one or more APs to computing device 100 among a plurality of APs.

[0047] At box 415, method 400 may include determining whether to perform a total ranging measurement for a threshold percentage of available links among multiple APs on multiple channels.

[0048] In the examples described herein, available links between network devices (e.g., access points) may include any suitable wireless links(s) between one or more pairs of network devices (e.g., direct or indirect) that can be used to perform ranging between the one or more pairs of network devices. Each available link between network device pairs may be configured on any suitable channel according to any suitable wireless communication standard (e.g., IEEE 802.11). Available links between network devices are established via one or more radios included in each of the network devices.

[0049] The threshold percentage of available links among multiple APs on multiple channels can correspond to the threshold ratio of available links among multiple APs in the network for all available channel allocation permutations (i.e., all channel allocation permutations in the set of available channel allocation permutations). Each available link among the multiple APs can correspond to any suitable available antenna(s) path(s) and any suitable available channel(s) used to establish a link between the multiple APs. At block 415, if it is determined that no total ranging measurement is performed for the threshold percentage of available links among multiple APs on multiple channels, then method 400 returns to block 405. Conversely, if it is determined that a total ranging measurement is performed for the threshold percentage of available links among multiple APs on multiple channels, then method 400 proceeds to block 420.

[0050] When method 400 returns to block 405, method 400 may include assigning multiple channels to multiple APs based on another channel allocation arrangement (within the set of available channel allocation arrangements) for which ranging measurements have not yet been initiated. For example, when method 400 returns to block 405, a second channel allocation arrangement for which ranging measurements have not yet been initiated may be selected, and multiple channels may be assigned to multiple APs based on the selected second channel allocation arrangement. When method 400 returns to block 410, an additional ranging measurement (e.g., a second ranging measurement) may be initiated based on the selected second channel allocation arrangement to generate a second ranging result. Alternatively, when method 400 returns to block 405, method 400 may include assigning multiple channels to multiple APs based on a channel allocation arrangement for which ranging measurements were previously initiated (or attempted to be initiated) to generate another ranging result (e.g., a second ranging result) when method 400 returns to block 410.

[0051] Method 400 may repeatedly return from box 415 to box 405 until a total ranging measurement is performed for a threshold percentage of links across multiple APs on multiple channels. The threshold percentage of links across multiple APs on multiple channels may include: (1) a threshold percentage of links across multiple APs on multiple channels assigned to each channel, and (2) a threshold percentage of links across multiple APs on multiple channels assigned to all channels in the channel assignment set.

[0052] In box 420, method 400 may include resolving the location of multiple APs based on (e.g., in response to) each ranging result (e.g., first ranging result, second ranging result).

[0053] For example, in box 420, method 400 may include resolving the locations of multiple APs based on (e.g., in response to) receiving a first ranging result and a second ranging result.

[0054] Determining the location of multiple access points (APs) may include estimating the location (e.g., coordinates) of the APs on an AP map (e.g., a map of relative AP locations on a visual plan view) based on ranging results. Techniques for determining the location of APs based on ranging results (e.g., FTM) are further described in the following patent applications, which are incorporated herein by reference.

[0055] U.S. Patent Application No. 16 / 831,213, filed on March 26, 2020, in the name of inventors Vikram Raghu, Eldad Perahia, Sachin Ganu, SaiPradeep Venkatraman, and Chuck Lukaszewski, entitled “AUTOMATIC LOCATION OF ACCESS POINTS IN A NETWORK”, is hereby jointly assigned.

[0056] U.S. Patent Application No. 17 / 218,309, entitled “HANDLING FINE TIMING MEASUREMENT REQUESTS”, filed on March 31, 2021, in the name of inventors Amogh Guruprasad Deshmukh, Eldad Perahia, Gaurav Patwardhan, and Sachin Ganu, is hereby jointly assigned.

[0057] U.S. Patent Application No. 17 / 229,954, entitled “FINE TIMING MEASUREMENTS IN ENTERPRISE DEPLOYMENTS USING HIGHBANDWIDTH CHANNELS”, filed on April 14, 2021, in the name of inventors Omar El Ferkouss, Andre Beaudin, and Sachin Ganu, is hereby jointly assigned.

[0058] U.S. Patent Application No. 17 / 337,679, filed on June 3, 2021, in the names of inventors Sachin Ganu, Chuck Lukaszewski, Gaurav Patwardhan, Eldad Perahia, Vikram Raghu, and Stuart Wal Strickland, is hereby jointly assigned.

[0059] If any incorporated application conflicts with this disclosure, this specification (including definitions) shall prevail.

[0060] In this way, Figure 4Method 400 can provide multiple channel allocations for ranging between APs in a network during a beacon interval, thereby improving the accuracy of ranging between APs. For example, method 400 may include: determining, by computing device 100, whether to perform a total ranging measurement for a threshold percentage of total available links between multiple APs on multiple channels, thereby ensuring that the ranging measurement performed between APs utilizes the multiple available channel allocations for each AP. Furthermore, method 400 may include, based on the determination that the total ranging measurement is not performed for a threshold percentage of total available links between APs, assigning multiple channels to multiple APs based on a second channel allocation arrangement by computing device 100, and initiating a second ranging measurement between the multiple APs during a second beacon interval based on the second channel allocation arrangement to generate a second ranging result, thereby performing a ranging measurement between APs that utilizes the multiple available channel allocations for each AP, and thus creating channel diversity for the ranging measurement and improving the accuracy of ranging between APs.

[0061] In some examples, method 400 may include initiating multiple APs to transmit multiple beacons, wherein beacon intervals (e.g., a first beacon interval, a second beacon interval) are located between the transmissions of the multiple beacons.

[0062] See Figure 5 In some examples, flowcharts are presented depicting a method 500 for providing channel allocation for ranging between APs in a network during beacon intervals. Although references are given below... Figure 1 The computing device 100 described herein is used for the execution of method 500, but any suitable computing device can be used for the execution of method 500. Furthermore, the execution of method 500 is not limited to such an example. Although method blocks 505 to 535 are shown in method 500, method 500 may include other actions described herein. Furthermore, although these blocks are shown in sequence, Figure 5 The boxes depicted in the method 500 can be executed in any suitable order and at any time. Furthermore, one or more boxes in method 500 can be combined with one or more boxes in method 400 to be executed. Additionally, some boxes shown in method 500 may be omitted without departing from the spirit and scope of this disclosure.

[0063] At block 505, method 500 may include: assigning multiple channels to multiple APs in the network based on a selected channel allocation arrangement. Block 505 may include the same or similar steps as described above with respect to block 405 of method 400. The selected channel allocation arrangement may be chosen from a set of available channel allocation arrangements for performing ranging measurements among multiple APs on multiple channels. The order in which the channel allocation arrangements are selected from the set of channel allocation arrangements may be determined by computing device 100, and may be random, or may be received from (e.g., instructed by) an external source (e.g., input from a user, a server, cloud computing resources, etc.). The order in which the initial channel allocation arrangement is selected from the available channel allocation arrangements may be based on the channel allocation plan of the multiple APs.

[0064] At box 510, method 500 may include: during the beacon interval, initiating ranging measurements across multiple APs on multiple channels based on a selected channel allocation arrangement to generate ranging results. Box 510 may include the same or similar steps as described above with respect to box 410 of method 400.

[0065] At box 515, method 500 may include determining whether to perform ranging measurements on all available links for at least a threshold percentage T1 among multiple APs in the selected channel allocation arrangement.

[0066] The threshold percentage T1 for a selected channel allocation arrangement can correspond to a threshold percentage of all available links between each AP pair of the multiple APs for that channel allocation arrangement. The threshold percentage T1 can be set to any suitable value. For example, the threshold percentage T1 can be set to 80%, 90%, 95%, 100%, etc., of all available links between each AP pair of the multiple APs. The threshold percentage T1 for one channel allocation arrangement (e.g., the first channel allocation arrangement) can be the same as or different from the threshold percentage T1 for another channel allocation arrangement (e.g., the second channel allocation arrangement). For example, the threshold percentage T1 for the first channel allocation arrangement can be 85%, while the threshold percentage T1 for the second channel allocation arrangement can be 90%. Alternatively, for example, the threshold percentage T1 for each of the first and second channel allocation arrangements can be 85%. Each available link among the available links between each AP pair of the multiple APs can correspond to any suitable available antenna(s) path(s) and any suitable available channel(s) used to establish a link between that AP pair.

[0067] At box 515, if it is determined that ranging measurements are performed on the available links for a threshold percentage T1 among the multiple APs for the selected channel allocation arrangement, then method 515 proceeds to box 520. At box 515, if it is determined that ranging measurements are not performed on the available links for a threshold percentage T1 among the multiple APs for the selected channel allocation arrangement, then method 500 returns to box 510. That is, method 500 returns to box 510 to initiate ranging measurements on multiple channels based on the selected channel allocation arrangement during a subsequent beacon interval (e.g., a second beacon interval) to generate another ranging result (e.g., a second ranging result). Method 500 may repeatedly return from box 515 to box 510: (1) until ranging measurements are performed on the available links for a threshold percentage T1 among the multiple APs for the selected channel arrangement, or (2) until a set number of times (e.g., twice, three times, ten times, etc.) is reached. The set number of times can be determined by the computing device 100, or received from an external source (e.g., user input, server, cloud computing resources, etc.) (e.g., by its instruction).

[0068] At box 520, method 500 may include determining whether to perform a total ranging measurement on all available links for at least a threshold percentage T2 among multiple APs arranged in all available channel allocations.

[0069] The threshold percentage T2 can correspond to a threshold percentage of all available links between each AP pair of multiple APs for all available channel allocation arrangements (e.g., in a set of channel allocation arrangements). The threshold percentage T2 can be set to any suitable value. For example, the threshold percentage T1 can be set to 80%, 90%, 95%, 100%, etc., for all available links between multiple APs in all available channel allocation arrangements. Each available link among the available links between each AP pair of multiple APs can correspond to any suitable available antenna(s) path(s) and any suitable available channel(s) used to establish a link between that AP pair.

[0070] At block 520, if it is determined that total ranging measurement is not performed for at least a threshold percentage T2 of available links among multiple APs on multiple channels, then method 500 proceeds to block 525. At block 520, if it is determined that total ranging measurement is performed for at least a threshold percentage T2 of available links among multiple APs arranged across all available channels, then method 500 proceeds to block 535.

[0071] In box 525, method 500 may include selecting another channel allocation arrangement from the available channel allocation arrangements (e.g., from a set of available channel allocation arrangements). The order in which subsequent channel allocation arrangements are selected from the available channel allocation arrangements (in box 525) may be determined by computing device 100, and may be random, or may be received from (e.g., instructed by) an external source (e.g., user input, a server, cloud resources, etc.). The order in which subsequent channel allocation arrangements are selected from the available channel allocation arrangements may be based on channel allocation plans for multiple APs.

[0072] In box 530, method 500 may include: configuring APs using a selected channel allocation arrangement based on availability information of multiple APs.

[0073] Availability information for multiple access points (APs) can include times of day corresponding to the operational (or expected) states of the APs. For example, availability information could correspond to times of day when an AP might have reduced load capacity (or is expected to have reduced load capacity) (e.g., outside of office working hours). Therefore, method 500 could include configuring the APs with a selected channel allocation arrangement at appropriate times (e.g., outside of office working hours) to reduce the likelihood that configuring the APs would cause communication disruptions to the APs (e.g., communication between the APs and client devices connected to the APs).

[0074] Availability information for multiple access points (APs) can be based on signal quality measurements between the APs. Signal quality measurements may include FTM, RTT, ToA, ToF, AoA, RSSI, SGI, LGI, CSI, or combinations thereof between the APs. It is understood that the availability information for multiple APs can have any suitable format. Furthermore, the availability information for multiple APs can be determined by computing device 100 or received by computing device 100 from an external source. For example, availability information can be indicated (e.g., included) by one or more packets received by computing device 100 from another device in the network (e.g., a network device).

[0075] Availability information for multiple access points (APs) can be based on the client load of one or more of the APs. In other words, availability information can be based on the bandwidth of communication between one or more APs and one or more client devices connected to those APs.

[0076] In some examples, configuring an AP with a selected channel allocation arrangement can be independent of the channel allocation plans for multiple APs. A channel allocation plan for multiple APs may include one or more channel allocation arrangements for assigning multiple channels to multiple network devices. Furthermore, the channel allocation plan may include a minimum signal quality improvement threshold to change the configuration of the multiple network devices from one channel allocation arrangement (e.g., a first channel allocation arrangement) to another channel allocation arrangement (e.g., a second channel allocation arrangement). For example, at block 530, method 500 may include configuring multiple APs according to a second channel allocation arrangement even if, for a given channel allocation plan for the multiple APs, the minimum signal quality improvement threshold is not met to trigger a change in the configuration of the channel allocation arrangement from the first channel allocation arrangement to the second channel allocation arrangement. Therefore, even if the channel plans for the multiple APs do not otherwise reconfigure the APs according to another channel allocation arrangement to perform ranging between the multiple APs, configuring the APs with a selected channel allocation arrangement according to method 500 can generate channel diversity in ranging measurements.

[0077] At box 535, method 500 may include resolving the locations of multiple APs based on (e.g., in response to) each ranging result (e.g., a first ranging result, a second ranging result). Box 535 may include the same or similar steps as described above in box 420 with respect to method 400.

[0078] In this way, Figure 5 Method 500 can provide multiple channel allocations for ranging among APs in a network during beacon intervals, thereby improving the accuracy of ranging between APs. For example, method 500 may include: determining, by computing device 100, whether to perform ranging measurements on available links for at least a threshold percentage T1 of a selected channel allocation arrangement, thereby ensuring that a sufficient number of ranging measurements are performed among multiple APs to provide reliable ranging results for a given channel allocation arrangement. Furthermore, method 500 may include: determining, by computing device 100, whether to perform total ranging measurements on all available links for at least a threshold percentage T2 of all available channel allocation arrangements (e.g., for a set of available channel allocation arrangements), thereby providing channel diversity in the ranging measurements performed among multiple APs to ensure reliable ranging results. Additionally, method 500 may include, by computing device 100, configuring multiple APs with the selected channel allocation arrangement based on the availability information of the multiple APs, thereby ensuring that the multiple APs are reconfigured according to the selected channel allocation arrangement at appropriate times to reduce the likelihood of interruptions to AP communication (e.g., communication between the AP and client devices connected to the AP).

[0079] System / Computing System

[0080] Figure 2 This is a block diagram of example system 200, including a computing device for channel allocation for ranging between APs in the network during beacon intervals. System 200 includes computing device 100 connected to network 205 (as described above regarding...). Figure 1 (Described). Furthermore, system 200 includes multiple network devices 210 connected to network 205. Network devices 210 include multiple network devices 210-1 to 210-a, where a is an integer and represents the total number of network devices 210. Although Figure 2 The illustration shows network device 210 comprising four network devices (210-1, 210-2, 210-3, 210-4), but it will be understood that system 200 may include two, three, ten, or any suitable number of network devices 210.

[0081] exist Figure 2 In the example, network 205 may include one or more local area networks (LANs), virtual LANs (VLANs), wireless local area networks (WLANs), virtual private networks (VPNs), wide area networks (WANs), the Internet, and combinations thereof. As used herein, "wide area network" or "WAN" may include, for example, wired WANs, wireless WANs, hybrid WANs, software-defined WANs (SD-WANs), or combinations thereof. Furthermore, network 205 may include one or more cellular networks using one or more mobile communication standards (e.g., 3G, 4G, 5G, etc.). It is understood that system 200 may include (multiple) networks 205 of any suitable type. Furthermore, although... Figure 2 A single computing device 100 is shown connected to network 205, but it will be understood that any suitable number of computing devices (in addition to computing device 100) can be connected to network 205.

[0082] exist Figure 2 In the example, each network device in network device 210 includes a radio (not shown) for communicating with computing device 100, with one or more other network devices 210, or combinations thereof. The radio can generate signals in one or more frequency bands, process signals in one or more frequency bands, or combinations thereof. The radio(s) of network device 210 can operate in any suitable frequency band(s) and conform to any suitable type of wireless communication standard(s) now known or later developed. For example, according to the IEEE 802.11ac and / or 802.11ax standards, one or more radios of network device 210 can operate on one or more channels in the 2.4 GHz band and / or 5 GHz band. Furthermore, each network device in network device 210 may include one, two, four, or any other suitable number of radios.

[0083] exist Figure 2 In the example described herein, each network device in network device 210 can communicate with one or more client devices (e.g., communication devices) connected to the network device. For example, one or more communication devices, such as laptops, desktop computers, mobile devices, and / or other wireless devices, can be connected to one or more network devices 210. Each network device 210 can communicate with one or more client devices via radio. In the example described herein, "mobile device" means a device carried and / or worn by a user. For example, a mobile device can be a telephone (e.g., a smartphone), a tablet computer, a personal digital assistant (PDA), smart glasses, and / or wrist-worn devices (e.g., a smartwatch), as well as other types of mobile devices.

[0084] exist Figure 2 In the example, computing device 100 can be configured to receive network requests 150 via network path(s) 140 to establish communication with one or more network devices in network device 210 (as described above regarding...). Figure 1 (As described above). For example, computing device 100 can receive a signal containing network request 150 from network 205 (as described above). Figure 1 (Described).

[0085] exist Figure 2 In the example, computing device 100 can be configured to send or receive communication signals 170 via communication path(s) 160 to establish communication with one or more network devices 210 (as described above regarding...). Figure 1 (Described).

[0086] exist Figure 2 In the examples described herein, network device 210 can participate in any network data transmission operation, including but not limited to switching, routing, bridging, or combinations thereof. Furthermore, one or more network devices 210 may include a wireless access point (WAP). In the examples described herein, "WAP" generally refers to a receiving point of any known or convenient wireless access technology, which may be later discovered. Specifically, the term WAP is not intended to be limited to WAPs conforming to the IEEE 802.11 standard. WAPs are generally used as electronic devices suitable for allowing wireless devices to connect to wired networks via various communication standards. A WAP may include any necessary hardware components for performing the inventions disclosed herein, including but not limited to: processors, memory, display devices, input devices, communication devices, etc. It is understood that network device 210 may include network devices of any suitable type manufactured by any suitable manufacturer(s).

[0087] exist Figure 2In the example, computing device 100 is configured (e.g., encoded with non-transitory machine-readable instructions executable by at least one processing resource 110) to execute AP channel allocation instruction 122, ranging initiation instruction 124, link threshold determination instruction 126, and AP location resolution instruction 128, as described above regarding Figure 1 Described.

[0088] The computing device 100 can be configured to allocate multiple channels to network devices 210 in network 205 based on a first channel allocation arrangement of the set of available channel allocation arrangements. For example, according to the first channel allocation arrangement, the computing device 100 can allocate channel 36 to network device 210-1, channel 52 to network device 210-2, channel 149 to network device 210-3, and channel 108 to network device 210-4.

[0089] Then, computing device 100 can be configured to initiate first ranging measurements between multiple APs on multiple channels based on a first channel allocation arrangement during the first beacon interval to generate a first ranging result. For example, in the example above, computing device 100 can initiate pairwise FTM ranging between network devices 210-1 and 210-2 on channels 36 and 52, between network devices 210-1 and 210-3 on channels 36 and 149, between network devices 210-1 and 210-4 on channels 36 and 108, between network devices 210-2 and 210-3 on channels 52 and 149, between network devices 210-2 and 210-4 on channels 52 and 108, and between network devices 210-3 and 210-4 on channels 149 and 108 to generate the first ranging result. Based on the first channel allocation arrangement, the channels on which pairwise FTM ranging is performed between multiple APs are shown in Table 1 below.

[0090] Table 1

[0091]

[0092] Next, the computing device 100 can be configured to determine whether to perform a total ranging measurement for a threshold percentage of available links among multiple APs on multiple channels, wherein the total ranging measurement includes a first ranging measurement. Specifically, the computing device 100 can be configured to determine whether to perform a ranging measurement for all available links among multiple APs in a first channel allocation arrangement with at least a threshold percentage T1. Furthermore, based on the determination performed for all available links among multiple APs in a first channel allocation arrangement with at least a threshold percentage T1, the computing device 100 can be configured to determine whether to perform a total ranging measurement for all available links among multiple APs in all available channel allocation arrangements in the set of available channel allocation arrangements with at least a threshold percentage T2.

[0093] Based on the determination of available links performed by total ranging measurements not applied to a threshold percentage T2 among multiple APs in all available channel allocation arrangements, computing device 100 can be configured to select another available channel allocation arrangement from the set of available channel allocation arrangements for which ranging has not yet been performed. For example, computing device 100 can select a second channel allocation arrangement from the set of available channel allocation arrangements, for which computing device 100 assigns channel 149 to network device 210-1, channel 36 to network device 210-2, channel 108 to network device 210-3, and channel 52 to network device 210-4.

[0094] Next, the computing device 100 can be configured to configure multiple APs using a selected second channel allocation arrangement based on the availability information of the multiple APs. For example, the computing device 100 can configure multiple APs according to the second channel allocation arrangement during a time of day outside of normal office hours. Furthermore, the computing device 100 can configure multiple APs according to the second channel allocation arrangement based on signal quality measurements (e.g., CSI) received from the multiple APs.

[0095] Then, computing device 100 can be configured to initiate second ranging measurements between multiple APs on multiple channels based on a second channel allocation arrangement during the second beacon interval to generate a second ranging result. For example, in the example above, computing device 100 can initiate pairwise FTM ranging between network devices 210-1 and 210-2 on channels 149 and 36, between network devices 210-1 and 210-3 on channels 149 and 108, between network devices 210-1 and 210-4 on channels 149 and 52, between network devices 210-2 and 210-3 on channels 36 and 108, between network devices 210-2 and 210-4 on channels 36 and 52, and between network devices 210-3 and 210-4 on channels 108 and 52 to generate a second ranging result. Based on the first channel allocation arrangement and the second channel allocation arrangement, the channels for performing pairwise FTM ranging between multiple APs on multiple channels are shown in Table 2 below.

[0096] Table 2

[0097]

[0098] Furthermore, the computing device 100 can be configured to initiate subsequent ranging measurements between multiple APs on multiple channels based on one or more additional channel allocations in the available channel allocation arrangement set.

[0099] For example, the channels for performing pairwise FTM ranging between multiple APs on multiple channels are shown in Table 3 below, based on the first and second channel allocation arrangements and, additionally, the third channel allocation arrangement.

[0100] Table 3

[0101]

[0102] Furthermore, for example, according to the first, second, and third channel allocation arrangement and additionally according to the fourth channel allocation arrangement, the channels for performing pairwise FTM ranging on multiple channels among multiple APs are shown in Table 4 below.

[0103] Table 4

[0104]

[0105] The computing device 100 can be configured to resolve the location of multiple APs based on the determination performed by total ranging measurement of the links between multiple APs on multiple channels in all available channel allocation arrangements (i.e., the first channel allocation arrangement, the second channel allocation arrangement, the third channel allocation arrangement, and the fourth channel allocation arrangement) in the set of available channel allocation arrangements.

[0106] In this way, Figure 2 The computing device 100 of system 200 can provide multiple channel assignments for ranging among network devices 210-1 to 210-4 in the network during beacon intervals, thereby improving the accuracy of ranging between APs. For example, computing device 100 can be configured to determine whether to perform ranging measurements on available links for at least a threshold percentage T1 of a selected channel assignment arrangement, thereby ensuring that a sufficient number of ranging measurements are performed among network devices 210-1 to 210-4 to ensure reliable ranging results for a given channel assignment arrangement. Furthermore, computing device 100 can be configured to determine whether to perform total ranging measurements on all available links for at least a threshold percentage T2 of all available channel assignment arrangements (e.g., for a set of available channel assignment arrangements), thereby providing channel diversity in the ranging measurements performed among network devices 210-1 to 210-4 to ensure reliable ranging results. Furthermore, computing device 100 can be configured to configure network devices 210-1 to 210-4 with a selected channel allocation arrangement based on availability information of network devices 210-1 to 210-4, thereby ensuring that network devices 210-1 to 210-4 are reconfigured according to the selected channel allocation arrangement at an appropriate time to reduce the possibility of communication interruptions between network devices 210-1 to 210-4 (e.g., communication between network devices 210-1 to 210-4 and client devices connected to network devices 210-1 to 210-4).

[0107] Figure 6 This is a block diagram of an example computer system 600 in which various embodiments described herein can be implemented for coordinated ranging between access points in a network.

[0108] Computer system 600 includes a bus 605 or other communication mechanism for conveying information, and at least one hardware processor 610 coupled to the bus 605 to process information. The at least one hardware processor 610 may be, for example, at least one general-purpose microprocessor.

[0109] The computer system 600 also includes a main memory 615 coupled to a bus 605 for storing information and one or more instructions to be executed by at least one processor 610, such as random access memory (RAM), cache, other dynamic storage devices, etc., or combinations thereof. The main memory 615 may also be used to store temporary variables or other intermediate information during the execution of one or more instructions to be executed by at least one processor 610. In some examples, one or more instructions may include one or more of AP channel allocation instructions 122, ranging initiation instructions 124, link threshold determination instructions 126, and AP location resolution instructions 128 (as described above regarding...). Figure 1 , Figure 2 , Figure 4 and Figure 5 (As described). Such one or more instructions, when stored on a storage medium accessible to at least one processor 610, make the computer system 600 a dedicated machine customized to perform the operations specified in the one or more instructions.

[0110] The computer system 600 may also include a read-only memory (ROM) 620 or other static storage device coupled to the bus 605 for storing one or more instructions to be executed by at least one processor 610. In some examples, the one or more instructions may include one or more of the following: AP channel allocation instruction 122, ranging initiation instruction 124, link threshold determination instruction 126, and AP location resolution instruction 128 (as described above regarding...). Figure 1 , Figure 2 , Figure 4 and Figure 5 (As described). Such one or more instructions, when stored on a storage medium accessible to at least one processor 610, enable the computer system 600 to become a dedicated machine customized to perform the operations specified in the one or more instructions.

[0111] The computer system 600 may also include information and one or more instructions for at least one processor 610. At least one storage device 625, such as a disk, optical disk, or USB thumb drive (flash drive), or combinations thereof, may be provided and coupled to bus 605 for storing information and one or more instructions. In some examples, the one or more instructions may include one or more of the following: AP channel allocation instruction 122, ranging initiation instruction 124, link threshold determination instruction 126, and AP location resolution instruction 128 (as described above regarding...). Figure 1 , Figure 2 , Figure 4 and Figure 5 (as described).

[0112] The computer system 600 may also include a display 630 coupled to a bus 605 for displaying graphical output to a user. The computer system 600 may also include an input device 635 coupled to the bus 605 to provide input from a user, such as a keyboard, camera, microphone, etc., or combinations thereof. The computer system 600 may also include a cursor control 640 coupled to the bus 605 to provide input from a user, such as a mouse, pointer, stylus, etc., or combinations thereof.

[0113] The computer system 600 may also include at least one network interface 645 coupled to the bus 605 to connect the computer system 600 to at least one network, such as a network interface controller (NIC), a network adapter, etc., or a combination thereof.

[0114] Generally, the terms "component," "system," "database," etc., used in this document can refer to logic embodied in hardware or firmware, or to a set of software instructions written in a programming language (such as, for example, Java, C, or C++) that may have entry and exit points. Software components can be compiled and linked into executable programs, installed in dynamic link libraries, or written in interpreted programming languages ​​such as, for example, BASIC, Perl, or Python. It is understood that software components can be invoked from other components or from themselves, and / or can be invoked based on (e.g., in response to) detected events or interrupts. Software components configured to execute on a computing device can be provided on computer-readable media, such as compressed discs, digital video discs, flash drives, magneto-optical discs, or any other tangible media, or as digital downloads (and may initially be stored in a compressed or installable format that requires installation, decompression, or decryption before execution). This software code can be stored, in part or in whole, on a memory device executing the computing device for execution by the computing device. Software instructions can be embedded in firmware, such as EPROM. As will be further understood, hardware components may consist of connected logic units such as gates and flip-flops, and / or may consist of programmable units such as programmable gate arrays or processors.

[0115] Computer system 600 may implement the techniques described herein using custom hardwired logic, one or more ASICs or FPGAs, firmware, and / or program logic, which, in combination with the computer system, enable computer system 600 to become a dedicated machine or to be programmed thereto. According to one embodiment, the techniques herein are executed by computer system 600 based on (e.g., in response to) at least one processor 610 executing one or more sequences of one or more instructions contained in main memory 615. Such one or more instructions may be read into main memory 615 from another storage medium, such as at least one storage device 625. Executing the sequence of one or more instructions contained in main memory 615 causes at least one processor 610 to perform the processing steps described herein. In alternative embodiments, hardwired circuitry may be used instead of or in combination with software instructions.

[0116] As used herein, RTT (also known as round-trip time or ping time) corresponds to the time it takes for a signal (e.g., a packet) to travel from a origin (e.g., a first network device) through the network to a destination (e.g., a second network device) and for an acknowledgment of that signal to be returned to the origin. RTT measurements can be based on propagation delay, processing delay, queuing delay, encoding delay, or a combination thereof. It is understood that RTT can be calculated based on any suitable protocol(s) (e.g., Transmission Control Protocol) and any suitable technology.

[0117] As used herein, CSI refers to the known channel properties of a wireless signal between a transmitter and a receiver (e.g., between a first access point and a second access point). CSI is used to determine how a wireless signal propagates between the transmitter and receiver and represents, for example, the combined effects of scattering, attenuation, and power decay of the transmitted wireless signal as distance changes.

[0118] In the examples described herein, the term "Wi-Fi" is intended to include any type of wireless communication conforming to any IEEE 802.11 standard, whether it be 802.11ac, 802.11ax, 802.11a, 802.11n, 802.11ad, 802.11ay, etc. The term "Wi-Fi" is currently defined by the Wi-Fi Alliance. ® Issued by the Wi-Fi Alliance. ®Products tested and approved as "Wi-Fi Certified" (registered trademark) are certified to be interoperable with each other, even if they come from different manufacturers. Users of "Wi-Fi Certified" (registered trademark) products can use any brand of WAP with any other brand of client hardware that is also certified. However, generally, any Wi-Fi product using the same radio frequency band (e.g., the 60 GHz band for 802.11ad or 802.11ay) will work with any other product, even if those products are not "Wi-Fi Certified". The term "Wi-Fi" is also intended to include future versions and / or variations of the aforementioned communication standards. Each of the aforementioned standards is incorporated herein by reference.

[0119] In the examples described herein, the term "non-transitory media" and similar terms refer to any electrical, magnetic, optical, or other physical storage device that contains or stores executable instructions. Non-transitory media can include non-volatile media and / or volatile media. Non-volatile media include, for example, optical or magnetic disks. Volatile media include, for example, dynamic memory. Common forms of non-transitory machine-readable media include, for example, floppy disks, flexible disks, hard disks, solid-state drives, magnetic tape or any other magnetic data storage media, CD-ROMs, any other optical data storage media, any physical media with a perforated pattern, RAM, PROMs and EPROMs, FLASH-EPROMs, NVRAMs, any other memory chips or cassettes and their networking versions.

[0120] Non-transient media differ from transmission media but can be used in conjunction with them. Transmission media participate in the transmission of information between non-transient media. Examples of transmission media include coaxial cables, copper wires, and optical fibers. Transmission media can also take the form of sound waves or light waves, such as those generated during radio wave and infrared data communication.

[0121] The terminology used herein is for the purpose of describing exemplary embodiments only and is not intended to be limiting. As used herein, unless the context clearly indicates otherwise, the singular forms “a,” “an,” and “the” are intended to also include the plural forms. As used herein, the term “a plurality of” is defined as two or more. As used herein, the term “another” is defined as at least a second or more. As used herein, unless otherwise stated, the term “coupled” is defined as a connection, whether a direct connection without any intervening elements or an indirect connection with at least one intermediate element. Two elements may be mechanically, electrically, or communicatively connected via a communication channel, path, network, or system. As used herein, the term “and / or” refers to and includes any and all possible combinations of one or more of the associated listed items. It should also be understood that although the terms first, second, etc., may be used herein to describe various elements, these elements should not be limited by these terms unless otherwise stated or indicated by the context, as these terms are used only to distinguish one element from another. As used herein, the term “comprising” means including but not limited to. In some instances, the presence of expansive words and phrases such as “one or more,” “at least,” “but not limited to,” or other similar phrases should not be interpreted as implying an intention or need for a narrower situation in the absence of such expansive phrases.

[0122] While the technology of this invention may be susceptible to various modifications and alternatives, the examples discussed above are merely illustrative. It should be understood that this technology is not intended to be limited to the specific examples disclosed herein. In fact, this technology includes all alternatives, modifications, and equivalents falling within the true spirit and scope of the appended claims.

Claims

1. A method for channel allocation, comprising: allocating, by a computing device, a plurality of channels to a plurality of access points (APs) in a network based on a first channel allocation arrangement; initiating, by the computing device, first ranging measurements between the plurality of APs on the plurality of channels based on the first channel allocation arrangement during a first beacon interval to generate first ranging results; determining, by the computing device, whether total ranging measurements are performed for at least a threshold percentage of available links between the APs on the plurality of channels, wherein the total ranging measurements include the first ranging measurements, and wherein the threshold percentage is a threshold in percentage form; based on determining that the total ranging measurements are not performed for the threshold percentage of the available links between the APs on the plurality of channels, allocating, by the computing device, the plurality of channels to the plurality of APs based on a second channel allocation arrangement; initiating, by the computing device, second ranging measurements between the plurality of APs on the plurality of channels based on the second channel allocation arrangement during a second beacon interval to generate second ranging results; and resolving, by the computing device, locations of the plurality of APs based on the first ranging results and the second ranging results.

2. The method of claim 1, wherein initiating the first ranging measurements between the plurality of APs on the plurality of channels based on the first channel allocation arrangement comprises: for each pair of APs in the plurality of APs: initiating, by the computing device, a ranging measurement between a first AP in the pair of APs and a second AP in the pair of APs on a first channel allocated to the first AP based on the first channel allocation arrangement; and initiating, by the computing device, a ranging measurement between the first AP and the second AP on a second channel allocated to the second AP based on the first channel allocation arrangement.

3. The method of claim 1, wherein the available links between the plurality of APs on the plurality of channels are based on a set of channel allocation arrangements, wherein the set of channel allocation arrangements includes the first channel allocation arrangement and the second channel allocation arrangement.

4. The method of claim 1, comprising: determining, by the computing device, whether the first ranging measurements are performed for at least a second threshold percentage of available links, the available links being based on the first channel allocation arrangement and between the plurality of APs on the plurality of channels, and wherein the second threshold percentage is a threshold in percentage form; based on determining that the first ranging measurements are not performed for at least the second threshold percentage of available links, initiating, by the computing device, third ranging measurements between the plurality of APs based on the first channel allocation arrangement during a third beacon interval to generate third ranging results; wherein resolving the locations of the plurality of APs is based on the third ranging results.

5. The method of claim 1, comprising: ​ based on a determination that the total ranging measurements were not performed for at least the threshold percentage of the available links between the plurality of APs on the plurality of channels: selecting, by the computing device, the second channel allocation permutation among a set of available channel allocation permutations; and configuring, by the computing device, the plurality of APs with the second channel allocation permutation based on the availability information of the plurality of APs.

6. The method of claim 5, wherein the availability information of the plurality of APs is based on a time of day corresponding to an operational state of the plurality of APs.

7. The method of claim 5, wherein the availability information of the plurality of APs is based on signal quality measurements between the plurality of APs.

8. The method of claim 5, wherein the availability information of the plurality of APs is based on client load for the plurality of APs.

9. The method of claim 5, wherein the availability information of the plurality of APs is independent of a channel allocation plan for the plurality of APs.

10. The method of claim 1, comprising: indicating, by the computing device, the plurality of APs to transmit a plurality of beacons, wherein the first beacon interval and the second beacon interval are between the transmission of the plurality of beacons.

11. A computing device, comprising: a processing resource; and a non-transitory machine-readable storage medium comprising instructions executable by the processing resource to: allocate a plurality of channels to a plurality of access points (APs) based on a first channel allocation permutation; initiate, during a first beacon interval, first ranging measurements between the plurality of APs on the plurality of channels based on the first channel allocation permutation to generate first ranging results; determine that a total ranging measurements were not performed for a threshold percentage of available links between the plurality of APs on the plurality of channels, wherein the total ranging measurements include the first ranging measurements, and wherein the threshold percentage is a threshold in percentage form; allocate the plurality of channels to the plurality of APs based on a second channel allocation permutation; and initiate, during a second beacon interval, second ranging measurements between the plurality of APs on the plurality of channels based on the second channel allocation permutation to generate second ranging results; and resolve locations of the plurality of APs based on the first ranging results and the second ranging results.

12. The computing device of claim 11, wherein the instructions to initiate the first ranging measurements between the plurality of APs on the plurality of channels based on the first channel allocation permutation comprise instructions to: for each pair of the plurality of APs: initiate, based on the first channel allocation permutation, a ranging measurement between a first AP of the pair of APs on a first channel allocated to the first AP of the pair of APs; and initiate, based on the first channel allocation permutation, a ranging measurement between the first AP and a second AP of the pair of APs on a second channel allocated to the second AP.

13. The computing device of claim 11, wherein the instructions to initiate the second ranging measurements between the plurality of APs on the plurality of channels based on the second channel allocation permutation comprise instructions to: for each pair of the plurality of APs: initiate, based on the second channel allocation permutation, a ranging measurement between a first AP of the pair of APs on a first channel allocated to the first AP of the pair of APs; and initiate, based on the second channel allocation permutation, a ranging measurement between the first AP and a second AP of the pair of APs on a second channel allocated to the second AP.

13. The computing device of claim 11, wherein the instructions comprise instructions to: determining that the total ranging measurement was not performed for a second threshold percentage of available links arranged based on the first channel allocation, and wherein the second threshold percentage is a threshold in percentage form; and initiate, during a third beacon interval, a third ranging measurement between the plurality of APs based on the first channel allocation arrangement to generate a third ranging result; wherein resolving the locations of the plurality of APs is based on the third ranging result.

14. The computing device of claim 11, wherein the instructions comprise instructions to: based on determining that the total ranging measurements were not performed for at least the threshold percentage of the available links between the plurality of APs on the plurality of channels: select the second channel allocation arrangement among a set of available channel allocation arrangements; and configure the plurality of APs with the second channel allocation arrangement based on availability information of the plurality of APs.

15. The computing device of claim 14, wherein the availability information of the plurality of APs is based on a time of day corresponding to an operational state of the plurality of APs, a signal quality measurement between the plurality of APs, a client load for the plurality of APs, or a combination thereof.

16. The computing device of claim 15, wherein the availability information of the plurality of APs is independent of a channel allocation plan for the plurality of APs.

17. An article comprising at least one non-transitory machine-readable storage medium including instructions that are executable by at least one processing resource to: allocate, by a computing device, a plurality of channels to a plurality of network devices based on a first channel allocation arrangement; initiate, by the computing device, a first ranging measurement between the plurality of network devices on the plurality of channels during a first beacon interval based on the first channel allocation arrangement to generate a first ranging result; determine, by the computing device, that a total ranging measurement was not performed for a threshold percentage of available links between the plurality of network devices on the plurality of channels, wherein the total ranging measurement includes the first ranging measurement, and wherein the threshold percentage is a threshold in percentage form; allocate, by the computing device, the plurality of channels to the plurality of network devices based on a second channel allocation arrangement; and initiate, by the computing device, a second ranging measurement between the plurality of network devices on the plurality of channels during a second beacon interval based on the second channel allocation arrangement to generate a second ranging result; and resolve, by the computing device, locations of the plurality of network devices based on the first ranging result and the second ranging result.

18. The article of claim 17, wherein the instructions to initiate, by the computing device, the first ranging measurement between the plurality of network devices on the plurality of channels based on the first channel allocation arrangement comprise instructions to: for each network device pair of the plurality of network devices: initiate, based on the first channel allocation arrangement, a ranging measurement between a first network device of the network device pair and a second network device of the network device pair on a first channel allocated to the first network device; and initiate, based on the first channel allocation permutation, ranging measurements between the first network device and a second network device of the plurality of network devices on a second channel allocated to the second network device.

19. The article of manufacture of claim 17, wherein the instructions comprise instructions for: determining, based on the first channel allocation arrangement, that the total ranging measurement is not performed for a second threshold percentage of available links, and wherein the second threshold percentage is a threshold in percentage form; and initiating, during a third beacon interval, a third ranging measurement between the plurality of network devices based on the first channel allocation permutation to generate a third ranging result; wherein resolving the locations of the plurality of network devices is based on the third ranging result.

20. The article of manufacture of claim 17, wherein the instructions comprise instructions for: based on a determination that the total ranging measurement is not performed for at least the threshold percentage of the available links between the network devices on the plurality of channels: selecting, among a set of available channel allocation permutations, a second channel allocation permutation; and configuring the plurality of network devices with the second channel allocation permutation based on availability information of the plurality of network devices.

Citation Information

Patent Citations

  • Ranging by a network device during a beacon interval

    US12085659B2

  • Coordinated ranging between access points in a network

    US12101685B2

  • Automatic location of access points in a network

    US12313747B2

  • Automatic location of access points in a network

    US20210306975A1

  • Handling fine timing measurement requests

    US20220322120A1