US7254405B2 - System and method for providing location information to applications - Google Patents

System and method for providing location information to applications Download PDF

Info

Publication number
US7254405B2
US7254405B2 US11/073,532 US7353205A US7254405B2 US 7254405 B2 US7254405 B2 US 7254405B2 US 7353205 A US7353205 A US 7353205A US 7254405 B2 US7254405 B2 US 7254405B2
Authority
US
United States
Prior art keywords
location
network
aware
entity
information
Prior art date
Legal status (The legal status 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 status listed.)
Active, expires
Application number
US11/073,532
Other versions
US20060121913A1 (en
Inventor
Peter A. Lin
Patrick M. Maurer
Patrick D. Smith
Narayanan Venkitaraman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google Technology Holdings LLC
Original Assignee
Motorola Inc
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 Motorola Inc filed Critical Motorola Inc
Priority to US11/073,532 priority Critical patent/US7254405B2/en
Assigned to MOTOROLA, INC. reassignment MOTOROLA, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MAURER, PATRICK M., LIN, PETER A., SMITH, PATRICK D., VANKITARAMAN, NARAYANAN
Priority to PCT/US2006/004695 priority patent/WO2006096282A2/en
Publication of US20060121913A1 publication Critical patent/US20060121913A1/en
Application granted granted Critical
Publication of US7254405B2 publication Critical patent/US7254405B2/en
Assigned to Motorola Mobility, Inc reassignment Motorola Mobility, Inc ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MOTOROLA, INC
Assigned to MOTOROLA MOBILITY LLC reassignment MOTOROLA MOBILITY LLC CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: MOTOROLA MOBILITY, INC.
Assigned to Google Technology Holdings LLC reassignment Google Technology Holdings LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MOTOROLA MOBILITY LLC
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • 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
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/08Mobility data transfer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/08Mobility data transfer
    • H04W8/14Mobility data transfer between corresponding nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/06Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals

Definitions

  • the field of the invention relates to communication networks, data networks, or sensor networks and, more specifically, to determining locations or adjacency of entities within or outside of these networks.
  • location-aware devices facilitate these applications by being able to provide location-related information to applications.
  • location-unaware devices are not provided with this functionality.
  • location information gathering, storage, and usage were network, device, or application specific. Specifically, after the information had been gathered, the information was usually stored in a non-uniform format depending upon the device or network type. Furthermore, applications used within one type of network were not portable to another type of network. Consequently, location information gathered in one network, from one type of device, or from disparate applications was not useable in another network, at a different type of device, or among different applications.
  • a cellular network could determine and store the location of a multi-mode handset of a user. Subsequently, the user (with the multi mode handset) might move from the cellular network to a Wireless Local Area Network (WLAN).
  • WLAN Wireless Local Area Network
  • the user location information ceased to remain available or accurate when the handset switched from the cellular network to the WLAN. Even if the information was of a different type or were to remain available, the location information from the cellular network was stored in a different format than that required by devices operating in the WLAN. Consequently, location based service (LBS) applications that required accurate and available location data became inoperative or produced erroneous results.
  • LBS applications operating in the cellular network could not operate in the WLAN.
  • FIG. 1 is a block diagram of system for providing and maintaining location information to applications according to the present invention
  • FIG. 2 is a block diagram of one example of a Seamless Measurement of Location Entity (SMLE) according to the present invention
  • FIG. 3 is a flow chart of one example of an approach for providing and maintaining location information to applications according to the present invention
  • FIG. 4 is a diagram showing one example of a system that dynamically updates location information in a database according to the present invention
  • FIG. 5 is a block diagram of one example of a system for providing and maintaining location information to applications according to the present invention.
  • FIG. 6 is a block diagram of an initial data structure related to the system of FIG. 5 according to the present invention.
  • FIG. 7 is a block diagram of the data structure related to the system of FIG. 5 after the first client device 504 moves from the cellular network 512 to the WLAN 506 according to the present invention
  • FIG. 8 is a block diagram of the data structure related to the system of FIG. 5 after the second client device 520 becomes associated with the WLAN 506 according to the present invention.
  • FIG. 9 is a block diagram of the data structure related to the system of FIG. 5 after the first device 514 moves within the WLAN 506 according to the present invention.
  • a system and method for determining and maintaining location information for network users gathers location information from location-aware devices, derives information for location-unaware devices, and stores the results in a data structure that is dynamically updated.
  • the data structure and the information contained therein are stored and made available to devices and applications independently of their type or association with an underlying network.
  • first location information related to a location-aware device is first gathered.
  • Second location information for a location-unaware device is determined from the first location information.
  • Such devices may be client devices, edge network devices, or devices residing at the network core.
  • a data structure is created comprising a binding of the second location information and an identifying parameter associated with the location-unaware device.
  • the data structure is provided in a form usable by an application irrespective of the type of the underlying network associated with the application and irrespective of the device type, device identity, or user identity associated with the location-aware device or the location-unaware device.
  • the second location information is refreshed or updated based upon subsequent location information gathered about the same location-aware device or other location-aware devices as these devices move between a first network and a second network, for instance, between a cellular network and a Wireless Local Area Network (WLAN).
  • the second location information in the data structure is preserved as the location-aware device, at some other time, becomes associated with and begins operating a third device (e.g., another WLAN access point).
  • first location information related to a first device in a location-aware network is gathered.
  • Second location information is determined for a second device in a location-unaware network from the first location information.
  • the second location information that is computed is used to determine location information for other devices. Additionally, in some of these embodiments, the second location information that has been computed may be updated as new information becomes available. These updates are used to refresh or refine the location information.
  • first location information corresponding to a cell phone is used to determine the location of a location-unaware access point. The cell phone immediately gets into radio contact with an RFID whose location is known more accurately than the location of the cell phone. The RFID location is another measurement usable in determining the location of the WLAN access point, and, accordingly, the location of the WLAN access point is updated by refining the previous WLAN access point location with the new location information. It will be appreciated that the association between the WLAN access point and the RFID location is implied even if the cell phone is serially, rather than simultaneously, connected to both the RFID and the WLAN access point.
  • the determination may be based upon a real/direct, indirect, or implied association between the first device and the second device.
  • a real association is formed between a multimode handset and an access point when the multimode handset, with location awareness in at least one of its modes, registers with the WLAN access point for data access.
  • the first and second devices are in physical contact, by way of electrical, radio or other physical connections requiring a degree of proximity. Such physical contact may be for some other purpose than for determining proximity. Rather, the physical contact may be for the purpose of exchanging data between the first and second devices.
  • an indirect association between the handset and a printer may be determined, if, using the proceeding example, a printer is on the same sub-network as the WLAN access point.
  • the first and the second devices are not in direct physical contact, but both the first and second device have made a direct association with a common intermediate device or network.
  • an implied association may be formed between a multimode or single-mode handset currently registered with a cellular base station and a laptop computer (currently connected to the Internet), when the handset and computer belong to the same user.
  • approaches are provided that allow location features of one network to be used in another network.
  • User location information is transported across devices and networks even when the user is operating across disparate networks and using different devices.
  • location applications are able to operate over multiple networks and with devices having various degrees of location awareness.
  • location information can be gathered using client devices, but can be maintained relating to edge or access devices, which are less identified with an end user, thereby providing anonymous location information gathering.
  • location information can be obtained by end-users without giving away their identities to untrusted parties.
  • a Seamless Measurement of Location Entity (SMLE) 110 is coupled to a Geographic Information Systems (GIS) function 102 .
  • GIS function 102 may provide services such as location mapping to the SMLE 110 .
  • Applications are connected to a communication channel 104 , which is used to interface to the SMLE 110 .
  • These applications may reside in a wide range of equipment, such as a server, end user device, or some other combination as is known in the art.
  • These applications may request and obtain location information concerning a user by issuing an Application Program Interface (API) command (e.g., getLocation(user)) to the SMLE 110 via the channel 104 and receiving a response from the SMLE 110 .
  • API Application Program Interface
  • appropriate triggers may also be sent to applications via the channel 104 based upon a call back request received at the SMLE 110 .
  • the SMLE 110 also accesses a location cache 106 , which is used to store location-related data of client devices 136 , 138 , and 140 .
  • the cache 106 may be any type of temporary or permanent memory storage device.
  • the data structure stored in the cache 106 is preferably a binding where the gathered or derived location information is linked with device identifying parameters.
  • the data structure in the cache 106 is in a form usable by an application irrespective of a network type of an underlying network associated with the application and irrespective of a device type, a device identity, and user associated with the location-aware device 136 and the location-unaware device 138 .
  • the client devices 136 , 138 , and 140 may be any type of wired or wireless user or network device such as cellular phones, pagers, multi-mode devices, access points, or laptop computers. Other examples of client devices are possible.
  • these client devices 136 , 138 , and 140 may be location-aware devices that are capable of providing explicit information concerning their location to other entities, or location-unaware devices that do not have this capability.
  • a location-aware device a multi mode device may obtain and, therefore, be aware of its Global Position System (GPS) coordinates.
  • GPS Global Position System
  • networks may be location-aware or location-unaware.
  • a network such as the IMS cellular network 114 may include equipment to resolve GPS coordinate information about base stations and handsets, and the cable network 126 may possess street address information associated with cable modems.
  • each network 114 and 126 possesses the ability to determine some form of location information through and about devices that are in or a part of the network.
  • the networks 114 and 126 are examples of location-aware networks for these specific types of location information respectively.
  • the cable network 126 when it has GPS coordinates, does not possess the ability to determine a GPS coordinate form of location of devices within the network, nor is it capable of using the GPS coordinates if given access to them.
  • Such networks are, therefore, an example of a location-unaware network for that form of location information.
  • the SMLE 110 is also coupled to an Internet Protocol Multimedia Subsystem (IMS) Service Control gateway 112 (hereinafter ā€œISC gateway 112 ā€), a gateway 118 , a cable interface 124 , and a Session Initiation Protocol (SIP) interfaces 130 and 142 , and a Sensor Network Interface 148 .
  • IMS gateway 112 provides an interface between an IMS cellular network 114 and an application server.
  • the devices 112 , 118 , 124 , 130 , 142 , and 148 each provide an interface between various types of networks to which they are connected and the SMLE 110 .
  • the networks shown in FIG. 1 are examples only and, for example may be any type of IEEE 802 network or any other type of network.
  • the SMLE 110 gathers location information from the different networks and processes this information into a uniform format. More specifically, a support layer may be provided in the devices 136 , 138 , and 140 , and this layer sends location and context information to the SMLE 110 via the networks and interfaces mentioned above. The SMLE 110 processes this information and maintains consistency of the information, for example, in a uniform format. As a result, the SMLE 110 provides a consistent view of a user location to an application and decouples applications from particular types of access networks and/or devices.
  • the ISC 112 is coupled to IMS cellular network 114 .
  • the network 114 in turn is coupled to a Call Session Control Function (CSCF) 116 .
  • the CSCF 116 handles registration information (as a contact point with an end user device), and provides an interface to any of the client devices 136 , 138 , and 140 .
  • Devices 136 , 138 , and 140 may interface with some or all of the interfaces and a device, for example, may connect to only one interface.
  • the gateway 118 is coupled to the network 120 .
  • the network 120 is a 2/2.5G/Unlicensed Mobile Access (UMA) network.
  • the network 120 is also coupled to a UMA Network Controller (UNC) interface 122 .
  • the UNC interface 122 provides accessibility between the client devices 136 , 138 , and 140 and the network 120 .
  • the SIP interface 130 is coupled to the WLAN 132 and arranges sessions between entities.
  • the WLAN 132 is also coupled to mobility manager 134 .
  • the mobility manager 134 provides an interface to the client devices 136 , 138 , and 140 .
  • the SIP interface 142 is coupled to the WiMAX network 144 and arranges sessions between different entities.
  • the WiMAX network 144 is coupled to call server 146 , which provides an interface to the client devices 136 , 138 , and 140 .
  • the Sensor Network Interface 148 is coupled to a sensor network 150 .
  • the sensor network 150 is coupled to a sensor network controller 152 , which provides an interface to the client devices 136 , 138 , and 140 .
  • the sensor network interface 148 is a protocol that facilitates communication or data exchanges between a sensor network and other devices or applications such as the SMLE 110 .
  • the sensor network 150 communicates with a collection of devices for providing measurements such as proximity, temperature, or other parameters.
  • the sensor network controller 152 is an optional device, which is conditioned to act on behalf of commands about the sensor network.
  • location information related to a location-aware device is gathered by the SMLE 110 and stored within the location cache 106 .
  • Location information for a location-unaware device for instance, for client device 138 , which may be a WLAN access point, may be determined from the location information from the location-aware device.
  • the location of the location-aware device 136 is determined to be at a known point of interest (having a geographic location x, y) and the location-unaware device 138 is determined to share an association with the location-aware device 136 , it can be determined that the location-unaware device 138 is located proximate to the known point of interest with geographical location (x, y).
  • the location of the location-unaware client device 138 is determined even though the device 138 has no location determination capability or awareness of its own, or even though the network it is associated with has no location capability or awareness of its own.
  • applications using the channel 104 may make requests for location information.
  • an API For example, an API, getLocation(user), may be defined to determine the location of a user.
  • the information provided to the API is in a form that is usable by an LBS application.
  • the accuracy of the information stored in the cache 106 may be also maintained over time to ensure accuracy and consistency. For example, when the user changes networks, the location information as is maintained within the SMLE 110 may be updated via user location information obtained from the new network and provided to the SMLE 110 .
  • the location information of the user moves with the user.
  • the physical location known in the cellular domain is preserved in the data structure within the cache 106 after moving to the VoIP domain. For instance, a new estimate of location may be made after the change occurs.
  • Information may be obtained from the data structure without compromising the privacy of a user.
  • an application may obtain the location of the user without obtaining other information concerning the user.
  • unauthorized users are prevented from compromising the privacy of others, and applications authorized only for user location are prevented from gaining other user information and consequently prevented from compromising the privacy of others.
  • the SMLE 110 provides an aggregation point for location information.
  • LBS applications can continue to receive location information from the SMLE 110 obtained via cellular location servers and RFID location servers.
  • the location accuracy may be enhanced by using the RFID location information to obtain more precise location estimates.
  • the SMLE 200 comprises a processor 202 , a cellular location manager 210 , a Radio Frequency Identifier (RFID) location manager 212 , a WiMAX location manager 213 , and an nth location manager 214 .
  • RFID Radio Frequency Identifier
  • the actual number and types of location managers may vary based upon the needs of a particular system.
  • the cellular location manager 210 obtains location information 204 , if available, from a cellular network and interfaces with a GIS application.
  • the location information 204 may be of devices in and attached to the cellular network such as a base site or mobile phone.
  • the RFID location manager 212 obtains pre-programmed or previously determined location information 206 , if available, from an RFID system.
  • the RFID system does not provide location on its own, but, in this example, it is assumed that location has been mapped to a set of fixed RFID devices, and this mapping could have been performed manually or through the approaches described herein.
  • the WiMAX location manager 213 obtains location information 209 , if available, from a WiMAX system.
  • the nth location manager 214 obtains location information 208 , if available, from some other type of system.
  • the information 204 , 206 , 208 , and 209 obtained by the managers is sent to the processor 202 .
  • the processor 202 processes and maintains the information 204 , 206 , 208 , and 209 .
  • the processor 202 derives other information from the gathered information and stores the resultant data structure in a cache (e.g., cache 106 of FIG. 1 ).
  • the processor 202 is programmed to gather location information, if available, related to a location-aware device received from managers 210 , 212 , 213 , and 214 and to determine other location information for a location-unaware device from the location information from the location-aware device.
  • the location of the location-unaware device is determined using information gathered about the location-aware devices or location aware networks and an association between the location-unaware device and the location-aware device or network.
  • the processor 202 creates a data structure (comprising a binding of the location information with device identifying information) and stores it in a cache.
  • the data structure may be in a form that does not depend upon the type of an underlying network associated with any calling application, the device type, the device identity, or the identity of the user.
  • the data structure includes identifying information of some entity such as a device, user, adjacent network, or other entity but may optionally exclude identifying information of the entity or entities from which location information is gathered.
  • location information is gathered from location-aware devices. For example, if a location-aware device is in a cellular network, the location of the device may be determined by triangulation or other techniques that are known in the art.
  • a position estimate is derived for a location-unaware device using the location information gathered concerning the location-aware device and an association of some form as previously described.
  • the location of a location-unaware device e.g., an access point
  • a location-aware device e.g., a multi-mode handset
  • the location of the location-unaware device may be derived from the already gathered information.
  • device identifying parameters are gathered for the devices. For example, a Media Access Control (MAC) address, an Internet Protocol (IP) address, a Universal Resource Identifier (URI), or a telephone number may be obtained.
  • MAC Media Access Control
  • IP Internet Protocol
  • URI Universal Resource Identifier
  • the derived location information and identifying parameter are bound together in the data structure for later use.
  • step 310 it is determined if a query has been received for the location of a user. If the answer is negative, execution continues at step 314 . If the answer is affirmative, then at step 312 , data is obtained from the database to answer the query.
  • an API may be used to query the database and request a user location. This query may be for a location of an access point, or in another approach, the query may be for a device connected to the access point. Other examples of queries are possible.
  • step 314 it is determined if maintenance of the location information is required. For instance, a device may move between networks, within a network, or change registration status. If the answer at step 314 is negative, execution continues with step 310 as described above. If the answer is affirmative, control continues with step 316 where the data is updated. For example, a location update may be performed to determine the location where the device is present with the highest certainty. Updates may refine the location information to keep the information up-to-date or refine the information to gain more accuracy. Execution then continues with step 310 as described above.
  • a client device is initially at a cellular location 402 and moves to an RFID network 404 , which has a conference room location 406 and an office location 408 .
  • the converged location is given by a function such as MAX_R(Loc_ 1 , R 1 ; Loc_ 2 , R 2 ; Loc_N, RN).
  • Loc_N is a location.
  • Loc_N may be a distinct measurement, or may be a combination of a current measurement with previous measurements.
  • RN is proportional to e ā‡ t/TN and is the reliability index for the location information from network n.
  • TN is a freshness factor for the network or device N.
  • the parameter t is the time elapsed since the last valid location update in the location cache.
  • the function MAX_R gives the location of the device with the highest reliability index and may be periodically applied to stored location information associated with a client device to ensure the freshness and accuracy of the information. It will be appreciated that variants and entirely different functions are possible and depending upon the desired use. It will also be appreciated that modifications to collected measurements can be made, such as deleting a ā‡ Loc_i, Ri ā‡ pair made obsolete due to a subsequent measurement that takes place.
  • the system includes an application 502 , SMLE 504 , a WLAN 506 , and a cellular network 512 .
  • the cellular network 512 includes a base station 522 and a location-aware device 514 .
  • the WLAN 506 comprises a first access point (AP 1 ) 510 and a second access point (AP 2 ) 508 .
  • the network 506 also includes a location-unaware device 520 .
  • the SMLE 504 gathers and maintains location information about location-aware and location-unaware devices 514 and 520 as described above.
  • the application 502 may be any application that requires location information to enable its functioning.
  • the access points 508 and 510 are switching devices that enable communications amongst devices that move within the network 506 .
  • FIGS. 6-9 one example of the changes made to a data structure over time is described in relation to the system shown in FIG. 5 .
  • tools e.g., programming language and programming data structure
  • the tools used to implement the actual bindings and data structure may vary based upon the needs of the system and other factors.
  • FIG. 6 illustrates how a data structure changes over time and as client devices move within the system. Specifically, these figures illustrate an initial data structure ( FIG. 6 ); the data structure after the location-aware device 514 moves from the cellular network 512 to the WLAN 506 ( FIG. 7 ); the data structure after the location-unaware device 520 becomes associated with the access point 510 ; and the data structure after the location-aware device 514 moves to the second access point 508 .
  • Location information can be gathered as a device transits between a location-unaware network or mode and a location-aware network or mode in either direction (entering or leaving the location-aware network or mode). Further, a transition does not need to be instant to provide a useable association. For instance, a registration released from a WLAN access point followed by a registration made with a cellular base station a short time later can still imply physical proximity.
  • FIG. 6 shows an initial data structure with the location-aware device 514 being in the cellular network 512 .
  • an identifier 602 represents an identifier of the location-aware device 514 within the network 512 .
  • the identifier 602 is linked to location information 604 and a base station identifier 606 .
  • the base station identifier 606 identifies the base station 522 that is currently serving the device 514 .
  • FIG. 7 shows the data structure after the location-aware device 514 has moved from the cellular network 512 to the WLAN 506 and becomes associated with the access point 510 .
  • an identifier 702 is created.
  • the identifier 702 may be, in one example, the MAC address of the access point 510 .
  • the identifier 702 is bound to the identifier 602 (of the first client device 514 ), location information 604 , and base station identifier 606 .
  • the base station identifier 606 may be tagged with information identifying it as being near or adjacent to access point 510 , even though the base station 522 and access point 510 cannot interact directly. Consequently, a mapping of the access point 510 and base station 522 across networks 506 and 512 has been created and may be used in the future to locate other devices or for other purposes.
  • any of the elements 602 , 604 , and 606 may change or have been updated since the element values were first determined. Further, although elements 604 and 606 may now be bound to element 702 , the client device identifier 602 may optionally be excluded from this binding, excluded from API responses, or replaced with a more anonymous value to preserve device or user privacy.
  • FIG. 8 shows the data structure after the location-unaware device 520 becomes associated with the access point 510 .
  • an identifier 804 is created and bound to the identifier 702 (of the access point 510 ), identifier 602 (of the first client device 514 ), location information 604 , and base station identifier 606 .
  • the actual values contained within any of the elements may have changed or have been updated.
  • the client device identifiers 602 and 804 may be optionally excluded from this binding, excluded from API responses, or replaced with more anonymous values to preserve device or user privacy. Because of the binding, the location of the second client device 520 may now be determined using information previously gathered from the location-aware device 514 . In one example, this binding may take the form of a data structure (not shown) corresponding to the second client device 520 that is created specifically for the second client device 520 .
  • FIG. 9 shows the data structure after the location-aware device 514 moves to the second access point 508 .
  • an identifier 910 (of the second access point) is created and bound to the identifier 602 (of the location-aware device).
  • An informational element 914 (which indicates that the second access point 508 is near the first access point 510 ) is also created and bound to this information.
  • the identifier 702 (of the first access point) is created and bound to the identifier 804 (of the second access point), location information 604 , and base station information 606 .
  • An informational element 905 is also bound to these elements and indicates that the first access point 510 is near the second access point 508 . Consequently, a mapping of the access points 508 and 510 within the network 506 has been created and may be used in the future to locate other devices or for other purposes.
  • the location-aware device identifier 602 has also been unbound or released from the data structure of the first access point 510 , and no longer appears in this structure.
  • the SMLE described herein provides a service to applications and application developers in the form of an intelligent and unified database coupled to an API, allowing for highly-portable applications with a greater depth of features.
  • the SMLE also enables an application to operate over multiple networks and with different types of devices.
  • location information can be obtained and used by end-users without giving away their identity to untrusted parties.
  • the SMLE provides a single functional point for location information storage and processing, thereby promoting network efficiencies.

Abstract

First location information related to a location-aware device (514) is gathered. Second location information for a location-unaware device (520) is determined from the first location information. A data structure is created comprising a binding of the second location information and an identifying parameter of the location-unaware device (520). The data structure is provided in a form usable by an application.

Description

CROSS REFERENCES TO RELATED APPLICATIONS
This application claims the benefit of U.S. Provisional Application No. 60/630,106 filed on Nov. 22, 2004 which is incorporated herein by reference in its entirety.
FIELD OF THE INVENTION
The field of the invention relates to communication networks, data networks, or sensor networks and, more specifically, to determining locations or adjacency of entities within or outside of these networks.
BACKGROUND OF THE INVENTION
In communication networks, the location of a user or user device is often needed to perform a function. For instance, alerts or other types of information may need to be delivered to a user. Location-aware devices facilitate these applications by being able to provide location-related information to applications. On the other hand, location-unaware devices are not provided with this functionality.
In previous communication networks, location information gathering, storage, and usage were network, device, or application specific. Specifically, after the information had been gathered, the information was usually stored in a non-uniform format depending upon the device or network type. Furthermore, applications used within one type of network were not portable to another type of network. Consequently, location information gathered in one network, from one type of device, or from disparate applications was not useable in another network, at a different type of device, or among different applications.
In addition, devices operating in previous systems relied upon the networks to provide location information. However, previous networks were not configured to provide location information because of technical or configuration management issues. For example, in WLAN networks, WLAN Access Points were often too high in number to manually configure and maintain the location of each access point. Similarly, for sensor networks, the sensors had very little processing power and memory and were also high in numbers.
In one example of these problems, a cellular network could determine and store the location of a multi-mode handset of a user. Subsequently, the user (with the multi mode handset) might move from the cellular network to a Wireless Local Area Network (WLAN). However, in previous systems, the user location information ceased to remain available or accurate when the handset switched from the cellular network to the WLAN. Even if the information was of a different type or were to remain available, the location information from the cellular network was stored in a different format than that required by devices operating in the WLAN. Consequently, location based service (LBS) applications that required accurate and available location data became inoperative or produced erroneous results. In addition, LBS applications operating in the cellular network could not operate in the WLAN.
Some previous systems attempted to resolve the above-mentioned problems by allowing for the manual modification of device configurations by a user. In such systems, a user would manually reconfigure their equipment to operate within a particular network, device, or application and change this configuration as needed. However, this manual reconfiguration process was expensive, time-consuming, and prone to user errors. Even after manual reconfiguration, location information remained in one domain (e.g., a particular network) and was not transportable across domains. Furthermore, no domain-independent application query mechanism existed that was standardized across all network types to determine a location of the user.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of system for providing and maintaining location information to applications according to the present invention;
FIG. 2 is a block diagram of one example of a Seamless Measurement of Location Entity (SMLE) according to the present invention;
FIG. 3 is a flow chart of one example of an approach for providing and maintaining location information to applications according to the present invention;
FIG. 4 is a diagram showing one example of a system that dynamically updates location information in a database according to the present invention;
FIG. 5 is a block diagram of one example of a system for providing and maintaining location information to applications according to the present invention;
FIG. 6 is a block diagram of an initial data structure related to the system of FIG. 5 according to the present invention;
FIG. 7 is a block diagram of the data structure related to the system of FIG. 5 after the first client device 504 moves from the cellular network 512 to the WLAN 506 according to the present invention;
FIG. 8 is a block diagram of the data structure related to the system of FIG. 5 after the second client device 520 becomes associated with the WLAN 506 according to the present invention; and
FIG. 9 is a block diagram of the data structure related to the system of FIG. 5 after the first device 514 moves within the WLAN 506 according to the present invention.
Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions and/or relative positioning of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of various embodiments of the present invention. Also, common but well-understood elements that are useful or necessary in a commercially feasible embodiment are often not depicted in order to facilitate a less obstructed view of these various embodiments of the present invention. It will also be understood that the terms and expressions used herein have the ordinary meaning as is accorded to such terms and expressions with respect to their corresponding respective areas of inquiry and study except where specific meanings have otherwise been set forth herein.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
A system and method for determining and maintaining location information for network users gathers location information from location-aware devices, derives information for location-unaware devices, and stores the results in a data structure that is dynamically updated. In one example, the data structure and the information contained therein are stored and made available to devices and applications independently of their type or association with an underlying network.
In many of these embodiments, first location information related to a location-aware device (e.g., a handset) is first gathered. Second location information for a location-unaware device (e.g., a network access point in a location-unaware network) is determined from the first location information. Such devices may be client devices, edge network devices, or devices residing at the network core. A data structure is created comprising a binding of the second location information and an identifying parameter associated with the location-unaware device. In one example, the data structure is provided in a form usable by an application irrespective of the type of the underlying network associated with the application and irrespective of the device type, device identity, or user identity associated with the location-aware device or the location-unaware device.
In still others of these embodiments, the second location information is refreshed or updated based upon subsequent location information gathered about the same location-aware device or other location-aware devices as these devices move between a first network and a second network, for instance, between a cellular network and a Wireless Local Area Network (WLAN). In another example, the second location information in the data structure is preserved as the location-aware device, at some other time, becomes associated with and begins operating a third device (e.g., another WLAN access point).
In yet others of these embodiments, first location information related to a first device in a location-aware network is gathered. Second location information is determined for a second device in a location-unaware network from the first location information.
In additional ones of these embodiments, the second location information that is computed is used to determine location information for other devices. Additionally, in some of these embodiments, the second location information that has been computed may be updated as new information becomes available. These updates are used to refresh or refine the location information. In one example, first location information corresponding to a cell phone is used to determine the location of a location-unaware access point. The cell phone immediately gets into radio contact with an RFID whose location is known more accurately than the location of the cell phone. The RFID location is another measurement usable in determining the location of the WLAN access point, and, accordingly, the location of the WLAN access point is updated by refining the previous WLAN access point location with the new location information. It will be appreciated that the association between the WLAN access point and the RFID location is implied even if the cell phone is serially, rather than simultaneously, connected to both the RFID and the WLAN access point.
The determination may be based upon a real/direct, indirect, or implied association between the first device and the second device. In one example, a real association is formed between a multimode handset and an access point when the multimode handset, with location awareness in at least one of its modes, registers with the WLAN access point for data access. In a direct association, the first and second devices are in physical contact, by way of electrical, radio or other physical connections requiring a degree of proximity. Such physical contact may be for some other purpose than for determining proximity. Rather, the physical contact may be for the purpose of exchanging data between the first and second devices.
In another example, an indirect association between the handset and a printer may be determined, if, using the proceeding example, a printer is on the same sub-network as the WLAN access point. In an indirect association, the first and the second devices are not in direct physical contact, but both the first and second device have made a direct association with a common intermediate device or network.
In another example, an implied association may be formed between a multimode or single-mode handset currently registered with a cellular base station and a laptop computer (currently connected to the Internet), when the handset and computer belong to the same user. In an implied association, there may be no direct association between the first and second devices, but the first and second devices share some common attribute, such as ownership, that implies proximity.
Thus, approaches are provided that allow location features of one network to be used in another network. User location information is transported across devices and networks even when the user is operating across disparate networks and using different devices. Moreover, location applications are able to operate over multiple networks and with devices having various degrees of location awareness. In addition, location information can be gathered using client devices, but can be maintained relating to edge or access devices, which are less identified with an end user, thereby providing anonymous location information gathering. Furthermore, location information can be obtained by end-users without giving away their identities to untrusted parties.
Referring now to FIG. 1, one example of a system for providing location information to applications is described. A Seamless Measurement of Location Entity (SMLE) 110 is coupled to a Geographic Information Systems (GIS) function 102. The GIS function 102 may provide services such as location mapping to the SMLE 110. Applications are connected to a communication channel 104, which is used to interface to the SMLE 110. These applications may reside in a wide range of equipment, such as a server, end user device, or some other combination as is known in the art. These applications may request and obtain location information concerning a user by issuing an Application Program Interface (API) command (e.g., getLocation(user)) to the SMLE 110 via the channel 104 and receiving a response from the SMLE 110. In the opposite direction, appropriate triggers may also be sent to applications via the channel 104 based upon a call back request received at the SMLE 110.
The SMLE 110 also accesses a location cache 106, which is used to store location-related data of client devices 136, 138, and 140. The cache 106 may be any type of temporary or permanent memory storage device. The data structure stored in the cache 106 is preferably a binding where the gathered or derived location information is linked with device identifying parameters. In addition, in some examples, the data structure in the cache 106 is in a form usable by an application irrespective of a network type of an underlying network associated with the application and irrespective of a device type, a device identity, and user associated with the location-aware device 136 and the location-unaware device 138.
The client devices 136, 138, and 140 may be any type of wired or wireless user or network device such as cellular phones, pagers, multi-mode devices, access points, or laptop computers. Other examples of client devices are possible. In addition, these client devices 136, 138, and 140 may be location-aware devices that are capable of providing explicit information concerning their location to other entities, or location-unaware devices that do not have this capability. In one example of a location-aware device, a multi mode device may obtain and, therefore, be aware of its Global Position System (GPS) coordinates. It will be appreciated that other types of entities can be location-aware or location-unaware, and that such entities can be parameterized by location. As such, location information can be gathered by the SMLE for them as well. Examples of such entities are access points, mobile routers, a subnet prefix, ad-hoc networks, stationary networks, or moving networks.
Furthermore, networks may be location-aware or location-unaware. In one example of location-aware networks, a network such as the IMS cellular network 114 may include equipment to resolve GPS coordinate information about base stations and handsets, and the cable network 126 may possess street address information associated with cable modems. In this case, each network 114 and 126 possesses the ability to determine some form of location information through and about devices that are in or a part of the network. Thus, the networks 114 and 126 are examples of location-aware networks for these specific types of location information respectively.
In an example of a location-unaware network, the cable network 126 when it has GPS coordinates, does not possess the ability to determine a GPS coordinate form of location of devices within the network, nor is it capable of using the GPS coordinates if given access to them. Such networks are, therefore, an example of a location-unaware network for that form of location information.
In one example, the SMLE 110 is also coupled to an Internet Protocol Multimedia Subsystem (IMS) Service Control gateway 112 (hereinafter ā€œISC gateway 112ā€), a gateway 118, a cable interface 124, and a Session Initiation Protocol (SIP) interfaces 130 and 142, and a Sensor Network Interface 148. The ISC gateway 112 provides an interface between an IMS cellular network 114 and an application server. The devices 112, 118, 124, 130, 142, and 148 each provide an interface between various types of networks to which they are connected and the SMLE 110. The networks shown in FIG. 1 are examples only and, for example may be any type of IEEE 802 network or any other type of network.
The SMLE 110 gathers location information from the different networks and processes this information into a uniform format. More specifically, a support layer may be provided in the devices 136, 138, and 140, and this layer sends location and context information to the SMLE 110 via the networks and interfaces mentioned above. The SMLE 110 processes this information and maintains consistency of the information, for example, in a uniform format. As a result, the SMLE 110 provides a consistent view of a user location to an application and decouples applications from particular types of access networks and/or devices.
The ISC 112 is coupled to IMS cellular network 114. The network 114 in turn is coupled to a Call Session Control Function (CSCF) 116. The CSCF 116 handles registration information (as a contact point with an end user device), and provides an interface to any of the client devices 136, 138, and 140. Devices 136, 138, and 140 may interface with some or all of the interfaces and a device, for example, may connect to only one interface.
The gateway 118 is coupled to the network 120. The network 120 is a 2/2.5G/Unlicensed Mobile Access (UMA) network. The network 120 is also coupled to a UMA Network Controller (UNC) interface 122. The UNC interface 122 provides accessibility between the client devices 136, 138, and 140 and the network 120.
The SIP interface 130 is coupled to the WLAN 132 and arranges sessions between entities. The WLAN 132 is also coupled to mobility manager 134. The mobility manager 134 provides an interface to the client devices 136, 138, and 140.
The SIP interface 142 is coupled to the WiMAX network 144 and arranges sessions between different entities. The WiMAX network 144 is coupled to call server 146, which provides an interface to the client devices 136, 138, and 140.
The Sensor Network Interface 148 is coupled to a sensor network 150. The sensor network 150 is coupled to a sensor network controller 152, which provides an interface to the client devices 136, 138, and 140. The sensor network interface 148 is a protocol that facilitates communication or data exchanges between a sensor network and other devices or applications such as the SMLE 110. The sensor network 150 communicates with a collection of devices for providing measurements such as proximity, temperature, or other parameters. The sensor network controller 152 is an optional device, which is conditioned to act on behalf of commands about the sensor network.
In one example of the operation of the system of FIG. 1, location information related to a location-aware device, for instance, client device 136, is gathered by the SMLE 110 and stored within the location cache 106. Location information for a location-unaware device, for instance, for client device 138, which may be a WLAN access point, may be determined from the location information from the location-aware device. For example, if the location of the location-aware device 136 is determined to be at a known point of interest (having a geographic location x, y) and the location-unaware device 138 is determined to share an association with the location-aware device 136, it can be determined that the location-unaware device 138 is located proximate to the known point of interest with geographical location (x, y). Thus, the location of the location-unaware client device 138 is determined even though the device 138 has no location determination capability or awareness of its own, or even though the network it is associated with has no location capability or awareness of its own.
As mentioned previously, applications using the channel 104 may make requests for location information. For example, an API, getLocation(user), may be defined to determine the location of a user. The information provided to the API is in a form that is usable by an LBS application. Thus, devices having no location awareness can be located and applications requesting the information will receive timely and accurate information.
The accuracy of the information stored in the cache 106 may be also maintained over time to ensure accuracy and consistency. For example, when the user changes networks, the location information as is maintained within the SMLE 110 may be updated via user location information obtained from the new network and provided to the SMLE 110.
In another example of updating information, when the user switches devices from a cell phone to a Voice Over Internet Protocol (VoIP) service phone over broadband, the location information of the user moves with the user. The physical location known in the cellular domain is preserved in the data structure within the cache 106 after moving to the VoIP domain. For instance, a new estimate of location may be made after the change occurs.
Information may be obtained from the data structure without compromising the privacy of a user. For example, an application may obtain the location of the user without obtaining other information concerning the user. Thus, unauthorized users are prevented from compromising the privacy of others, and applications authorized only for user location are prevented from gaining other user information and consequently prevented from compromising the privacy of others.
In the architecture described above, the SMLE 110, from the perspective of the service entities, provides an aggregation point for location information. For example, in the WLAN mode, LBS applications can continue to receive location information from the SMLE 110 obtained via cellular location servers and RFID location servers. In a cellular mode of operation, the location accuracy may be enhanced by using the RFID location information to obtain more precise location estimates.
Referring now to FIG. 2, one example of a SMLE 200 is described. The SMLE 200 comprises a processor 202, a cellular location manager 210, a Radio Frequency Identifier (RFID) location manager 212, a WiMAX location manager 213, and an nth location manager 214. The actual number and types of location managers may vary based upon the needs of a particular system.
The cellular location manager 210 obtains location information 204, if available, from a cellular network and interfaces with a GIS application. The location information 204 may be of devices in and attached to the cellular network such as a base site or mobile phone. The RFID location manager 212 obtains pre-programmed or previously determined location information 206, if available, from an RFID system. The RFID system does not provide location on its own, but, in this example, it is assumed that location has been mapped to a set of fixed RFID devices, and this mapping could have been performed manually or through the approaches described herein. The WiMAX location manager 213 obtains location information 209, if available, from a WiMAX system. Finally, the nth location manager 214 obtains location information 208, if available, from some other type of system. The information 204, 206, 208, and 209 obtained by the managers is sent to the processor 202.
The processor 202 processes and maintains the information 204, 206, 208, and 209. The processor 202 derives other information from the gathered information and stores the resultant data structure in a cache (e.g., cache 106 of FIG. 1). For example, the processor 202 is programmed to gather location information, if available, related to a location-aware device received from managers 210, 212, 213, and 214 and to determine other location information for a location-unaware device from the location information from the location-aware device. For location-unaware devices or devices on networks having no location manager, the location of the location-unaware device is determined using information gathered about the location-aware devices or location aware networks and an association between the location-unaware device and the location-aware device or network.
As mentioned, the processor 202 creates a data structure (comprising a binding of the location information with device identifying information) and stores it in a cache. The data structure may be in a form that does not depend upon the type of an underlying network associated with any calling application, the device type, the device identity, or the identity of the user. The data structure includes identifying information of some entity such as a device, user, adjacent network, or other entity but may optionally exclude identifying information of the entity or entities from which location information is gathered.
Referring now to FIG. 3, one example of an approach for providing user or device location information to applications and maintaining this information is described. At step 302, location information is gathered from location-aware devices. For example, if a location-aware device is in a cellular network, the location of the device may be determined by triangulation or other techniques that are known in the art.
At step 304, a position estimate is derived for a location-unaware device using the location information gathered concerning the location-aware device and an association of some form as previously described. For example, the location of a location-unaware device (e.g., an access point) may be derived from information from a location-aware device (e.g., a multi-mode handset). Consequently, the location of the location-unaware device may be derived from the already gathered information. At step 306, device identifying parameters are gathered for the devices. For example, a Media Access Control (MAC) address, an Internet Protocol (IP) address, a Universal Resource Identifier (URI), or a telephone number may be obtained. At step 308, the derived location information and identifying parameter (from step 306) are bound together in the data structure for later use.
At step 310, it is determined if a query has been received for the location of a user. If the answer is negative, execution continues at step 314. If the answer is affirmative, then at step 312, data is obtained from the database to answer the query. In one example, an API may be used to query the database and request a user location. This query may be for a location of an access point, or in another approach, the query may be for a device connected to the access point. Other examples of queries are possible.
At step 314, it is determined if maintenance of the location information is required. For instance, a device may move between networks, within a network, or change registration status. If the answer at step 314 is negative, execution continues with step 310 as described above. If the answer is affirmative, control continues with step 316 where the data is updated. For example, a location update may be performed to determine the location where the device is present with the highest certainty. Updates may refine the location information to keep the information up-to-date or refine the information to gain more accuracy. Execution then continues with step 310 as described above.
Referring now to FIG. 4, one example of updating a user location within a data structure is described. In this example, a client device is initially at a cellular location 402 and moves to an RFID network 404, which has a conference room location 406 and an office location 408.
The converged location is given by a function such as MAX_R(Loc_1, R1; Loc_2, R2; Loc_N, RN). In this function, Loc_N is a location. Loc_N may be a distinct measurement, or may be a combination of a current measurement with previous measurements. RN is proportional to eāˆ’t/TN and is the reliability index for the location information from network n. TN is a freshness factor for the network or device N. The parameter t is the time elapsed since the last valid location update in the location cache. The function MAX_R gives the location of the device with the highest reliability index and may be periodically applied to stored location information associated with a client device to ensure the freshness and accuracy of the information. It will be appreciated that variants and entirely different functions are possible and depending upon the desired use. It will also be appreciated that modifications to collected measurements can be made, such as deleting a {Loc_i, Ri} pair made obsolete due to a subsequent measurement that takes place.
In one example of performing a location update associated with the system shown in FIG. 4, when a user at a client device is operating at point 402 within the cellular network, a location request generates a new cellular location update (t=0). While fresh location information from the other networks is not available, the cached location information has to be used instead (t>0). In the calculation of location, the cellular location has the highest reliability and is picked as the location of the user and is stored in the cache.
In another example, when the user operates within the RFID network 404, a location request by an application generates a new RFID location update (t=0). Fresh location information data from other networks is not available and cached location information has to be used instead (t>0). In the location calculation, the RFID location has the highest reliability and is picked as the location of the user and stored in the cache.
Referring now to FIG. 5, one example of a system for determining and maintaining location information is described. The system includes an application 502, SMLE 504, a WLAN 506, and a cellular network 512. The cellular network 512 includes a base station 522 and a location-aware device 514. The WLAN 506 comprises a first access point (AP1) 510 and a second access point (AP2) 508. The network 506 also includes a location-unaware device 520.
The SMLE 504 gathers and maintains location information about location-aware and location- unaware devices 514 and 520 as described above. The application 502 may be any application that requires location information to enable its functioning. The access points 508 and 510 are switching devices that enable communications amongst devices that move within the network 506.
Referring now to FIGS. 6-9, one example of the changes made to a data structure over time is described in relation to the system shown in FIG. 5. It will be understood that the tools (e.g., programming language and programming data structure) used to implement the actual bindings and data structure may vary based upon the needs of the system and other factors.
These figures illustrate how a data structure changes over time and as client devices move within the system. Specifically, these figures illustrate an initial data structure (FIG. 6); the data structure after the location-aware device 514 moves from the cellular network 512 to the WLAN 506 (FIG. 7); the data structure after the location-unaware device 520 becomes associated with the access point 510; and the data structure after the location-aware device 514 moves to the second access point 508. Other examples are possible. Location information can be gathered as a device transits between a location-unaware network or mode and a location-aware network or mode in either direction (entering or leaving the location-aware network or mode). Further, a transition does not need to be instant to provide a useable association. For instance, a registration released from a WLAN access point followed by a registration made with a cellular base station a short time later can still imply physical proximity.
As stated, FIG. 6 shows an initial data structure with the location-aware device 514 being in the cellular network 512. In this case, an identifier 602 represents an identifier of the location-aware device 514 within the network 512. The identifier 602 is linked to location information 604 and a base station identifier 606. The base station identifier 606 identifies the base station 522 that is currently serving the device 514.
Next, FIG. 7 shows the data structure after the location-aware device 514 has moved from the cellular network 512 to the WLAN 506 and becomes associated with the access point 510. In this case, an identifier 702 is created. The identifier 702 may be, in one example, the MAC address of the access point 510. The identifier 702 is bound to the identifier 602 (of the first client device 514), location information 604, and base station identifier 606. Additionally, the base station identifier 606 may be tagged with information identifying it as being near or adjacent to access point 510, even though the base station 522 and access point 510 cannot interact directly. Consequently, a mapping of the access point 510 and base station 522 across networks 506 and 512 has been created and may be used in the future to locate other devices or for other purposes.
The actual values contained within any of the elements 602, 604, and 606 may change or have been updated since the element values were first determined. Further, although elements 604 and 606 may now be bound to element 702, the client device identifier 602 may optionally be excluded from this binding, excluded from API responses, or replaced with a more anonymous value to preserve device or user privacy.
Thereafter, FIG. 8 shows the data structure after the location-unaware device 520 becomes associated with the access point 510. In this case, an identifier 804 is created and bound to the identifier 702 (of the access point 510), identifier 602 (of the first client device 514), location information 604, and base station identifier 606. As before, the actual values contained within any of the elements may have changed or have been updated. Further, as before, the client device identifiers 602 and 804 may be optionally excluded from this binding, excluded from API responses, or replaced with more anonymous values to preserve device or user privacy. Because of the binding, the location of the second client device 520 may now be determined using information previously gathered from the location-aware device 514. In one example, this binding may take the form of a data structure (not shown) corresponding to the second client device 520 that is created specifically for the second client device 520.
Finally, FIG. 9 shows the data structure after the location-aware device 514 moves to the second access point 508. In this case, an identifier 910 (of the second access point) is created and bound to the identifier 602 (of the location-aware device). An informational element 914 (which indicates that the second access point 508 is near the first access point 510) is also created and bound to this information.
Separately, the identifier 702 (of the first access point) is created and bound to the identifier 804 (of the second access point), location information 604, and base station information 606. An informational element 905 is also bound to these elements and indicates that the first access point 510 is near the second access point 508. Consequently, a mapping of the access points 508 and 510 within the network 506 has been created and may be used in the future to locate other devices or for other purposes. At this point, having associated with the second access point 508 in place of the first access point 510, the location-aware device identifier 602 has also been unbound or released from the data structure of the first access point 510, and no longer appears in this structure.
Thus, approaches are provided that allow multiple types of networks to be seamlessly connected, providing convergence from the perspective of the user and the service provider. In addition, the SMLE described herein provides a service to applications and application developers in the form of an intelligent and unified database coupled to an API, allowing for highly-portable applications with a greater depth of features. The SMLE also enables an application to operate over multiple networks and with different types of devices. Moreover, location information can be obtained and used by end-users without giving away their identity to untrusted parties. Further, while it may be centralized or distributed in implementation, the SMLE provides a single functional point for location information storage and processing, thereby promoting network efficiencies.
Those skilled in the art will recognize that a wide variety of modifications, alterations, and combinations can be made with respect to the above described embodiments without departing from the spirit and scope of the invention, and that such modifications, alterations, and combinations are to be viewed as being within the scope of the invention.

Claims (9)

1. A method of determining location information about entities comprising:
operating a location-unaware entity in a location-unaware network at a first geographic position, the location-unaware entity having no direct awareness of operating at the first geographic position;
operating a location-aware entity in a location-aware network at a second geographic position, the location-aware entity being directly aware of operating at the second geographic position;
transmitting information indicating the second geographic position from the location-aware entity operating in the location-aware network to the location-unaware entity operating in the location-unaware network; and
at the location-unaware entity, receiving the transmitted information and determining the first geographic position from the transmitted information.
2. The method of claim 1 further comprising using the first geographic position to determine the location of a third location-unaware entity.
3. The method of claim 1 further comprising determining adjacency information concerning at least two entities selected from the group comprising: the location-aware entity, the location-unaware entity, and a third entity using at least in part the first geographic position.
4. The method of claim 1 wherein the location-unaware entity is in an administrative domain substantially different from an administrative domain of the location-aware network.
5. The method of claim 1 wherein the location-aware entity is a multi-mode device, which is capable of communication with multiple networks.
6. The method of claim 1 wherein determining the first geographic position comprises determining the first geographic position as an estimate of an access point location.
7. The method of claim 1 wherein determining the first geographic position comprises determining the first geographic position from at least one device selected from a group comprising the location-aware entity and a network server that has location information concerning the location-aware entity.
8. The method of claim 1 further comprising updating the first geographic position.
9. The method of claim 1 wherein the location-unaware entity is selected from a group comprising a mobile device, a network access point, a mobile router, a subnet prefix, an ad-hoc network, a stationary network, and a moving network.
US11/073,532 2004-11-22 2005-03-07 System and method for providing location information to applications Active 2025-05-19 US7254405B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/073,532 US7254405B2 (en) 2004-11-22 2005-03-07 System and method for providing location information to applications
PCT/US2006/004695 WO2006096282A2 (en) 2005-03-07 2006-02-10 System and method for providing location information to applications

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US63010604P 2004-11-22 2004-11-22
US11/073,532 US7254405B2 (en) 2004-11-22 2005-03-07 System and method for providing location information to applications

Publications (2)

Publication Number Publication Date
US20060121913A1 US20060121913A1 (en) 2006-06-08
US7254405B2 true US7254405B2 (en) 2007-08-07

Family

ID=36953797

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/073,532 Active 2025-05-19 US7254405B2 (en) 2004-11-22 2005-03-07 System and method for providing location information to applications

Country Status (2)

Country Link
US (1) US7254405B2 (en)
WO (1) WO2006096282A2 (en)

Cited By (27)

* Cited by examiner, ā€  Cited by third party
Publication number Priority date Publication date Assignee Title
US20060291482A1 (en) * 2005-06-23 2006-12-28 Cisco Technology, Inc. Method and apparatus for providing a metropolitan mesh network
US20070004427A1 (en) * 2005-02-22 2007-01-04 Skyhook Wireless, Inc. Continuous data optimization of new access points in positioning systems
US20070054659A1 (en) * 2005-09-05 2007-03-08 Sunplus Technology Co., Ltd. Multimode communication device having an automatic call-back setting mechanism and its method
US20070054673A1 (en) * 2005-09-06 2007-03-08 Sbc Knowledge Ventures Lp Method and apparatus for locating multimode communication devices
US20070198702A1 (en) * 2005-12-30 2007-08-23 Mediacell Licensing Corp Traffic Routing Based on Geophysical Location
US20070213049A1 (en) * 2006-03-07 2007-09-13 Mediacell Licensing Corp Service Subscription Using Geophysical Location
US20080045233A1 (en) * 2006-08-15 2008-02-21 Fitzgerald Cary WiFi geolocation from carrier-managed system geolocation of a dual mode device
US20080119203A1 (en) * 2006-11-17 2008-05-22 Yoram Shalmon Method and system for providing location based services
US20080132170A1 (en) * 2004-10-29 2008-06-05 Skyhook Wireless, Inc. Location-based services that choose location algorithms based on number of detected access points within range of user device
US20080146261A1 (en) * 2006-12-13 2008-06-19 Chul Min Bae METHOD OF PROVIDING LOCATION SERVICES IN WiMAX NETWORK IRRESPECTIVE OF STATE OF MOBILE STATION
US20080159139A1 (en) * 2006-12-29 2008-07-03 Motorola, Inc. Method and system for a context manager for a converged services framework
US20080181220A1 (en) * 2006-07-20 2008-07-31 Uppinder Singh Babbar Utility service in multi-processor environment
US20090312035A1 (en) * 2008-06-16 2009-12-17 Skyhook Wireless, Inc. Methods and systems for determining location using a cellular and wlan positioning system by selecting the best cellular positioning system solution
US20100073252A1 (en) * 2005-05-04 2010-03-25 Sandwave Ip, Llc Enclosure with Ground Plane
US20100099401A1 (en) * 2005-07-14 2010-04-22 Sandwave Ip, Llc Virtual Cells for Wireless Networks
US20110045840A1 (en) * 2009-08-18 2011-02-24 Skyhook Wireless, Inc. Method and system for estimating range of mobile device to wireless installation
US20110080317A1 (en) * 2009-10-02 2011-04-07 Skyhook Wireless, Inc. Method of determining position in a hybrid positioning system using a dilution of precision metric
US20110235532A1 (en) * 2010-03-24 2011-09-29 Skyhook Wireless, Inc. System and Method for Resolving Multiple Location Estimate Conflicts in a WLAN-Positioning System
US8130148B2 (en) 2008-06-06 2012-03-06 Skyhook Wireless, Inc. System and method for using a satellite positioning system to filter WLAN access points in a hybrid positioning system
US8154454B2 (en) 2009-07-16 2012-04-10 Skyhook Wireless, Inc. Systems and methods for using a satellite positioning system to detect moved WLAN access points
US8559974B2 (en) 2010-06-11 2013-10-15 Skyhook Wireless, Inc. Methods of and systems for measuring beacon stability of wireless access points
US8606294B2 (en) 2010-10-05 2013-12-10 Skyhook Wireless, Inc. Method of and system for estimating temporal demographics of mobile users
US8638256B2 (en) 2009-09-29 2014-01-28 Skyhook Wireless, Inc. Accuracy and performance of a hybrid positioning system
US8890746B2 (en) 2010-11-03 2014-11-18 Skyhook Wireless, Inc. Method of and system for increasing the reliability and accuracy of location estimation in a hybrid positioning system
US8983493B2 (en) 2004-10-29 2015-03-17 Skyhook Wireless, Inc. Method and system for selecting and providing a relevant subset of Wi-Fi location information to a mobile client device so the client device may estimate its position with efficient utilization of resources
US9103900B2 (en) 2006-07-07 2015-08-11 Skyhook Wireless, Inc. System and method of gathering WLAN packet samples to improve position estimates of WLAN positioning device
US9298897B2 (en) 2011-06-22 2016-03-29 Skyhook Wireless, Inc. Method of and systems for privacy preserving mobile demographic measurement of individuals, groups and locations over time and space

Families Citing this family (24)

* Cited by examiner, ā€  Cited by third party
Publication number Priority date Publication date Assignee Title
US8099104B2 (en) * 2004-02-26 2012-01-17 Telcordia Licensing Company Llc Location based services for integrated cellular and LAN networks
EP1846832B1 (en) 2004-12-17 2012-04-11 Tekelec Methods, systems, and computer program products for clustering and communicating between internet protocol multimedia subsystem (IMS) entities
US20060197702A1 (en) * 2005-03-01 2006-09-07 Alcatel Wireless host intrusion detection system
US20070167171A1 (en) * 2005-12-30 2007-07-19 Mediacell Licensing Corp Determining the Location of a Device Having Two Communications Connections
US8483718B2 (en) * 2006-03-13 2013-07-09 West Corporation UMA network controller that provides access point identifiers to a location system
US20080014961A1 (en) * 2006-07-12 2008-01-17 Tekelec Methods, systems, and computer program products for providing geographically diverse IP multimedia subsystem (IMS) instances
TW200813739A (en) * 2006-07-20 2008-03-16 Qualcomm Inc Utility service in multi-processor environment
US8149725B2 (en) * 2006-07-31 2012-04-03 Tekelec Methods, systems, and computer program products for a hierarchical, redundant OAM&P architecture for use in an IP multimedia subsystem (IMS) network
US7996019B2 (en) * 2006-12-26 2011-08-09 Motorola Mobilty, Inc. Intelligent location-based services
US8483705B1 (en) * 2007-02-06 2013-07-09 Sprint Communications Company L.P. GPS proxy for location-unaware devices
US8140076B2 (en) * 2007-12-17 2012-03-20 Motorola Mobility, Inc. Method for facilitating a mobile station to perform a fast handoff
US20100069086A1 (en) * 2008-09-17 2010-03-18 Sony Ericsson Mobile Communications Ab Mobile Terminals Providing Network-Based Location Data, and Methods and Computer Program Product for Operating the Same
US20100137001A1 (en) * 2008-12-01 2010-06-03 Electronics And Telecommunications Research Institute Terminal and method for providing terminal position
US8391884B2 (en) * 2009-03-26 2013-03-05 Andrew Llc System and method for managing created location contexts in a location server
EP2237527A1 (en) * 2009-03-31 2010-10-06 Thomson Licensing Method and apparatus for determining location information
US20120188938A1 (en) * 2011-01-20 2012-07-26 Atheros Communications, Inc. System and method for providing a location aware wireless network
US10129929B2 (en) * 2011-07-24 2018-11-13 Ethertronics, Inc. Antennas configured for self-learning algorithms and related methods
US9026145B1 (en) * 2012-03-23 2015-05-05 Google Inc. Systems and methods for mapping IP-addresses to geolocations
US9678986B2 (en) * 2012-12-05 2017-06-13 Wgrs Licensing Company, Llc Systems and methods for registering, administering, and using non-locational identifiers as locational addresses through location name and identifier registries
KR102054941B1 (en) * 2013-05-02 2020-01-22 ķ•œźµ­ģ „ģžķ†µģ‹ ģ—°źµ¬ģ› Apparatus of setting active networking of smart devices for providing fusion service and method thereof
US9301082B2 (en) 2013-12-06 2016-03-29 Apple Inc. Mobile device sensor data subscribing and sharing
US9838838B2 (en) * 2015-06-05 2017-12-05 Apple Inc. Location determination using a companion device
US10939486B2 (en) 2016-06-10 2021-03-02 Apple Inc. Location source control
USD959552S1 (en) 2021-07-21 2022-08-02 Speedfind, Inc Display sign

Citations (5)

* Cited by examiner, ā€  Cited by third party
Publication number Priority date Publication date Assignee Title
US6421716B1 (en) 1998-09-30 2002-07-16 Xerox Corporation System for generating context-sensitive hierarchically ordered document service menus
US20040008138A1 (en) * 2002-07-15 2004-01-15 Hockley George O. Apparatus and method of position determination using shared information
US20040264414A1 (en) 2003-06-30 2004-12-30 Motorola, Inc. Fast handover through proactive registration
US20050002407A1 (en) * 2003-05-01 2005-01-06 Interdigital Technology Corporation Method and apparatus for delivery of data-based/voice services over piconets and wireless LANs (WLANs) coupled to 3GPP devices including protocol architecture and information elements relating to short message services (SMS) over WLANs
US20060019679A1 (en) * 2004-07-23 2006-01-26 Rappaport Theodore S System, method, and apparatus for determining and using the position of wireless devices or infrastructure for wireless network enhancements

Patent Citations (5)

* Cited by examiner, ā€  Cited by third party
Publication number Priority date Publication date Assignee Title
US6421716B1 (en) 1998-09-30 2002-07-16 Xerox Corporation System for generating context-sensitive hierarchically ordered document service menus
US20040008138A1 (en) * 2002-07-15 2004-01-15 Hockley George O. Apparatus and method of position determination using shared information
US20050002407A1 (en) * 2003-05-01 2005-01-06 Interdigital Technology Corporation Method and apparatus for delivery of data-based/voice services over piconets and wireless LANs (WLANs) coupled to 3GPP devices including protocol architecture and information elements relating to short message services (SMS) over WLANs
US20040264414A1 (en) 2003-06-30 2004-12-30 Motorola, Inc. Fast handover through proactive registration
US20060019679A1 (en) * 2004-07-23 2006-01-26 Rappaport Theodore S System, method, and apparatus for determining and using the position of wireless devices or infrastructure for wireless network enhancements

Non-Patent Citations (1)

* Cited by examiner, ā€  Cited by third party
Title
Telenity Corporate Fact Sheet brochure, undated, 2 pages.

Cited By (79)

* Cited by examiner, ā€  Cited by third party
Publication number Priority date Publication date Assignee Title
US8837363B2 (en) 2004-10-29 2014-09-16 Skyhook Wireless, Inc. Server for updating location beacon database
US8965412B2 (en) 2004-10-29 2015-02-24 Skyhook Wireless, Inc. Location-based services that choose location algorithms based on number of detected access points within range of user device
US8478297B2 (en) * 2004-10-29 2013-07-02 Skyhook Wireless, Inc. Continuous data optimization of moved access points in positioning systems
US8538457B2 (en) * 2004-10-29 2013-09-17 Skyhook Wireless, Inc. Continuous data optimization of moved access points in positioning systems
US8630664B2 (en) 2004-10-29 2014-01-14 Skyhook Wireless, Inc. Access point database
US8983493B2 (en) 2004-10-29 2015-03-17 Skyhook Wireless, Inc. Method and system for selecting and providing a relevant subset of Wi-Fi location information to a mobile client device so the client device may estimate its position with efficient utilization of resources
US7818017B2 (en) 2004-10-29 2010-10-19 Skyhook Wireless, Inc. Location-based services that choose location algorithms based on number of detected wireless signal stations within range of user device
US10080208B2 (en) 2004-10-29 2018-09-18 Skyhook Wireless, Inc. Techniques for setting quality attributes of access points in a positioning system
US9918295B2 (en) 2004-10-29 2018-03-13 Skyhook Wireless, Inc. Techniques for computing location of a mobile device using calculated locations of Wi-Fi access points from a reference database
US20080132170A1 (en) * 2004-10-29 2008-06-05 Skyhook Wireless, Inc. Location-based services that choose location algorithms based on number of detected access points within range of user device
US20080139217A1 (en) * 2004-10-29 2008-06-12 Skyhook Wireless, Inc. Location-based services that choose location algorithms based on number of detected wireless signal stations within range of user device
US9554247B2 (en) 2004-10-29 2017-01-24 Skyhook Wireless, Inc. Techniques for computing location of a mobile device based on observed Wi-Fi access points
US9398558B2 (en) 2004-10-29 2016-07-19 Skyhook Wireless, Inc. Continuous data optimization of moved access points in positioning systems
US9369884B2 (en) 2004-10-29 2016-06-14 Skyhook Wireless, Inc. Techniques for computing location of a mobile device based on observed Wi-Fi access points
US7769396B2 (en) 2004-10-29 2010-08-03 Skyhook Wireless, Inc. Location-based services that choose location algorithms based on number of detected access points within range of user device
US20070004428A1 (en) * 2005-02-22 2007-01-04 Skyhook Wireless, Inc. Continuous data optimization of moved access points in positioning systems
US8244272B2 (en) * 2005-02-22 2012-08-14 Skyhook Wireless, Inc. Continuous data optimization of moved access points in positioning systems
US20090149197A1 (en) * 2005-02-22 2009-06-11 Skyhook Wireless, Inc. Continuous data optimization of new access points in positioning systems
US8140094B2 (en) 2005-02-22 2012-03-20 Skyhook Wireless, Inc. Continuous data optimization of new access points in positioning systems
US20070004427A1 (en) * 2005-02-22 2007-01-04 Skyhook Wireless, Inc. Continuous data optimization of new access points in positioning systems
US9037162B2 (en) 2005-02-22 2015-05-19 Skyhook Wireless, Inc. Continuous data optimization of new access points in positioning systems
US20100073252A1 (en) * 2005-05-04 2010-03-25 Sandwave Ip, Llc Enclosure with Ground Plane
US20060291482A1 (en) * 2005-06-23 2006-12-28 Cisco Technology, Inc. Method and apparatus for providing a metropolitan mesh network
US20100099401A1 (en) * 2005-07-14 2010-04-22 Sandwave Ip, Llc Virtual Cells for Wireless Networks
US8391915B2 (en) 2005-07-14 2013-03-05 Sandwave Ip, Llc Virtual cells for wireless networks
US20070054659A1 (en) * 2005-09-05 2007-03-08 Sunplus Technology Co., Ltd. Multimode communication device having an automatic call-back setting mechanism and its method
US20100173650A1 (en) * 2005-09-06 2010-07-08 At&T Intellectual Property I, L.P. Method and apparatus for locating multimode communication devices
US8036685B2 (en) 2005-09-06 2011-10-11 At&T Intellectual Property I Method and apparatus for locating multimode communication devices
US20070054673A1 (en) * 2005-09-06 2007-03-08 Sbc Knowledge Ventures Lp Method and apparatus for locating multimode communication devices
US7657269B2 (en) * 2005-09-06 2010-02-02 At&T Intellectual Property I, L.P. Method and apparatus for locating multimode communication devices
US8504678B2 (en) 2005-12-30 2013-08-06 Sandwave Ip, Llc Traffic routing based on geophysical location
US20070198702A1 (en) * 2005-12-30 2007-08-23 Mediacell Licensing Corp Traffic Routing Based on Geophysical Location
US20070213049A1 (en) * 2006-03-07 2007-09-13 Mediacell Licensing Corp Service Subscription Using Geophysical Location
US8582498B2 (en) 2006-03-07 2013-11-12 Sandwave Ip, Llc Service subscription using geophysical location
US9103900B2 (en) 2006-07-07 2015-08-11 Skyhook Wireless, Inc. System and method of gathering WLAN packet samples to improve position estimates of WLAN positioning device
US9279877B2 (en) 2006-07-07 2016-03-08 Skyhook Wireless, Inc. Technique for using cached information with a WLAN positioning system to obtain an estimate of a position of a mobile device
US8364850B2 (en) 2006-07-20 2013-01-29 Qualcomm Incorporated Utility service in multi-processor environment
US20080181220A1 (en) * 2006-07-20 2008-07-31 Uppinder Singh Babbar Utility service in multi-processor environment
US20080045233A1 (en) * 2006-08-15 2008-02-21 Fitzgerald Cary WiFi geolocation from carrier-managed system geolocation of a dual mode device
US7907579B2 (en) * 2006-08-15 2011-03-15 Cisco Technology, Inc. WiFi geolocation from carrier-managed system geolocation of a dual mode device
US20080119203A1 (en) * 2006-11-17 2008-05-22 Yoram Shalmon Method and system for providing location based services
US20080146261A1 (en) * 2006-12-13 2008-06-19 Chul Min Bae METHOD OF PROVIDING LOCATION SERVICES IN WiMAX NETWORK IRRESPECTIVE OF STATE OF MOBILE STATION
US8233917B2 (en) * 2006-12-13 2012-07-31 Lg-Ericsson Co., Ltd. Method of providing location services in WiMAX network irrespective of state of mobile station
US20080159139A1 (en) * 2006-12-29 2008-07-03 Motorola, Inc. Method and system for a context manager for a converged services framework
US8130148B2 (en) 2008-06-06 2012-03-06 Skyhook Wireless, Inc. System and method for using a satellite positioning system to filter WLAN access points in a hybrid positioning system
US8638725B2 (en) 2008-06-16 2014-01-28 Skyhook Wireless, Inc. Methods and systems for determining location using a cellular and WLAN positioning system by selecting the best WLAN PS solution
US20090312035A1 (en) * 2008-06-16 2009-12-17 Skyhook Wireless, Inc. Methods and systems for determining location using a cellular and wlan positioning system by selecting the best cellular positioning system solution
US8155666B2 (en) * 2008-06-16 2012-04-10 Skyhook Wireless, Inc. Methods and systems for determining location using a cellular and WLAN positioning system by selecting the best cellular positioning system solution
US8462745B2 (en) 2008-06-16 2013-06-11 Skyhook Wireless, Inc. Methods and systems for determining location using a cellular and WLAN positioning system by selecting the best WLAN PS solution
US8242960B2 (en) 2009-07-16 2012-08-14 Skyhook Wireless, Inc. Systems and methods for using a satellite positioning system to detect moved WLAN access points
US8564481B2 (en) 2009-07-16 2013-10-22 Skyhook Wireless, Inc. Systems and methods for using a satellite positioning system to detect moved WLAN access points
US8223074B2 (en) 2009-07-16 2012-07-17 Skyhook Wireless, Inc. Systems and methods for using a satellite positioning system to detect moved WLAN access points
US8154454B2 (en) 2009-07-16 2012-04-10 Skyhook Wireless, Inc. Systems and methods for using a satellite positioning system to detect moved WLAN access points
US9013350B2 (en) 2009-07-16 2015-04-21 Skyhook Wireless, Inc. Systems and methods for using a satellite positioning system to detect moved WLAN access points
US10031237B2 (en) 2009-07-16 2018-07-24 Skyhook Wireless, Inc. Techniques for selecting SPS measurements to use in determining a final location estimate based on a WLAN-based location estimate
US8284103B2 (en) 2009-07-16 2012-10-09 Skyhook Wireless, Inc. Systems and methods for using a satellite positioning system to detect moved WLAN access points
US8406785B2 (en) 2009-08-18 2013-03-26 Skyhook Wireless, Inc. Method and system for estimating range of mobile device to wireless installation
US20110045840A1 (en) * 2009-08-18 2011-02-24 Skyhook Wireless, Inc. Method and system for estimating range of mobile device to wireless installation
US9237415B2 (en) 2009-08-18 2016-01-12 Skyhook Wireless, Inc. Method and system for estimating range of mobile device to wireless installation
US8638256B2 (en) 2009-09-29 2014-01-28 Skyhook Wireless, Inc. Accuracy and performance of a hybrid positioning system
US20110080317A1 (en) * 2009-10-02 2011-04-07 Skyhook Wireless, Inc. Method of determining position in a hybrid positioning system using a dilution of precision metric
US8279114B2 (en) 2009-10-02 2012-10-02 Skyhook Wireless, Inc. Method of determining position in a hybrid positioning system using a dilution of precision metric
US20110235532A1 (en) * 2010-03-24 2011-09-29 Skyhook Wireless, Inc. System and Method for Resolving Multiple Location Estimate Conflicts in a WLAN-Positioning System
US9516471B2 (en) 2010-03-24 2016-12-06 Skyhook Wireless, Inc. System and method for estimating the probability of movement of access points in a WLAN-based positioning system
US9253605B2 (en) 2010-03-24 2016-02-02 Skyhook Wireless, Inc. System and method for resolving multiple location estimate conflicts in a WLAN-positioning system
US8619643B2 (en) 2010-03-24 2013-12-31 Skyhook Wireless, Inc. System and method for estimating the probability of movement of access points in a WLAN-based positioning system
US8971923B2 (en) 2010-06-11 2015-03-03 Skyhook Wireless, Inc. Methods of and systems for measuring beacon stability of wireless access points
US9014715B2 (en) 2010-06-11 2015-04-21 Skyhook Wireless, Inc. Systems for and methods of determining likelihood of atypical transmission characteristics of reference points in a positioning system
US8971915B2 (en) 2010-06-11 2015-03-03 Skyhook Wireless, Inc. Systems for and methods of determining likelihood of mobility of reference points in a positioning system
US9521512B2 (en) 2010-06-11 2016-12-13 Skyhook Wireless, Inc. Determining a designated wireless device lacks a fixed geographic location and using the determination to improve location estimates
US8700053B2 (en) 2010-06-11 2014-04-15 Skyhook Wireless, Inc. Systems for and methods of determining likelihood of relocation of reference points in a positioning system
US8630657B2 (en) 2010-06-11 2014-01-14 Skyhook Wireless, Inc. Systems for and methods of determining likelihood of reference point identity duplication in a positioning system
US8559974B2 (en) 2010-06-11 2013-10-15 Skyhook Wireless, Inc. Methods of and systems for measuring beacon stability of wireless access points
US9031580B2 (en) 2010-10-05 2015-05-12 Skyhook Wireless, Inc. Method of and system for estimating temporal demographics of mobile users
US9467807B2 (en) 2010-10-05 2016-10-11 Skyhook Wireless, Inc. Estimating demographics associated with a selected geographic area
US8606294B2 (en) 2010-10-05 2013-12-10 Skyhook Wireless, Inc. Method of and system for estimating temporal demographics of mobile users
US8890746B2 (en) 2010-11-03 2014-11-18 Skyhook Wireless, Inc. Method of and system for increasing the reliability and accuracy of location estimation in a hybrid positioning system
US9298897B2 (en) 2011-06-22 2016-03-29 Skyhook Wireless, Inc. Method of and systems for privacy preserving mobile demographic measurement of individuals, groups and locations over time and space
US10304086B2 (en) 2011-06-22 2019-05-28 Skyhook Wireless, Inc. Techniques for estimating demographic information

Also Published As

Publication number Publication date
US20060121913A1 (en) 2006-06-08
WO2006096282A3 (en) 2007-04-19
WO2006096282A2 (en) 2006-09-14

Similar Documents

Publication Publication Date Title
US7254405B2 (en) System and method for providing location information to applications
US8374631B2 (en) Provision of location information in a communication system
JP5194099B2 (en) Network search mechanism
KR100745542B1 (en) Geolocation determination
US8126476B2 (en) System and method for mapping wireless access points
US7768982B2 (en) Autonomous and heterogeneous network discovery and reuse
US7170881B2 (en) Method and apparatus providing user programmable, personalized location-aware services
CN102572689B (en) Mobile terminal location system and method
US10554551B2 (en) Method to optimize mapping for multiple locations of a device in mobility
US20010041576A1 (en) Deriving location information about a communicating entity
JP2008035250A (en) Information providing service control system
US20070136412A1 (en) Integration of xml and tlv for query and/or responses in network discovery for mobile devices
CN101176293A (en) Network discovery mechanism
WO2009029157A1 (en) System and method for mapping wireless access points
US9479897B2 (en) SUPL-WiFi access point controller location based services for WiFi enabled mobile devices
JP4213701B2 (en) Method, access point, communication device, server, and information system for providing and searching for network connection types usable in a communication network
Novaczki et al. Micromobility support in HIP: survey and extension of host identity protocol
CN101147407A (en) Terminal, system and method for providing location information service by interworking between wlan and mobile communication network
US8195154B2 (en) Method for implementing terminal roaming and managing in the soft switch-based next generation network
Chen et al. Enabling locationā€based services in wireless LAN hotspots
CN102957668B (en) The method and access service router of positional information are obtained in mark net
KR20080018771A (en) Method and apparatus of performing handover for mobile node, information server, and method of transmitting handover information from information server to mobile node
WO2023243341A1 (en) Session management method involving a local session management function (l-smf) node
Karl Data Transmission in Mobile Communication
Detken et al. Service discovery integrated network platform

Legal Events

Date Code Title Description
AS Assignment

Owner name: MOTOROLA, INC., ILLINOIS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LIN, PETER A.;MAURER, PATRICK M.;SMITH, PATRICK D.;AND OTHERS;REEL/FRAME:016362/0938;SIGNING DATES FROM 20050304 TO 20050307

STCF Information on status: patent grant

Free format text: PATENTED CASE

AS Assignment

Owner name: MOTOROLA MOBILITY, INC, ILLINOIS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MOTOROLA, INC;REEL/FRAME:025673/0558

Effective date: 20100731

FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: MOTOROLA MOBILITY LLC, ILLINOIS

Free format text: CHANGE OF NAME;ASSIGNOR:MOTOROLA MOBILITY, INC.;REEL/FRAME:029216/0282

Effective date: 20120622

AS Assignment

Owner name: GOOGLE TECHNOLOGY HOLDINGS LLC, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MOTOROLA MOBILITY LLC;REEL/FRAME:034419/0001

Effective date: 20141028

FPAY Fee payment

Year of fee payment: 8

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 12