Selecting network device for transmitting data of electronic device

By selecting an "owner" network device between multiple network devices to transmit data from dedicated functional devices, errors and load problems caused by redundant data transmission are solved, and the efficiency and accuracy of data transmission are achieved.

CN120201396APending Publication Date: 2025-06-24HEWLETT PACKARD ENTERPRISE DEV LP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410638022.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-12-21
Filing Date
2024-05-22
Publication Date
2025-06-24

AI Technical Summary

Technical Problem

Within the range of multiple network devices, data from dedicated functional devices may be redundantly sent to the target entity through multiple network devices, resulting in errors, storage overloads and network resource overloads.

Method used

By performing a selection process among multiple network devices, selecting a network device as the "owner" network device of a dedicated functional device, which is responsible for transmitting data to the target entity, avoiding the transmission of redundant data.

Benefits of technology

It effectively avoids the transmission of redundant data, reduces the error risk and storage and processing load of the target entity, and optimizes the utilization of network resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120201396A_ABST
    Figure CN120201396A_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure relate to selecting a network device for transmitting data of an electronic device. In some examples, a first network device includes a communication interface associated with an electronic device, and a wireless interface to wirelessly receive data from the electronic device over a wireless link different from any communication link of the communication interface. The first network device determines first selection information related to wireless communication over a wireless interface between the electronic device and the first network device, and receives second selection information related to wireless communication between the electronic device and the second network device at the first network device from the second network device over a network. Based on the first selection information and the second selection information, the first network device performs a selection process that determines whether the first network device is selected from among the plurality of network devices to transmit data received through the wireless interface to the target entity.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0001] An electronic device may include a dedicated function device that performs a corresponding dedicated function. Examples of dedicated function devices may include any one or some of the following: sensors, cameras, thermostats, lamps, security devices, household appliances, or other types of devices. In some examples, the dedicated function device includes an Internet of Things (IoT) device capable of transmitting data over a public network such as the Internet. Brief Description of the Drawings

[0002] Some implementations of the present disclosure are described with reference to the following drawings.

[0003] Figure 1 is a block diagram of an arrangement including an IoT device and a network device according to some examples.

[0004] Figure 2 and Figure 3 is a flowchart of a process performed by various entities according to some examples.

[0005] Figure 4 is a block diagram of a network device according to some examples.

[0006] Figure 5 is a block diagram of a storage medium storing machine-readable instructions according to some examples.

[0007] Figure 6 is a flowchart of a process according to some examples.

[0008] Throughout the drawings, the same reference numerals represent similar but not necessarily identical elements. The drawings are not necessarily to scale, and the dimensions of some parts may be exaggerated to more clearly illustrate the examples shown. Additionally, the drawings provide examples and / or implementations consistent with the description; however, the description is not limited to the examples and / or implementations provided in the drawings. Detailed Description

[0009] A dedicated function device may be wirelessly coupled to a network device of a network via a wireless link. Examples of network devices include access points (APs), base stations, or other network devices that provide network access. The dedicated function device may send data to be transmitted to a target entity via the wireless link, and the target entity may be a program or machine in the cloud, at a data center, or at any other location. In some cases, the wireless coupling of the dedicated function device to the network device may be via a short-range wireless interface of the short-range wireless link to the network device. An example of a short-range wireless interface is a low-power Bluetooth (BLE) interface. Other examples of short-range wireless interfaces include radio frequency identification (RFID) interfaces, near field communication (NFC) interfaces, wireless personal area network (Zigbee) interfaces, infrared interfaces, or other wireless interfaces with a range less than a specified threshold distance.

[0010] If a dedicated function device is located at a position within the short - range wireless interface range of multiple network devices, each of the multiple network devices may transmit data of the dedicated function device to a target entity. The data of the dedicated function device transmitted from the multiple network devices is redundant and may cause errors at the target entity, or may cause a storage overload situation and / or a processing overload situation at the target entity. In addition, transmitting redundant data of a large number of dedicated function devices may overload the network resources of the network between the network devices and the target entity.

[0011] According to some implementations of the present disclosure, a selection process may be performed among multiple network devices that have detected a given dedicated function device to select one of the multiple network devices as the "owner" network device for the given dedicated function device. The owner network device is the network device responsible for transmitting data of the given dedicated function device to the target entity. Any other network device not selected as the owner network device of the given dedicated function device will not transmit data of the given dedicated function device to the target entity. In this way, the data of the given dedicated function device is not redundantly sent to the target entity by the multiple network devices.

[0012] A network device includes a short - range wireless interface and a communication interface separated from the short - range wireless interface. The communication interface is the "main" communication interface through which an electronic device can be associated with the network device so that the electronic device can communicate over the network. In some examples where the main communication interface is a wireless interface, the short - range wireless interface is a wireless interface with a limited range compared to the main communication interface of the network device.

[0013] The association between an electronic device and a network device refers to establishing a connection between the electronic device and the network device based on, for example, an association program, such that the electronic device can communicate with other devices over the network. For example, the association program may include a Wi - Fi association program between an electronic device and an AP of a Wi - Fi network (also known as a wireless local area network or WLAN). As another example, the association program may include a cellular connection program between an electronic device and a cellular base station. In another example, the association program may be performed over a wired network, such as establishing an Ethernet connection through an Ethernet network. More generally, an "association program" refers to any program for establishing a connection, involving identifying the electronic device and authenticating the electronic device. The connection established between the electronic device and the main communication interface of the network device is through a "network wireless link", which is different from the short - range wireless link that can be established between the electronic device and the short - range wireless interface of the network device.

