2. Role

2.1. As a network function

UPF’s main purpose in the 5GS is essentially to route UE data traffic (PDUs) between RANs, Internet/DNs and/or other UPFs as illustrated by the following diagram.

_images/upf-location.svg

UPF processing traffic at the intersection of N3/N6/N9 reference points according to rules provided by SMF over N4.

Each PDU session is wrapped in at least one GTP-U tunnel between UE and UPF.

The SMF dynamically configures a UPF through PFCP messages via the dedicated N4 link every time a PDU session is created or modified.

For each session whose PDUs must be handled, UPF is instructed how through a number of PDRs which include, among other properties, PDIs identifying the relevant traffic (e.g. a source interface, UE IP address) and FARs describing what to do with it (e.g. destination interface, encapsulation header to use).

Note

This is an abstract view of the UPF. Since N3/N4/N6/N9 only describe link roles in the 5GS, a given UPF instance could theoretically manage any number of network interfaces of each kind.

2.2. At session level

From the UPF standpoint, N3/N9 traffic is normally made of GTP-U tunnels encapsulating PDUs while N6 traffic (coming from/destined to Internet or DNs) generally lacks GTP-U encapsulation.

Therefore at the session level, UPF may either act as a PSA if managing a single GTP-U tunnel on one interface or a I-UPF (aka relay) if managing two independent GTP-U tunnels, one for each interface.

_images/upf-psa.svg

PSA tunneling GTP-U on N3 with bare traffic on N6.

_images/i-upf.svg

N3/N9 relay handing traffic over to another UPF. GTP-U encapsulation happens in both directions (UL and DL).

This role being per session (or even per flow in ULCL/BP configurations), a given UPF instance may actually handle both roles simultaneously.

_images/upf-ulcl-bp.svg

Part of UL-bound traffic is directed to DN #1 over N9, the rest goes to DN #2 over N6. DL-bound traffic from both N9 and N6 is directed to UE over N3.