Section: 7.1.2 NF Service Consumer - NF Service Producer interactions
Content: 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 Control Plane NF_B (NF Service Producer) is requested by another Control Plane 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 - "Subscribe-Notify": A Control Plane NF_A (NF Service Consumer) subscribes to NF Service offered by another Control Plane NF_B (NF Service Producer). Multiple Control Plane NFs may subscribe to the same Control Plane 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[ Procedures for the 5G System (5GS) ]  [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 A Control Plane NF_A may also subscribe to NF Service offered by Control Plane NF_B on behalf of Control Plane 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 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-5: Subscribe-Notify using Indirect Communication NOTE: The subscribe request and notify request can be routed by different SCPs.