[0014] A dedicated function device can be coupled to a network device via a short - range wireless link using the short - range wireless interface of the network interface, but the dedicated function device may not have an interface connected to the main communication interface of the network device. A dedicated function device wirelessly coupled to the short - range wireless interface of the network device does not access the network that would be accessible if an association were established with the main communication interface of the network device.

[0015] Figure 1 is a block diagram of an example arrangement including APs 102, 104, and 106. Various IoT devices 112, 114, 116, 118, and 120 can establish short - range wireless links using the short - range wireless interfaces of APs 102, 104, and 106. Although Figure 1 a specific number of APs and IoT devices are shown, in other examples, there can be a different number of APs and IoT devices. Additionally, in other examples, other types of network devices different from APs can be used to communicate with IoT devices or other types of dedicated function devices. Examples of dedicated function devices include sensors, cameras, thermostats, lamps, security devices, household appliances, or other types of devices.

[0016] AP 102 includes a short - range wireless interface (SRWI) 122, and the short - range wireless interface (SRWI) 122 can establish short - range wireless links with IoT devices 112 and 114 within the coverage area 132 of the short - range wireless interface 122.

[0017] A "wireless interface" can include a transceiver for transmitting and receiving wireless signals. The wireless interface can also include any protocol layer to support the protocol for communicating information over the wireless link.

[0018] The "coverage area" of a wireless interface refers to the physical area within the range of the transceiver of the wireless interface. Devices within the physical area can send signals to or receive signals from the wireless interface.

[0019] AP 104 includes a short - range wireless interface 124, and the short - range wireless interface 124 can establish short - range wireless links with IoT devices 114, 116, and 118 within the coverage area 134 of the short - range wireless interface 122. AP 106 includes a short - range wireless interface 126, and the short - range wireless interface 126 can establish short - range wireless links with IoT devices 118 and 120 within the coverage area 136 of the short - range wireless interface 126.

[0020] Examples of the short - range wireless interfaces 122, 124, and 126 can include any one or some combination of the following: BLE interface, RFID interface, NFC interface, wireless personal area network (Zigbee) interface, infrared interface, or other types of wireless interfaces.

[0021] APs 102, 104, and 106 also include corresponding Main Communication Interfaces (MCIs) 142, 144, and 146. Examples of the main communication interfaces 142, 144, and 146 include main wireless interfaces such as Wi-Fi interfaces, cellular interfaces, or other types of wireless interfaces. The coverage area of the main wireless interface in the AP can be different from the coverage area of the short-range wireless interface in the AP.

[0022] In other examples, the main communication interfaces 142, 144, and 146 can establish a wired connection using corresponding electronic devices.

[0023] In the following discussion, it is assumed that the main communication interfaces 142, 144, and 146 are wireless interfaces. The main communication interface 142 of AP 102 can establish a network wireless link with an Electronic Device (ED) 152 within the coverage area of the main communication interface 142, the main communication interface 144 of AP 104 can establish a network wireless link with an electronic device 154 within the coverage area of the main communication interface 144, and the main communication interface 146 of AP 106 can establish a network wireless link with an electronic device 156 within the coverage area of the main communication interface 146. Examples of the electronic devices 152, 154, and 156 can include any one or some combination of the following: desktop computers, laptop computers, tablet computers, smartphones, gaming devices, vehicles, household appliances, communication nodes, storage systems, or any other type of electronic device.

[0024] In some examples, it is assumed that one or more of the IoT devices 112, 114, 116, 118, and 120 do not have an interface to communicate with the main communication interface of any AP.

[0025] As Figure 1 shown, the coverage areas 132, 134, and 136 of the corresponding short-range wireless interfaces 122, 124, and 126 can overlap. For example, the coverage areas 132 and 134 of the corresponding short-range wireless interfaces 122 and 124 can have an overlapping area 108, and the coverage areas 134 and 136 of the corresponding short-range wireless interfaces 124 and 126 can have an overlapping area 110. Any IoT device in the overlapping area can communicate with multiple APs. For example, the IoT device 114 in the overlapping area 108 can establish short-range wireless links with both APs 102 and 104, and the IoT device 118 in the overlapping area 110 can establish short-range wireless links with both APs 104 and 106. In a further example, the coverage areas of the short-range wireless interfaces of more than two APs can overlap, in which case any IoT device in such an overlapping area can establish short-range wireless links with more than two APs.

[0026] IoT devices can send data (e.g., sensor data, image or video data, or any other type of data collected or generated by the IoT device) to an AP via a short-range wireless link. In an example, each of the IoT devices 114 and 118 can send data to multiple APs via corresponding short-range wireless links. The IoT device 114 can send data to the APs 102 and 104, and the IoT device 118 can send data to the APs 104 and 106. The data from the IoT devices is transmitted by the APs to a target entity 128, which can be located at a specified location 130, such as a cloud computing environment, a data center, a home, an office location, a retail location, or any other location. The target entity 128 can include a program or a machine.

[0027] The target entity 128 is coupled to the APs 102, 104, and 106 via corresponding links 162, 164, and 166. In some examples, the links 162, 164, and 166 are wired links. In other examples, the links 162, 164, and 166 can include wireless links. For example, the links 162, 164, and 166 can be part of a network, such as a local area network (LAN), a wide area network (WAN), a public network (such as the Internet), or any other type of network.

