Telecommunications network
By identifying the matching BSSID and signal strength values of the equipment in the wireless LAN, determine the first jump intermediate relay identifier, solve the problem of analysis accuracy caused by the device MAC address virtualization, and realize the accurate identification and signal strength assessment of user equipment.
Patent Information
- Application Number
- CN202380046468.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-06-13
- Filing Date
- 2023-05-05
- Publication Date
- 2025-01-24
- Estimated Expiration
- 2043-05-05
AI Technical Summary
In a wireless LAN, the virtualization of the MAC address of the device causes the operator to fail to correctly identify all records related to the device, which in turn affects the analysis accuracy.
By obtaining a data set containing user devices related records, identify records that match BSSID, and determine the first jumping middle relay identifier based on the difference in signal strength values, which in turn causes the re -configuration of the wireless local area network.
It achieves accurate identification and signal strength assessment of user equipment, and improves operators' ability to analyze and manage wireless LANs.
Smart Images

Figure CN119366164A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to telecommunication networks. Background Art
[0002] Customer premises equipment (CPE) in a telecommunications network is equipment typically located in a customer's residence or business that connects the customer to the operator's network (such as a digital subscriber line (DSL) network, a fiber to the premises (FTTP) network, and / or a cellular network). CPE can also provide a local area network (including a wireless local area network) to the customer to connect one or more user devices to the network operator's network.
[0003] CPE can be managed remotely by the network operator. Remote management can be achieved through an automatic configuration server (ACS) using the TR-69 protocol (standardized by BroadbandForum). The TR-69 protocol defines a data set that is periodically collected from the CPE for analysis by the ACS. This data set identifies all devices connected to the CPE. As part of the management service, the ACS analyzes this data (for example to identify faults). The data set collected according to the TR-69 protocol identifies each device connected to the hub by its Media Access Control (MAC) address.
[0004] In a wireless LAN, a device can be connected to a CPE via a repeater. The connection between the CPE and the device can include a single repeater or multiple repeaters. The repeater can virtualize the MAC address of the device so that the MAC address reported by the repeater to the CPE is the virtualized MAC address, not the actual MAC address of the device. If the device is directly connected to the CPE in one time period and indirectly connected via a repeater in a second time period, the records collected according to the TR-69 protocol in the first time period use the actual MAC address of the device, while the records collected according to the TR-69 protocol in the second time period use the virtualized MAC address of the device. This results in poor analysis because the operator cannot identify all records related to the device (but instead incorrectly identifies two devices, one with the actual MAC address and one with the virtualized MAC address).
[0005] Additionally, data set values may be modified by the repeater so that the values relate to the repeater rather than the device. For example, signal strength values (e.g., received signal strength indication RSSI) may be modified so that they represent the RSSI of a signal transmitted by the repeater and received by the CPE rather than the RSSI of a signal transmitted by the device and received by the repeater. This also results in poor analysis because the operator cannot properly assess the signal strength at the device. Summary of the invention
[0006] According to a first aspect of the present invention, a method for operating a wireless local area network is provided, wherein the wireless local area network comprises a user device, a wireless access point and a wireless repeater, wherein the wireless repeater is configured to virtualize a media access control MAC address of the user device when the user device is connected to the wireless repeater, and the method comprises the following steps: obtaining data comprising a first plurality of records, wherein each record in the first plurality of records is related to the user device and comprises a MAC address and a signal strength value; obtaining data comprising a second plurality of records, wherein each record in the second plurality of records comprises a basic service set identifier BSSID and a signal strength value; for each record in the first plurality of records, the respective MAC addresses of the first plurality of records: identifying a record in the second plurality of records having a BSSID that sufficiently matches the MAC address by determining a similarity between an organizationally unique identifier (OUI) of the BSSID and an OUI of the MAC address, determining that a difference between a signal strength value associated with the identified record in the second plurality of records and a signal strength value associated with the MAC address of the first plurality of records is within a threshold, assigning a first-hop repeater identifier to each record in the first plurality of records having the MAC address based on the BSSID of the identified record in the second plurality of records; and causing reconfiguration in the wireless local area network based on the first-hop repeater identifier.
[0007] The method may further include the step of determining that the signal strength value associated with the identified record in the second plurality of records is an average of the signal strength values of all records in the second plurality of records having the BSSID.
[0008] The method may also include the following steps: determining a minimum difference between a signal strength value associated with an identified record in the second plurality of records and at least two items in the group including: a weighted signal strength value based on all signal strength values of all records with the MAC address in the first plurality of records, a minimum signal strength value based on all signal strength values of all records with the MAC address in the first plurality of records, a maximum signal strength value based on all signal strength values of all records with the MAC address in the first plurality of records, and an average signal strength value based on all signal strength values of all records with the MAC address in the first plurality of records, wherein the step of determining that the difference between the signal strength value associated with the identified record in the second plurality of records and the signal strength value associated with the MAC address in the first plurality of records is within a threshold includes determining that the minimum difference between the signal strength value associated with the identified record in the second plurality of records and the signal strength value associated with the MAC address in the first plurality of records is within the threshold.
[0009] The step of identifying a record in the second plurality of records having a BSSID that substantially matches the MAC address may include identifying a first set of BSSIDs in the second plurality of records that substantially matches the MAC address, and the method further includes the steps of: determining, for each record in the first set of the second plurality of records, a difference between a signal strength value associated with the record in the first set of the second plurality of records and a signal strength value associated with the MAC address of the first plurality of records; and identifying a record in the first set of the second plurality of records having a minimum difference, wherein the step of determining that the difference between the signal strength value associated with the identified record in the second plurality of records and the signal strength value associated with the MAC address of the first plurality of records is within a threshold includes determining that the minimum difference between the signal strength value associated with the identified record in the first set of the second plurality of records and the signal strength value associated with the MAC address of the first plurality of records is within a threshold, wherein the first-hop repeater identifier is based on the BSSID of the record identified in the first set of the second plurality of records.
[0010] The step of determining, for each record in the first set of the second plurality of records, a difference between a signal strength value associated with the record in the first set of the second plurality of records and a signal strength value associated with the MAC address of the first plurality of records may include: determining, for each record in the first set of the second plurality of records, a minimum difference between a signal strength value associated with the record in the second plurality of records and at least two of the group consisting of: a weighted signal strength value based on all signal strength values of all records in the first plurality of records having the MAC address, a minimum signal strength value based on all signal strength values of all records in the first plurality of records having the MAC address, a maximum signal strength value based on all signal strength values of all records in the first plurality of records having the MAC address, and an average signal strength value based on all signal strength values of all records in the first plurality of records having the MAC address, wherein the step of identifying the record in the first set of the second plurality of records having the minimum difference value includes identifying the record in the first set of the second plurality of records having the minimum difference value.
[0011] Each record in the first plurality of records may include a wireless LAN frequency band, and each record in the second plurality of records may include a wireless LAN frequency band, the step of assigning the first hop repeater identifier to each record in the first plurality of records having the MAC address may include assigning the first hop repeater identifier to each record in the first plurality of records having the MAC address and the wireless LAN frequency band, and the step of identifying the record with the smallest difference in the first set of the second plurality of records may include identifying the record in the first set of the second plurality of records having a wireless LAN frequency band that matches the wireless LAN frequency band of each record in the first plurality of records and has the smallest difference.
[0012] Each record in the first plurality of records may include a wireless LAN frequency band, and each record in the second plurality of records may include a wireless LAN frequency band, the step of assigning the first hop repeater identifier to each record in the first plurality of records having the MAC address may include assigning the first hop repeater identifier to each record in the first plurality of records having the MAC address and the wireless LAN frequency band, and the step of identifying the record with the smallest difference in the first set of the second plurality of records may include: determining that there is no record in the first group of records of the second plurality of records having a wireless LAN frequency band that matches the wireless LAN frequency band of each record in the first plurality of records; and identifying the record in the first set of the second plurality of records having a wireless LAN frequency band that does not match the wireless LAN frequency band of each record in the first plurality of records and has the smallest difference.
[0013] Each record in the first plurality of records may also include a timestamp, and the weighted signal strength value may be determined as the sum of each signal strength value multiplied by a weight factor for all records in the first plurality of records having the MAC address, wherein the weight factor may be determined as a count of unique timestamp values in a first group of records in the first plurality of records having the MAC address and signal strength value divided by a count of unique timestamp values in a second group of records in the first plurality of records having the MAC address.
[0014] The method may further include the step of assigning a root repeater identifier to each record in the first plurality of records having the MAC address based on an SSID associated with the BSSID of the identified record in the second plurality of records.
[0015] The method may also include the following steps: determining that a single SSID in the second plurality of records is associated with the BSSID of the record identified in the second plurality of records, wherein assigning the root repeater identifier to each record in the first plurality of records having the MAC address is based on the BSSID of the record identified in the second plurality of records.
[0016] The method may also include the following steps: determining that a second set of the second plurality of records each includes an SSID associated with the BSSID of a record identified in the second plurality of records; identifying a record in the second set of the second plurality of records having the maximum signal strength value, wherein assigning the root repeater identifier to each record in the first plurality of records having the MAC address is based on the BSSID of the record identified in the second set of the second plurality of records.
[0017] According to a second aspect of the present invention, there is provided a computer program comprising instructions which, when executed by a computer, cause the computer to perform the steps of the first aspect of the present invention.
[0018] According to a third aspect of the present invention, there is provided a data processing apparatus comprising a processor adapted to perform the steps of the method of the first aspect of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] In order that the present invention may be better understood, embodiments of the present invention will now be described, by way of example only, with reference to the accompanying drawings, in which:
[0020] Figure 1 is a schematic diagram of a telecommunication network according to a first embodiment of the present invention;
[0021] Figure 2 is a flowchart showing a first process of a method according to a first embodiment of the present invention;
[0022] Figure 3 is a flow chart showing a second process of the method of the first embodiment of the present invention;
[0023] Figure 4 is a more detailed illustration of the generation Figure 3 A flowchart of the steps of the second process of device identifier;
[0024] Figure 5 is shown in more detail Figure 3 A flowchart of the steps of generating an identifier for a first hop repeater and an identifier for a root repeater in a second process;
[0025] Figure 6 Yes Figure 3A flowchart further illustrating the steps of generating a device identifier of the second process; and
[0026] Figure 7 Yes Figure 3 A further illustrated flow chart of a second process for generating an identifier for a first hop repeater and an identifier for a root repeater. DETAILED DESCRIPTION
[0027] Now refer to Figure 1 A first embodiment of a telecommunications network 100 is described. The telecommunications network 100 includes an operator's network 200 and a customer's network 300. The operator's network 200 and the customer's network 300 are connected via an access connection 400, which in this embodiment is a digital subscriber line (DSL). The customer's network 300 includes a customer premises equipment (CPE) 310, a plurality of repeaters 330a, 330b, 330c, 330d (collectively referred to as 330), and a plurality of user equipment 320a, 320b, 320c, 320d (collectively referred to as 320).
[0028] CPE 310 includes an access network communication interface 311, a processor 313, a memory 315, a wired communication interface 317, and a wireless communication interface 319. The access network communication interface 311 enables CPE 310 to communicate with the operator's network 200 via the access connection 400. The wired communication interface 317 and the wireless communication interface 319 enable CPE 310 to provide a wired local area network and a wireless local area network, respectively.
[0029] In this embodiment, each of the plurality of user devices 320 includes a wireless communication interface 321 a , 321 b , 321 c , 321 d (collectively referred to as 321 ) for communicating with the wireless local area network of the CPE 310 .
[0030] The plurality of repeaters 330 include a first group of repeaters ( Figure 1 The first repeater 330a in the first repeater 330a) and the second repeater group ( Figure 1 The differences between the first group of repeaters and the second group of repeaters in the plurality of repeaters 330 are discussed below. Each repeater includes a wireless communication interface 331a, 331b, 331c, 331d (collectively referred to as 331) for communicating with the wireless local area network of the CPE 310.
[0031] The CPE 310 may be identified by a media access control (MAC) address for a network interface controller (NIC) associated with its access network communication interface 311. Each of the plurality of user devices 320 may be identified by a MAC address of a NIC associated with its corresponding communication interface 321. Each of the plurality of repeaters 330 may be identified by a MAC address of a NIC associated with its corresponding communication interface 331.
[0032] like Figure 1 As shown, the first user device 320a is directly connected to the CPE 310 (i.e., the connection does not pass through one or more repeaters in the plurality of repeaters 330), the second user device 320b is indirectly connected to the CPE 310 via a first repeater 330a in a first group of repeaters in the plurality of repeaters 330 (i.e., it has a single-hop connection to the CPE 310), the third user device 320c is indirectly connected to the CPE 310 via a second repeater 330b in a second group of repeaters in the plurality of repeaters 330 (similarly, it has a single-hop connection to the CPE 310), and the fourth user device 320d is indirectly connected to the CPE 310 via a third repeater 330c in a second group of repeaters in the plurality of repeaters 330 and a fourth repeater 330d in a second group of repeaters in the plurality of repeaters 330 (i.e., it has a multi-hop connection to the CPE 310).
[0033] In the following description, the term "first-hop repeater" is used to identify a repeater between a CPE and a user device directly connected to the user device. In a single-hop connection scenario of a second user device 320b, the first repeater 330a is a first-hop repeater. Similarly, in a single-hop connection scenario of a third user device 320c, the second repeater 330b is a first-hop repeater. In a multi-hop connection scenario of a fourth user device 320d, the fourth repeater 330d is a first-hop repeater (i.e., the third repeater 330c is not a first-hop repeater).
[0034] In addition, in the following description, the term "root repeater" is used to identify a repeater between the CPE 310 and the user equipment 320 directly connected to the CPE 310. In a single-hop connection scenario of the second user equipment 320b, the first repeater 330a is a root repeater. Similarly, in a single-hop connection scenario of the third user equipment 320c, the second repeater 330b is a root repeater. In a multi-hop connection scenario of the fourth user equipment 320d, the third repeater 330c is a root repeater (i.e., the fourth repeater 330d is not a root repeater).
[0035] In this embodiment, as a member of the second group of repeaters and as a first-hop repeater (i.e., Figure 1Each of the second repeater 330b and the fourth repeater 330d) is configured to virtualize the MAC address of the user device. The MAC address consists of six octets, the first three octets are called the organizational unique identifier (OUI), and the last three octets are dedicated to the network interface controller (NIC) and are therefore called NIC. The second least significant bit of the most significant octet of the MAC address can use a value of 0 to indicate that it is a globally unique (i.e., "global") MAC address, or a value of 1 to indicate that it is a locally managed (i.e., "local") MAC address. When a repeater virtualizes the MAC address of a user device, the repeater replaces the OUI of the MAC address (i.e., the company identifier of the manufacturer of the user device) with its own OUI (i.e., the company identifier of the manufacturer of the repeater), wherein the second least significant bit of the most significant octet (of its own OUI) is set to 1, so that the second character of the first octet is 2, 6, A, or E (e.g., x2:xx:xx:xx:xx:xx, x6:xx:xx:xx:xx:xx:xx, xA:xx:xx:xx:xx:xx:xx, xE:xx:xx:xx:xx:xx:xx).
[0036] Note that some user devices may already use a local MAC address, such as when those user devices use MAC randomization. In this case, the repeater can still virtualize the MAC address by replacing the OUI portion of the MAC address with its own OUI, where the second least significant bit of the most significant octet is set to 1, so that the second character of the first octet is 2, 6, A, or E.
[0037] In addition, each repeater that is a member of the first set of multiple repeaters (e.g., the first repeater 330a) and / or is a member of the second set of multiple repeaters but is not a first-hop repeater (e.g., Figure 1 The third repeater 330c in the embodiment is not configured to virtualize the MAC address of the user device. In other words, the repeaters of the second set of multiple repeaters are configured to virtualize the MAC address of the directly connected user device, but are not configured to virtualize the MAC address of the directly connected access point (e.g., another repeater).
[0038] The operator network 200 includes an access network communication node 210 and a network management system (NMS) 220. The access network communication node 210 enables the NMS 220 (and any other node of the operator network, or any node in an external network connected to the operator network) to communicate with the CPE 310 via an access connection 400. The NMS 220 includes a communication interface 221, a processor 223, and a memory 225.
[0039] Now refer to Figures 2 to 5A first embodiment of the method of the present invention is described. Figure 2 shows the steps performed by the processing and storage modules 313 and 315 of the CPE 310, and Figures 3 to 5 The steps performed by the processing and storage modules 223 and 225 of the NMS 220 are shown.
[0040] In the first step (S101) of the first process, the processor 313 of the CPE implements a first diagnostic function to collect data on each of the plurality of devices 320. The data is collected periodically, and the periodicity can be remotely configured by the network operator (the periodicity can be in the range from one hundred milliseconds to every ten seconds). Each record in the data includes the MAC address of the user device, a timestamp indicating the time when the CPE 310 collects the data, the host name of the user device, the wireless local area network (WLAN) channel identifier of the channel used by the user device, and parameters of the user device. These parameters include received signal strength indication (RSSI), downlink physical layer (PHY) rate, uplink PHY rate, downlink packet counter value, uplink packet counter value, and retransmission counter value.
[0041] The data collected in the first process is referred to as detailed diagnostic data hereinafter. The detailed diagnostic data is stored in the memory 315 of the CPE.
[0042] In step S103, the processor 313 of the CPE performs a compression function to convert the detailed diagnostic data into summary diagnostic data. The detailed diagnostic data is periodically converted into summary diagnostic data, and the periodicity can be remotely configured by the network operator (the periodicity can be in the range of 1 minute to 10 minutes). The conversion can be achieved by applying one or more statistical functions to the detailed diagnostic data, such as the sum, average, maximum or minimum value of each parameter of the user equipment. The summary diagnostic data is also stored in the memory 315 of the CPE.
[0043] In step S105, the CPE processor 313 performs a second diagnostic function to collect data on neighboring CPEs (i.e., any other CPEs from which the CPE 310 receives communication signals). The second diagnostic function also collects data on each repeater in the customer's network 300. Each record in the data includes a timestamp indicating the time when the CPE 310 collected the data for the neighboring CPE / repeater, the MAC address of the neighboring CPE / repeater (i.e., the basic service set identifier BSSID), the advertising service set identifier (SSID) of the neighboring CPE / repeater, the WLAN channel identifier of the channel used when the CPE 310 detected the neighboring CPE / repeater, and the RSSI of the signal transmitted by the neighboring CPE / repeater and received at the CPE 310.
[0044] The data collected in the second process is hereinafter referred to as neighborhood scan data.
[0045] In step S107, the CPE sends the aggregated diagnostic data and neighbor scan data to the NMS (ie, via access connection 400). The data may then be deleted from memory 315 in CPE 310. Figure 3 In step S201, NMS 220 receives and stores the aggregated diagnostic data and neighbor scan data in memory 225. Steps S101 to S105 and step S201 are performed periodically so that NMS 220 collects additional records and adds them to the aggregated diagnostic data and neighbor scan data already stored in memory 225. The aggregated diagnostic data and neighbor scan data may include data for multiple days.
[0046] NMS 220 can receive aggregated diagnostic data and neighbor scan data from multiple CPEs. These data can be stored in the same database by adding an additional identifier of the CPE (e.g., the serial number of the CPE) to each record associated with the CPE.
[0047] exist Figure 3 In step S203, the NMS processor 223 processes the aggregated diagnostic data of the specific CPE to generate a device identifier for each record in the aggregated diagnostic data, the device identifier uniquely identifying the user device associated with the data. Figure 4 Describe this step in detail.
[0048] exist Figure 3 In step S205, the NMS processor 223 processes the summary diagnostic data for the specific CPE and the neighbor scan data for the specific CPE to generate an identifier for the first hop repeater (i.e., the only repeater in the single-hop repeater scenario or the repeater to which the user equipment is directly connected in the multi-hop repeater scenario) and an identifier for the root repeater (i.e., the only repeater in the single-hop repeater scenario or the repeater to which the CPE is directly connected in the multi-hop repeater scenario). Figure 5 Describe this step in detail.
[0049] Figure 4 The process of generating a device identifier is shown in more detail. In step S301, the NMS processor 223 processes the aggregated diagnostic data by filtering it for the serial number of the CPE 310 and retrieving the serial number, timestamp, MAC address, and host name fields to create a first "data" table for the CPE 310. The timestamp field indicates the time when the CPE 310 collected the data. Table 1 below shows exemplary data for the data table.
[0050] Record# Serial Number Timestamp Host Name MAC Address 1 a_home_sn 2020-12-08 18:49:12 JD-abfdslgj OUI_3:NIC_Y 2 a_home_sn 2020-12-08 18:49:12 JD-abfdslgj OUI_2:NIC_Y 3 a_home_sn 2020-12-08 18:49:12 TL-adflf OUI_4:NIC_Z 4 a_home_sn 2020-12-08 18:53:02 NULL OUI_2:NIC_Z 5 a_home_sn 2020-12-08 18:53:02 TL-adflf OUI_4:NIC_Z 6 a_home_sn 2020-12-08 18:57:02 NULL OUI_2:NIC_Z 7 a_home_sn 2020-12-08 18:57:02 TL-adflf OUI_4:NIC_Z 8 a_home_sn 2020-12-08 19:01:06 NULL OUI_2:NIC_Z 9 a_home_sn 2020-12-08 19:01:06 TL-adflf OUI_4:NIC_Z 10 a_home_sn 2020-12-08 19:05:35 NULL OUI_2:NIC_Z 11 a_home_sn 2020-12-08 19:05:35 TL-adflf OUI_4:NIC_Z 12 a_home_sn 2020-12-08 19:13:17 TL-adflf OUI_4:NIC_Z 13 a_home_sn 2020-12-08 19:21:33 NULL OUI_2:NIC_Z 14 a_home_sn 2020-12-08 19:37:36 TL-adflf OUI_4:NIC_Z
[0051] Table 1: Table showing exemplary data of a data table
[0052] In step S303, the NMS processor 223 generates the following fields and adds them to each record of the data table:
[0053] The OUI of the MAC address, which is the first three octets of the MAC address of the record;
[0054] The NIC of the MAC address, which is the last three octets of the MAC address for that record; and
[0055] MAC type: if the second character of the OUI of the recorded MAC address is not equal to 2, 6, A, or E, the MAC type is "global", and if the second character of the OUI of the recorded MAC address is equal to 2, 6, A, or E, the MAC type is "local".
[0056] Table 2 below shows exemplary data of the data table after step S303.
[0057]
[0058] Table 2: Table showing data from the data table after step S303
[0059] In step S305, the NMS processor 223 generates a new table (the "counts" table) to store a plurality of counts derived from the data in the data table. In step S307, the NMS processor 223 processes the records in the data table to generate and add a first field ("GLOBAL_OUIS_PER_NIC") that represents the count of unique OUIs with a MAC type of "global" for each NIC in the second table, and adds it to the counts table. This is accomplished by grouping all records in the counts table by the NIC field and determining for each group of records the count of distinct OUIs for records with a MAC type value of "global". For these groups of records, the possible values of the GLOBAL_OUIS_PER_NIC field are 0 or 1 (because a device has at most one global MAC address).
[0060] Applying step S307 to the exemplary data of Table 2, the NMS processor 223 identifies two groups with the following values for GLOBAL_OUIS_PER_NIC:
[0061] Group: NIC = NIC_Y; GLOBAL_OUIS_PER_NIC: 1
[0062] Group: NIC=NIC_Z; GLOBAL_OUIS_PER_NIC: 0.
[0063] In step S309, the NMS processor 223 processes the records in the data table to generate and add a second new field ("NICS_PER_HOSTNAME"), which represents the count of unique NICs for each host name in the count table. This is achieved by grouping all records in the data table by the host name field and determining the count of different NICs for each group of records.
[0064] Applying step S309 to the exemplary data of Table 2, the NMS processor 223 identifies two unique host names (NULL host names are not processed) and determines the following values for NICS_PER_HOSTNAME:
[0065] Host name: JD-abfdslgj; NICS_PER_HOSTNAME: 1
[0066] Host name: TL-adflf; NICS_PER_HOSTNAME: 1
[0067] In step S311, the NMS processor 223 processes the records in the data table to generate and add a third new field ("LATEST_MAC_ADDRESS"), which represents the most recent MAC address for any record in which the value of the NICS_PER_HOSTNAME field is equal to 1, and adds it to the count table. This is done by grouping all records in the count table by NIC and NICS_PER_HOSTNAME fields, and for each group of records in which the value of the NICS_PER_HOSTNAME field is equal to 1, determining the most recent MAC address as:
[0068] If the set of records contains at least one record with a MAC type of "global", then LATEST_MAC_ADDRESS is the MAC address of the record with a MAC type equal to "global" that has the most recent timestamp value;
[0069] If the set of records does not contain any record with a MAC type of "global", then LATEST_MAC_ADDRESS is the MAC address of the record with a MAC type equal to "local" that has the most recent timestamp value.
[0070] In any record in the counter table where NICS_PER_HOSTNAME is not equal to 1, the value of the LATEST_MAC_ADDRESS field is set to "Not Applicable".
[0071] Applying step S311 to the exemplary data of Table 2, the NMS processor 223 identifies two unique combinations of NIC and NICS_PER_HOSTNAME and determines the following values for LATEST_MAC_ADDRESS:
[0072] Group: NIC:NIC_Y,NICS_PER_HOSTNAME:1; LATEST_MAC_ADDRESS:OUI_3:NIC_Y (i.e., the MAC address of the record with the latest timestamp value and MAC type equal to "global")
[0073] Group: NIC:NIC_Z,NICS_PER_HOSTNAME:1; LATEST_MAC_ADDRESS:OUI_4:NIC_Z (i.e., since there is no "global" MAC address using this NIC, LATEST_MAC_ADDRESS is the MAC address of the record with the most recent timestamp value and MAC type equal to "local")
[0074] In step S313, the NMS processor 223 processes the records in the counter table to retain records having unique combinations of host name, NIC, MAC type, NICS_PER_HOSTNAME, GLOBAL_OUIS_PER_NIC, and LATEST_MAC_ADDRESS.
[0075] Table 3 below shows exemplary data of the counting table after step S313:
[0076]
[0077] Table 3: A table showing exemplary data after step S313.
[0078] Then, the NMS processor 223 processes both the data table and the count table to determine the device identifier of each user device. In step S315, the data table is processed to retrain records with unique combinations of MAC address, host name, MAC type, OUI, and NIC. Table 4 below shows exemplary data of the data table after step S315:
[0079] Record# Host Name MAC Address OUI NIC MAC Type 1 JD-abfdslgj OUI_3:NIC_Y OUI_3 NIC_Y Global 2 JD-abfdslgj OUI_2:NIC_Y OUI_2 NIC_Y local 3 TL-adflf OUI_4:NIC_Z OUI_4 NIC_Z local 4 NULL OUI_2:NIC_Z OUI_2 NIC_Z local
[0080] Table 4: Table showing exemplary data after step S315
[0081] Each record of the data table is then iteratively processed to generate a device identifier for the record and add it to the data table. Starting from the first record of the data table, at step S317, the NMS processor 223 processes the first record of the data table to determine whether the MAC type of the first record of the data table is equal to "global". If so, the device identifier of the first record of the data table is set to the value of the MAC address field of the first record of the data table. If not, the NMS processor 223 proceeds to step S319.
[0082] In step S319, the NMS processor 223 processes the counter table to identify a record of the counter table having both the value of the NIC field of the first record of the data table and the MAC type field equal to "global". If a record is found in the counter table, the device identifier of the first record of the data table is set to the value of the LATEST_MAC_ADDRESS associated with the record identified in the counter table. If no record is found in the counter table, the NMS processor 223 proceeds to step S321.
[0083] In step S321, the NMS processor 223 processes the counter table to identify a record of the counter table having a value of the NIC field of the first record of the data table, a MAC type field equal to "local", and a value of the NICS_PER_HOSTNAME field equal to 1. If a record is found in the counter table, the device identifier of the first record of the data table is set to the value of the LATEST_MAC_ADDRESS associated with the record identified in the counter table. If a record is not found in the counter table, the device identifier of the first record of the data table is set to NULL.
[0084] Then, the NMS processor 223 loops back to step S317 to process the second row in the data table. This iterative process continues until all records in the data table are processed, generating a device identifier for each record in the data table.
[0085] Applying the iterative loop of steps S317 to S321 to the data of Table 4, the NMS processor 223 determines that the first record of the data table satisfies the condition of step S317 (i.e., the MAC type of the first record is equal to "global"), and the device identifier of the first record is therefore set to the value OUI_3:NIC_Y of the MAC address field of the first record. Then, the NMS processor 223 processes the second record of the data table and determines that the second record does not satisfy the condition of step S317, but satisfies the condition of step S319 (i.e., record 1 of the counter table shown in Table 3 has a matching NIC value and has MAC type = "global"), and therefore sets the device identifier to the value OUI_3:NIC_Y of the LATEST_MAC_ADDRESS field of record 1 of the counter table. Then, the NMS processor 223 processes the third record of the data table and determines that the third record does not satisfy the conditions of steps S317 and S319, but satisfies the condition of step S321 (i.e., record 3 of the counter table shown in Table 3 has a matching NIC value, has MAC type = "local", and the value of NICS_PER_HOSTNAME is equal to 1), and the device identifier is therefore set to the value of LATEST_MAC_ADDRESS of record 3 of the counter table OUI_4:NIC_Z. Then, the NMS processor 223 processes the fourth record of the data table and determines that the fourth record does not satisfy the conditions of steps S317 and S319, but satisfies the condition of step S321 (i.e., record 3 of the counter table shown in Table 3 has a matching NIC value, has MAC type = "local", and the value of NICS_PER_HOSTNAME is equal to 1), and the device identifier is therefore set to the value of LATEST_MAC_ADDRESS of record 3 of the counter table OUI_4:NIC_Z.
[0086] Table 5 below shows exemplary data following these iterative steps:
[0087]
[0088] Table 5: Table showing exemplary data after iterating steps S317 to S321
[0089] These device identifiers can then be used by the NMS processor 223 to identify all records in the aggregated diagnostic data associated with the same device by performing a lookup on the MAC address of each record in the aggregated diagnostic data to retrieve the corresponding device identifier associated with the MAC address in the data table. The aggregated diagnostic data can then be grouped according to the device identifier to identify all records associated with the same device. Therefore, the first process of the present invention enables all records associated with the same user device to be identified in the aggregated diagnostic data even when the MAC addresses of these records are not the same due to the virtualization of the MAC address by the repeater 330. For example, all records using OUI_3:NIC_Y or OUI_2:NIC_Y as their MAC address can be grouped together according to the unique device identifier OUI_3:NIC_Y (following the lookup of rows 1 and 2 of Table 5), and all records using OUI_4:NIC_Z or OUI_2:NIC_Z as their MAC address can be grouped together according to the unique device identifier OUI_4:NIC_Z (following the lookup of rows 3 and 4 of Table 5).
[0090] The NMS processor 223 can then process these records with the public device identifier to determine one or more key performance indicators, such as the total time spent by the user device using the WLAN connection. In the case where the user device is directly connected to the CPE 310 during the first time period and indirectly connected to the CPE 310 via the second repeater 330b during the second time period, the NMS processor 223 identifies the records for both time periods as having a public device identifier and therefore calculates the total time spent as the sum of the duration of the first time period and the second time period. In contrast, if the original MAC address of the user device is used to calculate the total time spent (and the second repeater 220b virtualizes the MAC address during the second time period), the NMS processor 223 will incorrectly identify a first user device having a total time spent value equal to the duration of the first time period and a second user device having a total time spent value equal to the duration of the second time period. By correctly evaluating the total time spent connected via the WLAN connection, the user device can be given a higher priority when troubleshooting or diagnosing the WLAN.
[0091] In step S323, the NMS processor 223 identifies one or more configurations of the network by analyzing the records in the data table grouped by unique device identifiers. These reconfigurations can be, for example, updating the quality of service (QoS) parameters of the most active device group (i.e., those with the largest "total active time" value), and / or updating the steering policy of the most active device group.
[0092] In the first process described above, the NMS processor 223 identifies the unique device identifier of each user device by determining whether a) the MAC address is a "global" MAC address, b) the MAC address is a "local" MAC address but there is a "global" MAC address with the same NIC value, or c) the MAC address is a "local" MAC address but its NIC value is a unique NIC value associated with a specific non-empty host name.
[0093] The first condition (i.e., the MAC address is a "global" MAC address) enables the user device to be uniquely identified because it indicates that the MAC address of the user device is globally unique and has not been virtualized. The first condition also indicates that the user device is directly connected to the CPE 310, or is only indirectly connected via one or more repeaters in the first set of multiple repeaters 330 (which are not configured to modify the MAC address of the user device), and is therefore not connected via one or more repeaters in the second set of multiple repeaters 330. The second condition (the MAC address is a "local" MAC address but there is a "global" MAC address with the same NIC value) enables the user device to be uniquely identified when the NIC value does not change during the virtualization process, so that the user device uses the "global" MAC address when directly connected to the CPE 310 or indirectly connected to the CPE 310 via one or more repeaters of the first set of multiple repeaters 330, but uses the "local" MAC address when indirectly connected to the CPE 310 via one or more repeaters of the second set of multiple repeaters 330, wherein the OUI portion of these "global" MAC addresses and the "local" MAC addresses are different, but the NIC portion of these "global" MAC addresses and the "local" MAC addresses are the same. Therefore, if there is a matching "global" MAC address with the same NIC value, this can be used to uniquely identify the user device. The third condition (the MAC address is a "local" MAC address but its NIC value is a unique NIC value associated with a specific host name) enables the user device to be uniquely identified because the host name is sufficiently unique and there is a unique association between the NIC value and the host name.
[0094] Those skilled in the art will appreciate that the NMS processor 223 may implement the above three conditions in any combination including at least one of the second condition and the third condition (including one of the three conditions, two of the three conditions, or all three conditions) and in any order. Applying all three conditions gives the greatest chance of uniquely identifying the user device.
[0095] Those skilled in the art will appreciate that the first process may be applied when the user device is identified by another form of persistent device label, such as a server name or a fully qualified domain name.
[0096] Figure 5 The steps of generating an identifier for a first-hop repeater (i.e., the only repeater in a single-hop repeater scenario or the repeater to which a user equipment is directly connected in a multi-hop repeater scenario) and an identifier for a root repeater (i.e., the only repeater in a single-hop repeater scenario or the repeater to which a CPE is directly connected in a multi-hop repeater scenario) are shown in more detail.
[0097] In step S401, the NMS processor 223 processes the aggregated diagnostic data to create a first "data" table for the CPE 310 by filtering the aggregated diagnostic data for the serial number of the CPE 310 and retrieving the MAC address, channel, timestamp, and RSSI fields. The channel field is an identifier of the WLAN channel used by the user device, and the timestamp field indicates the time when the CPE 310 collected the data. Based on the channel field value, the channel field is converted to a band field "user device band", which is one of "2.4GHz" or "5GHz". The term "user device band" is used to distinguish it from the band field obtained from the neighbor scan data. However, as described above, when the repeater is one of the second set of multiple repeaters, the aggregated diagnostic data can actually be related to the repeater.
[0098] In step S403, the NMS processor 223 processes the records of the data table to generate and add a first new field (final weighted RSSI) representing the weighted RSSI for each unique combination of MAC address and user equipment frequency band. This is achieved in the following manner:
[0099] 1. Group the records by MAC address, user device frequency band, and RSSI, and determine a count of different timestamp field values for each group;
[0100] 2. Group the records by MAC address and user device band and determine a count of different timestamp field values for each group;
[0101] 3. Determine the weighted RSSI for each combination of MAC address and user device frequency band by dividing the count of step 1 for that group by the count of step 2 for that group, and
[0102] 4. Group the records by MAC address and user device frequency band, and determine the final weighted RSSI for each unique combination of MAC address and user device frequency band as the sum of the weighted RSSI value determined in step 3 multiplied by the corresponding RSSI value for the group.
[0103] In step S405, the NMS processor 223 processes the records of the data table to generate and add three new fields (minimum RSSI, maximum RSSI and average RSSI). These are generated by grouping the records of the data table by MAC address and user device frequency band and applying appropriate minimum, maximum and average functions to the RSSI field values in each group (although any form of average function may be applied instead of the median function).
[0104] In step S407, the NMS processor 223 processes the record of the data table to generate and add another new field MAC type. If the second character of the OUI of the MAC address of the record is not equal to 2, 6, A or E, the MAC type is "global"; if the second character of the OUI of the MAC address of the record is equal to 2, 6, A or E, the MAC type is "local".
[0105] In step S409, the NMS processor 223 generates another table, namely the all-client table, based on the data table processed in step S407. The all-client table includes a list of all unique combinations of MAC addresses, user equipment bands, and MAC types in the data table. The all-client table is used later in this second process.
[0106] In step S411, the NMS processor 223 screens the data table according to the MAC type field to retain records with a "local" MAC type.
[0107] An example of a data table after step S411 is shown in Table 6 below:
[0108]
[0109] Table 6: Table showing example data of the data table after step S411
[0110] In step S413, the NMS processor 223 processes the neighbor scan data by retrieving the neighbor BSSID, neighbor SSID, neighbor channel, and neighbor RSSI fields to create a "Neighbor Scan Data" table. Based on the neighbor channel field value, the neighbor channel field is converted to a neighbor band field of one of "2.4GHz" or "5GHz". The NMS processor 223 then processes the neighbor scan data table, generating and adding a new field, namely the average neighbor RSSI, for each combination of neighbor BSSID and neighbor band. This is achieved by grouping all records in the neighbor scan data table by neighbor BSSID and neighbor band and applying an averaging function to all RSSI values in the group (although any form of averaging function may be used instead).
[0111] In step S415, the NMS processor 223 processes both the data table and the neighbor scan data table to create a new table, i.e., a matching neighbor BSSID table, which associates each unique MAC address in the data table with zero, one, or more neighbor BSSIDs of the neighbor scan data table that are sufficient to match the unique MAC address. This is achieved by identifying each unique MAC address in the data table, and for each unique MAC address, determining the bit difference between the OUI of the MAC address and the OUI of each neighbor BSSID. The bit difference is determined by converting the OUI of the MAC address to a 24-bit binary value, converting the OUI of the neighbor BSSID to a 24-bit binary value, and applying an appropriate bit difference calculation function (e.g., an XOR gate operator) to the converted OUI value. If the bit difference is less than or equal to the threshold, the MAC address and the neighbor BSSID are considered to be fully matched. In this embodiment, the bit difference threshold is set to 5 (although a threshold of 6 is also possible).
[0112] An example of a matching neighbor BSSID table is shown in Table 7, where MAC13 matches MAC16, MAC17, MAC18, MAC19, and MAC20:
[0113]
[0114] Table 7: Table showing data of the matching neighbor BSSID table after step S415
[0115] Once a list of matching neighbor SSIDs is identified for each unique MAC address, in step S417, the NMS processor 223 concatenates the matching neighbor BSSID table and the data table for the MAC address and user device band fields. In other words, for each combination of MAC address and user device band, the final weighted RSSI, minimum RSSI, maximum RSSI, average RSSI, and MAC type fields from the data table are added to the matching neighbor BSSID table.
[0116] In step S419, the NMS processor 223 processes the records of the matching neighbor BSSID table to generate and add four new fields: distance to the final weighted RSSI, distance to the minimum RSSI, distance to the maximum RSSI, and distance to the average RSSI. These are generated by subtracting the average neighbor RSSI field value of each record from the final weighted RSSI, minimum RSSI, maximum RSSI, and average RSSI field values of each record.
[0117] In step S421, the NMS processor 223 generates a new field (minimum distance) and adds it to the matching neighbor BSSID table. The value of the new field is equal to the minimum value of the four fields generated in step S419 (i.e., the distance to the final weighted RSSI, the distance to the minimum RSSI, the distance to the maximum RSSI, and the distance to the average RSSI field).
[0118] Table 8 below shows exemplary data after step S421:
[0119]
[0120] Table 8: Table showing the matching neighbor BSSID table after step S421
[0121] In step S423, the NMS processor 223 generates a first hop repeater identifier field for each MAC address and adds it to the matching neighbor BSSID table. This is achieved by grouping all records in the matching neighbor BSSID table by MAC address, and:
[0122] Identify one or more records in the group whose Neighbor Band field value is equal to the User Equipment Band field value of the record. For the record in the one or more records having the smallest value of the Minimum Distance field that satisfies the minimum distance threshold, the value of the First Hop Repeater Identifier field is set to the value of the Neighbor BSSID field. If there are no records in the group (i.e., there are no such records whose Neighbor Band field value is equal to the User Equipment Band field value of the record; or there are one or more such records but the Minimum Distance field value of the one or more records does not satisfy the minimum distance threshold), then
[0123] Identify one or more records in the group whose Neighbor Band field value is not equal to the User Equipment Band field value of the record. For the record in the one or more records having the smallest value of the Minimum Distance field that satisfies the minimum distance threshold, the value of the First Hop Repeater Identifier field is set to the value of the Neighbor BSSID field. If no record exists in the Matching Neighbor BSSID table (i.e., there is no such record whose Neighbor Band field value is not equal to the User Equipment Band field value of the record; or one or more such records exist but the Minimum Distance field value of the one or more records does not satisfy the minimum distance threshold), then
[0124] The first hop repeater identifier is set to NULL.
[0125] In this embodiment, the minimum distance threshold is set to 10 (although the threshold may be in the range of 8 to 12).
[0126] Applying step S421 to the above example, the NMS processor 223 identifies a group of records in which the MAC address field value is MAC13, determines that there are five records in the group, wherein for each record, the neighbor band field value is equal to the user equipment band field (i.e., record 5 of Table 8, in which the user equipment band field value is 2.4 GHz and the neighbor band field value is 2.4 GHz, and records 6 to 9 of Table 8, in which the user equipment band field value is 5 GHz and the neighbor band field value is 5 GHz), and the neighbor BSSID field value of the record with the smallest minimum distance that meets the minimum distance threshold within the five records (i.e., record 6 of Table 8) is MAC16. For each record in the group of records, the first hop repeater identifier is set to MAC16.
[0127] Table 9 below shows exemplary data of the matching neighbor BSSID table after step S421.
[0128]
[0129] Table 9: Table showing exemplary data of the matching neighbor BSSID table after step S421
[0130] In step S423, the NMS processor 223 joins the all client tables (generated in the above step S409) and the matching neighbor BSSID table according to the MAC address and user device band fields. This is performed as an outer join, so all records from all client tables are retained and joined with the fields of the matching neighbor BSSID table.
[0131] In step S425 , for all records whose MAC type field value of all client tables is “global”, the NMS processor 223 sets the first hop relay identifier to a NULL value.
[0132] The above steps S401 to S425 enable the NMS to identify the first-hop repeater associated with each user device in the network. This is achieved by analyzing the summary diagnostic data table (where the MAC address of the user device is virtualized to use the OUI of the repeater) and the neighbor scan data (which identifies the BSSID of each repeater). First, a set of candidate repeaters is identified by matching the OUI of the MAC address from the summary diagnostic data (virtualized to include the OUI of the repeater) with the OUI of the BSSID of the neighbor scan data. Next, another characteristic of the repeater (which replaces the RSSI value of the user device with its own RSSI value) is utilized to identify one of these candidates as the first-hop repeater by identifying the BSSID with the smallest difference in RSSI value with the RSSI value of the corresponding MAC address in the summary diagnostic data.
[0133] In the above embodiment, a single value of RSSI (average RSSI) is generated for the neighbor scan data, and multiple values of RSSI (minimum RSSI, maximum RSSI, and average RSSI) are generated for the summary diagnostic data. This is because the summary diagnostic data has relatively more records than the neighbor scan data, so it is more accurate to compare the single value of the neighbor scan RSSI with the range of values of the summary diagnostic data RSSI.
[0134] In step S427, the NMS processor 223 determines the root repeater identifier for each record in the all client tables. This is determined as:
[0135] If the first-hop repeater identifier is NULL and the value of the MAC type field is "global", then the root repeater identifier is set to the MAC address of the CPE 310;
[0136] If the first-hop repeater identifier is NULL and the value of the MAC type field is "local", then the root repeater identifier is set to NULL;
[0137] If the first-hop repeater identifier is not NULL, the root repeater identifier is determined by:
[0138] ο Group all records by the value of the neighbor SSID field,
[0139] o For each group, identify the record with the highest value for the Average Neighbor RSSI field, and
[0140] o Set the root repeater identifier to the value of the First Hop Repeater Identifier field of the identified record.
[0141] In the above embodiment, the Neighbor SSID field is used to group records because in most home networks using multiple repeaters (such as when using a mesh WLAN), the repeaters will use the same SSID but different BSSIDs.
[0142] In step S429, the NMS processor 223 screens all client tables to retain all unique combinations of MAC address, user device frequency band, first hop repeater identifier, and root repeater identifier. The NMS processor 223 can then process these records of all client tables as part of the diagnostic process, such as:
[0143] Improved CPE / repeater coverage map of the customer network. That is, without first-hop repeater identifiers and root repeater identifiers, it would be impossible to identify coverage holes and bandwidth bottlenecks caused by repeaters in the customer network. By correlating aggregate diagnostic data with all client tables, any repeaters causing such coverage holes and bandwidth bottlenecks can be identified; and
[0144] • Improved accuracy of the estimation of bandwidth reduction for a user equipment when the user equipment is connected by one or more repeaters.
[0145] In response, the operator may initiate a new configuration in the network. This may include replacing one or more relays of the second set of multiple relays (modifying the MAC address of the user device) with a relay of the first set of multiple relays (not modifying the MAC address of the user device).
[0146] In the second process, the matching BSSID is determined by evaluating the bit difference between the OUI of the MAC address and the OUI of the BSSID. However, the similarity between the OUI of the MAC address and the OUI of the BSSID can be determined in other ways, such as by the sum of the numerical differences between the three octets of the OUI.
[0147] Figure 6 The present invention provides a flowchart for further demonstrating the first process of the first embodiment of the present invention, and the first process includes the following steps: obtaining (S501) data including multiple records, wherein each record in the multiple records relates to the user device and includes a MAC address; analyzing (S503) each record in the multiple records by: determining that the MAC address of the analyzed record is a local MAC address; identifying another record in the multiple records that is uniquely associated with the user device based on the MAC address of the analyzed record; and assigning a unique identifier to the user device based on the MAC address of another record identified in the multiple records; and causing (S505) reconfiguration in the wireless local area network based on the unique device identifier.
[0148] Figure 7is a flowchart providing further explanation of the second process of the first embodiment of the present invention, the second process comprising the following steps: obtaining (S601) data including a first plurality of records, wherein each record in the first plurality of records is associated with a user device and comprises a MAC address and a signal strength value; obtaining (S603) data including a second plurality of records, wherein each record in the second plurality of records comprises a basic service set identifier BSSID and a signal strength value; for each MAC address in the first plurality of records: identifying (S605) a record in the second plurality of records having a BSSID that sufficiently matches the MAC address, determining that a difference between a signal strength value associated with the identified record in the second plurality of records and a signal strength value associated with the MAC address of the first plurality of records is within a threshold, assigning a first hop repeater identifier to each record in the first plurality of records having the MAC address based on the BSSID of the identified record in the second plurality of records; and causing (S607) reconfiguration in the wireless local area network based on the first hop repeater identifier.
[0149] Those skilled in the art will appreciate that it is not necessary for the implementation of the above method to be performed in the NMS. These implementations may be performed in any other network node, including a node of a network operator's network, a network node of an external network, or in a local network (including at a CPE).
[0150] A person skilled in the art will appreciate that any combination of features is possible within the scope of the claimed invention.
Claims
1. A method for operating a wireless local area network, the wireless local area network comprising a user device, a wireless access point and a wireless repeater, wherein: The wireless repeater is configured to virtualize a media access control MAC address of the user equipment when the user equipment is connected to the wireless repeater, and the method comprises the following steps: obtaining data comprising a first plurality of records, wherein each record in the first plurality of records is associated with the user equipment and comprises a MAC address and a signal strength value; obtaining data comprising a second plurality of records, wherein each record in the second plurality of records comprises a basic service set identifier (BSSID) and a signal strength value; For each MAC address in the first plurality of records: identifying a record in the second plurality of records having a BSSID that substantially matches the MAC address by determining a similarity between an organizationally unique identifier (OUI) of the BSSID and an OUI of the MAC address, determining that a difference between a signal strength value associated with an identified record in the second plurality of records and a signal strength value associated with the MAC address of the first plurality of records is within a threshold, assigning a first hop repeater identifier to each record in the first plurality of records having the MAC address based on a BSSID of an identified record in the second plurality of records; and A reconfiguration is caused in the wireless local area network based on the first hop repeater identifier.
2. The method according to claim 1, wherein: The similarity between the OUI of the BSSID and the OUI of the MAC address is based on a bit difference between a binary value of the OUI of the BSSID and a binary value of the OUI of the MAC address.
3. The method according to any one of the preceding claims, further comprising the steps of: The signal strength value associated with the identified record in the second plurality of records is determined as an average of the signal strength values of all records in the second plurality of records having the BSSID.
4. The method according to any one of the preceding claims, further comprising the steps of: determining a minimum difference between a signal strength value associated with an identified record in the second plurality of records and at least two of the group consisting of: based on a weighted signal strength value of all signal strength values of all records having the MAC address in the first plurality of records, Based on the minimum signal strength value of all signal strength values of all records having the MAC address in the first plurality of records, a maximum signal strength value based on all signal strength values of all records having the MAC address in the first plurality of records, and Based on the average signal strength value of all signal strength values of all records having the MAC address in the first plurality of records, Wherein, the step of determining that the difference between the signal strength value associated with the record identified in the second plurality of records and the signal strength value associated with the MAC address of the first plurality of records is within a threshold includes: determining that the minimum difference between the signal strength value associated with the record identified in the second plurality of records and the signal strength value associated with the MAC address of the first plurality of records is within the threshold.
5. The method according to any one of claims 1 to 3, wherein: The step of identifying a record in the second plurality of records having a BSSID that substantially matches the MAC address comprises: identifying a first set of BSSIDs in the second plurality of records that substantially matches the MAC address, and the method further comprises the steps of: determining, for each record in the first set of the second plurality of records, a difference between a signal strength value associated with the record in the first set of the second plurality of records and a signal strength value associated with the MAC address of the first plurality of records; and identifying a record in said first set of said second plurality of records having a minimum difference value, wherein the step of determining that a difference between a signal strength value associated with an identified record in the second plurality of records and a signal strength value associated with the MAC address of the first plurality of records is within a threshold comprises: determining that the minimum difference between a signal strength value associated with an identified record in the first set of the second plurality of records and a signal strength value associated with the MAC address of the first plurality of records is within the threshold, Wherein, the first-hop repeater identifier is based on a BSSID of an identified record in the first set of the second plurality of records.
6. The method according to claim 5, wherein: The step of determining, for each record in the first set of the second plurality of records, a difference between a signal strength value associated with the record in the first set of the second plurality of records and a signal strength value associated with the MAC address of the first plurality of records comprises: determining, for each record in the first set of the second plurality of records, a minimum difference between a signal strength value associated with the record in the second plurality of records and at least two of the group consisting of: based on a weighted signal strength value of all signal strength values of all records having the MAC address in the first plurality of records, Based on the minimum signal strength value of all signal strength values of all records having the MAC address in the first plurality of records, a maximum signal strength value based on all signal strength values of all records having the MAC address in the first plurality of records, and Based on the average signal strength value of all signal strength values of all records having the MAC address in the first plurality of records, The step of identifying the record having the minimum difference value in the first set of the second plurality of records includes: identifying the record having the minimum difference value in the first set of the second plurality of records.
7. The method according to claim 5 or claim 6, wherein: Each record in the first plurality of records includes a wireless local area network frequency band, and each record in the second plurality of records includes a wireless local area network frequency band, the step of assigning the first hop repeater identifier to each record in the first plurality of records having the MAC address comprises: assigning the first hop repeater identifier to each record in the first plurality of records having the MAC address and the wireless local area network frequency band, and the step of identifying the record in the first set of the second plurality of records having the minimum difference comprises: A record in the first set of the second plurality of records having a wireless local area network frequency band that matches a wireless local area network frequency band of each record in the first plurality of records and having the minimum difference value is identified.
8. The method according to claim 5 or claim 6, wherein: Each record in the first plurality of records includes a wireless local area network frequency band, and each record in the second plurality of records includes a wireless local area network frequency band, the step of assigning the first hop repeater identifier to each record in the first plurality of records having the MAC address comprises: assigning the first hop repeater identifier to each record in the first plurality of records having the MAC address and the wireless local area network frequency band, and the step of identifying the first set of the second plurality of records having the minimum difference comprises: determining that no record in the first set of the second plurality of records has a wireless local area network frequency band that matches a wireless local area network frequency band of each record in the first plurality of records, and A record in the first set of the second plurality of records having a wireless local area network frequency band that does not match a wireless local area network frequency band of each record in the first plurality of records and having the minimum difference value is identified.
9. A method according to claim 4 or claim 6, or any one of claims 7 and 8 when dependent on claim 4, wherein Each record in the first plurality of records also includes a timestamp, and the weighted signal strength value is determined as the sum of each signal strength value multiplied by a weight factor for all records in the first plurality of records having the MAC address, wherein the weight factor is determined as a count of unique timestamp values in a first group of records in the first plurality of records having the MAC address and signal strength value divided by a count of unique timestamp values in a second group of records in the first plurality of records having the MAC address.
10. The method according to any one of the preceding claims, further comprising the steps of: A root repeater identifier is assigned to each record in the first plurality of records having the MAC address based on an SSID associated with the BSSID of the identified record in the second plurality of records.
11. The method according to claim 10, further comprising the steps of: determining that a single SSID in the second plurality of records is associated with a BSSID of an identified record in the second plurality of records, Wherein assigning the root repeater identifier to each record in the first plurality of records having the MAC address is based on a BSSID of an identified record in the second plurality of records.
12. The method according to claim 10, further comprising the steps of: determining that a second set of the second plurality of records each includes an SSID associated with the BSSID of the identified record in the second plurality of records; identifying a record in said second set of said second plurality of records having a maximum signal strength value, Wherein, assigning the root repeater identifier to each record in the first plurality of records having the MAC address is based on a BSSID of an identified record in the second set of the second plurality of records.
13. A computer program comprising instructions which, when executed by a computer, cause the computer to perform the steps according to any one of claims 1 to 12.
14. A computer readable carrier medium comprising a computer program according to claim 13.
15. A data processing device comprising a processor adapted to perform the steps of the method according to any one of claims 1 to 12.
Citation Information
Patent Citations
Relay method of device and repeater
CN106060878A
Physical layer repeater with roaming support based on multiple identifiers
US20100165910A1
Methods, apparatuses, and devices for mobile device position estimation using virtual access points
US20160131733A1
Virtual Roaming Methods And Apparatus Thereof
US20170347301A1