WO2019145752A1 - Distributed location engine for wireless clients - Google Patents
Distributed location engine for wireless clients Download PDFInfo
- Publication number
- WO2019145752A1 WO2019145752A1 PCT/IB2018/050462 IB2018050462W WO2019145752A1 WO 2019145752 A1 WO2019145752 A1 WO 2019145752A1 IB 2018050462 W IB2018050462 W IB 2018050462W WO 2019145752 A1 WO2019145752 A1 WO 2019145752A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- location
- client
- hash table
- feeds
- feed
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B17/00—Monitoring; Testing
- H04B17/20—Monitoring; Testing of receivers
- H04B17/27—Monitoring; Testing of receivers for locating or positioning the transmitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
- H04W64/003—Locating users or terminals or network equipment for network management purposes, e.g. mobility management locating network equipment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/08—Access point devices
Definitions
- location feeds are sourced from a controller machine managing these access points or from the access points themselves. These location feeds contain information like RSSI(Received Signal Strength Indicator) respectively for different clients(who have their unique mac address or unique labels), mac address of the client, mac address of the Access Point, etc.
- RSSI Receiveived Signal Strength Indicator
- These location feeds or feed objects sourced either from the controller machine managing the access points or the access point to the location engine server are pushed to different queues based on the site(one queue per site) from where the location feed or feed object is coming from, assuming that there is one controller per site in the case of location feeds being sourced from the controller machine.
- each site can be one or more sites handled by the location engine server.
- site implies where the wireless access points are deployed and site may contain buildings, which in turn can have several floors where the access points are deployed.
- each floor has a floor map with their respective dimensions where after computing the location of the client, we can plot the respective location on the user interface taking into account the scale of the map or the ratio of distance on the map to the corresponding distance in real time.
- various worker processes or threads for different queues pick up location feeds or feed objects and push them to a distributed hash table such that the insertion order of location feeds is maintained and the key for the distributed hash table is the client mac address(or unique label for client) and the value is the linked list of the location feeds or feed objects in insertion order.
- a distributed hash table there can be a single distributed hash table if all servers computing the location of the client from the feed object has the access to information of all the sites or we can have several instances of distributed hash table per site if certain set of servers have access to information of a particular site only. While iterating through the entries of the distributed hash table to compute the location of the client, we also consider the timestamp when the first location feed or feed object was pushed for that entry.
- the difference between the current time and timestamp of the entry in the distributed hash table is less than the threshold set for calculating the location of the client then we stop iteration of the subsequent entries of the distributed hash table as for subsequent entries the difference will be even smaller and start again from the first entry of the distributed hash table thereby maintaining insertion order for calculating the location of the client as well.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
In this invention we have a distributed location engine which receives location feeds or feed objects sourced from wireless access points or a controller machine managing those access points, and queues these location feeds in different queues maintained per site. Then various worker processes or threads for different queues pick up location feeds or feed objects push them to a distributed hash table such that the insertion order of location feeds is maintained and the key for the distributed hash table is the client mac address and the value is the linked list of the location feeds or feed objects in insertion order. While iterating through the entries of the distributed hash table to compute the location of the client, we also consider the timestamp when the first location feed or feed object was pushed for that entry.
Description
Distributed Location Engine for wireless clients
In a network of wireless access points, location feeds are sourced from a controller machine managing these access points or from the access points themselves. These location feeds contain information like RSSI(Received Signal Strength Indicator) respectively for different clients(who have their unique mac address or unique labels), mac address of the client, mac address of the Access Point, etc. These location feeds or feed objects sourced either from the controller machine managing the access points or the access point to the location engine server are pushed to different queues based on the site(one queue per site) from where the location feed or feed object is coming from, assuming that there is one controller per site in the case of location feeds being sourced from the controller machine. Here depending upon the rate of arrival of location feeds from different sites and the platform capacity of the location engine server, there can be one or more sites handled by the location engine server. Also here site implies where the wireless access points are deployed and site may contain buildings, which in turn can have several floors where the access points are deployed. Typically each floor has a floor map with their respective dimensions where after computing the location of the client, we can plot the respective location on the user interface taking into account the scale of the map or the ratio of distance on the map to the corresponding distance in real time. Then various worker processes or threads for different queues pick up location feeds or feed objects and push them to a distributed hash table such that the insertion order of location feeds is maintained and the key for the distributed hash table is the client mac address(or unique label for client) and the value is the linked list of the location feeds or feed objects in insertion order. Also there can be a single distributed hash table if all servers computing the location of the client from the feed object has the access to information of all the sites or we can have several instances of distributed hash table per site if certain set of servers have access to information of a particular site only. While iterating through the entries of the distributed hash table to compute the location of the client, we also consider the timestamp when the first location feed or feed object was pushed for that entry. We calculate the difference between current time and the timestamp for that entry and if it is greater than or equal to the threshold set for calculating the location of the client like say 10 seconds then we delete the corresponding entry from the distributed hash table and calculate the location of the client using algorithms like trilateration, triangulation, etc. which might require minimum three location feeds or feed objects(in that case delete or disregard entries with less than 3 location feed or feed objects) in the threshold window set for calculating the location of the client. If the difference between the current time and timestamp of the entry in the distributed hash table is less than the threshold set for calculating the location of the client then we stop iteration of the subsequent entries of the distributed hash table as for subsequent entries the difference will be even smaller and start again from the first entry of the distributed hash table thereby maintaining insertion order for calculating the location of the client as well.
Claims
1. The novel technique by which the location feeds or feed objects sourced from the controller machine managing the wireless access points or the access points themselves are aggregated into queues maintained per site. Also here depending upon the rate of arrival of location feeds from different sites and the platform capacity of the location engine server, there can be one or more sites handled by the location engine server.
2. Also the novel technique by which the aggregated feeds per site are distributed on a per client basis and how they are considered for computing the location of the client itself. The aggregated feeds on a per site basis in the queue are picked up by various worker processes or threads for different queues and are pushed to a distributed hash table such that the insertion order of location feeds is
maintained and the key for the distributed hash table is the client mac address(or unique label for client) and the value is the linked list of the location feeds or feed objects in insertion order. Also there can be a single distributed hash table if all servers computing the location of the client from the feed object has the access to information of all the sites or we can have several instances of distributed hash table per site if certain set of servers have access to information of a particular site only. While iterating through the entries of the distributed hash table to compute the location of the client, we also consider the timestamp when the first location feed or feed object was pushed for that entry. We calculate the difference between current time and the timestamp for that entry and if it is greater than or equal to the threshold set for calculating the location of the client like say 10 seconds then we delete the corresponding entry from the distributed hash table and calculate the location of the client using algorithms like trilateration, triangulation, etc. which might require minimum three location feeds or feed objects(in that case delete or disregard entries with less than 3 location feed or feed objects) in the threshold window set for calculating the location of the client. If the difference between the current time and timestamp of the entry in the distributed hash table is less than the threshold set for calculating the location of the client then we stop iteration of the subsequent entries of the distributed hash table as for subsequent entries the difference will be even smaller and start again from the first entry of the distributed hash table thereby maintaining insertion order for calculating the location of the client as well.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2018/050462 WO2019145752A1 (en) | 2018-01-25 | 2018-01-25 | Distributed location engine for wireless clients |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2018/050462 WO2019145752A1 (en) | 2018-01-25 | 2018-01-25 | Distributed location engine for wireless clients |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019145752A1 true WO2019145752A1 (en) | 2019-08-01 |
Family
ID=67395269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/IB2018/050462 WO2019145752A1 (en) | 2018-01-25 | 2018-01-25 | Distributed location engine for wireless clients |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2019145752A1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016093860A1 (en) * | 2014-12-12 | 2016-06-16 | Ruckus Wireless, Inc. | Calibration-free location determination using wireless communication |
US9668233B1 (en) * | 2016-07-12 | 2017-05-30 | Xirrus, Inc. | Wireless communication network with distributed device location determination |
-
2018
- 2018-01-25 WO PCT/IB2018/050462 patent/WO2019145752A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016093860A1 (en) * | 2014-12-12 | 2016-06-16 | Ruckus Wireless, Inc. | Calibration-free location determination using wireless communication |
US9668233B1 (en) * | 2016-07-12 | 2017-05-30 | Xirrus, Inc. | Wireless communication network with distributed device location determination |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105447023B (en) | Service identification generation method and device | |
US9655074B2 (en) | Tagless radio frequency based self correcting distributed real time location system | |
KR101556711B1 (en) | Time of arrival based wireless positioning system | |
CA2863998A1 (en) | Method, system and apparatus for searching for user in social network | |
US20160100289A1 (en) | Location System | |
MX2018006208A (en) | System for verifying distance measurements. | |
Chae et al. | MX/G/1 vacation models with N-policy: heuristic interpretation of the mean waiting time | |
AU2018274224A1 (en) | Determining a topological location of a client device using received radio signatures | |
Saffari et al. | A queueing system with inventory and mixed exponentially distributed lead times | |
US9456433B2 (en) | Method and system for client device localization | |
US9668233B1 (en) | Wireless communication network with distributed device location determination | |
WO2014186696A3 (en) | Managing communications in a multi-client, multi-server environment | |
KR101468624B1 (en) | Terminal, system and method for measuring network state using the same | |
WO2019213425A3 (en) | System and method including accurate scoring and response | |
GB2592142A (en) | Systems and methods for privacy preserving determination of intersections of sets of user identifiers | |
US20150271252A1 (en) | Rule distribution server, event processing system and method, and program | |
CN106296095B (en) | A kind of goods and materials concocting method and equipment based on wisdom storage | |
US9559932B2 (en) | Route determination apparatus and transfer route determination method | |
WO2019145752A1 (en) | Distributed location engine for wireless clients | |
RU2651782C1 (en) | Method of performing work connected with delivery | |
CN111245578A (en) | Data packet transmission method and device, electronic equipment and storage medium | |
CN108880763B (en) | Retransmission timeout time optimization method, device and computer-readable storage medium | |
WO2019246049A8 (en) | A real-time location system (rtls) that uses a combination of event sensors and rssi measurements to determine room-and-bay-location of tags | |
WO2018084751A3 (en) | Method for distributing orders | |
CN110516946B (en) | Target time determination method and device, electronic equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18902072 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18902072 Country of ref document: EP Kind code of ref document: A1 |