[0028] Data from the IoT device 114 in the overlapping region 108 can be received by the APs 102 and 104 and transmitted by both the APs 102 and 104 to the target entity 128, which will result in the target entity 128 receiving redundant data from the IoT device 114. Similarly, data from the IoT device 118 in the overlapping region 110 can be received by the APs 104 and 106 and transmitted by the APs 104 and 106 to the target entity 128. Receiving redundant data can lead to increased use of the processing and storage resources of the target entity 128 and, in some cases, can cause errors at the target entity 128.

[0029] According to some implementations of the present disclosure, instead of sending the data of a given IoT device to the target entity 128 by multiple APs, multiple APs can select one of the APs as the "owner" AP of the given IoT device. The owner AP is the AP responsible for transmitting the data of the given IoT device to the target entity 128. Any other AP that has not been selected as the owner AP of the given IoT device does not transmit the data of the given IoT device to the target entity 128. In this way, the data of the given IoT device is not sent redundantly to the target entity 128 by multiple APs.

[0030] The selection of the owner AP is performed by selection engines 172, 174, and 176 in the respective APs 102, 104, and 106 based on a selection process. As used herein, an "engine" can refer to one or more hardware processing circuits (such as in the respective AP or other network devices), and one or more hardware processing circuits can include any one or some combination of a microprocessor, a core of a multi-core microprocessor, a microcontroller, a programmable integrated circuit, a programmable gate array, or other hardware processing circuits. Alternatively, an "engine" can refer to a combination of one or more hardware processing circuits and machine-readable instructions (software and / or firmware), and the machine-readable instructions can be executed on the one or more hardware processing circuits.

[0031] In an example, selection engines 172 and 174 can select one of APs 102 and 104 as the owner AP for IoT device 114 located in overlapping region 108. Similarly, selection engines 174 and 176 can select one of APs 104 and 106 as the owner AP for IoT device 118 located in overlapping region 110. More generally, multiple (two or more) selection engines in the respective APs can select one of the APs as the owner AP for any given IoT device.

[0032] Selecting the owner AP from among multiple APs can be based on selection information exchanged between the selection engines, such as via network 190 that connects APs 102, 104, and 106. Network 190 can be a wired network, such as an Ethernet network or other type of wired network. Alternatively, network 190 can be a wireless network.

[0033] Selection information that can be used to select the owner AP from among multiple owner APs can include any one or some combination of the following: a signal strength indicator, a scan time indicating the duration since the AP detected the IoT device, the network address of the AP, or any other type of information indicating which AP among the multiple APs is better than the other(s). The selection information can also include an identifier of the IoT device associated with the selection information. The identifier of the device can include the network address of the device, the serial number of the device, or any other identifier that can distinguish the device from another device.

[0034] An example of a signal strength indicator is a Received Signal Strength Indicator (RSSI), which indicates the strength of a signal from a first device (e.g., an IoT device) as detected by a second device (e.g., an AP). In other examples, other types of signal strength indicators may be employed, such as Signal-to-Noise Ratio (SNR), measured dBm, measured power, or any other signal strength indication. In an example selection process involving multiple APs, the multiple APs may exchange respective RSSIs that indicate the signal strength of a given IoT device detected by the multiple APs. For example, during the selection process for an owner AP of IoT device 114, the selection engine 172 in AP 102 may send a first RSSI to the selection engine 174 in AP 104, where the first RSSI indicates the strength of the signal from IoT device 114 as detected by AP 102. Similarly, the selection engine 174 in AP 104 may send a second RSSI to the selection engine 172 in AP 102, where the second RSSI indicates the strength of the signal from IoT device 114 as detected by AP 104. Each of the selection engines 172 and 174 may compare the first RSSI and the second RSSI. The selection engines 172 and 174 may select AP 102 or 104 as the owner AP of IoT device 114 based on which of the first RSSI and the second RSSI indicates a higher signal strength. The selection process facilitates selecting an AP that has detected a higher signal strength of the signal from IoT device 114 as the owner AP.

[0035] The signal strength of a signal communicated between devices may be related to the distance between the devices, whether there are any signal interference obstacles between the devices, and possibly other factors. For example, if an IoT device is closer to a first AP than to a second AP, the signal transmitted by the IoT device will have a greater strength when detected by the first AP than when detected by the second AP. The presence of a signal interference obstacle between the IoT device and the AP tends to reduce the strength of the signal from the IoT device detected by the AP.

[0036] As described above, the selection process for selecting an owner AP from multiple APs may also consider the scan time, which is based on the duration since the AP detected the IoT device. A first AP may detect a given IoT device at time T1, and a second AP may detect the given IoT device at time T2. The scan time measured at the first AP for the given IoT device is Tc - T1, where Tc represents the current time (e.g., the time when the selection process is performed). Similarly, the scan time measured at the second AP for the given IoT device is Tc - T2. Among the first AP and the second AP, the selection process may tend to select the AP that has measured a longer scan time for the given IoT device as the owner AP of the given IoT device. The selection engines in the first and second APs may exchange the respective first and second scan times with each other, and the selection engines in each AP may compare the first and second scan times. The selection engine selects the AP that has measured the longer scan time as the owner AP of the given IoT device.

[0037] In other examples, the selection process may select the AP with the shorter scan time as the owner AP of the given IoT device.

[0038] As described above, the selection process for selecting an owner AP from multiple APs may also consider the network addresses of the multiple APs. Examples of network addresses include Media Access Control (MAC) addresses or Internet Protocol (IP) addresses. The selection process may compare the network addresses of the multiple APs and select the AP with the lowest (or highest) network address as the owner AP of the given IoT device.

