|Publication number||US7890119 B2|
|Application number||US 11/438,924|
|Publication date||Feb 15, 2011|
|Filing date||May 23, 2006|
|Priority date||May 23, 2006|
|Also published as||US20070275732, WO2007139626A2, WO2007139626A3|
|Publication number||11438924, 438924, US 7890119 B2, US 7890119B2, US-B2-7890119, US7890119 B2, US7890119B2|
|Inventors||Piyush Jethwa, Simon Youngs, Robert M. Lupa|
|Original Assignee||Sprint Spectrum L.P.|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (9), Non-Patent Citations (7), Referenced by (2), Classifications (15), Legal Events (3)|
|External Links: USPTO, USPTO Assignment, Espacenet|
The present invention relates to telecommunications and, more particularly, to determination of the location of mobile stations such as cell phones for instance.
Cellular wireless is an increasingly popular means of personal communication in the modern world. To provide cellular wireless communication services, as shown in
In usual practice, for instance, to place a call over PSTN 24, mobile station 20 may transmit a call origination message over an air interface access channel to RAN 12, providing dialed digits. Upon receipt of the call origination message, MSC 18 may then direct BSC 16 to assign an air interface traffic channel for use by mobile station to engage in the call, and MSC 18 may set up the call over PSTN 24 to the called number. In particular, MSC 18 may engage in ISDN User Part (ISUP) signaling over a signaling network 40, such as a Signaling System #7 (SS7) network, with a switch serving the called party, in an effort to set up the call over PSTN 24 to that party. Similarly, when MSC 18 receives a request to connect a call to mobile station 20, MSC 18 may page the mobile station 20 over an air interface paging channel and may direct BSC 16 to assign an air interface traffic channel for the call.
To engage in packet-data communication on network 28, mobile station 20 would typically need to acquire a radio link, a data link, and an IP address. To do so, for instance, the mobile station 20 may transmit a packet-data origination request message over an air interface access channel to RAN 12. Upon receipt of that message, MSC 18 may then forward the message back to BSC 16. BSC 16 may then assign an air interface traffic channel for use by the mobile station as a radio link. Further, BSC 16 may signal to PDSN 26, and PDSN 26 may negotiate with mobile station 20 to establish a point to point protocol (PPP) data link. Still further, PDSN 26 or a mobile-IP home agent (not shown) may assign an IP address for use by mobile station to communicate on network 28.
An important feature of contemporary cellular wireless networks is an ability to locate the geographical position of a mobile station. Such a feature was initially developed to assist emergency services in locating a mobile station. However, the availability of location information to support E911 services has given rise to the development of many other location-based services as well.
For instance, given the location of a mobile station, a location-based service provider/application 30 (e.g., a cellular wireless carrier or third party) in PSTN or packet-switched communication with mobile station 20 can provide the mobile station user with a weather or traffic report in the user's vicinity. As another example, a location-based service provider can report a list of services or establishments (e.g., restaurants, parks, theatres, etc.) in the user's vicinity. As still another example, a location-based service provider can provide a mobile station user with a map of the user's location or with directions for travel between the user's location and another location. And as yet another example, knowing that a mobile station is operating in a particular location, a location-based service provider can send the mobile station a location-based message, such as an advertisement or coupon for a nearby establishment. Other location-based services exist currently or will be developed in the future as well.
In practice, when a location-based service (LBS) application wants to determine the location of a mobile station, the application may send a location request message to the wireless carrier that serves the mobile station. In response, the carrier may then engage in a process to determine where the mobile station is currently located, and the carrier may then generate a response to the location request and send the response to the LBS application.
Typically, a wireless carrier will operate a positioning system 32 that is arranged to determine and report mobile station locations to requesting entities. The positioning system 32 may include a “mobile positioning center” (MPC) 34 and a position determining entity (PDE) 36, which may be integrated together. The position determining system 32 may function to determine the location of a given mobile station based on various factors such as (i) the identity and location of the cell/sector in which the mobile station is currently operating, (ii) satellite-based positioning information provided by the mobile station, (iii) round trip signal delay measurements, and/or (iv) signal strength measurements. Further, the carrier may operate a location server 38 that acts as a front end for receiving location requests from LBS applications and forwarding those requests to the position determining system.
When the location server 38 receives a location request from the LBS application 30, the location server may send a corresponding location request to the MPC (e.g., via network 28), and the MPC/PDE may, in turn, determine the location of the mobile station. The MPC may then return the determined location of the mobile station to the location server, and the location server may then return to the LBS application the determined location or data derived from the determined location (such as mapping, routing, or street address information, for instance).
Oftentimes to determine the location of a mobile station, a carrier's positioning system 32 will need to obtain information from the mobile station itself. This information may comprise satellite positioning data, such as GPS readings or other data, information regarding the cell/sector in which the mobile station is currently operating, and information about signals the mobile station is receiving from various base stations, for instance. To obtain data from the mobile station, the positioning system may thus need to communicate with the mobile station.
Today, two disparate mechanisms are known for providing communication between a positioning system and a mobile station: (i) “control plane” signaling and (ii) “user plane” signaling. Further, a given positioning system, in cooperation with other elements of a carrier's network, will typically be configured to use just one of these two mechanisms, but not both.
Control plane signaling is the more traditional mechanism for communicating position-related data between a positioning system and a mobile station. With control plane signaling, when positioning system 32 seeks to determine the location of mobile station 20, positioning system 32 will typically identify the MSC 18 serving the mobile station and will engage in a signaling communication session with the MSC 18, and the MSC 18 will in turn engage in a signaling communication session with the mobile station 20, to obtain the desired data and pass the data along to the positioning system 32.
More particularly, to engage in control plane signaling, the positioning system 32 may first query a home location register (HLR) 42, via the signaling network 40, to determine the point code subsystem number (PC_SSN) of the MSC 18 currently serving the mobile station. For instance, the positioning system may send an IS-41 Location Request (LOCREQ) to the HLR, or an IS-41-D SMS Request (SMSREQ) message to the HLR, providing the HLR with an identifier of the mobile station, and the HLR would respond (in a Location Request return result (locreq_rr) or SMS Request return result (smsreq_rr)) with the PC_SSN of the currently serving MSC (or a last known serving MSC). The query to the HLR could carry a mobile station identifier (such as a mobile directory number (MDN)) as indicated in the initial location request to the MPC.
Industry standard 3GPP2 X.P0002/TIA PN-4747 (IS-881), in turn, defines many of the location request messages that would pass between the MPC, PDE and MSC for control plane signaling. For instance, the MPC 34 may send to the MSC 18 an IS-881 “ISPOSREQ” message seeking cell/sector information, and the MSC 18 may respond to the MPC 34 with an IS-881 isposreq return result (isposreq_rr) message. Further, the MPC 34 may send to the PDE 36 an IS-881 “GPOSREQ” request message, and the PDE 36 may responsively send to the MSC 18 an IS-881 “SMDPP” request message. Still further, the MSC 18 may respond to the PDE 36 with an IS-881 smdpp_rr message, and the PDE 36 may respond to the MPC 34 with a gposreq_rr message.
Additionally, industry standard IS-801 defines position determination messages that can pass over an air interface between an MSC and a mobile station for purposes requesting and receiving location data. For instance, the MSC 18 can send an IS-801 position determination request (PD Request) message over the air to mobile station 20, request the mobile station to provide satellite-based positioning information, and the mobile station 20 can respond with an IS-801 position determination response (PD Response) message over the air to the MSC 18, providing the requested satellite-based positioning information.
In operation, when the MPC 34 receives a request for the location of mobile station 20, the MPC 34 may invoke the PDE 36 to determine the location. More particularly, the MPC 34 may first query HLR 42 to identify the MSC 18 serving the mobile station and may then send an ISPOSREQ to that MSC, to determine the cell/sector in which the mobile station is currently operating, so that the MPC 34 may determine (e.g., look up) the centroid of that cell/sector. The MPC 34 may then send a GPOSREQ to the PDE 36, providing the PDE 36 with (i) an identifier of the mobile station, (ii) an identifier of the serving MSC 18, and (iii) the determined cell/sector centroid.
Upon receipt of the GPOSREQ, the PDE 36 may then use the cell/sector centroid as a basis to identify (e.g., look up) what satellite(s) the mobile station can use to obtain satellite-based positioning information. The PDE 36 may then send an SMDPP message to the MSC 18, specifying one or more satellites that the mobile station should use to obtain satellite-based positioning information. In response to the SMDPP message, the MSC 34 may then send an IS-801 PD Request message over a previously-assigned air interface traffic channel to the mobile station, indicating the satellite(s) from which the mobile station should get positioning information.
In turn, the mobile station 20 would look to the designated satellite(s) to obtain the requested satellite-based positioning information and would provide the information in an IS-801 PD Response message over the air to the MSC 18. Upon receipt of that PD Response message, the MSC 18 would then generate and send an smdpp_rr to the PDE 36, providing the PDE 36 with the requested satellite-based positioning information.
In some cases, the PDE 36 may need additional satellite-based positioning information in order to sufficiently determine the location of the mobile station. Thus, in some cases, the PDE 36 may send one or more additional SMDPP-based location requests to the MSC 18, which would cause the MSC 18 to send one or more corresponding IS-801 PD Requests to the mobile station, and so forth. Once the PDE 36 has all the information it needs, it may then send an SMDPP “Release” message to the MSC 18, which would signal to the MSC 18 that the MSC 18 can release the assigned traffic channel (if the traffic channel had been assigned for purposes of the location determination process) or that the MSC 18 can stop using the traffic channel for location determination messaging (if the mobile station was already using the traffic channel).
Provided with the satellite-based positioning information from the mobile station 20 and with the cell/sector centroid from the MPC 34, the PDE 36 may then apply standard algorithms to determine a geographic location of the mobile station, and the PDE may return that location in a gposreq_rr to the MPC 34. The MPC 34 may then report that location in a response to the location request that it received.
User plane signaling has been developed more recently to provide a more streamlined form of communication between positioning system 32 and mobile station 20. With user plane signaling, positioning system 32 and mobile station 20 engage in more direct communication session with each other, through 2-way Short Messaging Service (SMS) signaling (e.g., via an SMS Controller 44) and/or through IP communication (via network 28), so that mobile station 20 can pass any desired location data directly to the positioning system.
In an exemplary user plane signaling process, for instance, MPC 34 may send a specially coded GPOSREQ to PDE 36 seeking a read on the mobile station's location and thus putting the PDE 36 on notice that the PDE 36 is about to engage in user plane signaling with the mobile station 20 to receive data necessary for determining the mobile station's location. Further, the MPC 34 may send to the mobile station a specially coded SMS message that will trigger the mobile station 20 to engage in further user plane signaling with the positioning system 32.
The SMS message from MPC 34 to mobile station 20 may, for instance, cause client logic in the mobile station 20 to respond directly to the MPC 34 with a mobile originated SMS message that provides the MPC 34 with certain data, such as the cell/sector in which the mobile station 20 is currently operating. As such, this 2-way SMS messaging between the MPC 34 and the mobile station 20 may take the place of the control plane process of MPC 34 sending an ISPOSREQ to the serving MSC 18 to determine the cell/sector. The MPC 34 may then pass the determined cell/sector information along to the PDE 36.
Furthermore, the SMS message from MPC 34 to mobile station 20 may specify a network address of PDE 36 and may cause the client logic in the mobile station to initiate IP-based communication with that network address, much as a WAP Push message conventionally triggers a mobile station to engage in IP communication with a designated address. Once the mobile station 20 initiates that IP-based communication with the PDE 36 (e.g., establishes a TCP/IP session with the PDE 36), the PDE 36 and mobile station 20 may then engage in an IS-801 position determination session over IP.
Thus, rather than sending an SMDPP message to the serving MSC 18 as in control plane signaling, the PDE 36 in user plane signaling may send an IS-801 PD Request message over IP (via network 28) to the mobile station. And the mobile station may then send an IS-801 PD Response message over IP (via network 28) to the PDE 36, thus providing the PDE with the information that it needs to compute the mobile station's location. For instance, through the IS-801 over IP session, the mobile station may report its serving cell/sector to the PDE 36 (e.g., as an alternative to reporting it in a mobile originated SMS to the MPC 34). Further, through the IS-801 over IP session, the PDE 36 may request the mobile station 20 to get positioning information from one or more particular satellite(s), and the mobile station 20 may obtain that information and report it in response to the PDE 36.
As noted above, existing positioning systems are configured to employ either control plane signaling or user plane signaling, but not both. Indeed, as both forms of signaling achieve largely the same result, it would be redundant to employ both control plane and user plane signaling. Legacy carrier systems typically employ control plane signaling. However, upgraded carrier systems may instead be arranged to employ user plane signaling.
The present invention stems from a realization, however, that there may be certain instances in which the choice of signaling type may in fact matter. Thus, it would be useful in certain instances to employ user plane signaling, whereas it might be useful in other instances to employ control plane signaling.
The present invention is accordingly directed to a method and system for dynamically selecting between at least two such signaling mechanisms on a case by case basis. With the benefit of the invention, a carrier's positioning system may programmatically opt to employ control plane signaling when faced with certain location queries but to employ user plane signaling when faced with other location queries.
In one respect, an exemplary embodiment of the invention may take the form of a method carried out by a positioning system or associated network entity. This method is illustrated generally by the flow chart of
In this method, the one or more factors taken into account to determine whether to employ control plane signaling or user plane signaling may take various forms. As one example, not all mobile stations may be user plane capable (e.g., programmed with logic to engage in user plane signaling). Thus, the method may comprise referring to device-capabilities data (e.g., a CC/PP data store) to determine whether the particular mobile station at issue is user plane capable. If the mobile station is user plane capable, then the determination may be to employ user plane signaling, whereas, if the mobile station is not user plane capable, then the determination may be to employ the more traditional control plane signaling.
As another example, many mobile stations are incapable of engaging in simultaneous voice and data communications. If such a mobile station is currently engaged in a phone call, it may thus be impossible for the mobile station to engage in user plane signaling, since the mobile station would be unable to engage in IP-based communications with the PDE at the same time as the mobile station engages in the phone call. Thus, the method may comprise referring to state-data (i.e., presence data) to determine whether the mobile station at issue is currently engaged in a call. If the mobile station is currently engaged in a call (and possibly if device capabilities data indicates that the mobile station is incapable of engaging in simultaneous voice and data communication), then the determination may be to employ control plane signaling. On the other hand, if the mobile station is not currently engaged in a call (or if device capabilities data indicates that the mobile station is capable of engaging in simultaneous voice and data communication), then the determination may be to employ user plane signaling.
As still another example, if the location request received by the positioning system seeks merely low-precision location information such as cell/sector information, then it may be sufficient to employ a portion of traditional control plane signaling—simply having the MPC send an ISPOSREQ to the serving MSC to determine the mobile station's cell/sector. In that case, the determination may be to employ legacy control plane signaling. On the other hand, if the location request received by the positioning system seeks high precision location information, then it may be preferable to employ user plane signaling to directly obtain the necessary data from the mobile station. In that case, the determination may be to employ user plane signaling.
And as yet another example, for one reason or another, the LBS application seeking location information from the positioning system may itself have a preference between control plane signaling and user plane signaling and may express that preference by a designated code in its request to the positioning system. (Alternatively, an intermediary sitting in the communication path between the LBS application and the positioning system may be programmed to express such a preference and may alter a position request to the positioning system to include a code expressing that preference). In that case, if the request to the positioning system specifies use of control plane signaling (or otherwise directly or indirectly indicates such a preference), then the determination may be to use control plane signaling. On the other hand, if the request to the positioning system specifies use of user plane signaling, then the determination may be to use user plane signaling.
Still further, the determination of whether to use control plane signaling or user plane signaling can be based on failure of one or the other signaling mechanisms. For example, the positioning system may first attempt to engage in user plane signaling with the mobile station, such as with the MPC sending an SMS trigger message to the mobile station, in response to which the MPC would expect to receive a mobile-originated message from the mobile station. The MPC may set a lifetime timer for the SMS message it sends to the mobile station. If the MPC does not then receive a response mobile originated SMS message from the mobile station within that lifetime, the MPC may then responsively use control plane signaling. As another example, the positioning system may first attempt to engage in control plane signaling, but the control plane signaling may fail because the mobile has begun roaming such that the MPC is unable to contact the currently serving MSC. In that scenario, if the mobile station still has data coverage or is otherwise able to engage in user plane signaling, the MPC may then instead employ user plane signaling with the mobile station.
Yet further, as another example, the positioning system or associated entity may be programmed to select between control plane and user plane signaling based on one or more other various factors, such as time (time of day, day of week, date, etc.), subscriber preference, subscriber service level, LBS application service level, switch capability, network congestion and/or other network metrics or other factors now known or later contemplated.
In the exemplary method, multiple factors, such as those described above or others, may be taken into account. Further, multiple factors may be prioritized or weighed for consideration by the positioning system. Thus, if one factor has relatively low priority and results in a determination that user plane signaling should be used, while another factor has relatively high priority and results in a determination that control plane signaling should be used, then the ultimate determination based on these two factors might be to use control plane signaling. Further, multiple factors may have equal priorities, such that, if any of the factors results in a determination that control plane signaling should be used, then any conflict may be resolved in favor of control plane signaling. Other rules for combining together various factors could be applied as well.
In the exemplary method, control plane signaling would preferably comprise a first communication session between the positioning system and a switch serving the mobile station and a second communication session between the switch and the mobile station. In practice, as is well known in the art for control plane signaling, the first communication session may be an IS-881 communication session and the second communication session may be an IS-801 communication session.
Further, in the exemplary method, user plane signaling may comprise a communication session between the positioning system and the mobile station. For instance, the communication session between the positioning system and the mobile station may comprise an IS-801 over IP session and/or an SMS session (e.g., 2-way SMS communication). In the exemplary embodiment, the user plane signaling may be network initiated, such as by the positioning system sending an SMS message to the mobile station that triggers the mobile station to engage in further user plane communication with the positioning system.
Referring next to
As shown in
Processor 96 comprises one or more general purpose processors (e.g., INTEL microprocessors) and/or one or more special purpose processors (e.g., digital signal processors, etc.) Data storage 98, in turn, comprises one or more storage components, such as magnetic, optical, or organic storage mechanisms, and may be integrated in whole or in part with processor 96. Data storage 98 may contain both reference data 102 and program logic 104.
The reference data 102 may comprise replacements for (or copies of) any of the data sources described above or other data sources that processor 96 can reference to facilitate implementation of the invention. For instance, the reference data may comprise the factor prioritization data described above, rather than maintaining that data in a separate data store, so that processor 96 can have more ready access to the data. Reference data 98 may take other forms as well.
The program logic 104, in turn, may comprise machine language instructions or other sorts of program instructions executable by processor 96 to carry out the various functions described herein. For instance, the program logic 104 may define logic executable by processor 96, upon receipt of a location request, to determine based on one or more factors whether to use control plane signaling or user plane signaling to obtain data for determining mobile station location. Program logic 104 may then define logic executable by the processor 96 to engage in the determined type of signaling. In an alternative embodiment, it should be understood that these logical functions can be implemented by firmware and/or hardware, or by any combination of software, firmware, and/or hardware.
An exemplary embodiment of the invention has been described above. Those skilled in the art will understand, however, that changes and modifications may be made to the embodiment described without departing from the true scope and spirit of the invention, which is defined by the claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US7317910 *||Mar 17, 2004||Jan 8, 2008||Nokia Corporation||Providing location information|
|US7424293 *||Dec 2, 2003||Sep 9, 2008||Telecommunication Systems, Inc.||User plane location based service using message tunneling to support roaming|
|US20040242238||Mar 2, 2004||Dec 2, 2004||Jun Wang||User plane-based location services (LCS) system, method and apparatus|
|US20050043038||Nov 19, 2001||Feb 24, 2005||Markus Maanoja||Provision of location information|
|US20050085239||Oct 21, 2003||Apr 21, 2005||Openwave Systems Inc.||System and method for mobile-based location information|
|US20050132295||Jan 24, 2005||Jun 16, 2005||Roland Noll||Channel dancer|
|US20050153687||Mar 17, 2004||Jul 14, 2005||Nokia Corporation||Providing location information|
|US20060046747 *||Sep 1, 2004||Mar 2, 2006||Charles Abraham||Method and apparatus for processing location service messages in a satellite position location system|
|US20070142059 *||Dec 15, 2005||Jun 21, 2007||Lucent Technologies Inc.||User plane location architecture with mobile server for location based services|
|1||J. Dyoub & B. Collins, "Dueling Architectures: Control plane vs. User-plane Which is right for you?," Hewlett-Packard Development Company, L.P., 2004.|
|2||Openwave Systems Inc., "Openwave® Location Manager," Oct. 2002.|
|3||Openwave Systems, Inc., "Openwave® Location Manager Commercial Edition," Sep. 2005.|
|4||Qualcomm Incorporated, "gpsOne(TM), User Plane MS-MPC (Nonproprietary) Protocol Specification", 80-V5456-1NP F, Oct. 18, 2004.|
|5||Qualcomm Incorporated, "Location-Based Services System Specification," 80-V6410-1NP D, Dec. 3, 2003.|
|6||Qualcomm Incorporated, "gpsOne™, User Plane MS-MPC (Nonproprietary) Protocol Specification", 80-V5456-1NP F, Oct. 18, 2004.|
|7||Qualcomm Incorporated,"IS-801 Call Flows for gpsOne® PDM," Release 4.x, 80-V6151-2 A, Mar. 10, 2005.|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US8200240 *||Nov 23, 2009||Jun 12, 2012||Sprint Spectrum L.P.||Method and system for use of a trusted server to facilitate location determination|
|US9405010||May 2, 2012||Aug 2, 2016||Raven Industries, Inc.||Geospatial positioning using correction information provided over cellular control channels|
|U.S. Classification||455/456.1, 455/521, 455/456.2, 455/457, 455/414.2|
|International Classification||H04W4/02, H04W8/22, H04W8/10|
|Cooperative Classification||H04L67/24, H04L67/18, H04W4/02, H04W8/22, H04W8/10|
|European Classification||H04L29/08N17, H04W4/02|
|May 23, 2006||AS||Assignment|
Owner name: SPRINT SPECTRUM L.P., KANSAS
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:JETHWA, PIYUSH;YOUNGS, SIMON;LUPA, ROBERT M.;REEL/FRAME:017929/0369;SIGNING DATES FROM 20060516 TO 20060517
Owner name: SPRINT SPECTRUM L.P., KANSAS
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:JETHWA, PIYUSH;YOUNGS, SIMON;LUPA, ROBERT M.;SIGNING DATES FROM 20060516 TO 20060517;REEL/FRAME:017929/0369
|Aug 8, 2014||FPAY||Fee payment|
Year of fee payment: 4
|Mar 3, 2017||AS||Assignment|
Owner name: DEUTSCHE BANK TRUST COMPANY AMERICAS, NEW YORK
Free format text: GRANT OF FIRST PRIORITY AND JUNIOR PRIORITY SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:SPRINT SPECTRUM L.P.;REEL/FRAME:041937/0632
Effective date: 20170203