[go: up one dir, main page]

HK1184313B - Method and apparatus for location reporting with secure user plane location (supl) - Google Patents

Method and apparatus for location reporting with secure user plane location (supl) Download PDF

Info

Publication number
HK1184313B
HK1184313B HK13111791.3A HK13111791A HK1184313B HK 1184313 B HK1184313 B HK 1184313B HK 13111791 A HK13111791 A HK 13111791A HK 1184313 B HK1184313 B HK 1184313B
Authority
HK
Hong Kong
Prior art keywords
supl
message
set120
slp150
location
Prior art date
Application number
HK13111791.3A
Other languages
Chinese (zh)
Other versions
HK1184313A1 (en
Inventor
安德烈亚斯.瓦赫特
斯蒂芬.埃奇
柯克.伯勒斯
Original Assignee
高通股份有限公司
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 高通股份有限公司 filed Critical 高通股份有限公司
Publication of HK1184313A1 publication Critical patent/HK1184313A1/en
Publication of HK1184313B publication Critical patent/HK1184313B/en

Links

Abstract

Techniques for supporting periodic and other location services with Secure User Plane Location (SUPL) and other location architectures are described. The techniques can provide position estimates for a SUPL enabled terminal (SET) to a SUPL agent periodically and/or based on trigger events. A Home SUPL Location Platform (H-SLP) receives from the SUPL agent a request for position estimates for the SET. The H-SLP starts a SUPL location session with the SET. For each of at least one reporting event during the location session, the H-SLP obtains a position estimate for the SET and sends the position estimate to the SUPL agent. The position estimate may be derived by the SET and sent to the H-SLP. Alternatively, the position estimate may be derived by the H-SLP based on measurements from the SET.

Description

Method and apparatus for location reporting with Secure User Plane Location (SUPL)
Related information of divisional application
The application is a divisional application of the original Chinese invention patent application with the name of 'location reporting with Secure User Plane Location (SUPL)'. The original application having application number 200680039079.2; the date of application of the original application is 8/25 2006.
The present application is a continuation of U.S. application 13/269,084 entitled "LOCATIONREPORTING WITHS SECURERENCER PLANALLOCATION (SUPL)" filed on 7/10/2011, U.S. application 13/269,084 is a continuation of U.S. application 11/510,332 entitled "LOCATIONREPORTING WITHS SECURERENCER PLANALLOCATION (SUPL)" filed on 24/8/2006, U.S. application 11/510,332 is entitled U.S. patent number 8,068,056, which claims priority to the following provisional applications and which are all assigned to the present assignee and are incorporated herein by reference:
united states provisional application No. 60/711,801 entitled "effective pharmaceutical location reporting and acquisition of business" filed on 25/8/2005; united states provisional application No. 60/718,112 entitled "efficientpeodeoxycholic reproduction on day 16, 9/2005," filed 2005; U.S. provisional application No. 60/771,180 entitled "EFFICIENT PERIPERIDIC LOCATIONREPORTING FNARADIOACCESSNONS FOR WORK" filed on 6.2.2006; U.S. provisional application No. 60/771,217 entitled "CLARIFICATIONANDCORRECTIONOFERIDIDICLOCATIONPROCEDURE" filed on 7.2.2006; U.S. provisional application No. 60/771,706 entitled "addition of information and location products" filed on 8.2.2006; U.S. provisional application No. 60/739,073 entitled "SUPL2.0TRIGGEREDLOCATIONPROXYMODE" filed on 21/11/2005; united states provisional application No. 60/788,544 entitled "triggeredandpeeichiostheriocyclationreporting system" filed on 30/3/2006; and U.S. provisional application No. 60/813,488 entitled "EFFICIENT LOCATIONREPORTING INFORMATION NETWORK" filed on 13.6.2006.
Technical Field
The present disclosure relates generally to communication, and more specifically to techniques for providing location services.
Background
It is often desirable, and sometimes necessary, to know the location or position of a wireless device in a network. The terms "position" and "location" are synonymous and are used interchangeably herein. For example, a user may utilize a wireless device to browse a website and may click on location sensitive content. The network server may then interrogate the network to learn the location of the wireless device. The network may initiate location processing for the wireless device in order to confirm the location of the wireless device. The network may then return the position estimate for the wireless device to a network server, which may use this position estimate to provide appropriate content to the user. There are many other situations where it is useful or necessary to know the location of a wireless device.
A message flow (which may also be referred to as a call flow or procedure) is typically performed in order to obtain a position estimate for the wireless device and to send this position estimate to a client entity, such as a network server. Various messages are typically exchanged between one or more network entities, wireless devices, and client entities for a message flow. These messages ensure that each entity is provided with relevant information, or that this information may be obtained from another entity in order to perform positioning of the wireless device and/or to communicate the position estimate to the client entity. However, these messages may increase traffic between various network entities. The additional traffic may be particularly large for positioning services that periodically provide a client entity with a position estimate for the wireless device. The message may also extend the response time for sending the position estimate to the client entity.
Accordingly, there is a need in the art for techniques to efficiently provide location services.
Disclosure of Invention
Techniques to support periodic and other location services with Secure User Plane Location (SUPL) and other location architectures are described herein. The techniques may provide a location estimate for a SUPL Enabled Terminal (SET) to a SUPL agent periodically and/or based on a trigger event or condition.
In one embodiment, a home SUPL location platform (H-SLP) receives a request for a position estimate for a SET from a SUPL agent. The H-SLP initiates a SUPL location session with the SET. For each of the at least one reporting event during the positioning session, the H-SLP obtains a position estimate for the SET and sends the position estimate to the SUPL agent. A position estimate may be derived by the SET and sent to the H-SLP. Alternatively, a position estimate may be derived by the H-SLP based on measurements from the SET. Various details are described below.
Various aspects and embodiments of the invention are also described in more detail below.
Drawings
Aspects and embodiments of the present invention will become more readily apparent from the detailed description set forth below when taken in conjunction with the drawings in which like reference characters identify correspondingly throughout.
Fig. 1A and 1B show two exemplary network architectures.
Fig. 2-18 show exemplary message flows for triggered location services.
FIG. 19 shows a block diagram of various entities in FIGS. 1A and 1B.
Detailed Description
The word "exemplary" is used herein to mean "serving as an example, instance, or illustration. Any embodiment or design described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments or designs.
The techniques described herein may be used for various wireless networks, such as Code Division Multiple Access (CDMA) networks, Time Division Multiple Access (TDMA) networks, Frequency Division Multiple Access (FDMA) networks, orthogonal FDMA (ofdma) networks, networks supporting a combination of the foregoing techniques, networks with Wide Area Network (WAN) coverage and/or Wireless Local Area Network (WLAN) coverage, and so forth. A CDMA network may implement one or more radio technologies, such as wideband-CDMA (W-CDMA), CDMA2000, and so on. Cdma2000 covers IS-2000, IS-856 and IS-95 standards. A TDMA network may implement one or more radio technologies such as Global System for Mobile communications (GSM), advanced digital Mobile Phone System (D-AMPS), etc. D-AMPS covers IS-136 and IS-54. These various radio technologies and standards are known in the art. W-CDMA and GSM are described in documents from an organization named "3rd Generation Partnershipproject",3 GPP. Cdma2000 is described in a document from an organization named "3rd generation partnership project2" ("3 rd generation partnership project2",3GPP 2). Documents from 3GPP and 3GPP2 are publicly available.
The techniques may also be used to help locate devices that communicate using a wireline IP-enabled network, such as a network that provides DSL or cable access, and/or may be used to support client devices that communicate using a wireline network.
The techniques may also be used for various positioning structures, such as control plane and user plane structures. The control plane (also referred to as the signaling plane) is a mechanism that carries signaling for higher layer applications and is typically implemented with network specific protocols and signaling messages. The user plane is a mechanism for carrying data for higher layer applications and employing a user plane bearer, which is typically implemented with protocols such as User Datagram Protocol (UDP), Transmission Control Protocol (TCP), and Internet Protocol (IP), all of which are known in the art. Messages supporting location services and positioning are carried in the control plane structure as part of the signaling and in the user plane structure as part of the data. However, the content of the message may be the same or similar in both structures. The techniques may be used to: SUPL and pre-SUPL architectures, propagated by the Open Mobile Alliance (OMA); 3GPP control plane structures described in 3GPP TS23.271, TS43.059, and TS 25.305; 3GPP2 control plane structures described in IS-881 and 3GPP2 x.s0002; the 3GPP2 user plane structure described in x.s0024, and the like. For clarity, the techniques are described below for SUPL.
Fig. 1A shows a network architecture 100 capable of providing location services for a SUPL Enabled Terminal (SET). A SET is a device capable of communicating with a SUPL enabled entity that supports positioning and location services for the SET. For simplicity, only one SET120 is shown in fig. 1A. SET120 may be fixed or mobile and may also be referred to as a Mobile Station (MS), User Equipment (UE), terminal, station, subscriber unit, or some other terminology. SET120 may be a cellular telephone, Personal Digital Assistant (PDA), wireless modem, personal computer, laptop computer, telemetry device, tracking device, etc. For example, SET120 may be a UE in a Universal Mobile Telecommunications System (UMTS), an MS in GSM or cdma2000, a personal computer in an IP-based network, and the like.
SET120 may include a SUPL agent 122 capable of accessing SUPL enabled entities. SET120 may also be a target SET that is a SET whose location has been found by a SUPL agent, which may be internal or external to the SET. SET120 may perform functions such as privacy, security, location measurements, and location calculations for location services.
SET120 may communicate with communication network 130 to obtain various services such as voice, packet data, messaging, and so on. SET120 may also communicate with SUPL enabled entities via network 130. The network 130 may also be a wireless network such as a cdma2000 network, a UMTS network, a GSM network, some other Radio Access Network (RAN), a WLAN, etc. The network 130 may also be a wireline network, such as an IP-based network, a telephone network, a cable network, etc. SET120 may also receive signals from one or more satellites 190, which may be part of the Global Positioning System (GPS), the european galileo system, the russian glonass system, or some other satellite positioning system. SET120 may measure signals from satellites 190 and/or base stations in network 130 and may obtain pseudorange measurements to satellites or network measurements from base stations. Pseudorange measurements may also be used to derive a position estimate for SET 120.
A home SUPL location platform (H-SLP) 150 is responsible for SUPL service management and location determination. SUPL service management may include managing the location of a SET and storing, extracting, and modifying location information of a target SET. H-SLP150 may include SUPL Location Center (SLC) 152 and may include SUPL Positioning Center (SPC) 154. The SLC152 performs various location service functions, coordinates the operation of SUPL, and interacts with the SET through a user plane bearer. SLC152 may perform functions for privacy, initiation, security, roaming support, charging/billing, service management, location calculation, etc. SPC154 supports positioning of SETs, is responsible for messages and procedures for position calculation, and supports delivery of assistance data to SETs. SPC154 may perform functions for security, assistance data transfer, reference retrieval, location calculation, and the like. The SPC has access to a GPS receiver (reference network, possibly a global network) and receives signals for satellites, making it available for providing assistance data.
A SUPL agent (e.g., SUPL agent 122 or 170) is a function or entity that obtains location information of a target SET. In general, a SUPL agent may reside in a network entity (e.g., SUPL agent 170) or in a SET (e.g., SUPL agent 122), or may be external to both the network and the SET. In the case of a SUPL agent residing in the SET, it may or may not access network resources to obtain location information, and as in SET-based mode, location and resource usage may not be one-to-one. The SUPL agent residing in the network can access the H-SLP or R-SLP using a Mobile location service application (MLSApps). An MLS application is an application that requests and consumes positioning information. The positioning information may be any information regarding positioning and may include various types of position estimates (e.g., latitude and longitude coordinates, latitude and accuracy with a given error estimate, etc.). MLS covers the interaction between SUPL agent and H-SLP or R-SLP, while SUPL covers the interaction between H-SLP or V-SLP and SET.
Fig. 1B shows a network structure 102 that includes a visited/serving network 104, a home network 106, and a requesting network 108. Visited network 104 includes a visited SUPL location platform (V-SLP) 160. Local network 106 includes H-SLP150 that supports location services and location. The requesting network 108 includes a requesting SLP (R-SLP) 162 that supports location services for SUPL agents. H-SLP150, V-SLP160 and R-SLP162 each comprise an SLC and may comprise SPC, which operate as described above for fig. 1A.
The SUPL entity in fig. 1A and 1B is described in document OMA-AD-SUPL-V2_0-20060619-D (6 months 2006, draft version 2.0) entitled "secure user plane location architecture", which is publicly available from OMA. The network entities in fig. 1A and 1B may also be referred to by other names in other networks and other positioning structures. For example, in a 3 GPP-based network, such as a UMTS network, the SLC is referred to as a Gateway Mobile Location Center (GMLC), the SPC is referred to as a Serving Mobile Location Center (SMLC), the SET is referred to as a UE, and the SUPL agent is referred to as an LCS client. The functions and signaling performed by the 3GPP entities are similar to those performed by the corresponding SUPL entities, thus enabling comparable services and capabilities. In general, SLC may be referred to as a location center, LCS server, location server, mobile location center (MPC), or the like. The SPC may be referred to as a positioning entity, a positioning center, a Position Determination Entity (PDE), etc.
SUPL may support the following positioning methods:
assisted GPS (A-GPS) only or A-Galileo SET assistance;
based on A-GPS or A-Galileo SET only;
A-GPS or A-Galileo SET assisted, alternative mode based on A-GPS or A-Galileo SET;
A-GPS or A-Galileo SET based preference, and A-GPS or A-Galileo SET assisted alternative mode;
autonomous GPS or autonomous Galileo;
mixing;
advanced forward link trilateration (A-FLT);
enhanced Observation Time Difference (EOTD);
observed time difference of arrival (OTDOA); and
enhanced cell/sector and cell ID.
For the SET-based mode, it is possible to determine the location of the SET by the SET using assistance data from the SPC. For the SET-assisted mode, the position of the SET is determined by the SPC using assistance (e.g., measurements) from the SET. Autonomous GPS and a-GPS methods derive a position estimate for the SET based only on satellite measurements and with high accuracy. The hybrid approach derives a position estimate based on both satellite and base station measurements and has high accuracy and reliability. The A-FLT, EOTD, and OTDOA methods derive a position estimate based on measurements of base station timing by the SET with good accuracy. The enhanced cell/sector and cell ID method derives a position estimate based on the known location of the cell/sector of the cellular network, with coarse accuracy. For the enhanced cell/sector approach, a location estimate may also be derived based on network measurements such as radio signal timing and signal strength. Certain location solutions also support network-based location methods, such as uplink time of arrival (U-TOA) and uplink time difference of arrival (U-TDOA). The U-TOA and U-TDOA methods derive a position estimate based on measurements of SET timing made by the network with good accuracy. These various positioning methods are known in the art. The terms "position estimate," "position estimate," and "position fix" are generally used interchangeably. The position estimate may be given in terms of coordinates (e.g., latitude and precision) or a civic address, possibly with a given error.
SUPL may support various location services such as those shown in table 1.
TABLE 1
Instant positioning services may also be referred to as network-initiated, SET-initiated, roaming, non-roaming, and the like. Periodic, area event, and historical location services are also referred to as periodic, area event, and historical trigger services, respectively. For triggered services, the reporting position estimate is determined by a trigger or trigger mechanism that indicates when to report the SET position to the SUPL agent. The trigger may be determined by the SUPL agent, sent to the H-SLP and then forwarded to the target SET. The periodic triggering of the periodic trigger service may include a periodic time interval, a number of location reports, and a possible start time to start reporting. The area event trigger of the area event trigger service may correspond to the SET entering, leaving, or remaining within a predefined geographic area, the SET positioning, the velocity or acceleration changing by a predefined threshold, or the like. For history triggered service, the SET may decide to store the location estimate/measurement when it is calculated/collected rather than sending it directly to the H-SLP. The SET may send previously stored position estimates/measurements when certain predefined conditions are met. For example, a SET may temporarily leave cellular coverage and may send a previous position estimate when it re-enters cellular coverage.
The location services may be classified as shown in table 2.
TABLE 2
Location services Description of the invention
Network Initiated (NI) services A network-originated service in which the SUPL agent resides in the network.
SET-initiated (SI) services Service originating from the SET, wherein the SUPL agent resides within the SET.
Network-initiated may also be referred to as mobile-terminated. SET initiated may also be referred to as mobile initiated.
SUPL supports two communication modes with SPC between a SET and an SLP for positioning. Table 3 summarizes the two communication modes.
TABLE 3
Communication mode Description of the invention
Proxy mode The SPC does not communicate directly with the SET, and the SLC acts as a proxy between the SET and the SPC.
Agent-less mode The SPC communicates directly with the SET.
SUPL supports roaming and non-roaming for a SET. Table 4 summarizes several roaming and non-roaming modes.
TABLE 4
Roaming/non-roaming Description of the invention
Non-roaming The SET is within the service area of its H-SLP.
Roaming with H-SLP positioning The SET is outside the service area of its H-SLP, but the H-SLP still provides positioning functionality.
Roaming with V-SLP positioning The SET is outside the service area of its H-SLP and the V-SLP provides positioning functionality.
As used herein, roaming and non-roaming is with respect to SUPL, not with respect to the communication network 130. The network 130 may have different definitions and standards for roaming and non-roaming, which are not discussed herein.
The service area of the H-SLP is an area where the H-SLP can provide the SET with a position estimate for the SET or related assistance data without contacting other SLPs. The H-SLP may provide positioning functionality (e.g., position determination and SPC functionality) when the SET is roaming, or may request the V-SLP to provide such positioning functionality.
A set of message flows may be defined for each of the supported location services. Each message flow may apply to a particular location service and a particular SET of conditions, such as proxy or non-proxy, roaming or non-roaming, network-initiated or SET-initiated, etc. A particular message flow may be used to obtain the desired location services for the applicable conditions.
For clarity, several exemplary message flows for different location services and conditions are described below. Table 5 summarizes the message flows shown in fig. 2 through 18 below. Each row in table 5 is for one message flow in the figure, and an "X" in the row indicates a condition applicable to that message flow. For example, the first row indicates that fig. 2 is for periodic location services, proxy mode, network origination, and non-roaming. The non-roaming message flow may be applied to the network architecture shown in fig. 1A. The roaming message flow may be applied to the network architecture shown in fig. 1B. Many SUPL messages in the message flow are described in document OMA-TS-ULP-V1_0-20060704-C (alternate version 1.0, month 7 2006) entitled "user plane location protocol", and in document OMA-TS-ULP-V2_0-20060727-D (draft version 2.0, month 7 2006 27) entitled "user plane location protocol", which are publicly available from OMA. Fewer, different, and/or additional message flows may also be defined for location services.
TABLE 5
Fig. 2 shows an embodiment of a message flow 200 for network initiated periodic trigger services for non-roaming in proxy mode. SUPL agent 170 requires a periodic position estimate for target SET120 and sends a mobile positioning protocol triggered location response request (MLPTLRR) message to H-SLP150 (step a). H-SLP150 is the SLP with which SUPL agent 170 is associated. The MLPTLRR message may include a client Identifier (ID) (client-ID) of the SUPL agent 170, a mobile station ID (ms-ID) of the target SET120, and a location quality (QoP). The QoP indicates the quality of the location estimate being requested, which may be quantified by the required accuracy of the location estimate and/or other criteria. The message may also carry periodic trigger or other event trigger information, such as reporting period and number of reports.
H-SLP150 authenticates SUPL agent 170 and checks whether the SUPL agent is authorized for the requested location service based on the client ID. H-SLP150 also applies subscriber privacy for SUPL agent 170 based on the mobile station ID. For privacy checks, H-SLP150 may verify whether SUPL agent 170 or a SUPL agent of this type is allowed to request periodic location information for SET120, and whether it needs to be notified of this request and allowed to accept or reject the request by SET 120. H-SLP150 then looks to SET120, verifies that SET120 is not currently roaming, and may also verify that SET120 supports SUPL (step B). H-SLP150 obtains routing information for SET120 and sends a message to SET using the routing information (also step B).
H-SLP150 initiates a SUPL/location session with SET120 for a periodic trigger service by sending a supline message, for example using a Wireless Application Protocol (WAP) push, Short Message Service (SMS) trigger, or UDP/IP (step C). The supline message may include a session ID (session-ID), a trigger type indicator, a proxy/non-proxy mode indicator (SLP mode), a proposed positioning method (posmethod), a QoP, a key identity (key ID), a Message Authentication Code (MAC), and/or other information. The session ID includes a connection of the SET session ID selected by SET120 and the SLP session ID selected by H-SLP 150. The session ID is used to identify this SUPL session. Multiple simultaneous SUPL sessions may be supported on both H-SLP150 and SET120 with different session IDs. For message flow 200, the trigger type indicator indicates periodic trigger service as the requested location service, and the proxy/no proxy mode indicator indicates proxy mode. The key Id identifies the MAC master key that is used to validate the MAC and authenticate the supline message. The supline message may also include a notification element if the results of the privacy check in step a indicate that the target SET120 needs to be notified or authenticated. H-SLP150 also calculates and stores a hash of the supline message before sending the message to SET 120.
SET120 receives the supline message from H-SLP150 and attaches itself to the packet data network if the SET is not already attached or establishes a circuit switched data connection (step D). If the key Id and MAC are included in the message and supported by the SET, the SET120 may determine whether the supline message is authentic based on these parameters.
SET120 evaluates the notification rules and follows the appropriate behavior. SET120 also checks the proxy/no proxy mode indicator to determine whether H-SLP150 uses proxy mode or no proxy mode. In message flow 200, proxy mode is used and SET120 establishes a secure IP connection to H-SLP150 using the H-SLP address provided by the local network on the SET. SET120 then sends a "SUPL trigger start" (supltrgiggeredstart) message to start a periodic trigger session with H-SLP 150. This message may include a session ID, a location ID (lid), capabilities of the SET120, a hash of the supl init message (Ver), and so on. The location ID provides cell information for SET 120. The SET capability may include positioning methods supported by SET120 (e.g., A-GPSSET assisted, A-GPSSET based, etc.), positioning protocols supported by SET120 (e.g., Radio Resource LCS Protocol (RRLP) in 3GPP, Radio Resource Control (RRC) in 3GPP, TIA-801, etc.), and/or other information. The SET120 sends the SUPL trigger start message even if the proposed positioning method included in the supline message is not among the positioning methods supported by the SET.
H-SLP150 receives the "SUPL trigger initiation" message and may compare the received hash with the stored hash to determine whether the supline it message was correctly received. H-SLP150 selects a positioning method for a periodic trigger session by considering SET capabilities contained in the "SUPL trigger start" message. H-SLP150 then sends a "SUPL trigger response" message to SET120 including the session ID, the selected positioning method (posmethod), and the periodic trigger (step F). Alternatively, H-SLP150 may send a list of supported positioning methods (which may or may not be prioritized) in step C, and SET120 may select one of the supported positioning methods and return the selected positioning method in step E. In any case, after step F, SET120 and H-SLP150 may both release the secure IP connection. H-SLP150 sends an MLP triggered location report reply (TLRA) message to notify SUPL agent 170 that the triggered location request has been accepted (step G). This message may contain a request ID (req _ ID) that will be used as the transaction ID for the entire duration of the periodic trigger session. The request ID is for MLP between SUPL agent 170 and H-SLP150 and the session ID is for SUPL between SET120 and H-SLP 150.
Steps a to G are the setting steps of the periodic trigger service. Step C initiates SET120 and informs it of the SUPL session. Step F completes the start phase and starts the report phase. Thereafter, in step F, the positioning information of SET120 may be reported and transmitted according to the periodic trigger determined in the setting step.
When the first position estimate expires as indicated by the periodic trigger, SET120 attaches itself to the packet data network if SET120 is not already attached or establishes a circuit switched data connection. SET120 then sends a supl pos init message to initiate a positioning session (e.g., RRLP, RRC, or a positioning protocol session in TIA-801) with H-SLP150 (step H). This message may include a session ID, a location ID, and/or other information. SET120 may provide radio technology specific Network Measurement Reports (NMR) that are being used. For example, NMR may include Time of Arrival (TA) and/or received signal level (RXLEV) for GSM, and may include other measurements for other radio technologies. SET120 may also provide its location (if available). SET120 may also request assistance data by setting the requested assistance data element in a supl pos init message, and may then exchange messages with H-SLP150 in order to download the requested assistance data to the SET. The assistance data may be any data used for position determination and may depend on the positioning method. For a-GPS positioning, the assistance data may include almanac and ephemeris data, and for other positioning methods, the assistance data may include other data.
H-SLP150 receives the supl pos init message and determines whether a suitable position estimate is available. A suitable location estimate is one that satisfies a specified QoP. If H-SLP150 may calculate a suitable position estimate (e.g., a cell-id based position estimate) based on information included in the supl pos init message, H-SLP150 may proceed directly to step J and not participate in a supl pos session (or positioning session) in step I. Otherwise, H-SLP150 and SET120 are engaged in a SUPLPOS session and may exchange several consecutive location procedure messages (step I). H-SLP150 and SET120 may exchange positioning procedure messages (RRLP/RRC/TIA-801) using SUPLPOS messages, which are used to calculate a position estimate for the SET. For SET-assisted mode, H-SLP150 may calculate a position estimate based on positioning measurements received from SET 120. For SET-based mode, SET120 may calculate a position estimate based on assistance obtained from H-SLP 150. In any case, once a suitable position estimate is available, H-SLP150 sends a MLP Triggered Location Report (TLREP) message to SUPL agent 170, which includes the request ID and the position result (posresult). The location result may include the location estimate, the date and time of the location estimate, the positioning method used to derive the location estimate, and/or other information. SET120 may release the secure IP connection to H-SLP150 after step I.
A second position estimate may be obtained and reported in steps K through M, which correspond to steps H through J, respectively. Each subsequent position estimate may be obtained and reported in a similar manner. The final position estimate is obtained and reported in steps N to P. After having reported the last location result to SUPL agent 170 in step P, H-SLP150 ends the periodic trigger session (which was started in step C) by sending a "SUPL end" message to SET120 (step Q).
In message flow 200, H-SLP150 may SET an ST2 timer after sending the supline message in step C, and may abandon the session if a "SUPL trigger start" message is not received from SET120 before the expiration of the ST2 timer. Similarly, SET120 may SET a UT1 timer after sending the "SUPL trigger start" message in step E, and may abandon the session if the "SUPL trigger response" message has not been received from H-SLP150 before the UT1 timer expires. SET120 may also SET a UT2 timer after sending the supl pos init message and may abandon the positioning session if no response has been received from H-SLP150 before the UT2 timer expires. The timer may be set to any suitable value.
The message flow 200 may also be used for (non-area) event triggered locations. The message flow 200 may also be used for all positioning methods. For the A-GPSSET based mode, no GPS assistance data from H-SLP150 is needed, and SET120 autonomously computes a position estimate using the GPS assistance data currently available at the SET. A simpler message flow may be used for a-gps set based modes.
Fig. 3 shows an embodiment of a message flow 300 for a network-initiated periodic trigger service that is non-roaming in proxy mode for a-gps set-based mode. The setup steps a through G in message flow 300 are the same as steps a through G in message flow 200. When the first position estimate expires, SET120 calculates the position estimate without interacting with H-SLP150 and sends the position result to the H-SLP in a "SUPL report" message (step H). H-SLP150 forwards the position result to SUPL agent 170 in an MLPTLREP message (step I). Each subsequent position estimate may be obtained and reported in a similar manner. If SET120 requires updated assistance data, then SET sends a SUPL POSITIT message (step L) and participates in a SUPL POS session with H-SLP150 in order to receive the requested assistance data (step M). Steps L and M are performed each time SET120 needs updated assistance data. After having reported the last location result to SUPL agent 170 in step O, H-SLP150 ends the periodic trigger session by sending a "SUPL end" message to SET120 (step P).
Fig. 4 shows an embodiment of a message flow 400 for network initiated periodic trigger services roaming with V-SLP location in proxy mode. Steps a through E of message flow 400 are similar to steps a through E of message flow 200 in fig. 2. However, in step B of message flow 400, H-SLP150 determines that SET120 is roaming. H-SLP150 receives the "SUPL trigger start" message from SET120 in step E and determines V-SLP160 based on the location ID contained in the received message or some other mechanism. H-SLP150 then sends a roaming positioning protocol triggered SUPL roaming positioning report request (RLPTSRLRR) message to V-SLP160 (step F), which comprises a "SUPL trigger start" message. The RLPTSRLRR message informs V-SLP160 that target SET120 is to initiate a SUPL location procedure. The V-SLP160 selects a positioning method by considering SET capabilities contained in the "SUPL trigger start" message. V-SLP160 indicates its readiness for a SUPL positioning procedure by sending a "SUPL trigger response" message to H-SLP150 in an RLP triggered SUPL roaming location report answer (RLPTSRLRA) message (step G). H-SLP150 forwards a "SUPL trigger response" message to SET120 (step H), which includes the session ID and the selected positioning method. H-SLP150 also sends an MLPTLRA message to notify SUPL agent 170 that the request sent in step a has been accepted.
For the first position estimate, SET120 sends a supl pos init message to H-SLP150 to start a positioning session with V-SLP160 (step J). If the supl pos init message contains a suitable position estimate, H-SLP150 proceeds directly to step N. Otherwise, H-SLP150 forwards the SUPL pos init message to V-SLP160 in an RLP standard SUPL Roaming Location (RLPSSRP) message (step K). If a suitable position estimate can be calculated based on the information received in the SUPLPOSINIT message, V-SLP160 may proceed directly to step M and not participate in a SUPLPOS session. Otherwise, V-SLP160 and SET120 participate in a SUPLPOS session and may exchange several consecutive positioning procedure messages, which may be tunneled over RLP via H-SLP150 (step L). The V-SLP160 or SET120 calculates a position estimate. V-SLP160 then sends a "SUPL report" message to H-SLP150 (step M), which includes the session ID and the position estimate. H-SLP150 then sends a MLPTLREP message to SUPL agent 170 (step N), which contains the request ID and the position estimate. Each subsequent position estimate may be obtained and reported in a similar manner. After reporting the last location result, H-SLP150 ends the periodic trigger session by sending a "SUPL end" message to SET120 (step Y).
Fig. 5 shows an embodiment of a message flow 500 for network initiated periodic trigger services with H-SLP location roaming in proxy mode. Steps a through I of message flow 500 are similar to steps a through I of message flow 400 in fig. 4. However, H-SLP150 sends RLPTSRLRR a message to inform V-SLP160 that a periodic trigger session with the H-SLP is being initiated (step F) and selects a positioning method for the periodic trigger session (step H).
For a first position estimate, SET120 sends a supl pos init message to H-SLP150 to initiate a positioning session with the H-SLP. H-SLP150 may send an RLPSRLIR message to V-SLP160 to obtain a coarse position for SET120 based on the positioning ID received in step J (step K). V-SLP160 may translate the location ID into a coarse location and return the result to H-SLP150 in an RLPSRLIA message (step L). H-SLP150 may use the coarse position as a final position estimate if the coarse position is accurate enough, or H-SLP150 may use the coarse position to obtain assistance data for sending to SET120 in step M. H-SLP150 and SET120 may participate in a SUPLPOS session in order to obtain a more accurate position estimate for the SET (step M). H-SLP150 then sends the position estimate to SUPL agent 170 in an MLPTLREP message (step N). Each subsequent position estimate may be obtained and reported in a similar manner. After reporting the last location result, H-SLP150 ends the periodic trigger session by sending a "SUPL end" message to SET120 (step Y).
Fig. 6 shows an embodiment of a message flow 600 for non-roaming SET-initiated periodic trigger services in proxy mode. A SUPL agent 122 (shown in fig. 1A and 1B) resident on SET120 receives a request for a periodic trigger service from an application running on the SET. SET120 attaches to the packet data network or establishes a circuit switched data connection (step a). SUPL agent 122 establishes a secure IP connection to H-SLP150 using a default address provided by the home network and sends a "SUPL trigger initiation" message to initiate a SUPL session with the H-SLP (step B). This message may include a session ID, SET capabilities, trigger type indicator, and location ID. H-SLP150 verifies that SET120 is not currently roaming in SUPL, selects a positioning method that conforms to the SET capabilities, and determines routing information for SET120 (step C). H-SLP150 then sends a "SUPL trigger response" message to SET120 (step D) containing the session ID, positioning method, but no H-SLP address, indicating to the SET that no new connection will be established. SET120 and H-SLP150 may release the secure IP connection.
For the first position estimate, SET120 sends a supl pos init message to initiate a positioning session with H-SLP150 (step E). This message may include session ID, SET capabilities, location ID, NMR, location estimate, etc. SET120 may also SET the requested assistance data element in the SUPLPOSTNIT message. H-SLP150 proceeds directly to step G if a suitable position estimate is available and does not participate in a SUPLPOS session. Otherwise, SET120 and H-SLP150 can exchange several consecutive positioning procedure messages and the H-SLP or SET calculates a position estimate (step F). H-SLP150 then sends a "SUPL report" message to SET120 containing the session ID and the position estimate (step G). For the a-GPS SET based mode, steps E through G may be omitted, and SET120 may autonomously calculate a position estimate based on GPS assistance data available in the SET. Each subsequent position estimate may be obtained and reported in a similar manner. After obtaining the final location result, SET120 ends the periodic trigger session by sending a "SUPL end" message to H-SLP150 (step N).
Fig. 7 shows an embodiment of a message flow 700 for a non-roaming network-initiated periodic trigger service in a proxy-less mode. Message flow 700 includes all of the steps of message flow 200 in figure 2 and further includes additional steps for communication between SLC152 and SPC154 within H-SLP 150. The SUPL agent 170 sends an MLPTLRR message to the H-SLC152 (step A). The H-SLC152 verifies that the SET120 is not currently roaming and obtains the SET's routing information (step B). The H-SLC152 requests a service for the periodic trigger session from the H-SPC154 (step C). The H-SPC154 grants or denies the request and informs the H-SLC152 accordingly (also step C).
The H-SLC152 initiates a periodic trigger session with the SET120 (step D). SET120 attaches itself to the packet data network or establishes a circuit-switched data connection (step E) and initiates a periodic trigger session with H-SLP150 (step F). For authentication in the non-proxy mode, the SET120 includes the current SET and key id2 in the SUPL trigger start message sent to the H-SLC152 in step F. Key id2 corresponds to the PP2_ SPC _ master _ key used to generate the PSK _ SPC _ key used for the PSK-TLS session between H-SPC154 and SET 120. The H-SLC152 uses the key id2 and the current SET to create a key for the H-SPC and SET to mutually authenticate each other. The H-SLC152 forwards the created key to the H-SPC154 through internal communication (step G). The H-SLC152 selects a positioning method for the periodic trigger session and sends a SUPL trigger response message to the SET120 (step H), which contains the session ID, the positioning method, and the H-SPC address. The H-SLC152 also notifies the SUPL agent 170 that the request has been accepted (step I).
For the first position estimate, the SET120 sends a supl pos init message to initiate a positioning session with the H-SPC154 (step J). SET120 and H-SPC154 may exchange positioning program messages and calculate a position estimate for SET (step K). The H-SPC154 then sends the location estimate to the H-SLC152 via internal communication (step L), and the H-SLC152 in turn sends the location result to the SUPL agent 170 (step M). Each subsequent position estimate may be obtained and reported in a similar manner. The H-SPC154 is notified in step T via internal communication to periodically trigger the end of the session. After the last location result has been reported, the H-SPC154 ends the periodic trigger session by sending a "SUPL END" message to the SET120 (step V).
For area event triggered services, SET120 may store area event triggers, continuously update its location, and determine whether an area event trigger has occurred based on its current location. For simplicity, the following message flow is for the case where a single area event trigger ends an area event triggered session. In general, the area event trigger may occur any number of times before the area event trigger session is brought to an end.
Fig. 8 shows an embodiment of a message flow 800 for a non-roaming network-initiated area event triggered service in proxy mode. Steps a through G of message flow 800 are similar to steps a through G of message flow 200 in fig. 2 with the following differences. SUPL agent 170 requests area event location information in the MLPTLRR message sent to H-SLP150 in step a. H-SLP150 initiates an area event trigger session with SET120 by sending a supline message with a trigger type indicator SET to an area event in step C. H-SLP150 may include the definition of the trigger area in the SUPL trigger response message sent to SET120 in step F.
When the first position estimate expires as indicated by the area event trigger mechanism in SET120, the SET sends a supl pos init message to initiate a positioning session with H-SLP150 (step H). H-SLP150 and SET120 may participate in a SUPLPOS session and obtain a position estimate for the SET (step I). If the position estimate is calculated by H-SLP150, then the H-SLP sends the position estimate to SET120 in a "SUPL report" message (step J). SET120 compares the position estimate to the event area and determines whether the event trigger condition has been met (step K). In this example, no area event is triggered at step J. Steps H through K are repeated each time the area event trigger mechanism in SET120 indicates that a new position estimate should be obtained. In this example, an area event is triggered in step S. SET120 then sends a "SUPL report" message to H-SLP150, step T, containing the session ID and the position estimate. H-SLP150 sends the position estimate to SUPL agent 170 in an MLPTLREP message (step U). H-SLP150 ends the area event triggered session by sending a "SUPL end" message to SET120 (step V).
Message flow 800 may be used for various positioning methods. However, for certain positioning methods, certain steps within message flow 800 may be omitted. For example, for a cell-id based positioning method, steps I, M and Q for a SUPLPOS session may be omitted. If a position estimate is calculated in H-SLP150 (e.g. for a-gps SET assisted and cell ID based modes), steps J, N and R for sending the position estimate to SET120 may be performed. Steps H through R (except steps K and O) may be omitted for the a-GPS set-based mode without any GPS assistance data from the network and without any interaction with H-SLP150 to compute the position estimate. For the A-GPSSET based mode, steps H and I may be performed whenever interaction with H-SLP150 is required for GPS assistance data updates.
Fig. 9 shows an embodiment of a message flow 900 for network initiation area event triggered service with V-SLP location roaming in proxy mode. Steps a through I of message flow 900 are similar to steps a through I of message flow 400 in fig. 4, except that a region event triggered service (rather than a periodic triggered service) is requested in steps a and C. H-SLP150 may include the definition of the event area in the "SUPL trigger response" message sent to SET120 in step H.
Steps J through M are performed in a similar manner as steps J through M in message flow 400 for the first position estimate indicated by the area event trigger mechanism in SET 120. If the position estimate is calculated in V-SLP160 or H-SLP150, H-SLP150 sends the position estimate to SET120 in a "SUPL report" message (step N). SET120 compares the position estimate to the event area and determines whether the event trigger condition has been met (step O). Steps J through N are repeated each time the area event trigger mechanism in SET120 indicates that a new position estimate should be obtained. When an area event is triggered in step AA, SET120 sends a "SUPL report" message to H-SLP150 (step BB), which contains the session ID and the position estimate. H-SLP150 forwards the position estimate to SUPL agent 170 (step CC) and ends the area event triggered session by sending a "SUPL end" message to SET120 (step DD).
Fig. 10 shows an embodiment of a message flow 1000 for network-initiated area event triggered service with H-SLP location roaming in proxy mode. Steps a through I of message flow 1000 are similar to steps a through I of message flow 500 in fig. 5, except that a region event triggered service (rather than a periodic triggered service) is requested in steps a and C. H-SLP150 may include the definition of the event area in the "SUPL trigger response" message sent to SET120 in step H.
Steps J through M are performed in a similar manner as steps J through M in message flow 500 for the first position estimate indicated by the area event trigger mechanism in SET 120. If the position estimate is calculated in H-SLP150 or V-SLP160, H-SLP150 sends the position estimate to SET120 in a "SUPL report" message (step N). SET120 compares the position estimate to the event area and determines whether the event trigger condition has been met (step O). Steps J through N are repeated each time the area event trigger mechanism in SET120 indicates that a new position estimate should be obtained. When an area event is triggered in step AA, SET120 sends a "SUPL report" message to H-SLP150 (step BB), which contains the session ID and the position estimate. H-SLP150 forwards the position estimate to SUPL agent 170 (step CC) and ends the area event triggered session by sending a "SUPL end" message to SET120 (step DD).
Fig. 11 shows an embodiment of a message flow 1100 for non-roaming SET-initiated area event triggered services in proxy mode. Steps a through D of message flow 1100 are similar to steps a through D of message flow 600 in fig. 6, except that a region event triggered service (rather than a periodic triggered service) is requested in step B.
Steps E through G are performed in a similar manner as steps E through G in message flow 600 for the first position estimate indicated by the area event trigger mechanism in SET 120. SET120 compares the position estimate to the event area and determines whether the event trigger condition has been met (step H). Steps E through H are repeated each time the area event trigger mechanism in SET120 indicates that a new position estimate should be obtained. When an area event is triggered in step P, SET120 forwards the position estimate to SUPL agent 122 within SET120 (as shown in fig. 1A and 1B) (step Q). SET120 ends the area event triggered session by sending a "SUPL end" message to H-SLP150 (step R).
Fig. 12 shows an embodiment of a message flow 1200 for a network-initiated area event triggered service that is non-roaming in a proxy-less mode. Steps a through I of message flow 1200 are similar to steps a through I of message flow 700 in fig. 7, except that a region event triggered service (rather than a periodic triggered service) is requested in steps a and D. H-SLP150 may include the definition of the event area in the "SUPL trigger response" message sent to SET120 in step H.
Steps J and K are performed in a similar manner as steps J and K in message flow 700 for the first position estimate indicated by the area event trigger mechanism in SET 120. If the position estimate is calculated in H-SPC154, then the H-SPC sends the position estimate to SET120 in a "SUPL report" message (step L). SET120 compares the position estimate to the event area and determines whether the event trigger condition has been met (step M). Steps J through M are repeated each time the area event trigger mechanism in SET120 indicates that a new position estimate should be obtained. When an area event is triggered in step U, the SET120 sends a "SUPL report" message to the H-SLC152 (step V), which contains the position estimate. The H-SLC152 informs the H-SPC154 of the zone event trigger session end through internal communication (step W). The H-SLC152 forwards the position estimate to the SUPL agent 170 in a MLPTLREP message (step X) and ends the area event triggered session by sending a "SUPL end" message to the SET120 (step Y).
The historical trigger service may be similar to the periodic trigger service in that measurements and/or location estimates may be obtained periodically or upon the occurrence of a particular trigger event for the target SET. However, for a history-triggered service, measurements and/or position estimates may or may not be reported immediately. If the SET stores historical measurements and then sends the historical measurements instead of the historical position estimate, the V-SLP, H-SLP, or SPC can convert the measurements into a historical position estimate for sending to the SUPL agent. Table 6 lists some reporting modes of the history trigger service. Different services may have different requirements and may use different reporting modes.
TABLE 6
Reporting mode Description of the invention
Real time The measurements and/or position estimates are provided in real time.
Quasi real time Real-time measurements and/or position estimates are preferred, but historical measurements and/or position estimates are also accepted.
Batch size Such as bulk provisioning of historical measurements and/or location estimates.
Fig. 13 shows an embodiment of a message flow 1300 for a non-roaming network-initiated history trigger service in a proxy-less mode. Steps a through G of message flow 1300 are similar to steps a through G of message flow 200 in fig. 2, except for the following differences. A history trigger service is requested in steps a and C. The MLPTLRR message sent by SUPL agent 170 in step a may indicate which reporting mode (batch, real-time, or near real-time) is desired for target SET 120. In the case of a batch report, the TLRR message may indicate the conditions under which the batch report is sent to H-SLP150 and any criteria (e.g. QoP, time window) that include or exclude historical measurements and/or location estimates stored at SET 120. SET120 sends its reporting capability (rep _ capability) in step E, which indicates whether real-time, near real-time, and/or batch reporting is supported. In step C, SET120 may always send its reporting capabilities in a "SUPL trigger start" message, or may only send its reporting capabilities in response to receiving a historical trigger service request. H-SLP150 selects a reporting mode (rep _ mode) that conforms to the SET reporting capability and transmits the selected reporting mode in step F. For batch reporting, H-SLP150 also provides conditions for sending batch reports to H-SLP150, and any criteria (e.g. QoP, time window) to include or exclude historical measurements and/or location estimates, in step F. For batch or near real-time reporting, the SUPL trigger response message in step F may indicate whether SET120 is permitted to send historical measurements. In this case, SET120 may skip steps H, I and J if batch reporting is selected.
Steps H and I may be performed in a similar manner as steps H and I in message flow 200 for the first event indicated by the periodic trigger mechanism in SET 120. If the position estimate is calculated in H-SLP150 and bulk reporting is selected, then H-SLP sends the position estimate to SET120 in a "SUPL report" message (step J). If real-time or near real-time reporting is selected, H-SLP150 forwards the position estimate to SUPL agent 170 in an MLPTLREP message (step K). For a given event, if SET120 cannot communicate with H-SLP150 (e.g., because of leaving cellular coverage) and if bulk or near real-time reporting is selected, SET may autonomously calculate and store a position estimate (step L), e.g., for autonomous GPS or a-GPS SET-based modes where SET has current assistance data. SET120 may also store the measurement values in step L if H-SLP150 is allowed in step F, provided that H-SLP150 selects batch reporting in step F or quasi real-time reporting in step F and SET120 cannot communicate with H-SLP 150.
SET120 may send a "SUPL report" message containing the history results when appropriate (step M). For example, if (1) a batch report is selected and the conditions for sending the batch report are met; or (2) a near real-time report is selected and SET120 re-establishes communication with H-SLP150 after missing one or more previous reports, step M may be performed. For batch reporting, a "SUPL report" message may include: (1) a stored measurement and/or position estimate selected based on the criteria received in step F; or (2) if no criteria are received in step F, contain all previously unreported stored measurements and/or location estimates. If measurements are obtained from SET120, H-SLP150 may calculate a position estimate. H-SLP150 forwards the reported or calculated position estimate to SUPL agent 170 in an MLPTLREP message (step N).
Steps H to J or step L may be performed for each subsequent event indicated by the periodic trigger mechanism. After the last measurement and/or position estimate has been obtained or expired, SET120 may send a "SUPL report" message to H-SLP150 (step R) containing all stored measurements and/or position estimates. This message may also be sent if (1) a batch or near real-time report is used, (2) SET120 has stored measurements and/or position estimates not yet sent to the H-SLP, (3) SET120 is able to establish communication with H-SLP150, (4) a condition that uses a batch report and that sending has occurred (e.g., the condition defines sending after the last measurement and/or position estimate was obtained). H-SLP150 may calculate a position estimate based on the received measurement values if necessary and forward the position estimate to SUPL agent 170 in an MLPTLREP message (step S). H-SLP150 may also maintain historical position estimates for later retrieval by SUPL agent 170. H-SLP150 ends the history trigger session by sending a "SUPL end" message to SET120 (step T).
Fig. 14 shows an embodiment of a message flow 1400 for retrieving historical measurements and/or location results for non-roaming in a proxy-less mode. SUPL agent 170 sends an MLP Historical Location Immediate Request (HLIR) message to H-SLP150 (step a). This message may include parameters/criteria (historical parameters) to be applied by SET120 in selecting historical measurements and/or location estimates to be returned to SUPL agent 170 (e.g., time windows, QoP, positioning methods, etc.). H-SLP150 authenticates SUPL agent 170, checks whether the SUPL agent is authorized for the requested service, and applies subscriber privacy. H-SLP150 obtains routing information for SET120 and sends a message to SET using the routing information (also step B). H-SLP150 then initiates retrieval of the historical measurements and/or position estimates for SET120 by sending a "SUPL request for location" message (step C). This message may include a session ID, selection history measurements and/or criteria for location estimation and/or other information.
SET120 establishes a secure IP connection with H-SLP150 (step D). SET120 selects historical measurements and/or position estimates based on received criteria and sends the position result to H-SLP150 in a "SUPL report" message (step E). H-SLP150 converts any historical measurements received in step E into a corresponding position estimate. The H-SLP forwards the position estimate to the SUPL agent 170 in an MLP historical position answer-immediately (HLIA) message (step F).
Fig. 15 shows an embodiment of a message flow 1500 for a network initiated periodic or area event triggered service for roaming in proxy mode. For roaming scenarios, a trigger session may be initiated in one SLP and the trigger session may be moved to a new SLP during the session. The trigger session may be moved from H-SLP to V-SLP, from one V-SLP to another V-SLP or from V-SLP to H-SLP. The message flow 1500 includes an initiation/setup phase, a first positioning phase, a reinitiation phase, and a second positioning phase. The dotted steps C, D, G, H and N may be performed when the trigger session is initiated in the visited network and may be omitted if the trigger session is initiated in the home network.
In the initial phase, SUPL agent 170 sends an MLPTLRR message to H-SLP 150. This message may include periodic or area event trigger information, QoP, client ID, and/or other information. H-SLP150 determines V-SLP160a in the visited network to which SET120 has roamed and also determines that SET120 supports trigger service (step B). H-SLP150 contacts V-SLP160a to request service and determines the positioning method proposed by V-SLP160a (step C). V-SLP160a responds by sending the proposed positioning method to H-SLP150 (step D). H-SLP150 sends a supline message to SET120 using SMS, WAP push, or UDP/IP (step E). This message may include the proposed location method, notification and authentication information, QoP, type of service (e.g., periodic or area events), and/or other information.
SET120 performs notification and authentication if needed. If SET120 supports one of the triggered service and the proposed positioning method, and if the user grants permission when requested, SET120 establishes a secure IP connection to H-SLP150 and sends a "SUPL trigger start" message to H-SLP 150. This message may include SET capabilities, SET positioning (e.g., approximate coordinates or positioning ID), and/or other information (step F). H-SLP150 forwards the SUPL trigger start message to V-SLP160a (step G). V-SLP160a responds with a "SUPL trigger response" message (step H) and H-SLP150 forwards the message to SET120 (step I). This message may include a positioning method for triggering session selection, a triggering parameter for a periodic or area event, and so on. H-SLP150 and SET120 store the selected positioning method. SET120 and/or H-SLP150 may release the IP connection, e.g., after some timeout or inactivity. H-SLP150 returns an MLPTLRA message to SUPL agent 170 to indicate that the triggered service request has been accepted.
In the first positioning phase, SET120 participates in a positioning session with H-SLP150 for a first position estimation (step K). An appropriate message flow may be used for the positioning session depending on the selected positioning method and the type of trigger (e.g., periodic or area event). For proxy mode for V-SLP, H-SLP150 may tunnel the positioning session to V-SLP160a via RLP. For proxy mode for H-SLP, H-SLP150 may receive the location ID in a supl pos init message and may send this information to V-SLP160a via RLP in order to obtain the initial coarse position. H-SLP150 and SET120 may conduct a positioning session. For periodic reports or when an area event trigger occurs, H-SLP150 may send a position estimate to SUPL agent 170 in an MLPTLREP message (step L). Steps K and L may be repeated any number of times for a trigger session. When SET120 attempts to participate in the positioning session in step M, the positioning session fails because SET120 has left the coverage area of V-SLP160a (or H-SLP150 if the triggering session is initiated in the home network). V-SLP160a may send a "SUPL end" message with status code "continue and re-start" to H-SLP150 (step N), H-SLP150 forwarding the message to SET120 (step O). This message informs SET120 of the failure of the positioning session.
In the re-initiation phase, which occurs whenever SET120 roams out of the coverage area of a V-SLP or an H-SLP, SET120 sends a "SUPL trigger start" message to H-SLP150 to restart the trigger session (step P). This message may include the location ID and updated trigger parameters such as the remaining number of location estimates that periodically triggered the service or the new duration of the area event triggered service. H-SLP150 determines new V-SLP160b based on the location ID and forwards the SUPL trigger start message to V-SLP160b (step Q). V-SLP160b selects the positioning method and returns a "SUPL trigger response" message to H-SLP150 (step R), and H-SLP150 forwards the message to SET120 (step S). The re-initiation mechanism in figure 15 may also be used for SET-initiated triggered location services.
In the second positioning phase, SET120 resumes the trigger session with V-SLP160b until it reaches the end (steps T to Y).
Fig. 16 shows an embodiment of a message flow 1600 for a non-roaming network-initiated periodic trigger service in proxy mode. Message flow 1600 may be used in place of message flow 200 in fig. 2 or message flow 800 in fig. 8. Message flow 1600 includes an excitation/setup phase and a positioning phase.
In the incentivization phase, SUPL agent 170 sends an MLPTLRR message to H-SLP150 (step A), which may include periodicity, area events, historical or deferred location information, QoP, client ID, and/or other information. H-SLP150 verifies that SET120 is not roaming and supports SUPL (step B). H-SLP150 sends a supline message to SET120 using, for example, SMS, WAP push, or UDP/IP (step C). This message may include a session ID, a trigger type indicator (e.g., periodic, area event, history, or postponement), a proxy/no proxy mode indicator, a proposed positioning method, QoP, notification and authentication information, and/or other information. SET120 may notify the user of the location request and obtain the user's permission if desired. If SET120 supports the proposed positioning method and if user permission is obtained as required, SET120 establishes a secure IP connection to H-SLP150 and sends a "SUPL deferral acknowledgement" message to H-SLP150 (step D). Such a message may include SET capabilities, SET positioning, etc. The negotiation of the positioning method to be used can be postponed to the positioning phase in order to simplify the activation phase. H-SLP150 sends an MLPTLRA message to SUPL agent 170 to indicate that the trigger service request has been accepted (step E).
In the positioning phase, when the first position estimate is triggered, SET120 sends a "SUPL initiation" message (step F), which may include a session ID, a positioning ID, a trigger event (e.g., expiration of a periodic time interval), and the like. H-SLP150 returns a "SUPL response" message (step G). Steps F and G may be performed for the first position estimate and may be omitted for the remaining position estimates. SET120 then sends a supl pos init message to H-SLP150 (step H). This message may include a location estimate for SET120 if SET-based positioning mode is selected. SET120 and H-SLP150 may participate in a SUPLPOS session and obtain a position estimate for the SET (step I). H-SLP150 sends the position estimate to SUPL agent 170 in an MLPTLREP message (step J). H-SLP150 (or H-SPC, V-SLP or V-SPC) may send a "SUPL continue" message to confirm that the current positioning attempt is completed (step K) and may indicate whether SET120 should fallback to the full positioning procedure for the next positioning attempt started at step F or may initiate the next positioning attempt at step H. For example, if SET120 has left the coverage area of H-SLP150, fallback to step F may be used and H-SLP150 needs to request use of V-SLP. H-SLP150 may also send a "SUPL end" message to end the trigger session (step K).
Fig. 17 shows an embodiment of a message flow 1700 for a non-roaming network-initiated periodic trigger service in proxy mode. Message flow 1700 may also be used in place of message flow 200 in fig. 2, message flow 800 in fig. 8, or message flow 1600 in fig. 16.
Steps A, B, C and E may be performed as described above for steps A, B, C and G in fig. 2, respectively. SET120 performs notification and authentication, establishes a secure IP connection to H-SLP150, and sends a supl pos init message to H-SLP150, if necessary (step D). Such a message may include SET capabilities, a request for assistance data, a location estimate, etc. H-SLP150 and SET120 may exchange SUPLPOS messages to provide any requested assistance data, positioning method instructions, QoP, periodic location information, etc. (step F).
When the first position estimate expires, SET120 obtains measurements or position estimates according to the selected positioning method and sends the information in a SUPLPOS message (step G). H-SLP150 may calculate a position estimate based on measurements received from SET120 or may verify a position estimate received from SET 120. H-SLP150 then forwards the position estimate to SUPL agent 170 in an MLPTLREP message (step H). Steps G and H (e.g., in steps I and J) may be repeated each time another position estimate expires. For example, after sending the final position estimate to SUPL agent 170, H-SLP150 may send a "SUPL end" message to SET120 in order to terminate the periodic trigger service (step K). SET120 may also send a "SUPL end" message to end the periodic trigger service (not shown).
Fig. 18 shows an embodiment of a message flow 1800 for a non-roaming SET-initiated periodic trigger service in proxy mode. Message flow 1800 may be used in place of message flow 600 in fig. 6 or message flow 1100 in fig. 11.
SET120 receives a request for a periodic location estimate from an internal LCS client or from an external LCS client connected to an internal application (step a). SET120 may perform notification and authorization if needed. SET120 then establishes a secure IP connection to H-SLP150 and sends a "SUPL start" message (step B), which may include a request for periodic self-positioning, SET capabilities, location estimates, QoP, etc. H-SLP150 proposes or selects a positioning method based on SET capabilities and sends a "SUPL response" message to SET120 (step C). SET120 sends a supl pos init message to H-SLP150 (step D) containing UE capabilities, a request for assistance data, etc. H-SLP150 selects a positioning method based on the H-SLP proposal in step C and the SET capability provided in steps B and/or D. H-SLP150 and SET120 may then exchange SUPLPOS messages in order to provide any requested assistance data, positioning method instructions, QoP, periodic location information, etc. (step E).
When the first position estimate expires, SET120 may obtain measurements according to the selected positioning method and send the measurements and/or a request for assistance data in a SUPLPOS message (step F). H-SLP150 may calculate a position estimate based on measurements received from SET120 and return the position estimate and/or assistance data in a SUPLPOS message (step G). Steps F and G may be repeated each time another position estimate expires. H-SLP150 may send a "SUPL end" message to SET120 in order to terminate the periodic trigger service (step H), or SET120 may send a "SUPL end" message.
Figure 19 shows a block diagram of an embodiment of SET120, H-SLP150 and communication network 130 in network structures 100 and 102 in figures 1A and 1B. The communication network 130 provides communication for terminals and may include base stations (or node bs) and network controllers. For simplicity, fig. 19 shows only one processor 1920, one memory unit 1922, and one transceiver 1924 for SET120, only one processor 1930, one memory unit 1932, one transceiver 1934, and one communication (Comm) unit 1936 for network 130, and only one processor 1940, one memory unit 1942, and one transceiver 1944 for H-SLP 150. In general, each entity may include any number of processors, memory units, transceivers, communication units, controllers, and the like. SET120 may support wireless communications and may also receive and process GPS signals.
On the downlink, base stations in network 130 transmit traffic data, signaling, and pilot to terminals within their coverage area. These various types of data are processed by the processor 1930 and conditioned by the transceiver 1934 to generate a downlink signal, which is transmitted via an antenna. At SET120, downlink signals from one or more base stations are received via the antennas, conditioned by transceivers 1924, and processed by processor 1920 in order to obtain various types of information for positioning services. For example, processor 1920 may decode messages for the message stream described above. Memory units 1922 and 1932 store program codes and data for SET120 and network 130, respectively. On the uplink, SET120 may transmit traffic data, signaling, and pilot to one or more base stations in network 130. These various types of data are processed by processor 1920 and conditioned by transceiver 1924 to generate an uplink signal, which is transmitted via the SET antenna. At network 130, the uplink signals from SET120 and other terminals are received and conditioned by transceiver 1934 and further processed by processor 1930 to obtain various types of information (e.g., data, signaling, reports, etc.). Network 130 communicates with H-SLP150 and other network entities via communication unit 1936.
Within H-SLP150, a processor 1940 performs processing for the H-SLP, a memory unit 1942 stores program codes and data for the H-SLP, and a communication unit 1944 allows the H-SLP to communicate with network 130 and other network entities. Processor 1940 may perform processing for H-SLP150 for the above message flows.
The techniques described herein may be implemented by various means. For example, the techniques may be implemented in hardware, firmware, software, or a combination thereof. For a hardware implementation, the units used to perform the processing at each entity may be implemented within one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, electronic devices, or other electronic units designed to perform the functions described herein, or a combination thereof.
For software and/or firmware implementations, the techniques may be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. The software codes may be stored in a memory unit (e.g., memory unit 1922, 1932, or 1942 in fig. 19) and executed by a processor (e.g., processor 1920, 1930, or 1940). The memory unit may be implemented within the processor or external to the processor.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (3)

1. A method for supporting area event location services, comprising:
receiving, at a terminal, at least one Secure User Plane Location (SUPL) trigger parameter associated with an area trigger event related to a change in velocity or acceleration of the terminal by a predefined threshold;
obtaining at least one positioning related measurement for the terminal;
determining, at the terminal, whether the zone trigger event has occurred based on the velocity or the acceleration of the terminal changing by the predefined threshold; and
transmitting, by the terminal, the at least one positioning-related measurement when the area-triggering event has occurred.
2. An apparatus for supporting a regional event location service, the apparatus comprising:
means for receiving, at a terminal, at least one Secure User Plane Location (SUPL) trigger parameter associated with an area trigger event related to a change in velocity or acceleration of the terminal by a predefined threshold;
for obtaining at least one positioning related measurement for the terminal;
means for determining, at the terminal, whether the zone trigger event has occurred based on the velocity or the acceleration of the terminal changing by the predefined threshold; and
means for transmitting, by the terminal, the at least one positioning-related measurement when the area-triggering event has occurred.
3. An apparatus for supporting area event location services at a mobile wireless terminal, the apparatus comprising:
a processor to:
receiving at the mobile wireless terminal at least one Secure User Plane Location (SUPL) trigger parameter associated with an area trigger event related to a change in velocity or acceleration of the mobile wireless terminal by a predefined threshold;
obtaining at least one positioning related measurement for the mobile radio terminal;
determining, at the mobile radio terminal, whether the zone-triggering event has occurred based on the velocity or the acceleration of the mobile radio terminal changing by the predefined threshold; and
transmitting, by the mobile radio terminal, the at least one positioning-related measurement when the area-triggering event has occurred.
HK13111791.3A 2005-08-25 2013-10-21 Method and apparatus for location reporting with secure user plane location (supl) HK1184313B (en)

Applications Claiming Priority (16)

Application Number Priority Date Filing Date Title
US71180105P 2005-08-25 2005-08-25
US60/711,801 2005-08-25
US71811205P 2005-09-16 2005-09-16
US60/718,112 2005-09-16
US73907305P 2005-11-21 2005-11-21
US60/739,073 2005-11-21
US77118006P 2006-02-06 2006-02-06
US60/771,180 2006-02-06
US77121706P 2006-02-07 2006-02-07
US60/771,217 2006-02-07
US77170606P 2006-02-08 2006-02-08
US60/771,706 2006-02-08
US78854406P 2006-03-30 2006-03-30
US60/788,544 2006-03-30
US81348806P 2006-06-13 2006-06-13
US60/813,488 2006-06-13

Publications (2)

Publication Number Publication Date
HK1184313A1 HK1184313A1 (en) 2014-01-17
HK1184313B true HK1184313B (en) 2017-07-28

Family

ID=

Similar Documents

Publication Publication Date Title
US9860695B2 (en) Location reporting with secure user plane location (SUPL)
CN105897937B (en) Method and apparatus for user plane location using service capability information
US7747258B2 (en) Method and apparatus for performing position determination with pre-session action
EP1894430B1 (en) Method and apparatus for providing location services with shortened message flows
EP2654267B1 (en) SUPL 3.0 Concept
US20060258369A1 (en) Method and apparatus for performing position determination with a short circuit call flow
RU2384021C2 (en) Efficient periodic location reporting in radio access network
RU2389156C2 (en) Location reporting through secure user plane location (supl)
HK1184313B (en) Method and apparatus for location reporting with secure user plane location (supl)
HK1184311B (en) Location reporting with secure user plane location (supl)
HK1150921A (en) Method and apparatus for using service capability information for user plane location