[0039] In some examples, when the selection process considers multiple factors to decide which of the multiple APs to select as the owner AP of a given IoT device, the selection process may first make a decision based on a first factor (e.g., signal strength indicator). If the first factor results in a tie among the multiple APs, the selection process will make a decision on the owner AP based on a second factor (e.g., scan time). If the indicated signal strengths are within a specified threshold tolerance of each other (e.g., differ from each other by 0.5%, within 1% of each other, within 2% of each other, or more generally, within X% of each other, where X is a real number greater than or equal to zero), then the first signal strength indicator detected at the first AP "equals" the second signal strength indicator detected at the second AP. The equality of the first and second signal strength indicators results in a tie between the first AP and the second AP in the selection process.

[0040] When considering a second factor (e.g., scan time), if the first scan time detected by the first AP "equals" the second scan time detected by the second AP, the selection process results in a tie between the first AP and the second AP. The first scan time equals the second scan time if the first and second scan times are within a specified threshold tolerance of each other.

[0041] If the second factor (e.g., scan time) also results in a tie among multiple APs, the selection process makes a decision on the owner AP based on a third factor (e.g., network address). When a tie is caused by a previous factor, the selection process iterates through any additional factors.

[0042] Each of the APs 102, 104, and 106 includes a respective memory, which can be implemented using one or more memory devices, such as any one or some combination of the following: dynamic random access memory (DRAM) devices, static random access memory (SRAM) devices, flash memory devices, or any other type of memory device. AP 102 includes memory 182, AP 104 includes memory 184, and AP 106 includes memory 186.

[0043] The selection engine can store information in the respective memories for selecting an owner AP for the IoT device. In Figure 1 the example, selection engine 172 uses the monitoring data structure (DS) 182-1 and the owner association data structure 182-2 stored in memory 182, selection engine 174 uses the monitoring data structure 184-1 and the owner association data structure 184-2 stored in memory 184, and selection engine 176 uses the monitoring data structure 186-1 and the owner association data structure 186-2 stored in memory 186. Examples of data structures can be tables, files, or any other object that can contain information. Note that although the monitoring data structure and the owner association data structure are described as separate data structures, the monitoring data structure and the owner association data structure can represent a single data structure (e.g., a single table, a single file, a single object, etc.).

[0044] The monitoring data structure stored in the memory of the AP includes information about the IoT device detected by the AP. For example, the IoT device can transmit a beacon, such as a BLE beacon. A "beacon" refers to a message, signal, or any other type of information transmitted by a device for detection by another device. The beacon is transmitted by the short-range wireless interface of the IoT device and can be detected at the short-range wireless interface of the AP. When the IoT device enters the range of the short-range wireless interface of the AP and the AP detects the beacon transmitted by the IoT device, the AP adds information about the IoT device (such as the identifier of the IoT device) to the monitoring data structure.

[0045] The owner - associated data structure stored in the memory of the AP includes information (e.g., the identifier of the IoT device) of any IoT device for which the AP has been designated as the owner AP when it is selected during a selection process involving multiple APs or is designated as the owner AP in other scenarios.

[0046] Figure 2 is a flowchart of a process involving various entities, including IoT device 114 and APs 102 and 104. IoT device 114 may be located in the overlapping area 108 of the coverage areas 108 of the respective APs 102 and 104 ( Figure 1 ).

[0047] The IoT device 114 transmits a beacon (at 202), which may be performed periodically or intermittently. In response to detecting the beacon from the IoT device 114, the AP 102 adds (at 204) the information of the IoT device 114 (e.g., including the identifier) to the monitoring data structure 182 - 1 in the memory 182 of the AP 102 (assuming the information of the IoT device 114 is not already in the monitoring data structure 182 - 1). Similarly, in response to detecting the beacon from the IoT device 114, the AP 104 adds (at 206) the information of the IoT device 114 (e.g., including the identifier) to the monitoring data structure 184 - 1 in the memory 184 of the AP 104 (assuming the information of the IoT device 114 is not already in the monitoring data structure 184 - 1).

[0048] AP 102 checks (at 208) its owner - associated data structure 182 - 2 (stored in the memory 182 of AP 102) to determine whether AP 102 is the owner AP of the IoT device 114. Similarly, AP 104 checks (at 210) its owner - associated data structure 184 - 2 (stored in the memory 182 of AP 104) to determine whether AP 104 is the owner AP for the IoT device 114. If the owner - associated data structure 182 - 2 indicates that AP 102 is the owner AP of the IoT device 114, then AP 102 broadcasts (at 212), such as via the network 190, an ownership indication (e.g., a message, an information element, a signal, or any other information) for the IoT device 114 to other APs (including AP 104). The ownership indication indicates that AP 102 is the owner AP of the IoT device 114. For example, the ownership indication may include an identifier of the IoT device 114 and a status flag set to a value indicating that the IoT device 114 is owned by the AP sending the ownership indication. In response to receiving the ownership indication for the IoT device 114 from AP 102, AP 104 determines not to send selection information for the selection process of the owner AP of the IoT device 114 because AP 102 has indicated that AP 102 is the owner AP of the IoT device 114.

