Description
A-GNSS is a hybrid positioning method standardized by 3GPP that combines Global Navigation Satellite Systems (GNSS) such as GPS, GLONASS, Galileo, or BeiDou with cellular network assistance. The core principle involves the network delivering pre-processed satellite data to the User Equipment (UE), enabling the device to compute its position more rapidly and with lower power consumption than standalone GNSS. The architecture typically involves a Location Server (e.g., Secure User Plane Location (SUPL) Enabled Location Server - SLP or Control Plane entities like E-SMLC), which collects assistance data from GNSS reference receivers and disseminates it to UEs via control plane or user plane protocols. The UE uses this data, which can include precise satellite orbits (ephemeris), clock corrections, ionospheric models, and approximate time and location, to accelerate satellite signal acquisition and position calculation.
Operationally, the process begins when a location request is triggered, either by the network (e.g., for emergency services) or the UE (e.g., for a navigation app). The UE establishes a connection with the Location Server, which then provides assistance data tailored to the UE's approximate location and capabilities. This data allows the UE's GNSS receiver to predict which satellites are visible and their expected signal parameters, drastically reducing the search space for satellite signals. Consequently, the Time to First Fix (TTFF) is reduced from tens of seconds (in standalone mode) to a few seconds, and sensitivity is improved, enabling fixes in weaker signal conditions such as indoors or under dense foliage.
Key components include the UE with an A-GNSS-capable receiver, the cellular network's Radio Access Network (RAN) and Core Network (CN), and the Location Server. The Location Server interfaces with GNSS reference networks to obtain real-time satellite data. Protocols like Radio Resource Location Protocol (RRLP) for GSM, Radio Resource Control (RRC) for UMTS/LTE, or LTE Positioning Protocol (LPP) for LTE/NR are used over the control plane, while Secure User Plane Location (SUPL) utilizes IP-based transport over the user plane. A-GNSS supports various modes: UE-assisted, where the UE measures satellite signals and sends raw measurements to the network for position calculation; and UE-based, where the UE calculates its own position using assistance data. This technology is integral to 3GPP's positioning framework, often combined with other methods like Observed Time Difference of Arrival (OTDOA) or Enhanced Cell ID for hybrid positioning solutions.
Purpose & Motivation
A-GNSS was introduced to address the limitations of standalone GNSS receivers in mobile devices, particularly slow Time to First Fix (TTFF), high power consumption, and poor performance in challenging signal environments. Standalone GNSS requires the receiver to download satellite ephemeris and almanac data directly from satellites, which can take 30 seconds or more due to low data rates (50 bps for GPS), and fails in weak signal areas. For emergency services like E911 in the US or E112 in Europe, rapid and reliable location determination is legally mandated, making standalone GNSS insufficient. A-GNSS solves these problems by leveraging the cellular network's bandwidth to deliver assistance data quickly, enabling faster fixes and extending operational range to indoor and urban canyon scenarios.
Historically, A-GNSS emerged in 3GPP Release 7 as part of the broader Location Services (LCS) framework, driven by regulatory requirements for emergency caller location and the growing demand for commercial location-based services (e.g., navigation, geotagging). Prior approaches relied on network-based methods like Cell ID or timing advances, which offered limited accuracy (hundreds of meters to kilometers), or required dedicated GPS hardware with long acquisition times. A-GNSS provided a cost-effective, standardized way to enhance existing GNSS capabilities without major hardware changes, facilitating widespread adoption in smartphones and IoT devices. It also reduces UE battery drain by shortening active GNSS processing time and allowing the receiver to enter low-power states more frequently.
The technology continues to evolve to support new GNSS constellations, improve accuracy with real-time kinematic (RTK) or precise point positioning (PPP) assistance, and integrate with 5G NR positioning. It addresses the need for high-accuracy positioning in applications like autonomous vehicles, drone navigation, and industrial IoT, where sub-meter precision is required. By offloading complex calculations and data acquisition to the network, A-GNSS enables thinner, more power-efficient UE designs while maintaining robust performance across diverse environments.
Key Features
- Reduces Time to First Fix (TTFF) from ~30 seconds to under 10 seconds by providing pre-computed satellite ephemeris and almanac data
- Improves receiver sensitivity by up to 20 dB, enabling positioning in weak signal conditions such as indoors or urban canyons
- Supports multiple GNSS constellations including GPS, GLONASS, Galileo, and BeiDou via standardized assistance data formats
- Enables both UE-based (autonomous calculation) and UE-assisted (network calculation) positioning modes for flexibility
- Utilizes control plane (e.g., RRLP, LPP) or user plane (SUPL) protocols for assistance data delivery across 3GPP generations
- Integrates with other positioning methods (e.g., OTDOA, WLAN) for hybrid location solutions to enhance accuracy and availability
Evolution Across Releases
Introduced A-GNSS with initial support for GPS assistance over UMTS and GSM. Defined control plane protocols (RRLP for GSM, RRC for UMTS) and basic assistance data types including ephemeris, almanac, and reference time. Established the foundation for network-assisted positioning to meet emergency service (E911) requirements and improve location service performance.
Defining Specifications
| Specification | Title |
|---|---|
| TS 23.271 | 3GPP TS 23.271 |
| TS 25.305 | 3GPP TS 25.305 |
| TS 34.171 | 3GPP TR 34.171 |
| TS 36.171 | 3GPP TR 36.171 |
| TS 37.571 | 3GPP TR 37.571 |
| TS 37.857 | 3GPP TR 37.857 |
| TS 38.171 | 3GPP TR 38.171 |
| TS 43.059 | 3GPP TR 43.059 |
| TS 45.005 | 3GPP TR 45.005 |
| TS 51.010 | 3GPP TR 51.010 |