School of Specs The 5G system architectureOverview

The shape of the system · chapter 3 of 7 · 5 minutes

3 How one function calls another

What a service-based interface names, why the N-numbers are two different animals, and how a function finds somebody to call.

Built from §4.2.6 §4.2.7 §6.3.1 §7.1.1 §7.1.2 §7.1.3 §7.1.4 §7.1.5 §8.2.3.1

3.1 The problem this solves

If the core is a set of software functions rather than boxes with cables between them, then two questions have to be answered before anything can happen. What may I ask this function for? And which instance of it do I ask?

The document answers the first with service-based interfaces and the second with a directory. Both are worth ten minutes, because almost every name that looks cryptic in a 5G conversation comes from one of them.

3.2 One interface name per producer

A service-based interface is written as N plus the function's name in lower case. Namf is the interface the AMF offers, Nsmf the one the SMF offers, then Nudm, Npcf, Nnrf, Nudr and about thirty more §4.2.6.

The word the clause uses is "exhibited", and it is the important one. The interface belongs to the function that offers the services. There is exactly one per function, and it names a producer, never a pair. A consumer has no interface — it just calls.

The list is longer than the list of core functions, because functions defined in other documents also exhibit an interface into this architecture: Nmbsmf and Nmbsf from the multicast document, Neasdf from the edge document, Naiotf and Nadm from the Ambient IoT one §4.2.6.

3.3 Two families under one letter

One clause lists reference points from N1 up past N100, and they are not all the same kind of thing §4.2.7. A single sentence in the middle splits the list, and everything depends on which side of it a name falls.

The six named before that sentence are real, separate links:

Name Between
N1 the UE and the AMF
N2 the (R)AN and the AMF
N3 the (R)AN and the UPF
N4 the SMF and the UPF
N6 the UPF and a Data Network
N9 two UPFs

Everything after it — N5, N7, N8, N10, N11 and the rest — is different:

So "N11" is a name for the conversation between the AMF and the SMF. There is no N11 protocol. The traffic goes over Namf and Nsmf, and N11 is the label used when the document wants to talk about that pair without naming the individual service operations.

3.4 The only two ways to have a conversation

Whatever the routing, an exchange between a consumer and a producer follows one of exactly two mechanisms §7.1.2:

  • Request-response. The consumer asks the producer to do something or tell it something, and expects one answer within a certain time. One to one, one round.

  • Subscribe-notify. The consumer subscribes to a service, and the producer notifies it when there is something to say. The subscription carries a notification endpoint — where to send the result and how to tie it back to the subscription. A function may also subscribe on somebody else's behalf, giving that third party's endpoint instead of its own.

An NF service is a capability the producer exposes; one function may expose several §7.1.1. Whether the caller is allowed is a separate step, service authorization, and it is checked by the producer §7.1.4.

The protocol underneath all of this is not in this document. The clause on protocol stacks says the control plane protocol for service-based interfaces is defined in TS 29.500, and that is the whole of it §8.2.3.1.

3.5 Finding somebody to call

Each function instance tells the NRF which services it supports, either when it first comes up or whenever a service is switched on or off inside it. It de-registers when it shuts down cleanly, and if it crashes, some other authorised entity has to de-register it §7.1.5.

A consumer then either knows the producer from local configuration or asks the NRF for one §7.1.3. That is direct communication: discover, then call.

Figure 7.1.1-1: NF/NF service inter communication
Figure 7.1.1-1: NF/NF service inter communication 7.1.1

The alternative is indirect communication, through an SCP — the message router of the core. The consumer may still discover the producer itself and let the SCP only carry the message, or hand the whole job over and let the SCP discover and choose.

Which of the two a function does is local configuration, and a function need not use the SCP for everything §7.1.1.

The rest of the picking is a long clause of its own: which UPF, which SMF, which AMF, which PCF, each with its own rules §6.3.1.

What ties a series of calls to the same instance is a binding indication the producer hands back and the consumer then repeats. The UPF case matters most, and it is The connection, and what is promised on it.

3.6 Where to look next

The interface list is §4.2.6 and the reference point list is §4.2.7. The service framework — mechanisms, discovery, authorization, registration — is §7.1.1 through §7.1.5, and the four communication options an operator can mix in one network are set out in §Annex E.

The in-depth course of this track has one chapter on the service framework and another on discovery and selection, function by function.

Check yourself

Answers appear when you pick one, with where they come from.

Q3.1 What does the name "Nsmf" stand for?

Q3.2 Which of these is a genuine point-to-point link rather than a label for service calls?

Q3.3 A function wants to be told whenever something changes rather than asking repeatedly. Which mechanism is that?

Q3.4 How does the NRF know which functions exist?

Q3.5 In indirect communication, who may do the looking-up?

This chapter was written against TS 23.501 version 20.2.0, verified 2026-08-04. A newer version of the document may say something else.