WO2016144298A1 - Location update scheduling - Google Patents

Location update scheduling Download PDF

Info

Publication number
WO2016144298A1
WO2016144298A1 PCT/US2015/019213 US2015019213W WO2016144298A1 WO 2016144298 A1 WO2016144298 A1 WO 2016144298A1 US 2015019213 W US2015019213 W US 2015019213W WO 2016144298 A1 WO2016144298 A1 WO 2016144298A1
Authority
WO
WIPO (PCT)
Prior art keywords
regions
access points
virtual
module
conflict graph
Prior art date
Application number
PCT/US2015/019213
Other languages
French (fr)
Inventor
Souvik SEN
Kyu-Han Kim
Dongho Kim
Original Assignee
Hewlett Packard Enterprise Development Lp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Enterprise Development Lp filed Critical Hewlett Packard Enterprise Development Lp
Priority to PCT/US2015/019213 priority Critical patent/WO2016144298A1/en
Publication of WO2016144298A1 publication Critical patent/WO2016144298A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services

Definitions

  • Mobiie devices In today's economy, mobiie devices have become pervasive. Mobiie devices provide real time value to businesses, not just as communication too!s (e.g., phone, email), but as information gathering and sharing tools. To that end, it is useful to know, for example, where mobile devices are within one's business at any given time. This may tell a business, for example, information regarding customers and products that wouid be unavailable without compiex video recording and tracking technologies.
  • FIG. 1 illustrates an example wireless network, on which example systems, and methods, and equivalents, may operate.
  • FIG. 2 illustrates a flowchart of example operations associated with location update scheduling.
  • FIG. 3 illustrates an example system associated with location update scheduling.
  • FIG. 4 illustrates another example system associated with location update scheduling.
  • FIG. 5 illustrates an example computing device in which example systems, and methods, and equivalents, may operate.
  • DETAILED DESCRIPTION 00083 Systems, methods, and equivalents associated with location update scheduling are described.
  • location updating refers to the process of Identifying locations of mobile devices spread throughout a physical space. Because conflicts between wireless access points may arise if many updates are performed simultaneously, an organized schedule of updates may be desirable. Consequently, location update scheduling may be achieved by dividing a physical space into a set of regions. The shapes of regions may be defined by wireless access points which may serve as vertices for the regions. For each physical region, a virtual region may be created for each channel that the wireless access points operate on. A conflict graph may be created for the virtual regions.
  • the conflict graph may then be colored so that adjacent nodes in the conflict graph do not share colors, while attempting to limit the total number of colors used.
  • location updates may be scheduled for access points based on what access points and what channels are associated with the virtual regions. These location updates may identif locations of mobile devices within a physical space, allowing, for example, tracking movement of mobile devices, facilitating handoff of mobile devices between access points, and so forth.
  • Some time-of-fiight based positioning techniques involve multiple neighboring access points, apart from an access point with which a mobile device is paired. These techniques may use NULL data packets sent to a mobile device and acknowledgement (ACK) packets received from the mobile device to measure the distance of the mobile device from various access points. This may be possible when a neighboring access point impersonates the paired access point using media access control (MAC) address spoofing.
  • MAC media access control
  • a mobile device in power-save mode which has turned off its Wi-Fi radio may not receive packets sent from the neighboring access points. This is because the power-save mode may be designed to respond only to beacons from the paired access point to determine when to re-enable the mobile device's Wi-Fi radio.
  • the neighboring access points may be on differing channeis than the mobile device and the access point with which the mobile device is paired. Consequently, neighboring access points may need to switch channeis to perform iocation estimation, which may increase overhead of identifying locations of mobile devices.
  • FIG. 1 illustrates an example wireless network 100 on which example systems and methods, and equivalents, may operate, it should be appreciated that the items depicted in figure 1 are illustrative examples and many different features and implementations are possible.
  • FIG. 1 illustrates a top down view of a wireless network 100.
  • Wireless network 100 may be spread throughout a physical space.
  • Wireless network 100 includes many access points 110.
  • wireless network 100 is spread throughout a physical space thai exists on a single plane ⁇ e.g., a single floor building).
  • locations of wireless access points 1 10 may be primarily defined by longitudinal and latitudinal positions within the physical space.
  • Wireless networks 100 operating throughout three dimensions of space e.g., a multi-story building
  • wireless access points 110 have been labeled A through P. Consequently, when a region is described using letters (e.g., region FGJ) the region within a triangle defined by access points 110 in wireless network 100 (e.g. , access points F, G, and J), is being discussed.
  • Several mobile devices 120 are spread throughout the physical space covered by wireless network 100, The mobile devices 120 are labeled V through Z to facilitate explanation. In various examples it may be desirable to track locations of mobile devices 120 as they move through the physical space. In one example, mobile devices 120 may be cell phones of customers that an operator of wireless network 100 can track to monitor locations of the customers throughout the physical space. Other examples of use cases of tracking mobile devices 120 throughout a physical space may also be appropriate. [0014] Access points 110 and mobile devices 120 may employ various techniques to avoid communicating in a manner that interferes with communications between other mobile devices 120 and access points 1 10. This may be desirable when, for example, several mobile devices 120 operate within a close proximity to one another (e.g., mobile device X and mobile device Y).
  • wireless network 100 may employ multiple communication channels and/or communication windows to avoid interferenc generated by multiple mobile devices 120 attempting to communicate at the same time.
  • Communication channels may be, for exampie, different communication frequencies that mobile devices 120 and access points 110 are able to communicate over.
  • mobile devices 120 may be assigned windows or specific time periods for communication with access points 110.
  • mobile devices 20 may be paired with specific access points 1 10 near the mobile devices 20.
  • the mobile device 120 may communicate through wireless network 100 primarily through that specific access point 110.
  • mobile device V may be paired with access point A based on the current location of mobile device V within the physical space.
  • various handoff techniques may ensure that mobile device V has a strong connection to wireless network 100.
  • knowing a location of a mobile device 120 within the physical space may facilitate smooth handoffe of the mobile device 120 to a closer access point 1 10.
  • mobile device Z is illustrated as having moved from region UM to region JMN. If device Z was originally paired with access point I, but is now closer to access point N, the movement of mobile device Z may be detected by example systems and methods disclosed herein, which may facilitate handing off the pairing of mobile device Z from access point I to access point N.
  • time-of-flight based location computation may be used. Time-of-flight location computation may involve measuring the time it takes the mobile device 120 to respond to packets from several nearby access points 110.
  • NULL data packets may be used. Though other data packets may be appropriate in some scenarios, NULL data packets are a standard Wi-Fi packet part of the 802.11 specification and therefore do not require additional configuration or modifications to existing technologies. Additionally, NULL data packets have minimal overhead, allowing them to be acknowledged (e.g., with an ACK packet) without significant processing.
  • T ⁇ is the time an access point 110 transmits the NULL packet to mobile device V
  • T a is the time the access point 110 receives the ACK packet from mobile device V.
  • a constant C is also used to account for an estimated amount of processing time that it takes mobile device V to respond to the NULL packet, !n some cases it may be appropriate to send multiple NULL packets to account for minor variations in the actual amount of time it takes mobile device V to respond to NULL packets.
  • several access points 110 e.g., 3 can estimate a distance to mobile device V. Using the known locations of the access points 110, and the distances of these access points 1 10 to mobile device V, the location of mobile device V may be triangulated.
  • wireless network 100 Once wireless network 100 exceeds a certain size, it may become desirable to have a global schedule of location update queries so that differing queries do not interfere with one another. Smaller wireless networks 100 may be able to negotiate location update queries with less interference. Interference may arise when, for example, a single access point 110 needs to make multiple location update queries, Interference may also arise when access points 1 10 operating on the same channel nearby one another attempt to communicate at the same time.
  • iocation update query scheduling may also take into account when access points can perform multiple location update queries in a row on the same channel, and when an access point can switch channels while adjacent access points are performing Iocation update queries that would conflict with Iocation update queries of the access point.
  • a conflict graph of wireless network 100 may be generated.
  • the conflict graph may be generated by first dividing wireless network 100 into physical regions 130,
  • the physical regions 130 are triangles, as three access points 110 may be sufficient for identifying mobile device 120 locations via triangulation, in other examples, other sized regions may be used.
  • a fourth access point 1 10 forming a tetrahedral shape or triangular pyramid may be used to ensure accurate identification of a mobile device's iocation.
  • physical regions 130 are indicated using black lines between access points 1 10.
  • Wireless network 100 illustrates one example configuration of physical regions 130. Other wireless networks 100 may be organized into physical regions 130 differently.
  • virtual regions 140 may be created for each physical region 130.
  • a virtual region 140 may be created for each channel on which wireless network 1 0 operates.
  • wireless network 100 operates on 3 channels. Consequently, virtual regions 140 for physical region LOP are illustrated in the lower right of figure 1. Note that the virtual regions 40 essentially cover the same area as the physical region LOP in wireless network 100 and that mobile device Y resides within each of them.
  • a conflict graph is a graph where edges indicate conflicts between nodes. Consequently, in this example, a conflict graph with nodes representing virtual regions 140 of wireless network 100 and edges representing conflicts between the virtual regions 140 is generated.
  • Various conditions for adding an edge between nodes may be employed. So this example, conflicts may be recognized when virtual regions 140 share an access point 110, This includes virtual regions 140 thai cover the same physical region 130 on different channels, as well as virtual regions 140 covering different physica! regions that share an access point 1 10, again regardiess of channels. By way of illustration, each of the three virtual regions 140 covering physical region LOP would conflict with one another.
  • regions GJK and LOP may be within a predefined proximity (e.g., defined by an administrator, based on strength of access points 10 ⁇ that may cause communication disruption if access points 110 from both of these regions are attempting to communicate at the same time on the same channel. Consequently, virtual regions 140 covering physica! regions GJK and LOP that are associated with the same channel may conflict and a corresponding edge may be added to the conflict graph. Alternatively, if physica! regions AEB and OLP are outside the predefined proximity, virtual regions 140 covering these physical regions 130 may not conflict even when they operate on the same channel unless an additional or different conflict ru!e is applied.
  • nodes in the graph may be colored.
  • Coloring the conflict graph may mean assigning each node in the graph a color so that no two adjacent nodes share a color, while still minimizing the number of colors in the graph.
  • Coloring the conflict graph may be computationally intensive and may require numerous colors.
  • DSATUR degree saturation
  • DSATUR degree saturation
  • a schedule of location update queries may be generated. Th schedule may be based on the colors suc that during a first time period, access points 1 10 associated with each color perform update queries on corresponding channels. During the next period, the process is started over, repeating the update query process.
  • the size of wireiess network 100 combined with the number of channels may create so many virtual regions 140 that going through all of the colors in a single time period wouid create a substantial network overhead.
  • a query window may be set up (e.g., by an administrator) for performing location update queries, and during each of these time periods a number of location update queries is performed based on the size of the query window and the expected time it takes to perform a location update query by access points 1 10 forming a virtual region 140.
  • access point F may be associated with 12 regions, 4 on each of three channels. When access point F performs location update queries for one of these regions, other regions involving access point F may be scheduled for location update queries while access point F is on the same channel.
  • access point F may be scheduled to switch channels for subsequent location update queries while a nearby access point (e.g., access point G) performs location update queries that conflict with location update queries associated with access point F.
  • a nearby access point e.g., access point G
  • access point G performs location update queries that conflict with location update queries associated with access point F.
  • mobiie device Z unless mobiie device Z has moved beyond the operational range of one of the access points 110 in physical region UM (e.g., access point I), the access points 1 10 in physical region UM will likeiy still be able to triangulate the new location of mobile device Z, At this point, mobiie device Z's movement into physical region JMN may be detected, and mobile device Z may be paired with a different access point 110. Future location update queries for mobile device Z can then be performed b access points 110 associated with physical region JMH, at least until mobile device Z again moves to a new physical region 130.
  • Module includes but is not limited to hardware, firmware, software stored on a computer-readable medium or in execution on a machine, and/or combinations of each to perform a functions) or an action(s), and/or to cause a function or action from another module, method, and/or system.
  • a module may include a software controlled microprocessor, a discrete module (e.g., ASIC), an analog circuit, a digital circuit, a programmed module device, a memory device containing instructions, and so on. Modules may include one or more gates, combinations of gates, or other circuit components. Where multiple logical modules are described, It may be possible to incorporate the multiple logical moduies into one physical module. Similarly, where a single logical module is described, it may be possible to distribute that single logical module between multiple physical modules.
  • Figure 2 illustrates an example method 200 associated with location update scheduling.
  • Method 200 may e embodied on a non-transitory computer- readable medium storing computer-executable instructions. The instructions, when executed by a computer, may cause the computer to perform method 200.
  • method 200 may exist within iogic gates and/or RAM of an application specific integrated circuit.
  • Method 200 includes dividing a physical space into regions at 210. Vertices of the regions may eorrespond to access points spread throughout a physical space.
  • access points may be arranged along a singie plane of the physical space.
  • the regions may be triangles.
  • the idea of points being arranged along a singie plane is meant to describe a scenario where access points can have their relative locations largely expressed along two axes.
  • One example situation where this may occur is where access points are arranged throughout a single floor structure.
  • buildings with many floors may express relative locations of access points along three axes because access points may be spread throughout many floors of the office building.
  • regions may be tetrahedral, or have a triangular pyramid shape.
  • the access points may operate over N channels.
  • the regions may be virtual regions.
  • the virtual regions may be generated by dividing the physical space into physical regions.
  • a virtual region may be created based on the vertices of each physical region.
  • wireless network 100 (figure 1 ).
  • Access points 110 making up wireless network 100 have been divided into physical regions 130 indicated by the solid lines between the access points 1 10.
  • a virtual region 140 for each channel is created for each of the physical regions 130.
  • three virtual regions 140 created for physical region LOP are illustrated.
  • Method 200 aiso includes generating a conflict graph of the regions at 220.
  • Nodes in the conflict graph may correspond to the regions.
  • Edges in the conflict graph may indicate conflicts between the regions.
  • There may be various situations when two regions conflict For example, two regions may conflict when the two regions share a vertex. Additionally, two regions may conflict when the two regions operate within a predefined proximity to each other, even when the two regions do not share a vertex.
  • regions ABE and BCG may conflict because the regions share access point B, and Regions ABE and FGJ may conflict because the regions operate too closely to one another.
  • Regions ABE and LOP may not confiict because there are no common vertices assuming the two regions are far enough apart that, for example, a network administrator believes the two regions will not interfere with each other if the two regions both simultaneously initiate location update queries.
  • Method 200 also includes coloring the conflict graph at 230.
  • the confiict graph may be colored so that adjacent nodes in the conflict graph have different colors.
  • the number of colors used in the confiict graph may be limited. Though it may be desirable to use a minimum possible number of colors when coloring the conflict graph, it may be computationally prohibitive to achieve this goal when the conflict graph is large. Consequently, techniques designed to greedily color the conflict graph (e.g. , degree saturation) may be applied to color the conflict graph as appropriate.
  • Method 200 also includes scheduling access points to initiate location update queries at 240,
  • the access points may be scheduled to initiate location update queries sequentially according the colors of nodes in the conflict graph- Specifically, access points that correspond to vertices of regions sharing colors in the conflict graph may be scheduled to initiate location update queries concurrently.
  • FIG. 3 illustrates an example system 300 associated with location update scheduling.
  • System 300 includes a mapping module 310.
  • Mapping module 310 may organize wireless access points 399 into virtual regions.
  • the virtual regions may be triangles. In other examples, differently shaped virtual regions may be appropriate (e.g., squares, tetrahedrons).
  • Wireless access points 399 may be arranged throughout a physicai space. Additionally, wireless access points 399 may operate on a set of channels.
  • Mapping module 310 may organize the virtuaS wireless access points 399 into virtual regions based on locations of wireless access points 399 in the physical space. Additionally, mapping module 310 may be arrange wireless access points 399 into virtual regions for each channel.
  • organizing access points into virtual regions may comprise organizing the access points into physical regions. Subsequently, each access point may be assigned to a virtuaS region for each channel and physical region pairing with which the access point is associated.
  • System 300 also includes a graphing module 320.
  • Graphing module 320 may construct a conflict graph.
  • the conflict graph may have nodes that correspond to virtual regions. Edges in the conflict graph may correspond to conflicts between the virtual regions, in one example, graphing module 320 may recognize a conflict between two virtual regions when the two virtual regions share an access point. Additionally, graphing module 320 may recognize a conflict between the two virtual regions when the two virtual regions share a channel and physical proximity of the regions would cause interference,
  • Coloring module 330 may color nodes of the conflict graph, As described above, coloring the conflict graph may involve assigning a color to each node in the conflict graph so that no two adjacent nodes share a color, white limiting the number of colors in the confiict graph. Coloring module 330 may apply, for example, degree saturation techniques to color the conflict graph.
  • System 300 also includes a tracking module 340, Tracking module 340 may schedule when wireless access points 399 perform location update queries on the channels to identify locations of mobile devices within the physical space.
  • Location update queries may be scheduied based on coiors of nodes in the confiict graph.
  • Location update queries may also be scheduled based on virtual regions and channels that correspond to the colors of nodes in the conflict graph.
  • Location update queries may take the form NULL packets sent from wireless access points 399 to mobile devices. Specifically, a location of a mobile device may be identified within the physical space by sending NULL packets from at least three access points associated with a virtual region within which the mobile device resides.
  • tracking module 340 may schedule location update queries around periodic tracking windows ⁇ e.g., the first portion of every second).
  • the duration of the tracking windows may be set by an administrator based on overhead constraints associated with operating a network associated with access points 399.
  • Each tracking window may have a number of time siots.
  • the number of time slots may be governed by, for example, the duration of the tracking windows, an expected location update query duration, and so forth. If there are fewer colors in the graph than time slots, each color may be scheduied during each tracking window. In other cases, a round robin approach to tracking windows may be applied so that each color node is eventually scheduled in a tracking window.
  • tracking module 340 may schedule location update queries in a manner that limits channel switching access points. This may include prioritizing scheduling virtual regions sharing a channel and an access point for consecutive location update queries. Similarly, while an access point is switching channels, an location update queries may be performed that would otherwise conflict with location update queries of the access point.
  • mapping module 310, graphing module 320, coloring module 330, and tracking module 340 may operate within a wireless area network controller, in other examples, the various modules may operate within other network devices as appropriate.
  • Figure 4 illustrates a system 400 associated with location update scheduling.
  • System 400 includes several items similar to those described above with reference to system 300 (figure 3).
  • system 400 includes a mapping module 410, a graphing module 420, a tracking module 440, and a coloring module 430.
  • the various modules may operate to control a set of access points 499 to schedule location update queries to track locations of access points throughout a physical space.
  • System 400 also includes an initial positioning module 450.
  • Initial positioning module may identify a virtual region within which a newly detected mobile device resides, initial assignments of a mobile device to a virtual region may be a higher cost operation than periodic tracking updates because, for example, more access points 499 and/or processing may be involved in assigning a mobile device to a virtual region and/or nearby access point when it is first detected.
  • FIG. 5 illustrates an example computing device in which example systems and methods, and equivalents, may operate.
  • the example computing device may be a computer 500 that includes a processor 510 and a memory 520 connected by a bus 530.
  • the computer 500 inciudes a location update scheduling module 540,
  • Location update scheduling module 540 may perform, alone or in combination, various functions described above with reference to the example systems, methods, apparatuses, and so forth.
  • location update scheduling module 540 may be implemented as a non-transitory computer- readable medium storing computer-executable instructions, in hardware, software, firmware, an application specific integrated circuit, and/or combinations thereof.
  • the instructions may also be presented to computer 500 as data 550 and/or process 560 that are temporarily stored in memory 520 and then executed by processor 510.
  • the processor 510 may be a variety of various processors including dual microprocessor and other multi-processor architectures.
  • Memory 520 may include non-volatiie memory (e.g., read only memory) and/or volatile memory (e.g., random access memory).
  • Memory 520 may also be, for example, a magnetic disk drive, a solid state disk drive, a loppy disk drive, a tape drive, a flash memory card, an optical disk, and so on.
  • memory 520 may store process 560 and/or data 550.
  • Computer 500 may also be associated with other devices including other computers, peripherals, and so forth in numerous configurations (not shown ⁇ .,

Abstract

Examples associated with location update scheduling are disclosed. One example includes dividing a physical space into regions. Vertices of the regions correspond to access points spread throughout the physical space. A conflict graph is generated for the regions. Nodes in the conflict graph correspond to the regions, and edges indicate conflicts between the regions. The conflict graph is colored so that adjacent nodes in the conflict graph have different colors while limiting the number of colors in the conflict graph. Sequential location update queries are scheduled across access points. Location update queries are concurrently initiated by access points that correspond to vertices of regions sharing colors in the conflict graph.

Description

LOCATION UPDATE SCHEDULING
BACKGROUND
[0001] In today's economy, mobiie devices have become pervasive. Mobiie devices provide real time value to businesses, not just as communication too!s (e.g., phone, email), but as information gathering and sharing tools. To that end, it is useful to know, for example, where mobile devices are within one's business at any given time. This may tell a business, for example, information regarding customers and products that wouid be unavailable without compiex video recording and tracking technologies.
BRIEF DESCRIPTION OF THE DRAWINGS
[0002] The present appiication may be more fuily appreciated in connection with the foilowing detailed description taken in conjunction with the accompanying drawings, in which like reference characters refer to like parts throughout, and in which:
[0003] FIG. 1 illustrates an example wireless network, on which example systems, and methods, and equivalents, may operate.
[00043 FIG. 2 illustrates a flowchart of example operations associated with location update scheduling.
[0005] FIG. 3 illustrates an example system associated with location update scheduling.
[0006] FIG. 4 illustrates another example system associated with location update scheduling.
[0007] FIG. 5 illustrates an example computing device in which example systems, and methods, and equivalents, may operate. DETAILED DESCRIPTION 00083 Systems, methods, and equivalents associated with location update scheduling are described. As will be described, location updating refers to the process of Identifying locations of mobile devices spread throughout a physical space. Because conflicts between wireless access points may arise if many updates are performed simultaneously, an organized schedule of updates may be desirable. Consequently, location update scheduling may be achieved by dividing a physical space into a set of regions. The shapes of regions may be defined by wireless access points which may serve as vertices for the regions. For each physical region, a virtual region may be created for each channel that the wireless access points operate on. A conflict graph may be created for the virtual regions. The conflict graph may then be colored so that adjacent nodes in the conflict graph do not share colors, while attempting to limit the total number of colors used. Based on the colors of virtual regions, location updates may be scheduled for access points based on what access points and what channels are associated with the virtual regions. These location updates may identif locations of mobile devices within a physical space, allowing, for example, tracking movement of mobile devices, facilitating handoff of mobile devices between access points, and so forth.
[0009] Today, some time-of-fiight based positioning techniques involve multiple neighboring access points, apart from an access point with which a mobile device is paired. These techniques may use NULL data packets sent to a mobile device and acknowledgement (ACK) packets received from the mobile device to measure the distance of the mobile device from various access points. This may be possible when a neighboring access point impersonates the paired access point using media access control (MAC) address spoofing. However, a mobile device in power-save mode which has turned off its Wi-Fi radio may not receive packets sent from the neighboring access points. This is because the power-save mode may be designed to respond only to beacons from the paired access point to determine when to re-enable the mobile device's Wi-Fi radio. This is to preserve battery life of the mobile device. [0010] Additionally, the neighboring access points may be on differing channeis than the mobile device and the access point with which the mobile device is paired. Consequently, neighboring access points may need to switch channeis to perform iocation estimation, which may increase overhead of identifying locations of mobile devices.
[00113 Figure 1 illustrates an example wireless network 100 on which example systems and methods, and equivalents, may operate, it should be appreciated that the items depicted in figure 1 are illustrative examples and many different features and implementations are possible.
IOOI23 Figure 1 illustrates a top down view of a wireless network 100. Wireless network 100 may be spread throughout a physical space. Wireless network 100 includes many access points 110. In this example, to facilitate explanation, wireless network 100 is spread throughout a physical space thai exists on a single plane {e.g., a single floor building). Thus, though wireless access points 1 10 may be positioned at different heights, in this example, locations of wireless access points 1 10 may be primarily defined by longitudinal and latitudinal positions within the physical space. Wireless networks 100 operating throughout three dimensions of space (e.g., a multi-story building) may also be possible and are discussed below. Further, to facilitate explanation, wireless access points 110 have been labeled A through P. Consequently, when a region is described using letters (e.g., region FGJ) the region within a triangle defined by access points 110 in wireless network 100 (e.g. , access points F, G, and J), is being discussed.
[0013] Several mobile devices 120 are spread throughout the physical space covered by wireless network 100, The mobile devices 120 are labeled V through Z to facilitate explanation. In various examples it may be desirable to track locations of mobile devices 120 as they move through the physical space. In one example, mobile devices 120 may be cell phones of customers that an operator of wireless network 100 can track to monitor locations of the customers throughout the physical space. Other examples of use cases of tracking mobile devices 120 throughout a physical space may also be appropriate. [0014] Access points 110 and mobile devices 120 may employ various techniques to avoid communicating in a manner that interferes with communications between other mobile devices 120 and access points 1 10. This may be desirable when, for example, several mobile devices 120 operate within a close proximity to one another (e.g., mobile device X and mobile device Y). To facilitate simultaneous communication with several mobile devices 120 wireless network 100 may employ multiple communication channels and/or communication windows to avoid interferenc generated by multiple mobile devices 120 attempting to communicate at the same time. Communication channels may be, for exampie, different communication frequencies that mobile devices 120 and access points 110 are able to communicate over. When using multiple channels is in sufficient, mobile devices 120 may be assigned windows or specific time periods for communication with access points 110.
00153 i° various examples, mobile devices 20 may be paired with specific access points 1 10 near the mobile devices 20. When a mobile device 120 is paired with an access point 10, the mobile device 120 may communicate through wireless network 100 primarily through that specific access point 110. By way of illustration mobile device V may be paired with access point A based on the current location of mobile device V within the physical space. As mobile device V moves, various handoff techniques may ensure that mobile device V has a strong connection to wireless network 100. In some examples, knowing a location of a mobile device 120 within the physical space may facilitate smooth handoffe of the mobile device 120 to a closer access point 1 10. By way of illustration mobile device Z is illustrated as having moved from region UM to region JMN. If device Z was originally paired with access point I, but is now closer to access point N, the movement of mobile device Z may be detected by example systems and methods disclosed herein, which may facilitate handing off the pairing of mobile device Z from access point I to access point N.
0016] To identify a location of a mobile device 120, time-of-flight based location computation may be used. Time-of-flight location computation may involve measuring the time it takes the mobile device 120 to respond to packets from several nearby access points 110. In one example, NULL data packets may be used. Though other data packets may be appropriate in some scenarios, NULL data packets are a standard Wi-Fi packet part of the 802.11 specification and therefore do not require additional configuration or modifications to existing technologies. Additionally, NULL data packets have minimal overhead, allowing them to be acknowledged (e.g., with an ACK packet) without significant processing.
[0017] By measuring the time mobile device V within region ABE takes to respond to packets from each of the access points A, B, and E composing the region, the location of mobile device V may be estimated. NULL data packets may be sent from each of access points A, B, and E, which may then be acknowledged with an acknowledgement (ACK) packet by mobile device V. The tirne-of-f light Tf is therefore given by equation 1 :
1. Tf = {Ta - Td - C)/2
0018| Here, T^ is the time an access point 110 transmits the NULL packet to mobile device V, and Ta is the time the access point 110 receives the ACK packet from mobile device V. A constant C is also used to account for an estimated amount of processing time that it takes mobile device V to respond to the NULL packet, !n some cases it may be appropriate to send multiple NULL packets to account for minor variations in the actual amount of time it takes mobile device V to respond to NULL packets. Using the time-of-f!ight technique, or another technique, several access points 110 (e.g., 3) can estimate a distance to mobile device V. Using the known locations of the access points 110, and the distances of these access points 1 10 to mobile device V, the location of mobile device V may be triangulated.
[0018] Once wireless network 100 exceeds a certain size, it may become desirable to have a global schedule of location update queries so that differing queries do not interfere with one another. Smaller wireless networks 100 may be able to negotiate location update queries with less interference. Interference may arise when, for example, a single access point 110 needs to make multiple location update queries, Interference may also arise when access points 1 10 operating on the same channel nearby one another attempt to communicate at the same time. Consequently, it may be desirable to schedule location update queries so that a given access point 1 10 is performing updates for a single region on a single channel at a given time, and that regions nearby one another are not performing iocation updates simultaneously on the same channel Further, because of overhead costs associated with access points switching wireless channels, iocation update query scheduling may also take into account when access points can perform multiple location update queries in a row on the same channel, and when an access point can switch channels while adjacent access points are performing Iocation update queries that would conflict with Iocation update queries of the access point.
[0020] To prevent these types of interference, a conflict graph of wireless network 100 may be generated. The conflict graph may be generated by first dividing wireless network 100 into physical regions 130, In this example, the physical regions 130 are triangles, as three access points 110 may be sufficient for identifying mobile device 120 locations via triangulation, in other examples, other sized regions may be used. For example, in a three dimensional space, a fourth access point 1 10, forming a tetrahedral shape or triangular pyramid may be used to ensure accurate identification of a mobile device's iocation. In wireless network 100, physical regions 130 are indicated using black lines between access points 1 10. Wireless network 100 illustrates one example configuration of physical regions 130. Other wireless networks 100 may be organized into physical regions 130 differently.
[00213 Once physical regions 130 have been generated, virtual regions 140 may be created for each physical region 130. A virtual region 140 may be created for each channel on which wireless network 1 0 operates. In this example, wireless network 100 operates on 3 channels. Consequently, virtual regions 140 for physical region LOP are illustrated in the lower right of figure 1. Note that the virtual regions 40 essentially cover the same area as the physical region LOP in wireless network 100 and that mobile device Y resides within each of them.
[0022] From the virtual regions 140, a conflict graph is generated., A conflict graph is a graph where edges indicate conflicts between nodes. Consequently, in this example, a conflict graph with nodes representing virtual regions 140 of wireless network 100 and edges representing conflicts between the virtual regions 140 is generated. Various conditions for adding an edge between nodes may be employed. So this example, conflicts may be recognized when virtual regions 140 share an access point 110, This includes virtual regions 140 thai cover the same physical region 130 on different channels, as well as virtual regions 140 covering different physica! regions that share an access point 1 10, again regardiess of channels. By way of illustration, each of the three virtual regions 140 covering physical region LOP would conflict with one another. Additionally, these regions would also conflict with virtual regions 140 covering physical regions GHL, GKL, KLO, JKO, and JNO because these regions all share at least one access point 1 10. Virtual regions 140 that are close to one another and operating on the same channel may also be recognized as conflicting,
[0023] By way of illustration regions GJK and LOP may be within a predefined proximity (e.g., defined by an administrator, based on strength of access points 10} that may cause communication disruption if access points 110 from both of these regions are attempting to communicate at the same time on the same channel. Consequently, virtual regions 140 covering physica! regions GJK and LOP that are associated with the same channel may conflict and a corresponding edge may be added to the conflict graph. Alternatively, if physica! regions AEB and OLP are outside the predefined proximity, virtual regions 140 covering these physical regions 130 may not conflict even when they operate on the same channel unless an additional or different conflict ru!e is applied.
[0024] Once the conflict graph has been generated, nodes in the graph may be colored. Coloring the conflict graph may mean assigning each node in the graph a color so that no two adjacent nodes share a color, while still minimizing the number of colors in the graph. Coloring the conflict graph may be computationally intensive and may require numerous colors. By way of illustration, given 3 channels, a channel operating in region FGJ will conflict with at least 44 other channels based solely on the access point sharing rule. As the size of wireless network 100 grows, even more colors may be used when coloring the conflict graph due to an increased number of conflicts. Various techniques for coloring a conflict graph may be applied. One technique, known as degree saturation (DSATUR), may take a greedy approach for coloring the conflict graph. Though a greedy approach may not find an optimal coloring scheme, the greedy approach may limit computations in what couid otherwise be a computationally intensive task.
[0025] Once the conflict graph has been colored, a schedule of location update queries may be generated. Th schedule may be based on the colors suc that during a first time period, access points 1 10 associated with each color perform update queries on corresponding channels. During the next period, the process is started over, repeating the update query process. In some examples, the size of wireiess network 100 combined with the number of channels may create so many virtual regions 140 that going through all of the colors in a single time period wouid create a substantial network overhead. In this case, a query window may be set up (e.g., by an administrator) for performing location update queries, and during each of these time periods a number of location update queries is performed based on the size of the query window and the expected time it takes to perform a location update query by access points 1 10 forming a virtual region 140.,
|00263 !n addition to scheduling based on colors, other factors may be taken into consideration when scheduling location update queries. For example, previous locations and channels associated with mobile devices may be considered if there are not mobile devices within each physical region operating on every channel. In this example, location updates may only be scheduled or performed for these regions. In other examples, network overhead associated with switching an access point between channels may be considered when scheduling location update queries. By way of illustration, access point F may be associated with 12 regions, 4 on each of three channels. When access point F performs location update queries for one of these regions, other regions involving access point F may be scheduled for location update queries while access point F is on the same channel. Additionally, access point F may be scheduled to switch channels for subsequent location update queries while a nearby access point (e.g., access point G) performs location update queries that conflict with location update queries associated with access point F. [0027] As described above with reference to handing off pairings of mobile devices, mobiie device Z has moved from physical region UM to physical region J N. This movement may happen between iocation update queries, and consequently, the movement may not be detected until mobile device Z has already left physical region UM. In some cases, unless mobiie device Z has moved beyond the operational range of one of the access points 110 in physical region UM (e.g., access point I), the access points 1 10 in physical region UM will likeiy still be able to triangulate the new location of mobile device Z, At this point, mobiie device Z's movement into physical region JMN may be detected, and mobile device Z may be paired with a different access point 110. Future location update queries for mobile device Z can then be performed b access points 110 associated with physical region JMH, at least until mobile device Z again moves to a new physical region 130.
[00283 it is appreciated that, in the following description, numerous specific details are set forth to provide a thorough understanding of the examples. However, it is appreciated that the examples may be practiced without limitation to these specific details. In other instances, methods and structures may not be described in detail to avoid unnecessarily obscuring the description of the examples. Also, the examples may be used in combination with each other.
[0029] "Module" , as used herein, includes but is not limited to hardware, firmware, software stored on a computer-readable medium or in execution on a machine, and/or combinations of each to perform a functions) or an action(s), and/or to cause a function or action from another module, method, and/or system. A module may include a software controlled microprocessor, a discrete module (e.g., ASIC), an analog circuit, a digital circuit, a programmed module device, a memory device containing instructions, and so on. Modules may include one or more gates, combinations of gates, or other circuit components. Where multiple logical modules are described, It may be possible to incorporate the multiple logical moduies into one physical module. Similarly, where a single logical module is described, it may be possible to distribute that single logical module between multiple physical modules.
-g- [0030] Figure 2 illustrates an example method 200 associated with location update scheduling. Method 200 may e embodied on a non-transitory computer- readable medium storing computer-executable instructions. The instructions, when executed by a computer, may cause the computer to perform method 200. In other examples, method 200 may exist within iogic gates and/or RAM of an application specific integrated circuit.
[0031] Method 200 includes dividing a physical space into regions at 210. Vertices of the regions may eorrespond to access points spread throughout a physical space. In one example, access points may be arranged along a singie plane of the physical space. In this example, the regions may be triangles. The idea of points being arranged along a singie plane is meant to describe a scenario where access points can have their relative locations largely expressed along two axes. One example situation where this may occur is where access points are arranged throughout a single floor structure. In other examples, buildings with many floors may express relative locations of access points along three axes because access points may be spread throughout many floors of the office building. In these examples, regions may be tetrahedral, or have a triangular pyramid shape.
[00323 'π some examples, the access points may operate over N channels. In this example, the regions may be virtual regions. The virtual regions may be generated by dividing the physical space into physical regions. Next, for each of the N channels, a virtual region may be created based on the vertices of each physical region. By way of illustration, considering wireless network 100 (figure 1 ). Access points 110 making up wireless network 100 have been divided into physical regions 130 indicated by the solid lines between the access points 1 10. If wireless network 100 operates over three channels, a virtual region 140 for each channel is created for each of the physical regions 130. In this example, three virtual regions 140 created for physical region LOP are illustrated.
[0033] Method 200 aiso includes generating a conflict graph of the regions at 220. Nodes in the conflict graph may correspond to the regions. Edges in the conflict graph may indicate conflicts between the regions. There may be various situations when two regions conflict. For example, two regions may conflict when the two regions share a vertex. Additionally, two regions may conflict when the two regions operate within a predefined proximity to each other, even when the two regions do not share a vertex. Considering wireless network 100, regions ABE and BCG may conflict because the regions share access point B, and Regions ABE and FGJ may conflict because the regions operate too closely to one another. Regions ABE and LOP may not confiict because there are no common vertices assuming the two regions are far enough apart that, for example, a network administrator believes the two regions will not interfere with each other if the two regions both simultaneously initiate location update queries.
[0034] in the example, where access points are to operate over N channels, different conflict rules may be appropriate. First, two virtual regions may confiict when the two regions share a vertex. Thus, as above, virtual regions covering physical regions ABE and BCG will confiict because the virtual regions share a vertex. Second, two regions may conflict when the two regions share a channel and operate within a predefined proximity to each other. Consequently, in this example, a virtual region covering physica! region ABE operating on a first channel may not conflict with a virtual region covering physical region FGJ operating on a second channel despite their proximity. As above, virtual regions covering physica! region ABE may still not conflict with virtual regions covering physical region LOP due to their distance, regardless of which channels the virtual regions are associated with. Other conflict rules cou!d potentially cause conflicts based on additional criteria to be recognized.
[0035] Method 200 also includes coloring the conflict graph at 230. The confiict graph may be colored so that adjacent nodes in the conflict graph have different colors. The number of colors used in the confiict graph may be limited. Though it may be desirable to use a minimum possible number of colors when coloring the conflict graph, it may be computationally prohibitive to achieve this goal when the conflict graph is large. Consequently, techniques designed to greedily color the conflict graph (e.g. , degree saturation) may be applied to color the conflict graph as appropriate. [0030] Method 200 also includes scheduling access points to initiate location update queries at 240, The access points may be scheduled to initiate location update queries sequentially according the colors of nodes in the conflict graph- Specifically, access points that correspond to vertices of regions sharing colors in the conflict graph may be scheduled to initiate location update queries concurrently.
[0037] Figure 3 illustrates an example system 300 associated with location update scheduling. System 300 includes a mapping module 310. Mapping module 310 may organize wireless access points 399 into virtual regions. In one example, the virtual regions may be triangles. In other examples, differently shaped virtual regions may be appropriate (e.g., squares, tetrahedrons). Wireless access points 399 may be arranged throughout a physicai space. Additionally, wireless access points 399 may operate on a set of channels. Mapping module 310 may organize the virtuaS wireless access points 399 into virtual regions based on locations of wireless access points 399 in the physical space. Additionally, mapping module 310 may be arrange wireless access points 399 into virtual regions for each channel. In one example, organizing access points into virtual regions may comprise organizing the access points into physical regions. Subsequently, each access point may be assigned to a virtuaS region for each channel and physical region pairing with which the access point is associated.
[00383 System 300 also includes a graphing module 320. Graphing module 320 may construct a conflict graph. The conflict graph may have nodes that correspond to virtual regions. Edges in the conflict graph may correspond to conflicts between the virtual regions, in one example, graphing module 320 may recognize a conflict between two virtual regions when the two virtual regions share an access point. Additionally, graphing module 320 may recognize a conflict between the two virtual regions when the two virtual regions share a channel and physical proximity of the regions would cause interference,
[00393 System 300 also includes a coloring module 330. Coloring module 330 may color nodes of the conflict graph, As described above, coloring the conflict graph may involve assigning a color to each node in the conflict graph so that no two adjacent nodes share a color, white limiting the number of colors in the confiict graph. Coloring module 330 may apply, for example, degree saturation techniques to color the conflict graph.
[0040] System 300 also includes a tracking module 340, Tracking module 340 may schedule when wireless access points 399 perform location update queries on the channels to identify locations of mobile devices within the physical space. Location update queries may be scheduied based on coiors of nodes in the confiict graph. Location update queries may also be scheduled based on virtual regions and channels that correspond to the colors of nodes in the conflict graph. Location update queries may take the form NULL packets sent from wireless access points 399 to mobile devices. Specifically, a location of a mobile device may be identified within the physical space by sending NULL packets from at least three access points associated with a virtual region within which the mobile device resides. Based on how long the mobile devices takes to acknowledge the NULL packets, the distance from each of these access points to the mobile device may be determined, at which point the location of the mobile device may be triangulated. 00413 in some examples, tracking module 340 may schedule location update queries around periodic tracking windows {e.g., the first portion of every second). The duration of the tracking windows may be set by an administrator based on overhead constraints associated with operating a network associated with access points 399. Each tracking window may have a number of time siots. The number of time slots may be governed by, for example, the duration of the tracking windows, an expected location update query duration, and so forth. If there are fewer colors in the graph than time slots, each color may be scheduied during each tracking window. In other cases, a round robin approach to tracking windows may be applied so that each color node is eventually scheduled in a tracking window.
[0042] Further, as described above, tracking module 340 may schedule location update queries in a manner that limits channel switching access points. This may include prioritizing scheduling virtual regions sharing a channel and an access point for consecutive location update queries. Similarly, while an access point is switching channels, an location update queries may be performed that would otherwise conflict with location update queries of the access point.
[0043] In various examples, mapping module 310, graphing module 320, coloring module 330, and tracking module 340 may operate within a wireless area network controller, in other examples, the various modules may operate within other network devices as appropriate.
[0044] Figure 4 illustrates a system 400 associated with location update scheduling. System 400 includes several items similar to those described above with reference to system 300 (figure 3). For example, system 400 includes a mapping module 410, a graphing module 420, a tracking module 440, and a coloring module 430. The various modules may operate to control a set of access points 499 to schedule location update queries to track locations of access points throughout a physical space.
[00453 System 400 also includes an initial positioning module 450. Initial positioning module may identify a virtual region within which a newly detected mobile device resides, initial assignments of a mobile device to a virtual region may be a higher cost operation than periodic tracking updates because, for example, more access points 499 and/or processing may be involved in assigning a mobile device to a virtual region and/or nearby access point when it is first detected.
[0046] Figure 5 illustrates an example computing device in which example systems and methods, and equivalents, may operate. The example computing device may be a computer 500 that includes a processor 510 and a memory 520 connected by a bus 530. The computer 500 inciudes a location update scheduling module 540, Location update scheduling module 540 may perform, alone or in combination, various functions described above with reference to the example systems, methods, apparatuses, and so forth. In different examples, location update scheduling module 540 may be implemented as a non-transitory computer- readable medium storing computer-executable instructions, in hardware, software, firmware, an application specific integrated circuit, and/or combinations thereof. [0047] The instructions may also be presented to computer 500 as data 550 and/or process 560 that are temporarily stored in memory 520 and then executed by processor 510. The processor 510 may be a variety of various processors including dual microprocessor and other multi-processor architectures. Memory 520 may include non-volatiie memory (e.g., read only memory) and/or volatile memory (e.g., random access memory). Memory 520 may also be, for example, a magnetic disk drive, a solid state disk drive, a loppy disk drive, a tape drive, a flash memory card, an optical disk, and so on. Thus, memory 520 may store process 560 and/or data 550. Computer 500 may also be associated with other devices including other computers, peripherals, and so forth in numerous configurations (not shown}.,
[0048] it is appreciated that the previous description of the disclosed examples is provided to enabie any person skilled in the art to make or use the present disciosure. Various modifications to these examples will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other examples without departing from the spirit or scope of the disciosure. Thus, the present disciosure is not intended to be limited to the exampSes shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

WHAT IS CLAIMED IS.
1. A method , comprisi ng ;
dividing a physical space into regions, where vertices of the regions correspond to access points spread throughout the physical space;
generating a conflict graph of the regions, where nodes in the conflict graph correspond to the regions, and where edges in the conflict graph indicate conflicts between the regions;
coloring the conflict graph so that adjacent nodes in the conflict graph have different colors, whiie limiting the number of colors in the conflict graph; and
scheduling access points to sequentially initiate location update queries such that location update queries are concurrently initiated by access points that correspond to vertices of regions sharing colors in the conflict graph.
2. The method of claim 1 , where the access points are arranged along a single plane of the physical space and where the regions are triangles.
3. The method of claim 1 where two regions conflict when ( } the two regions share a vertex, or when (2) the two regions operate within a predefined proximity to each other.
4. The method of claim 1 , where the access points are to operate over N channels, and where the regions are virtual regions thai are generated by (1) dividing the physical space into physical regions, and (2) for each of the channels, creating a virtual region defined by vertices of each physical region.
5. The method of claim 4, where two virtual regions conflict when (1 ) the two regions share a vertex, and when (2) the two virtual regions share a channel and operate within a predefined proximity to each other.
6. A system, comprising:
a mapping module to organize into virtual regions, wireless access points arranged throughout a physical space operating on a set of channels, based on locations of the access points in the physical space, where wireless access points are arranged into a virtuai region for each channel;
a graphing module to construct a conflict graph having nodes corresponding to virtual regions, and edges corresponding to conflicts between the virtuai regions; a coloring module to color nodes of the conflict graph; and
a tracking module to schedule when access points perform location update queries on the channels to identify locations of mobile devices within the physical space, where the location update queries are scheduled based on colors of nodes of the conflict graph, and virtual regions and channels that correspond to the colors of nodes in the conflict graph.
7. The system of claim 6, where the virtual regions are triangles.
8. The system of claim 8, where organizing access points into virtual regions comprises organizing the access points into physical regions, and assigning each access point to a virtuai region for each channel and physical region pairing with whic the access point is associated.
9. The system of claim 6, the graphing module to recognize a conflict between two virtual regions when the two virtual regions share an access point, and the graphing module to recognize a conflict between the two virtual regions when the two virtual regions share a channel and physical proximity of the regions would cause interference.
10. The system of claim 6, the coloring module to use degree saturation (DSATUR) techniques to color nodes of the conflict graph,
11. The system of claim 6, where a location of a mobile device is identified within the physical space by sending NULL packets from at least three access points associated with a virtual region within which the mobiie device resides, and triangulating the location of the mobiie device based on how iong it takes the mobiie device to acknowledge receipt of the NULL packets.
12. The system of claim 6, the tracking module to schedule location update queries around periodic tracking windows, where a duration of the tracking windows is set by an administrator, and where a tracking window has a number of time slots governed by the duration of the tracking windows and by an expected location update query duration.
13. The system of claim 6, the tracking module to schedule location update queries to limit channel switching by access points.
14. The system of claim 6, comprising an initial positioning module to identify a virtual region within which a newly detected mobile device resides.
15. The system of claim 6, where one or more of the mapping module, the graphing module, the coloring module, and the scheduling module operate within a wireless local area network controller.
PCT/US2015/019213 2015-03-06 2015-03-06 Location update scheduling WO2016144298A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2015/019213 WO2016144298A1 (en) 2015-03-06 2015-03-06 Location update scheduling

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2015/019213 WO2016144298A1 (en) 2015-03-06 2015-03-06 Location update scheduling

Publications (1)

Publication Number Publication Date
WO2016144298A1 true WO2016144298A1 (en) 2016-09-15

Family

ID=56878642

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2015/019213 WO2016144298A1 (en) 2015-03-06 2015-03-06 Location update scheduling

Country Status (1)

Country Link
WO (1) WO2016144298A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040141617A1 (en) * 2001-12-20 2004-07-22 Volpano Dennis Michael Public access point
US20050149916A1 (en) * 2003-12-29 2005-07-07 Tatiana Shpeisman Data layout mechanism to reduce hardware resource conflicts
WO2009149417A1 (en) * 2008-06-06 2009-12-10 Skyhook Wireless, Inc. Method and system for determining location using a hybrid satellite and wlan positioning system by selecting the best wlan-ps solution
WO2014026228A1 (en) * 2012-08-14 2014-02-20 University Of South Australia Channel allocation in a communication system
US20140195149A1 (en) * 2013-01-10 2014-07-10 Xue Yang Positioning and mapping based on virtual landmarks

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040141617A1 (en) * 2001-12-20 2004-07-22 Volpano Dennis Michael Public access point
US20050149916A1 (en) * 2003-12-29 2005-07-07 Tatiana Shpeisman Data layout mechanism to reduce hardware resource conflicts
WO2009149417A1 (en) * 2008-06-06 2009-12-10 Skyhook Wireless, Inc. Method and system for determining location using a hybrid satellite and wlan positioning system by selecting the best wlan-ps solution
WO2014026228A1 (en) * 2012-08-14 2014-02-20 University Of South Australia Channel allocation in a communication system
US20140195149A1 (en) * 2013-01-10 2014-07-10 Xue Yang Positioning and mapping based on virtual landmarks

Similar Documents

Publication Publication Date Title
EP3139660B1 (en) Ap location query
TWI503022B (en) Detecting neighboring access points in a network
US9306724B2 (en) Apparatus and method for avoiding interference between access points
US10172160B2 (en) Channel contention method, access point, and station
US20160081120A1 (en) Communications method and device for single-frequency wireless local area network
US9148781B2 (en) Wireless transmission of data packets based on client associations
CN102196556B (en) System and method for determining position and coverage radium of APs (access points) of WIFI (wireless fidelity) network
EP2816860A1 (en) Downlink data collision avoidance method, access point and station
US20080146263A1 (en) Wireless communication system, weak radio wave communication device, mobile terminal device, base station device, and program
US20180070295A1 (en) Best Next Access Point List
US9668233B1 (en) Wireless communication network with distributed device location determination
CN105209929A (en) Access point-assisted positioning framework
US20180279254A1 (en) Method, device and system for estimating location
WO2014005461A1 (en) Virtual access point
KR101390722B1 (en) Wireless localization method using fingerprinting localization algorithms and apparatus thereof
US11832208B2 (en) Assigning UWB anchors for client ranging
Vales-Alonso et al. OSL: An optimization-based scheduler for RFID Dense-Reader Environments
WO2019141226A1 (en) Conflict management method and system for multiple mobile robots
CN107995686B (en) Wireless local area network channel allocation method, device and system
CN102137413A (en) Method and device for detecting basic service set identify (BSSID) conflict
WO2016144298A1 (en) Location update scheduling
EP3855783B1 (en) A device for deploying access points in a wireless network and a method therefor
TW201234897A (en) Cooperative apparatus and resource block allocation method thereof for use in wireless network
US20140018117A1 (en) Coexistence management system for measuring channel information between spectrum sharing devices and method thereof
CN109845197A (en) A kind of channel selection method and device

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: 15884828

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: 15884828

Country of ref document: EP

Kind code of ref document: A1