[0049] If the owner - associated data structure 184 - 2 indicates that AP 104 is the owner AP of the IoT device 114, then AP 104 broadcasts (at 214) an ownership indication for the IoT device 114 to other APs (including AP 102). The ownership indication sent by AP 104 indicates that AP 104 is the owner AP of the IoT device 114. In response to receiving the ownership indication for the IoT device 114 from AP 104, AP 102 determines not to send selection information for the selection process of the owner AP of the IoT device 114 because AP 104 has indicated that AP 104 is the owner AP of the IoT device 114.

[0050] The selection engine 172 in AP 102 determines (at 216) whether there is currently any owner AP of the IoT device 114. The selection engine 172 determines that there is currently no owner AP of the IoT device 114 based on the owner association data structure 182-2 that does not indicate that AP 102 is the owner AP of the IoT device 114 and if AP 102 has not received any ownership indication for the IoT device 114 from any other AP. If the selection engine 172 determines (at 216) that there is currently no owner AP of the IoT device 114, the selection engine 172 broadcasts (at 218) selection information to other APs (including AP 104) as part of the selection process for the IoT device 114.

[0051] If the selection engine 172 determines (at 216) that there is currently an owner AP of the IoT device 114, the selection engine 172 does not take any selection action (at 224); in other words, the selection engine 172 does not perform the selection process for the IoT device 114.

[0052] Similarly, the selection engine 174 in AP 104 determines (at 220) whether there is currently any owner AP of the IoT device 114. The selection engine 174 determines that there is currently no owner AP of the IoT device 114 based on the owner association data structure 184-2 that does not indicate that AP 104 is the owner AP of the IoT device 114 and if AP 104 has not received any ownership indication for the IoT device 114 from any other AP. If the selection engine 174 determines (at 220) that there is currently no owner AP of the IoT device 114, the selection engine 174 broadcasts (at 222) selection information to other APs (including AP 102) as part of the selection process for the IoT device 114.

[0053] If the selection engine 174 determines (at 220) that there is currently an owner AP of the IoT device 114, the selection engine 174 does not take any selection action (at 226); in other words, the selection engine 174 does not perform the selection process for the IoT device 114.

[0054] Based on the selection information generated at AP 102 (e.g., including signal strength indicator, scan time, network address, etc.) and the selection information received from other AP(s), the selection engine 172 determines (at 228) whether AP 102 should be selected as the owner AP of the IoT device 114. If so, the selection engine 172 adds (at 230) the information of the IoT device 114 to the ownership association data structure 182-2 and broadcasts (at 232) the ownership indication for the IoT device 114 to other APs (including AP 104).

[0055] If the selection engine 172 determines (at 228) that the AP 102 should not be the owner AP, the selection engine 172 does not take further selection actions (at 224) for the IoT device 114. Note that if the monitoring data structure 182-1 contains an entry for the IoT device 114 but the owner association data structure 182-2 does not contain an entry for the IoT device 114, the AP 102 can be instructed that the AP 102 is not the owner AP of the IoT device 114. The AP 102 can easily confirm this by querying the monitoring data structure 182-1 and the owner association data structure 182-2 for entries for the IoT device 114, if any exist.

[0056] Based on the selection information generated at the AP 104 and the selection information received from other AP(s), the selection engine 174 determines (at 234) whether the AP 102 should be selected as the owner AP of the IoT device 114. If so, the selection engine 174 adds (at 236) the information of the IoT device 114 to the ownership association data structure 184-2 and broadcasts (at 238) the ownership indication for the IoT device 114 to other APs (including the AP 102). If the selection engine 174 determines (at 234) that the AP 104 should not be the owner AP, the selection engine 174 does not take further selection actions (at 226) for the IoT device 114.

[0057] When an AP (“receiving AP”) receives selection information for a given IoT device from another AP, the receiving AP can check the receiving AP's monitoring data structure to determine whether the receiving AP has previously detected the given IoT device. If the receiving AP's monitoring data structure does not contain an entry with information for the given IoT device, the receiving AP will determine that the receiving AP should not participate in the selection process for the given IoT device. However, if the receiving AP's monitoring data structure contains an entry with information for the given IoT device, the receiving AP will determine that the receiving AP should participate in the selection process for the given IoT device and can transmit the selection information for the given IoT device to other APs.

[0058] When a particular AP detects a given IoT device, the particular AP adds an entry including information for the given IoT device to the monitoring data structure of the particular AP. The particular AP also waits to determine whether it receives selection information for the given IoT device from any other AP. If the particular AP does not receive selection information for the given IoT device from any other AP after a specified threshold duration (e.g., 10 seconds or any other duration), the particular AP can determine that the particular AP should be the owner AP of the given IoT device and add the entry for the given IoT device to the ownership association data structure of the particular AP. The particular AP that does not receive selection information from any other AP can indicate that the given IoT device is within the range of the particular AP but not within the range of any other AP. Thus, without performing a selection process, the particular AP can be designated as the owner AP of the given IoT device.

