School of Specs 23.501v20.2.0

3GPP 23.501 v20.2.0 — the document's own text

7.1.2 NF Service Consumer - NF Service Producer interactions

Taught in 5. Services instead of interfaces (The 5G system architecture, in depth), 3. How one function calls another (The 5G system architecture, overview).

The end-to-end interaction between two Network Functions (Consumer and Producer) within this NF service framework follows two mechanisms, irrespective of whether Direct Communication or Indirect Communication is used:

  • "Request-response": A NF_B (NF Service Producer) is requested by another NF_A (NF Service Consumer) to provide a certain NF service, which either performs an action or provides information or both. NF_B provides an NF service based on the request by NF_A. In order to fulfil the request, NF_B may in turn consume NF services from other NFs. In Request-response mechanism, communication is one to one between two NFs (consumer and producer) and a one-time response from the producer to a request from the consumer is expected within a certain timeframe. The NF Service Producer may also add a Binding Indication (see clause 6.3.1.0) in the Response, which may be used by the NF Service Consumer to select suitable NF service producer instance(s) for subsequent requests. For indirect communication, the NF Service Consumer copies the Binding Indication into the Routing Binding indication, that is included in subsequent requests, to be used by the SCP to discover a suitable NF service producer instance(s).
Figure 7.1.2-1: "Request-response" NF Service illustration
Figure 7.1.2-1: "Request-response" NF Service illustration
  • "Subscribe-Notify": A NF_A (NF Service Consumer) subscribes to NF Service offered by another NF_B (NF Service Producer). Multiple NFs may subscribe to the same NF Service. NF_B notifies the results of this NF service to the interested NF(s) that subscribed to this NF service. The subscription request shall include the notification endpoint, i.e. a Notification Target Address and a Notification Correlation ID (e.g. the callback URL) of the NF Service Consumer to which the event notification from the NF Service Producer should be sent to.

NOTE 1: The notification endpoint can be a URL and contains both the Notification Target Address and the Notification Correlation ID.

The NF Service Consumer may add a Binding Indication (see clause 6.3.1.0) in the subscribe request, which may be used by the NF Service Producer to discover a suitable notification endpoint. For indirect communication, the NF Service Producer copies the Binding Indication into the Routing Binding Indication, that is included in the response, to be used by the SCP to discover a suitable notification target. The NF Service Producer may also add a Binding Indication (see clause 6.3.1.0) in the subscribe response, which may be used by the NF Service Consumer (or SCP) to select suitable NF service producer instance(s) or NF producer service instance. In addition, the subscription request may include notification request for periodic updates or notification triggered through certain events (e.g. the information requested gets changed, reaches certain threshold etc.). The subscription for notification can be done through one of the following ways:

    • Explicit subscription: A separate request/response exchange between the NF Service Consumer and the NF Service Producer; or
    • Implicit subscription: The subscription for notification is included as part of another NF service operation of the same NF Service; or
    • Default notification endpoint: Registration of a notification endpoint for each type of notification the NF consumer is interested to receive, as a NF service parameter with the NRF during the NF and NF service Registration procedure as specified in clause 4.17.1 of TS 23.502 [3].

The NF Service Consumer may also add a Binding Indication (see clause 6.3.1.0) in the response to the notification request, which may be used by the NF Service Producer to discover a suitable notification endpoint. For indirect communication, the NF Service Producer copies the Binding Indication into the Routing Binding indication that is included in subsequent notification requests. The binding indication is then used by the SCP to discover a suitable notification target.

Figure 7.1.2-2: "Subscribe-Notify" NF Service illustration 1
Figure 7.1.2-2: "Subscribe-Notify" NF Service illustration 1

A NF_A may also subscribe to NF Service offered by NF_B on behalf of NF_C, i.e. it requests the NF Service Producer to send the event notification to another consumer(s). In this case, NF_A includes the notification endpoint, i.e. Notification Target Address) and a Notification Correlation ID, of the NF_C in the subscription request. NF_A may also additionally include the notification endpoint and a Notification Correlation ID of NF A associated with subscription change related Event ID(s), e.g. Subscription Correlation ID Change, in the subscription request, so that NF_A can receive the notification of the subscription change related event. The NF_A may add Binding Indication (see clause 6.3.1.0) in the subscribe request.

Figure 7.1.2-3: "Subscribe-Notify" NF Service illustration 2
Figure 7.1.2-3: "Subscribe-Notify" NF Service illustration 2

Routing of the messages for the NF interaction mechanisms above may be direct, as shown in the figures 7.1.2-1 to 7.1.2-3, or indirect. In the case of Indirect Communication, an SCP is employed by the NF service consumer. The SCP routes messages between NF service consumers and NF service producers based on the Routing Binding Indication if available and may do discovery and associated selection of the NF service producer on behalf of a NF service consumer. Figure 7.1.2-4 shows the principle for a request-response interaction and figure 7.1.2-5 shows an example of a subscribe-notify interaction.

Figure 7.1.2-4: Request response using Indirect Communication
Figure 7.1.2-4: Request response using Indirect Communication
Figure 7.1.2-5: Subscribe-Notify using Indirect Communication
Figure 7.1.2-5: Subscribe-Notify using Indirect Communication

NOTE: The subscribe request and notify request can be routed by different SCPs.