Method and system for optimizing uploading of location data for location based services
Summary by NHIP
Opportunistic Transport Selection
The mobile device identifies a second transport to upload cached location data based on determined resources. This selection occurs when data usage associated with the second transport meets specific criteria compared to the first transport.
Claim Score by NHIP
Abstract
A mobile device may be operable to collect location data for a RF node and cache the collected location data in the mobile device. Resources that may be utilized for improving the uploading of the cached location data to a location server may be determined by the mobile device. The cached location data may be communicated, to the location server for updating a location database, by the mobile device utilizing the determined resources. The mobile device may determine and utilize an opportunistic transport based on a data usage and/or an access. The mobile device may store a subset of the location database locally for comparing with the cached location data for redundancy. The compared location data may be transmitted by the mobile device to the location server for updating the location database if the compared location data are not redundant data.

Term
5.8 yearsleft in the term
Expires 5 July 2032, including 832 days of term adjustment.
- Priority
- Filed
- Granted
- Today
- Expires
20 claims: 2 independent, 18 dependent
- 1A method for communication in a mobile device, the method comprising:identifying, by said mobile device, a first transport to upload collected location data to a location server;caching, by said mobile device, said collected location data corresponding to a node of a communication network in said mobile device;identifying, by said mobile device, a plurality of resources for uploading said cached collected location data to said location server;identifying, by said mobile device, a second transport to upload said cached collected location data to said location server based upon a resource from among said identified plurality of resources, said second transport being characterized as improving uploading of said cached collected location data to said location server as compared to uploading said cached collected location data using said first transport;and communicating, by said mobile device, said cached collected location data to said location server utilizing said second transport.
- 11Broadest claimClaim Score 57, broad(NHIP)A system for communication, comprising:one or more processors or circuits for use in a mobile device, said one or more processors or circuits being configured to: identify a first transport to upload collected location data to a location server;cache said collected location data corresponding to a node of a communication network in said mobile device;identify a plurality of resources for uploading said cached collected location data to said location server;identify a second transport to unload said cached collected location data to said location server based upon a resource from among said identified plurality resources, said second transport being characterized as improving uploading of said cached collected location data to said location server as compared to uploading said cached collected location data using said first transport;and communicate said cached collected location data to said location server utilizing said second transport.
Independent claims2
47 paragraphs in 6 sections, as filed
CROSS-REFERENCE TO RELATED APPLICATIONS/INCORPORATION BY REFERENCE
0001This patent application makes reference to, claims priority to, and claims benefit from U.S. Provisional Application Ser. No. 61/304,101, which was filed on Feb. 12, 2010.
0002The above stated application is hereby incorporated herein by reference in its entirety.
FIELD OF THE INVENTION
0003Certain embodiments of the invention relate to communication systems. More specifically, certain embodiments of the invention relate to a method and system for optimizing uploading of location data for location based services.
BACKGROUND OF THE INVENTION
0004Location-based services (LBS) are emerging as a new type of value-added service provided by mobile communication network. LBS are mobile services in which the user location information is used in order to enable various LBS applications such as, for example, enhanced 911 (E-911), location-based 411, location-based messaging and/or location-based friend finding services. A location of a mobile device may be determined in different ways such as, for example, using network-based technology, using terminal-based technology, and/or hybrid technology, which is a combination of the former technologies. Many positioning technologies such as, for example, time of arrival (TOA), observed time difference of arrival (OTDOA), enhanced observed time difference (E-OTD) as well as the global navigation satellite system (GNSS) such as GPS, GLONASS, Galileo, Compass, and/or assisted-GNSS (A-GNSS), may be utilized to estimate the location (latitude and longitude) of the mobile device and convert it into a meaningful X, Y coordinate for LBS applications. A-GNSS technology combines satellite positioning and communication networks such as mobile networks to reach performance levels allowing the wide deployment of Location-Based Services.
0005Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with the present invention as set forth in the remainder of the present application with reference to the drawings.
BRIEF SUMMARY OF THE INVENTION
0006A system and/or method for optimizing uploading of location data for location based services, substantially as shown in and/or described in connection with at least one of the figures, as set forth more completely in the claims.
0007Various advantages, aspects and novel features of the present invention, as well as details of an illustrated embodiment thereof, will be more fully understood from the following description and drawings.
BRIEF DESCRIPTION OF SEVERAL VIEWS OF THE DRAWINGS
<figref idref="DRAWINGS">FIG. 1</figref> is a block diagram illustrating an exemplary communication system that is operable to optimize uploading of location data for location based services, in accordance with an embodiment of the invention.
<figref idref="DRAWINGS">FIG. 2</figref> is a block diagram illustrating an exemplary mobile device that is operable to optimize uploading of location data for location based services, in accordance with an embodiment of the invention.
<figref idref="DRAWINGS">FIG. 3</figref> is a block diagram illustrating an exemplary location server that is operable to optimize uploading of location data for location based services, in accordance with an embodiment of the invention.
<figref idref="DRAWINGS">FIG. 4</figref> is a flow chart illustrating exemplary steps for optimizing uploading of location data for location based services, in accordance with an embodiment of the invention.
DETAILED DESCRIPTION OF THE INVENTION
0012Certain embodiments of the invention can be found in a method and system for optimizing uploading of location data for location based services. In various embodiments of the invention, a mobile device may be operable to collect location data for a RF node and cache the collected location data locally in the mobile device for deferred uploading. Resources that may be utilized for improving the uploading of the cached location data to a location server may be determined by the mobile device. The cached location data may be communicated to the location server by the mobile device utilizing the determined resources. The location server may comprise a location database which may then be updated utilizing the location data received from the mobile device. In this regard, the mobile device may be operable to determine an opportunistic transport based on a data usage and/or an access. The cached location data may be communicated to the location server by the mobile device utilizing the determined opportunistic transport. In this regard, for example, in instances when the data usage associated with the opportunistic transport is less than a particular cellular data usage, the opportunistic transport may be selected by the mobile device for communicating the cached location data to the location server. In instances when the access to the opportunistic transport by the mobile device becomes available, the opportunistic transport may be selected by the mobile device for communicating the cached location data to the location server.
0013A subset of the location database may be stored locally in the mobile device. The mobile device may be operable to acquire the stored subset of the location database from the location server, for example. The cached location data may be compared with the subset of the location database stored in the mobile device for redundancy check. The compared location data may be communicated by the mobile device to the location server based on a result of the comparison. In this regard, for example, in instances when the comparison result indicates that the location data are not redundant data, the location data may be transmitted by the mobile device to the location server for updating the location database. In instances when the result of the comparison indicates that the location data are redundant data, the location data may not be transmitted to the location server. The mobile device may be operable to acquire the subset of the location database based on, for example, a capacity of a memory in the mobile device and/or access capability of the mobile device.
0014<figref idref="DRAWINGS">FIG. 1</figref> is a block diagram illustrating an exemplary communication system that is operable to optimize uploading of location data for location based services, in accordance with an embodiment of the invention. Referring to <figref idref="DRAWINGS">FIG. 1</figref>, there is shown a communication system <b>100</b>. The communication system <b>100</b> comprises a plurality of mobile devices <b>110</b>, of which mobile devices <b>110</b><i>a</i>-<b>110</b><i>c </i>are illustrated, a location server <b>120</b> comprising a location database <b>122</b>, a communication network <b>130</b>, a LBS server <b>140</b>, a GNSS reference network <b>150</b> and a GNSS infrastructure <b>160</b>. The communication network <b>130</b> may comprise a plurality of RF nodes, of which RF nodes <b>170</b><i>a</i>-<b>170</b><i>c </i>are illustrated. The GNSS infrastructure <b>160</b> may comprise a plurality of GNSS satellites, of which GNSS satellites <b>160</b><i>a</i>-<b>160</b><i>c </i>are illustrated.
0015Each of the mobile devices <b>110</b><i>a</i>-<b>110</b><i>c </i>such as the mobile device <b>110</b><i>a </i>may comprise suitable logic, circuitry, interfaces and/or code that may be operable to communicate radio signals across the communication network <b>130</b>, for example, via the RF nodes <b>170</b><i>a</i>-<b>170</b><i>c</i>. The mobile device <b>110</b><i>a </i>may be operable to receive GNSS broadcast signals from a plurality of visible GNSS satellites such as GNSS satellites <b>160</b><i>a</i>-<b>160</b><i>c </i>in the GNSS infrastructure <b>160</b>. The mobile device <b>110</b><i>a </i>may collect and report device-assisted location data, for example, for a RF node such as the RF node <b>170</b><i>a </i>to the location server <b>120</b> for updating the location database <b>122</b>.
0016Instead of uploading collected location data continuously, the mobile device <b>110</b><i>a </i>may be operable to cache the collected location data for the RF node such as the RF node <b>170</b><i>a </i>locally in the mobile device <b>110</b><i>a </i>for deferred uploading. Resources that may be utilized for improving the uploading of the cached location data may be determined by the mobile device <b>110</b><i>a</i>. The cached location data may be communicated to a location server such as the location server <b>120</b> by the mobile device <b>110</b><i>a </i>utilizing the determined resources. In this regard, for example, the mobile device <b>110</b><i>a </i>may be operable to determine an opportunistic transport based on a data usage and/or an access. An opportunistic transport may be an alternative transport which may be accessed and utilized by the mobile device <b>110</b><i>a </i>to communicate the cached location data to the location server <b>120</b>. For example, the opportunistic transport may be a WiFi access point at high speed with flat low rate or free of charge while current cellular data usage charge for the mobile device <b>110</b><i>a </i>to upload the location data may be high, for example, due to roaming. The cached location data may be communicated to the location server <b>120</b> by the mobile device <b>110</b><i>a </i>utilizing the determined opportunistic transport. In this regard, for example, in instances when the data usage associated with the opportunistic transport is less than a particular cellular data usage, the opportunistic transport may be selected by the mobile device <b>110</b><i>a </i>for communicating the cached location data to the location server <b>120</b> so that the data usage may be reduced. In instances when the access to the opportunistic transport by the mobile device <b>110</b><i>a </i>becomes available, the opportunistic transport may be selected by the mobile device <b>110</b><i>a </i>for communicating the cached location data to the location server <b>120</b>. In this regard, for example, while the mobile device <b>110</b><i>a </i>is on a 2G wireless network, the mobile device <b>110</b><i>a </i>may not upload the cached location data unless the mobile device <b>110</b><i>a </i>can access the WiFi access point or a 3G wireless network.
0017A subset of the location database may be stored locally in a memory in the mobile device <b>110</b><i>a</i>. The mobile device <b>110</b><i>a </i>may be operable, for example, to acquire the stored subset of the location database from the location server <b>120</b>. For example, the acquired subset of the location database may comprise the location data for the RF nodes <b>170</b><i>a </i>and <b>170</b><i>b </i>which are within a region of the mobile device <b>110</b><i>a</i>. The cached location data may be compared with the subset of the location database stored in the mobile device <b>110</b><i>a </i>for redundancy check. The compared location data may be communicated by the mobile device <b>110</b><i>a </i>to the location server <b>120</b> based on a result of the comparison. In this regard, for example, in instances when the comparison result indicates that the location data such as, for example, the location data for the RF node <b>170</b><i>c </i>are not redundant data, the location data for the RF node <b>170</b><i>c </i>may be transmitted by the mobile device <b>110</b><i>a </i>to the location server <b>120</b> for updating the location database <b>122</b>. In instances when the comparison result indicates that the location data such as, for example, the location data for the RF node <b>170</b><i>a </i>are redundant data, the location data for the RF node <b>170</b><i>a </i>may not be transmitted to the location server <b>120</b>. Accordingly, the data usage for uploading the location data may be reduced by communicating or transmitting only non-redundant or new data to the location server <b>120</b> for updating the location database <b>122</b>. The mobile device <b>110</b><i>a </i>may be operable to acquire the subset of the location database based on, for example, a capacity of the memory in the mobile device <b>110</b><i>a </i>and/or access capability of the mobile device <b>110</b><i>a</i>. In this regard, for example, the mobile device <b>110</b><i>a </i>may have limited amount of memory for storing the location database. In this instance, only a limited subset of the location database <b>122</b> may be acquired from the location server <b>120</b> by the mobile device <b>110</b><i>a </i>accordingly. The mobile device <b>110</b><i>a</i>, for example, may not be enabled to have access to WiFi access points to collect location data for WiFi access points. In this instance, the subset of the location database <b>122</b> associated with the WiFi access points may not be acquired from the location server <b>120</b> by the mobile device <b>110</b><i>a </i>accordingly.
0018The location server <b>120</b> may comprise suitable logic, circuitry, interfaces and/or code that may be operable to access the GNSS reference network <b>150</b> to collect GNSS satellite data by tracking GNSS constellations through the GNSS reference network <b>150</b>. The location server <b>120</b> may be operable to utilize the collected GNSS satellite data to generate GNSS assistance data (A-GNSS data) comprising, for example, ephemeris data, LTO data, reference positions and/or time information. The location server <b>120</b> may be operable to collect and/or retrieve location information or data from associated users such as the RF nodes <b>170</b><i>a</i>-<b>170</b><i>c </i>and/or the mobile devices <b>110</b><i>a</i>-<b>110</b><i>c</i>. For example, the location server <b>120</b> may be operable to receive location information of the RF node <b>170</b><i>a </i>from the mobile devices <b>110</b><i>a</i>-<b>110</b><i>c</i>. The received location data may be stored in the location database <b>122</b> so that it may be shared among associated mobile devices <b>110</b><i>a</i>-<b>110</b><i>c </i>such as the mobile device <b>110</b><i>a</i>. The location server <b>120</b> may be operable to communicate the stored location data as A-GNSS data to the mobile device <b>110</b><i>a</i>, when need.
0019The location server <b>120</b> may be operable to send a subset of the location database <b>122</b> to the mobile device <b>110</b><i>a </i>when acquired by the mobile device <b>110</b><i>a</i>. The subset of the location database sent to the mobile device <b>110</b><i>a </i>may be used by the mobile device <b>110</b><i>a </i>to determine whether the location data collected by the mobile device <b>110</b><i>a </i>are redundant data comparing to the subset of the location database. In instances when the location data collected by the mobile device <b>110</b><i>a </i>are redundant data, the location data may not be transmitted to the location server <b>120</b> for updating the location database <b>122</b>.
0020The communication network <b>130</b> may comprise suitable logic, circuitry, interfaces and/or code that may be operable to provide voice and data services to various mobile devices such as the mobile devices <b>110</b><i>a</i>-<b>110</b><i>c </i>by using wireless and/or wired communication technologies such as, for example, WCDMA, UMTS, HSDPA, CDMA, EV-DO, GSM, GPRS, EDGE, EGPRS, LTE, Bluetooth, WiMAX, WiFi, FM, mobile TV and Ethernet. The communication network <b>130</b> may be operable to provide communication among the location server <b>120</b>, the LBS server <b>140</b> and a plurality of served mobile devices such as the mobile devices <b>110</b><i>a</i>-<b>110</b><i>c</i>. The communication network <b>130</b> may comprise a plurality of RF nodes such as, for example, the RF nodes <b>170</b><i>a</i>-<b>170</b><i>c</i>. The RF node <b>170</b><i>a </i>is a RF network device that may comprise, for example, a cell station, a wireless access point (AP) and/or a FM station.
0021The LBS server <b>140</b> may comprise suitable logic, circuitry, interfaces and/or code that may be operable to provide location based services (LBS). The LBS server may be operable to retrieve information such as, for example, local hotel addresses or a map of the vicinity of areas of interest. The LBS server <b>140</b> may be operable to communicate the retrieved information with various communication devices such as the mobile device <b>110</b><i>a </i>based on an associated position or location.
0022The GNSS reference network <b>150</b> may comprise suitable logic, circuitry, interfaces and/or code that may be operable to collect and/or distribute data for GNSS satellites <b>160</b><i>a</i>-<b>160</b><i>c </i>on a continuous basis. The GNSS reference network <b>150</b> may comprise a plurality of GNSS reference tracking stations or receivers located around the world to provide A-GNSS coverage all the time in both a home network and/or any visited network. The GNSS reference network <b>150</b> may be communicatively coupled to the location server <b>120</b>. The collected GNSS data or information may be utilized by the location server <b>120</b> to enhance LBS performance.
0023Each of the GNSS satellites <b>160</b><i>a</i>-<b>160</b><i>c </i>such as the satellite <b>160</b><i>a </i>may comprise suitable logic, circuitry, interfaces and/or code that may be operable to generate and broadcast satellite navigational information. The broadcast satellite navigation information may be collected by the mobile devices <b>110</b><i>a</i>-<b>110</b><i>c</i>, for example. The broadcast satellite navigational information may be collected by the GNSS reference network <b>150</b> to be utilized by the location server <b>120</b> to enhance LBS performance. The GNSS satellites <b>160</b><i>a</i>-<b>160</b><i>c </i>may comprise, for example, GPS, GLONASS, Galileo and/or Compass satellites.
0024In operation, the mobile device <b>110</b><i>a </i>may collect device-assisted location data, for a RF node such as the RF node <b>170</b><i>a </i>to the location server <b>120</b> for updating the location database <b>122</b>. The mobile device <b>110</b><i>a </i>may be operable to cache the collected location data for the RF node <b>170</b><i>a </i>locally in the mobile device <b>110</b><i>a </i>for deferred uploading. Resources that may be utilized for improving the uploading of the cached location data to the location server <b>120</b> may be determined by the mobile device <b>110</b><i>a</i>. The cached location data may be communicated to the location server <b>120</b> by the mobile device <b>110</b><i>a </i>utilizing the determined resources. In this regard, the mobile device <b>110</b><i>a </i>may be operable to determine an opportunistic transport based on a data usage and/or an access. The cached location data may be communicated to the location server <b>120</b> by the mobile device <b>110</b><i>a </i>utilizing the determined opportunistic transport. In this regard, in instances when the data usage associated with the opportunistic transport is less than a particular cellular data usage, the opportunistic transport may be selected by the mobile device <b>110</b><i>a </i>for communicating the cached location data to the location server <b>120</b> so that the data usage may be reduced. In instances when the access to the opportunistic transport by the mobile device <b>110</b><i>a </i>becomes available, the opportunistic transport may be selected by the mobile device <b>110</b><i>a </i>for communicating the cached location data to the location server <b>120</b>.
0025A subset of the location database may be stored locally in a memory in the mobile device <b>110</b><i>a</i>. The mobile device <b>110</b><i>a </i>may be operable, for example, to acquire the stored subset of the location database such as the location data for the RF nodes <b>170</b><i>a </i>and <b>170</b><i>b </i>from the location server <b>120</b>. The cached location data may be compared with the subset of the location database stored in the mobile device <b>110</b><i>a </i>for redundancy check. The compared location data may be communicated by the mobile device <b>110</b><i>a </i>to the location server <b>120</b> based on a result of the comparison. In instances when the comparison result indicates that the location data such as the location data for the RF node <b>170</b><i>c </i>are not redundant data, the location data for the RF node <b>170</b><i>c </i>may be transmitted by the mobile device <b>110</b><i>a </i>to the location server <b>120</b> for updating the location database <b>122</b>. In instances when the comparison result indicates that the location data such as the location data for the RF node <b>170</b><i>a </i>are redundant data, the location data for the RF node <b>170</b><i>a </i>may not be transmitted to the location server <b>120</b>. The mobile device <b>110</b><i>a </i>may be operable to acquire the subset of the location database based on a capacity of the memory in the mobile device <b>110</b><i>a </i>and/or access capability of the mobile device <b>110</b><i>a. </i>
0026The location server <b>120</b> may be operable to send a subset of the location database <b>122</b> to the mobile device <b>110</b><i>a </i>when acquired by the mobile device <b>110</b><i>a</i>. The subset of the location database which is sent to the mobile device <b>110</b><i>a </i>may be used by the mobile device <b>110</b><i>a </i>to determine whether the location data collected by the mobile device <b>110</b><i>a </i>are redundant data comparing to the subset of the location database. In instances when the location data collected by the mobile device <b>110</b><i>a </i>are redundant data, the location data may not be transmitted to the location server <b>120</b> for updating the location database <b>122</b>. The location server <b>120</b> may be operable to update the location database <b>122</b> utilizing the location data received from the mobile device <b>110</b><i>a. </i>
0027<figref idref="DRAWINGS">FIG. 2</figref> is a block diagram illustrating an exemplary mobile device that is operable to optimize uploading of location data for location based services, in accordance with an embodiment of the invention. Referring to <figref idref="DRAWINGS">FIG. 2</figref>, there is shown a mobile device <b>200</b>. The mobile device <b>200</b> may comprise a location module <b>202</b>, an antenna <b>204</b>, a host processor <b>208</b> and a memory <b>210</b>.
0028The location module <b>202</b> may comprise suitable logic, circuitry, interfaces and/or code that may be operable to collect device-assisted location data and provide or report the collected location data to the location server <b>120</b> for updating the location database <b>122</b>. In an exemplary embodiment of the invention, the location module <b>202</b> may be operable to cache the collected location data for a RF node such as the RF node <b>170</b><i>a </i>locally in the location module <b>202</b> for deferred uploading. Resources that may be utilized for improving the uploading of the cached location data to a location server such as the location server <b>120</b> may be determined by the location module <b>202</b>. The cached location data may be communicated to the location server <b>120</b> by the location module <b>202</b> utilizing the determined resources. In this regard, the location module <b>202</b> may be operable to determine an opportunistic transport based on a data usage and/or an access. The cached location data may be communicated to the location server <b>120</b> by the location module <b>202</b> utilizing the determined opportunistic transport. In this regard, for example, in instances when the data usage associated with the opportunistic transport is less than a particular cellular data usage, the opportunistic transport may be selected by the location module <b>202</b> for communicating the cached location data to the location server <b>120</b> so that the data usage may be reduced. In instances when the access to the opportunistic transport by the location module <b>202</b> becomes available, the opportunistic transport may be selected by the location module <b>202</b> for communicating the cached location data to the location server <b>120</b>.
0029A subset of the location database may be stored locally in the memory <b>210</b>. The location module <b>202</b> may be operable, for example, to acquire the stored subset of the location database such as, for example, the location data for the RF nodes <b>170</b><i>a </i>and <b>170</b><i>b </i>from the location server <b>120</b>. The cached location data may be compared with the subset of the location database stored in the memory <b>210</b> for redundancy check. The compared location data may be communicated by the location module <b>202</b> to the location server <b>120</b> based on a result of the comparison. In this regard, for example, in instances when the comparison result indicates that the location data such as, for example, the location data for the RF node <b>170</b><i>c </i>are not redundant data, the location data for the RF node <b>170</b><i>c </i>may be transmitted by the location module <b>202</b> to the location server <b>120</b> for updating the location database <b>122</b>. In instances when the comparison result indicates that the location data such as, for example, the location data for the RF node <b>170</b><i>a </i>are redundant data, the location data for the RF node <b>170</b><i>a </i>may not be transmitted to the location server <b>120</b>. The location module <b>202</b> may be operable to acquire the subset of the location database based on, for example, a capacity of the memory <b>210</b> and/or access capability of the location module <b>202</b>.
0030The antenna <b>204</b> may comprise suitable logic, circuitry, interfaces and/or code that may be operable to communicate radio signals over the communication network <b>130</b> using various wireless access technologies.
0031The host processor <b>208</b> may comprise suitable logic, circuitry, interfaces and/or code that may be operable to process signals from the antenna <b>204</b> and/or the location module <b>202</b>. The host processor <b>208</b> may manage and/or control operations of the antenna <b>204</b> and/or the location module <b>202</b>. The host processor <b>208</b> may be operable to communicate signals with the communication network <b>130</b> via the antenna <b>204</b>. The host processor <b>208</b> may also be operable to receive A-GNSS data from the location server <b>120</b> over the antenna <b>204</b>.
0032The memory <b>210</b> may comprise suitable logic, circuitry, interfaces and/or code that may be operable to store information such as executable instructions, data and/or database that may be utilized by the host processor <b>208</b> and the location module <b>202</b>. The memory <b>210</b> may be operable to locally store a subset of the location database. The memory <b>210</b> may comprise RAM, ROM, low latency nonvolatile memory such as flash memory and/or other suitable electronic data storage.
0033In operation, the location module <b>202</b> may be operable to collect the location data for the RF node <b>170</b><i>a </i>and cache the collected location data locally in the location module <b>202</b> for deferred uploading. Resources that may be utilized for improving the uploading of the cached location data to the location server <b>120</b> may be determined by the location module <b>202</b>. The cached location data may be communicated to the location server <b>120</b> by the location module <b>202</b> for updating the location database <b>122</b> utilizing the determined resources. In this regard, the location module <b>202</b> may be operable to determine an opportunistic transport based on a data usage and/or an access. The cached location data may be communicated to the location server <b>120</b> by the location module <b>202</b> utilizing the determined opportunistic transport. In instances when the data usage associated with the opportunistic transport is less than a particular cellular data usage, the opportunistic transport may be selected by the location module <b>202</b> for communicating the cached location data to the location server <b>120</b> so that the data usage may be reduced. In instances when the access to the opportunistic transport by the location module <b>202</b> becomes available, the opportunistic transport may be selected by the location module <b>202</b> for communicating the cached location data to the location server <b>120</b>.
0034A subset of the location database may be stored locally in the memory <b>210</b>. The location module <b>202</b> may be operable, for example, to acquire the stored subset of the location database such as the location data for the RF nodes <b>170</b><i>a </i>and <b>170</b><i>b </i>from the location server <b>120</b>. The cached location data may be compared with the subset of the location database stored in the memory <b>210</b> for redundancy check. The compared location data may be communicated by the location module <b>202</b> to the location server <b>120</b> based on a result of the comparison. In instances when the comparison result indicates that the location data such as the location data for the RF node <b>170</b><i>c </i>are not redundant data, the location data for the RF node <b>170</b><i>c </i>may be transmitted by the location module <b>202</b> to the location server <b>120</b> for updating the location database <b>122</b>. In instances when the comparison result indicates that the location data such as the location data for the RF node <b>170</b><i>a </i>are redundant data, the location data for the RF node <b>170</b><i>a </i>may not be transmitted to the location server <b>120</b>. The location module <b>202</b> may be operable to acquire the subset of the location database based on a capacity of the memory <b>210</b> and/or access capability of the location module <b>202</b>.
0035<figref idref="DRAWINGS">FIG. 3</figref> is a block diagram illustrating an exemplary location server that is operable to optimize uploading of location data for location based services, in accordance with an embodiment of the invention. Referring to <figref idref="DRAWINGS">FIG. 3</figref>, there is shown a location server <b>300</b>. The location server <b>300</b> may comprise a server processor <b>302</b>, a location database <b>304</b> and a server memory <b>306</b>.
0036The server processor <b>302</b> may comprise suitable logic, circuitry, interfaces and/or code that may be operable to manage and/or control operations of the location database <b>304</b> and/or the server memory <b>306</b>. The server processor <b>302</b> may be operable to communicate with the GNSS reference network <b>150</b> so as to collect GNSS satellite data by tracking GNSS constellations through the GNSS reference network <b>150</b>. The server processor <b>302</b> may utilize the collected GNSS satellite data to build the location database <b>304</b>, which may be coupled internally or externally to the location server <b>300</b>. The server processor <b>302</b> may be operable to receive location information or data from associated users such as the mobile devices <b>110</b><i>a</i>-<b>110</b><i>c</i>. The received location information or data may be stored in the location database <b>304</b> to share among associated users.
0037In an exemplary embodiment of the invention, the server processor <b>302</b> may be operable to send a subset of the location database <b>304</b> to the mobile device <b>110</b><i>a </i>when acquired by the mobile device <b>110</b><i>a</i>. The subset of the location database, which is sent to the mobile device <b>110</b><i>a</i>, may be used by the mobile device <b>110</b><i>a </i>to determine whether the location data for a RF node such as the RF node <b>170</b><i>a </i>collected by the mobile device <b>110</b><i>a </i>are redundant data by comparing the collected location data to the subset of the location database. In instances when the location data for the RF node <b>170</b><i>a </i>collected by the mobile device <b>110</b><i>a </i>are redundant data, the collected location data may not be transmitted to the server process <b>302</b> for updating the location database <b>304</b>.
0038The location database <b>304</b> may comprise suitable logic, circuitry, interfaces and/or code that may be operable to store location information of associated reference devices such as, for example, the RF nodes <b>170</b><i>a</i>-<b>170</b><i>c</i>. The stored location information may be provided to associated communication devices such as the mobile device <b>110</b><i>a </i>to support LBS applications such as location-based access control. In an exemplary embodiment of the invention, the location database <b>304</b> may be updated utilizing the location data received from the mobile devices <b>110</b><i>a</i>-<b>110</b><i>c</i>. A subset of the location database <b>304</b> may be sent by the server processor <b>302</b> to the mobile device <b>110</b><i>a </i>for comparison.
0039The server memory <b>306</b> may comprise suitable logic, circuitry, interfaces and/or code that may be operable to store information such as executable instructions and data that may be utilized by the server processor <b>302</b> and/or other associated component units such as, for example, the location database <b>304</b>. The server memory <b>306</b> may comprise RAM, ROM, low latency nonvolatile memory such as flash memory and/or other suitable electronic data storage.
0040In operation, the server processor <b>302</b> may be operable to update the location database <b>304</b> utilizing location data received from the mobile device <b>110</b><i>a</i>. The server processor <b>302</b> may send a subset of the location database <b>304</b> to the mobile device <b>110</b><i>a </i>when acquired by the mobile device <b>110</b><i>a</i>. The subset of the location database, which is sent to the mobile device <b>110</b><i>a</i>, may be used by the mobile device <b>110</b><i>a </i>to determine whether the location data for the RF node <b>170</b><i>a </i>collected by the mobile device <b>110</b><i>a </i>are redundant data by comparing the collected location data to the subset of the location database. In instances when the location data for the RF node <b>170</b><i>a </i>collected by the mobile device <b>110</b><i>a </i>are redundant data, the collected location data may not be transmitted to the server process <b>302</b> for updating the location database <b>304</b>.
0041<figref idref="DRAWINGS">FIG. 4</figref> is a flow chart illustrating exemplary steps for optimizing uploading of location data for location based services, in accordance with an embodiment of the invention. Referring to <figref idref="DRAWINGS">FIG. 4</figref>, the exemplary steps start at step <b>401</b>. In step <b>402</b>, the location module <b>202</b> in the mobile device <b>200</b> may be operable to collect location data for a RF node <b>170</b><i>a </i>for updating a location database <b>122</b> in a location server <b>120</b>. In step <b>403</b>, the collected location data is cached in the location module <b>202</b> for deferred uploading. In step <b>404</b>, the location module <b>202</b> may be operable to determine resources that may be utilized for improving the uploading of the cached location data to the location server <b>120</b>. In step <b>405</b>, the cached location data in the location module <b>202</b> may be communicated or transmitted by the location module <b>202</b> to the location server <b>120</b> for updating the location database <b>122</b> utilizing the determined resources. The exemplary steps may proceed to the end step <b>406</b>.
0042In various embodiments of the invention, a mobile device <b>200</b> may be operable to collect location data for a RF node <b>170</b><i>a </i>and cache the collected location data locally in a location module <b>202</b> in the mobile device <b>200</b> for deferred uploading. Resources that may be utilized for improving the uploading of the cached location data to a location server <b>120</b> may be determined by the mobile device <b>110</b><i>a</i>. The cached location data may be communicated to the location server <b>120</b> by the mobile device <b>110</b><i>a </i>utilizing the determined resources. The location server <b>120</b> may comprise a location database <b>122</b> which may then be updated utilizing the location data received from the mobile device <b>110</b><i>a</i>. In this regard, the mobile device <b>110</b><i>a </i>may be operable to determine an opportunistic transport based on a data usage and/or an access. The cached location data may be communicated to the location server <b>120</b> by the mobile device <b>110</b><i>a </i>utilizing the determined opportunistic transport. In this regard, for example, in instances when the data usage associated with the opportunistic transport is less than a particular cellular data usage, the opportunistic transport may be selected by the mobile device <b>110</b><i>a </i>for communicating the cached location data to the location server <b>120</b>. In instances when the access to the opportunistic transport by the mobile device <b>110</b><i>a </i>becomes available, the opportunistic transport may be selected by the mobile device <b>110</b><i>a </i>for communicating the cached location data to the location server <b>120</b>.
0043A subset of the location database may be stored locally in the memory <b>210</b> in the mobile device <b>200</b>. The mobile device <b>110</b><i>a </i>may be operable to acquire the stored subset of the location database from the location server <b>120</b>, for example. The cached location data may be compared with the subset of the location database stored in the memory <b>210</b> for redundancy check. The compared location data may be communicated by the mobile device <b>110</b><i>a </i>to the location server <b>120</b> based on a result of the comparison. In this regard, for example, in instances when the result of the comparison indicates that the location data are not redundant data, the location data may be transmitted by the mobile device <b>110</b><i>a </i>to the location server <b>120</b> for updating the location database <b>122</b>. In instances when the comparison result indicates that the location data are redundant data, the location data may not be transmitted to the location server <b>120</b>. The mobile device <b>200</b> may be operable to acquire the subset of the location database based on, for example, a capacity of the memory <b>210</b> in the mobile device <b>200</b> and/or access capability of the location module <b>202</b> in the mobile device <b>200</b>.
0044Other embodiments of the invention may provide a non-transitory computer readable medium and/or storage medium, and/or a non-transitory machine readable medium and/or storage medium, having stored thereon, a machine code and/or a computer program having at least one code section executable by a machine and/or a computer, thereby causing the machine and/or computer to perform the steps as described herein for optimizing uploading of location data for location based services.
0045Accordingly, the present invention may be realized in hardware, software, or a combination of hardware and software. The present invention may be realized in a centralized fashion in at least one computer system or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software may be a general-purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein.
0046The present invention may also be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form.
0047While the present invention has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the present invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present invention without departing from its scope. Therefore, it is intended that the present invention not be limited to the particular embodiment disclosed, but that the present invention will include all embodiments falling within the scope of the appended claims.
Contents6
6 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US2003004952A1 | Cites | United States of America | Search report |
| US2003032435A1 | Cites | United States of America | Search report |
| US2003202104A1 | Cites | United States of America | Search report |
| US2003225893A1 | Cites | United States of America | Applicant |
| US2004004737A1 | Cites | United States of America | Search report |
| US2005209927A1 | Cites | United States of America | Search report |
| US2008298238A1 | Cites | United States of America | Search report |
| US2009069021A1 | Cites | United States of America | Search report |
| US2009276517A1 | Cites | United States of America | Search report |
| US2010030972A1 | Cites | United States of America | Search report |
| US2010036595A1 | Cites | United States of America | Search report |
| US2010248640A1 | Cites | United States of America | Search report |
| US2011080890A1 | Cites | United States of America | Search report |
| US7092999B2 | Cites | United States of America | Search report |
| US20030004952A1 | Cites | United States of America | Search report |
| US20030032435A1 | Cites | United States of America | Search report |
| US20030202104A1 | Cites | United States of America | Search report |
| US20030225893A1 | Cites | United States of America | Applicant |
| US20040004737A1 | Cites | United States of America | Search report |
| US20050209927A1 | Cites | United States of America | Search report |
| US20080298238A1 | Cites | United States of America | Search report |
| US20090069021A1 | Cites | United States of America | Search report |
| US20090276517A1 | Cites | United States of America | Search report |
| US20100030972A1 | Cites | United States of America | Search report |
| US20100036595A1 | Cites | United States of America | Search report |
| US20100248640A1 | Cites | United States of America | Search report |
| US20110080890A1 | Cites | United States of America | Search report |
2 members in 1 office; this record represents the family
Priority claims6
| Document | Office | Kind | Date |
|---|---|---|---|
| 30410110 | United States of America | P | |
| 30410110 | United States of America | P | |
| 73287410 | United States of America | A | |
| 61304101 | – | – | – |
| US20100304101P | – | – | – |
| US20100732874 | – | – | – |
Members2
| Document | Office | Kind | |
|---|---|---|---|
| US2011201348A1 | United States of America | A1 | |
| US9020522B2This record | United States of America | B2 |
72 transactions on the USPTO file
Allowed after 2 non-final rejections, 2 final rejections and 1 RCE.
- Non-final rejections
- 2
- Final rejections
- 2
- RCEs
- 1
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Payment of Maintenance Fee, 8th Year, Large EntityM1552 | M1552 | |
| Payment of Maintenance Fee, 4th Year, Large EntityM1551 | M1551 | |
| Post Issue Communication - Certificate of CorrectionN423 | N423 | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Printer Rush- No mailingTCPB | TCPB | |
| Mail Response to 312 Amendment (PTO-271)MN271 | MN271 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Response to Amendment under Rule 312N271 | N271 | |
| Pubs Case Remand to TCPUBTC | PUBTC | |
| Amendment after Notice of Allowance (Rule 312)AllowedA.NA | A.NA | |
| Response to Reasons for AllowanceREAS | REAS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Reasons for AllowanceEX.R | EX.R | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Disposal for a RCE / CPA / R129AbandonedABN9 | ABN9 | |
| Request for Continued Examination (RCE)RCEX | RCEX | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Workflow - Request for RCE - BeginBRCE | BRCE | |
| Mail Advisory Action (PTOL - 303)MCTAV | MCTAV | |
| Advisory Action (PTOL-303)CTAV | CTAV | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| PILOT- Request for After Final Consideration ProgramRAFC | RAFC | |
| Response after Final ActionA.NE | A.NE | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Mail Miscellaneous Communication to ApplicantMM327 | MM327 | |
| Miscellaneous Communication to Applicant - No Action CountM327 | M327 | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Mail Interview Summary - Applicant Initiated - TelephonicMEXAT | MEXAT | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Mail Notice of Withdrawn ActionMW/AC | MW/AC | |
| Withdrawing/Vacating Office Action LetterW/AC | W/AC | |
| Interview Summary- Applicant InitiatedEXIA | EXIA | |
| Interview Summary - Applicant Initiated - TelephonicEXAT | EXAT | |
| Mail Final Rejection (PTOL - 326)Final rejectionMCTFR | MCTFR | |
| Final RejectionFinal rejectionCTFR | CTFR | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Request for Extension of Time - GrantedXT/G | XT/G | |
| Mail Applicant Initiated Interview SummaryMEXIA | MEXIA | |
| Interview Summary- Applicant InitiatedEXIA | EXIA | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Request for first action interviewRFAI | RFAI | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Change in Power of Attorney (May Include Associate POA)PA.. | PA.. | |
| Correspondence Address ChangeC.AD | C.AD | |
| Email NotificationEML_NTR | EML_NTR | |
| PG-Pub Issue NotificationPG-ISSUE | PG-ISSUE | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Change in Power of Attorney (May Include Associate POA)PA.. | PA.. | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Sent to Classification ContractorPGPC | PGPC | |
| Filing ReceiptFLRCPT.O | FLRCPT.O | |
| Cleared by OIPE CSRL194 | L194 | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Electronic Information Disclosure StatementEIDS. | EIDS. | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Initial Exam Team nnIEXX | IEXX |
13 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Maintenance fee paymentMAFP | MAFP | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Maintenance fee paymentMAFP | MAFP | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Certificate of correctionCC | CC | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF | |
| AssignmentAS | AS |
Numbers
- Publication
- 09020522
- Publication, DOCDB
- 9020522
- Publication, EPODOC
- US9020522
- Application
- 12732874
- Application, DOCDB
- 73287410
- Application, EPODOC
- US20100732874
Titles
- English
- Method and system for optimizing uploading of location data for location based services
Patent term adjustment
- A delay
- +358 daysthe office missed an examination deadline
- B delay
- +539 dayspendency past three years
- Applicant delay
- −65 days
- Net adjustment
- 832 days
Classification
- CPC, 2
- H04W4/02
- H04W4/029
- IPC, 3
- H04W4 02
- H04W4 029
- H04W24 00
- USPC, 3
- 455456100
- 455456200
- 705026100