[0059] In some cases, a selection engine in multiple APs can select multiple owner APs for a given IoT device. For example, a selection engine in a first AP can determine during a selection process for the given IoT device that the first AP should be the owner AP of the given IoT device, and in addition, a selection engine in a second AP can determine during a selection process for the given IoT device that the second AP should be the owner AP of the given IoT device. For example, selecting multiple owner APs for a given IoT device may be caused by a data error in the reported selection information. As described above, when a selection engine selects an AP as the owner AP of a given IoT device, the selection engine sends an ownership indication to other APs. If multiple owner APs for a given IoT device are selected, the multiple owner APs will transmit the ownership indication for the given IoT device. In the case where multiple APs are selected as owner APs, each of the multiple owner APs will continue to exchange selection information with each other (which can be updated as conditions change) such that the multiple owner APs can perform a further (multiple) selection process for the given IoT device. The further (multiple) selection process will result in only one AP being selected as the owner AP of the given IoT device. Note that selecting multiple owner APs for a given IoT device is considered an error condition during which the multiple owner APs will not transmit the data of the given IoT device to the target entity (e.g., Figure 1 128 in

[0060] An IoT device associated with one owner AP can be referred to as a "virtual IoT device". The term "virtual" is used to indicate that although the IoT device may be within the range of multiple APs (and may actually be sending the data of the IoT device to multiple APs), only one of the multiple APs (i.e., the owner AP) forwards the data of the IoT device to the target entity (e.g.,Figure 1 among 128).

[0061] In some cases, the IoT device may move to different locations. Consequently, the position of the IoT device relative to the AP may change, which may cause the RSSI of the signal detected by the AP for the IoT device to change. When the selection engine of the AP detects that the change in the RSSI or any other factor included in the selection information is greater than a threshold amount (e.g., the RSSI increases or decreases by X%, where X is a real number greater than zero), the selection engine may send the selection information to other APs, which may trigger the other APs to send the selection information, enabling the AP to perform another selection process. Due to the physical movement of the IoT device, the selection process may select a different owner AP for the IoT device.

[0062] After a particular AP is selected as the owner AP of the IoT device, the particular AP may become unavailable, such as due to a failure of the particular AP or due to a loss of network connection with the particular AP. If the owner AP becomes unavailable, another AP will have to take over as the new owner AP to send the data of the IoT device. In some examples, the AP may implement a failover mechanism involving long connection message transmission. As long as the AP is operational, the AP continues to transmit long connection messages, such as periodically or at other time intervals. A "long connection message" may refer to any message or other information used to indicate the availability of the entity transmitting the long connection message.

[0063] The APs participating in the selection process in the AP group can monitor the long connection messages of other APs in the group. For example, as Figure 3 shown, the APs 302, 304, 306 in the group can respectively store (at 310, 312, 314) group information indicating that their APs are members of the group participating in the selection process. Suppose the first AP 302 in the group is selected as the owner AP of the IoT device, then the other APs in the group (e.g., including the second AP 304 and the third AP 306) will monitor (at 316, 318) the long connection messages of the first AP 302. If another AP in the group (e.g., 304) detects (at 320) that the time of failing to receive the long connection message from the first AP 302 exceeds a specified duration, the AP 304 can send (at 322) a selection process trigger (e.g., a message, an information element, etc.) to cause the remaining APs in the group to perform (at 324) another selection process to select a new owner AP to take over the transmission of the data of the IoT device to the target entity. The selection process involves exchanging selection information among the remaining APs to select a new owner AP for the IoT device.

[0064] Figure 4is a block diagram of a first network device 400 according to some examples of the present disclosure. The first network device 400 may be an AP or other type of network device.

[0065] The first network device 400 includes an association communication interface 402 for associating with an electronic device using an association program. The association communication interface 402 may be a Wi-Fi interface, a cellular interface, or other type of primary communication interface.

[0066] The first network device 400 further includes a short-range wireless interface 404 for wirelessly receiving data from an electronic device via a wireless link different from any communication link of the communication interface 402. For example, the electronic device may be an IoT device.

[0067] The first network device 400 further includes at least one hardware processor 406 to perform various tasks, such as performing various tasks under the control of machine-readable instructions executed by the at least one hardware processor 406. The hardware processor may include a microprocessor, a core of a multi-core microprocessor, a microcontroller, a programmable integrated circuit, a programmable gate array, or other hardware processing circuits.

[0068] Tasks of the at least one hardware processor 406 include a first selection information determination task 408 for determining first selection information related to wireless communication between the electronic device and the first network device 400 via the short-range wireless interface 404. The determined first selection information may include, for example, the RSSI of a signal from the electronic device, the scan time for the electronic device, and / or the network address of the first network device 400.

[0069] Tasks of the at least one hardware processor 406 include a second selection information receiving task 410 for receiving, at the first network device, second selection information related to wireless communication between the electronic device and a second network device via a network.

[0070] Tasks of the at least one hardware processor 406 include a selection task 412 for performing a selection process based on the first selection information and the second selection information, the selection process determining whether the first network device 400 is selected from among a plurality of network devices including the first network device 400 and the second network device for sending data of the electronic device received via the short-range wireless interface 404 to a target entity.

[0071] In some examples, the first selection information includes a first indicator of the signal strength of the wireless communication between the electronic device and the first network device 400, and the second selection information includes a second indicator of the signal strength of the wireless communication between the electronic device and the second network device. The selection process is based on a comparison of the first indicator and the second indicator.

[0072] In some examples, the selection process selects the first network device 400 instead of the second network device based on the first indicator indicating a greater signal strength than the second indicator.

[0073] In some examples, the first selection information includes a first scan time indicating the duration since the electronic device was detected by the first network device 400, and the second selection information includes a second scan time indicating the duration since the electronic device was detected by the second network device. The selection process is based on a comparison of the first scan time and the second scan time.

[0074] In some examples, based on the first scan time being greater than (or less than) the second scan time, the selection process selects the first network device 400 instead of the second network device.

[0075] In some examples, at least one hardware processor 406 performs the selection process based on a comparison of the first scan time and the second scan time in response to determining that the signal strength of the wireless communication between the electronic device and the first network device 400 is equal (within a specified threshold tolerance) to the signal strength of the wireless communication between the electronic device and the second network device.

[0076] In some examples, the first selection information includes a first network address of the first network device 400, and the second selection information includes a second network address of the second network device. The selection process is based on a comparison of the first network address and the second network address.

[0077] In some examples, at least one hardware processor 406 performs the selection process based on a comparison of the first network address and the second network address in response to determining that the signal strength of the wireless communication between the electronic device and the first network device 400 is equal (within a specified threshold tolerance) to the signal strength of the wireless communication between the electronic device and the second network device.

[0078] In some examples, the selection of the first network device 400 causes the second network device not to transmit the data of the electronic device to the target entity.

[0079] In some examples, the selection process selects the second network device to transmit the data of the electronic device. At least one hardware processor 406 detects the unavailability of the second network device, such as based on the duration of detecting the failure to receive a long connection message from the second network device exceeding the specified duration. Based on detecting the unavailability of the second network device, at least one hardware processor 406 initiates another selection process to select another network device from among the multiple network devices to transmit the data of the electronic device to the target entity.

[0080] In some examples, the selection process selects the first network device instead of the second network device based on first selection information and second selection information, and in response to the selection process selecting the first network device 400, the first network device 400 transmits data received from the electronic device via a wireless interface to the target entity.

[0081] Figure 5 is a block diagram of a non-transitory machine-readable or computer-readable storage medium 500 storing machine-readable instructions that, when executed, cause the first network device to perform various tasks.

[0082] The machine-readable instructions include an electronic device detection instruction 502 for detecting an electronic device based on a beacon transmitted by the electronic device received via a short-range wireless interface of the first network device. The short-range wireless interface is different from the main communication interface of the first network device, and the first network device associates with the electronic device using an association procedure via the main wireless interface. The first network device does not associate with the electronic device via the main communication interface.

[0083] The machine-readable instructions include a first selection information determination instruction 504 for determining first selection information related to wireless communication between the electronic device and the first network device via the short-range wireless interface based on detecting the electronic device. The first selection information is generated by the first network device based on measurement values or other information of the first network device.

[0084] The machine-readable instructions include a second selection information reception instruction 506 for receiving, at the first network device via a network, second selection information related to wireless communication between the electronic device and the second network device.

[0085] The machine-readable instructions include a selection instruction 508 for performing a selection process based on the first selection information and the second selection information, the selection process selecting the first network device from a plurality of network devices including the first network device and the second network device as the owner network device of the electronic device.

[0086] The machine-readable instructions include a data transmission instruction 510 for transmitting, based on the first network device being selected by the selection process, data of the electronic device received via the short-range wireless interface from the first network device to the target entity.

[0087] Figure 6 is a flowchart of a process 600 according to some examples. Process 600 includes receiving (at 602) a beacon transmitted by an electronic device via a short-range wireless interface of a first network device at the first network device. Based on the beacon, the first network device adds an identifier of the electronic device to (at 604) a first data structure that tracks electronic devices detected by the first network device. The first data structure can be a monitoring data structure (e.g.,Figure 1 among 182-1, 184-1, or 186-1).

[0088] The first network device determines (at 606) first selection information related to wireless communication between the electronic device and the first network device via a short-range wireless interface. The first network device receives (at 608) from the second network device via the network at the first network device second selection information related to wireless communication between the electronic device and the second network device.

[0089] Based on the first selection information and the second selection information, the first network device performs (at 610) a selection process that selects the first network device as the owner network device of the electronic device from among a plurality of network devices including the first network device and the second network device.

[0090] The first network device adds (at 612) an identifier of the electronic device to a second data structure that indicates that the first network device is the owner network device of the electronic device. The second data structure may be an owner association data structure (e.g., Figure 1 among 182-2, 184-2, 186-2).

[0091] Based on the first network device being selected by the selection process, the first network device sends (at 614) data of the electronic device received via the short-range wireless interface from the first network device to a target entity.

[0092] In some examples, the first network device queries the first data structure and the second data structure to determine whether the first network device is the owner network device of the second electronic device. Although referred to as the first and second data structures, note that the first and second data structures may be part of the same data structure.

[0093] A storage medium (e.g., Figure 5The 500 in may include any one or some combination of the following items: semiconductor memory devices, such as dynamic or static random access memories (DRAM or SRAM), erasable programmable read-only memories (EPROM), electrically erasable programmable read-only memories (EEPROM), and flash memories; magnetic disks, such as fixed floppy disks and removable disks; other magnetic media, including magnetic tapes; optical media, such as compact discs (CD) or digital video discs (DVD); or other types of storage devices. Note that the above instructions may be provided on one computer-readable or machine-readable storage medium, or alternatively may be provided on multiple computer-readable or machine-readable storage media distributed in a large system that may have multiple nodes. Such one or more computer-readable or machine-readable storage media are considered part of an article (or article of manufacture). An article or article of manufacture may refer to any single manufactured component or multiple components. One or more storage media may be located in the machine running the machine-readable instructions, or may be located at a remote site, and the machine-readable instructions may be downloaded from the remote site via a network for execution.

[0094] In this disclosure, unless the context clearly dictates otherwise, the use of the terms “a,” “an,” or “the” is also intended to include the plural form. Additionally, the terms “includes,” “including,” “comprises,” or “having” when used in this disclosure specify the presence of the stated element, but do not preclude the presence or addition of other elements.

[0095] In the foregoing description, numerous details are set forth to provide an understanding of the subject matter disclosed herein. However, implementations may be practiced without some of these details. Other implementations may include modifications and variations to the above details. The appended claims are intended to cover such modifications and variations.

Claims

1. A first network device, comprising: a communication interface associated with the electronic device; a wireless interface for wirelessly receiving data from an electronic device via a wireless link that is distinct from any communication link to the communication interface; as well as At least one processor configured to: determining first selection information related to wireless communication between the electronic device and the first network device via the wireless interface, receiving, at the first network device, second selection information related to wireless communication between the electronic device and the second network device from a second network device through a network, Based on the first selection information and the second selection information, a selection process is performed, the selection process determining whether the first network device is selected from among a plurality of network devices including the first network device and the second network device for transmitting the data received through the wireless interface to a target entity.

2. The first network device according to claim 1, wherein the wireless interface is a short-range wireless interface. The first network device according to claim 2 , wherein the wireless interface is a Bluetooth interface.

4. The first network device of claim 2, wherein the communication interface is an association wireless interface, and the electronic device is associated with the association wireless interface using an association procedure. 5 . The first network device according to claim 4 , wherein the associated wireless interface is a Wi-Fi interface or a cellular interface.

6. The first network device of claim 1 , wherein the first selection information comprises a first indicator of a signal strength of the wireless communication between the electronic device and the first network device, and the second selection information comprises a second indicator of a signal strength of the wireless communication between the electronic device and the second network device, and Wherein the selection process is based on a comparison of the first indicator and the second indicator. 7 . The first network device of claim 6 , wherein the selection process selects the first network device over the second network device based on the first indicator indicating a greater signal strength than the second indicator.

8. The first network device according to claim 1, wherein the first selection information includes a first scan time indicating a duration since the first network device detected the electronic device, and the second selection information includes a second scan time indicating a duration since the second network device detected the electronic device, and Wherein the selection process is based on a comparison of the first scanning time and the second scanning time.

9. The first network device of claim 8, wherein the selection process selects the first network device over the second network device based on the first scan time being greater than the second scan time.

10. The first network device of claim 9, wherein the at least one processor performs the selection process based on the comparison of the first scanning time and the second scanning time in response to determining that a signal strength of the wireless communication between the electronic device and the first network device is equal to a signal strength of the wireless communication between the electronic device and the second network device.

11. The first network device according to claim 1, wherein the first selection information comprises a first network address of the first network device, and the second selection information comprises a second network address of the second network device, and Wherein the selection process is based on a comparison of the first network address and the second network address.

12. The first network device of claim 11 , wherein the at least one processor performs the selection process based on the comparison of the first network address and the second network address in response to determining that a signal strength of the wireless communication between the electronic device and the first network device is equal to a signal strength of the wireless communication between the electronic device and the second network device.

13. The first network device of claim 1, wherein the selection of the first network device causes the second network device to not transmit the data of the electronic device to the target entity.

14. The first network device of claim 1, wherein the selection process selects the second network device to transmit the data of the electronic device, and wherein the at least one processor is configured to: detecting unavailability of the second network device, and Based on detecting the unavailability of the second network device, another selection process is initiated to select another network device from among the plurality of network devices to transmit the data of the electronic device to the target entity.

15. The first network device of claim 1, wherein the selection process selects the first network device instead of the second network device based on first selection information and the second selection information, and wherein the at least one processor is configured to: The first network device is selected based on the selection process, and the data of the electronic device received through the wireless interface is transmitted to the target entity.

16. A non-transitory machine-readable storage medium comprising instructions that, when executed, cause a first network device to: detecting the electronic device based on receiving a beacon transmitted by the electronic device through the short-range wireless interface of the first network device; determining, based on detecting the electronic device, first selection information related to wireless communication between the electronic device and the first network device via the short-range wireless interface; receiving, at the first network device, second selection information related to wireless communication between the electronic device and the second network device from a second network device via a network; Based on the first selection information and the second selection information, performing a selection process, the selection process selecting the first network device from a plurality of network devices including the first network device and the second network device; as well as The first network device is selected based on the selection process, and the data of the electronic device received through the short-range wireless interface is sent from the first network device to a target entity.

17. The non-transitory machine-readable storage medium of claim 16, wherein the short-range wireless interface is distinct from other wireless interfaces of the first network device, and wherein the first network device associates with the electronic device through the other wireless interface using an association procedure.

18. The non-transitory machine-readable storage medium of claim 17, wherein the first network device is not associated with the electronic device through the other wireless interface.

19. A method comprising: At a first network device, receiving a beacon transmitted by an electronic device via a short-range wireless interface of the first network device; adding, by the first network device, an identifier of the electronic device to a first data structure based on the beacon, the first data structure tracking electronic devices detected by the first network device; determining, by the first network device, first selection information related to wireless communication between the electronic device and the first network device via the short-range wireless interface; receiving, at the first network device, second selection information related to wireless communication between the electronic device and the second network device from a second network device via a network; Based on the first selection information and the second selection information, performing a selection process, the selection process selecting the first network device as an owner network device of the electronic device from among a plurality of network devices including the first network device and the second network device; adding, by the first network device, an identifier of the electronic device to a second data structure, the second data structure indicating that the first network device is the owner network device of the electronic device; as well as The first network device is selected based on the selection process, and the data of the electronic device received through the short-range wireless interface is sent from the first network device to a target entity.

20. The method according to claim 19, comprising: The first data structure and the second data structure are accessed by the first network device to query and determine whether the first network device is the owner network device of the second electronic device.