HTTP

Hypertext Transfer Protocol

Protocol
Introduced in R99
The application-layer protocol for distributed, collaborative, hypermedia information systems. It is the foundation of data communication for the World Wide Web and is the primary protocol used for transporting web traffic, including HTML, over 3GPP mobile networks.

Description

The Hypertext Transfer Protocol (HTTP) is a stateless application-layer protocol within the Internet protocol suite, defined by the IETF (RFC 9110 et seq.) and ubiquitously referenced in 3GPP specifications. It operates on a client-server model, where a client (typically a web browser on User Equipment) sends requests to a server, which then returns responses. In a 3GPP network, HTTP messages are carried as payload within IP packets. These IP packets are transported over the network's data bearers, which are established and managed by the core network's Packet Data Network (PDN) connectivity procedures—using protocols like GTP between the gateway (PGW/UPF) and the radio access network.

HTTP works through a series of request methods (GET, POST, PUT, DELETE, etc.) and status codes (200 OK, 404 Not Found). A GET request for a web page initiates a TCP connection (or uses an existing one via HTTP/1.1 persistent connections or HTTP/2 streams), which is transported over the mobile network's IP layer. The server's response contains headers with metadata and the message body, often an HTML document. The protocol itself is unaware of the underlying mobile network intricacies; however, the network implements various functions around HTTP traffic. These include Policy and Charging Control (PCC) to apply rules based on traffic detection, Deep Packet Inspection (DPI) for service awareness, and Traffic Flow Templates (TFTs) for bearer binding.

3GPP specifications reference HTTP in numerous contexts: as the transport for configuration protocols like OMA DM for device management, for service capability exposure (SCEF/NEF), in the Ut interface for provisioning, and as the protocol for numerous northbound APIs (e.g., Nnrf, Nudm in 5GC) which are based on HTTP/2. The shift to a Service-Based Architecture (SBA) in the 5G Core Network explicitly uses HTTP/2 with JSON payloads for communication between network functions (NFs). Furthermore, HTTP is central to content delivery optimization techniques discussed in 3GPP, such as transparent caching and video streaming adaptation (DASH), which aim to improve efficiency and user experience over the radio interface.

Purpose & Motivation

HTTP is integral to 3GPP standards because mobile networks are designed to provide IP connectivity, and the web (via HTTP) constitutes a massive portion of IP traffic. The protocol's purpose within 3GPP is twofold: first, as the carrier of end-user application data (web browsing, video streaming, app updates), and second, as a protocol for network internal and management interfaces. Its inclusion ensures the network architecture can efficiently handle request/response traffic patterns, manage sessions, apply appropriate quality of service, and charge for data usage.

The historical context is the convergence of telecommunications and the internet. Early mobile data services used specialized protocols. The adoption of HTTP signaled a shift towards an all-IP network that seamlessly integrates with the internet. This addressed limitations of previous circuit-switched data and proprietary protocols, which were inefficient for bursty web traffic. Standardizing around HTTP allowed for a vast ecosystem of internet applications to work on mobile devices without modification. In later releases, using HTTP/2 for 5G core interfaces solved problems of signaling efficiency and flexibility compared to earlier binary telecom protocols (like Diameter), enabling a more agile, cloud-native network architecture.

Key Features

  • Client-server request/response model with defined methods (GET, POST)
  • Stateless protocol, with state managed via cookies or sessions at the application layer
  • Uses TCP for reliable transport, with HTTP/3 introducing QUIC over UDP
  • Supports content negotiation, caching directives, and persistent connections
  • Foundation for RESTful APIs and the 5G Service-Based Architecture (SBA)
  • Extensible via headers and can carry any type of digital content as payload

Evolution Across Releases

Defining Specifications

SpecificationTitle
TS 21.905 3GPP TS 21.905
TS 22.112 3GPP TS 22.112
TS 22.242 3GPP TS 22.242
TS 23.057 3GPP TS 23.057
TS 23.125 3GPP TS 23.125
TS 23.140 3GPP TS 23.140
TS 23.141 3GPP TS 23.141
TS 23.179 3GPP TS 23.179
TS 23.207 3GPP TS 23.207
TS 23.280 3GPP TS 23.280
TS 23.281 3GPP TS 23.281
TS 23.379 3GPP TS 23.379
TS 23.722 3GPP TS 23.722
TS 23.802 3GPP TS 23.802
TS 24.109 3GPP TS 24.109
TS 24.141 3GPP TS 24.141
TS 24.147 3GPP TS 24.147
TS 24.229 3GPP TS 24.229
TS 24.259 3GPP TS 24.259
TS 24.322 3GPP TS 24.322
TS 24.423 3GPP TS 24.423
TS 24.481 3GPP TS 24.481
TS 24.482 3GPP TS 24.482
TS 24.484 3GPP TS 24.484
TS 24.549 3GPP TS 24.549
TS 24.623 3GPP TS 24.623
TS 24.819 3GPP TS 24.819
TS 24.841 3GPP TS 24.841
TS 24.930 3GPP TS 24.930
TS 26.117 3GPP TS 26.117
TS 26.118 3GPP TS 26.118
TS 26.142 3GPP TS 26.142
TS 26.234 3GPP TS 26.234
TS 26.244 3GPP TS 26.244
TS 26.247 3GPP TS 26.247
TS 26.501 3GPP TS 26.501
TS 26.517 3GPP TS 26.517
TS 26.802 3GPP TS 26.802
TS 26.804 3GPP TS 26.804
TS 26.849 3GPP TS 26.849
TS 26.851 3GPP TS 26.851
TS 26.857 3GPP TS 26.857
TS 26.905 3GPP TS 26.905
TS 26.926 3GPP TS 26.926
TS 26.927 3GPP TS 26.927
TS 26.928 3GPP TS 26.928
TS 26.937 3GPP TS 26.937
TS 26.938 3GPP TS 26.938
TS 26.953 3GPP TS 26.953
TS 26.955 3GPP TS 26.955
TS 26.956 3GPP TS 26.956
TS 26.998 3GPP TS 26.998
TS 29.116 3GPP TS 29.116
TS 29.201 3GPP TS 29.201
TS 29.433 3GPP TS 29.433
TS 29.500 3GPP TS 29.500
TS 29.508 3GPP TS 29.508
TS 29.512 3GPP TS 29.512
TS 29.520 3GPP TS 29.520
TS 29.521 3GPP TS 29.521
TS 29.523 3GPP TS 29.523
TS 29.524 3GPP TS 29.524
TS 29.525 3GPP TS 29.525
TS 29.817 3GPP TS 29.817
TS 29.890 3GPP TS 29.890
TS 29.891 3GPP TS 29.891
TS 31.112 3GPP TR 31.112
TS 32.102 3GPP TR 32.102
TS 32.158 3GPP TR 32.158
TS 32.296 3GPP TR 32.296
TS 32.316 3GPP TR 32.316
TS 32.317 3GPP TR 32.317
TS 32.583 3GPP TR 32.583
TS 32.593 3GPP TR 32.593
TS 32.808 3GPP TR 32.808
TS 32.821 3GPP TR 32.821
TS 32.824 3GPP TR 32.824
TS 32.866 3GPP TR 32.866
TS 33.141 3GPP TR 33.141
TS 33.222 3GPP TR 33.222
TS 33.823 3GPP TR 33.823
TS 33.835 3GPP TR 33.835
TS 37.901 3GPP TR 37.901
TS 37.976 3GPP TR 37.976
TS 37.977 3GPP TR 37.977
TS 43.802 3GPP TR 43.802
TS 43.901 3GPP TR 43.901