Method of and device for service discovery and selection
11696103 · 2023-07-04
Assignee
Inventors
- Maria Cruz Bartolomé Rodrigo (Madrid, ES)
- Joerg Aelken (Eynatten, BE)
- Antonio Alonso Alarcon (Madrid, ES)
Cpc classification
H04L67/51
ELECTRICITY
H04L67/52
ELECTRICITY
H04W8/18
ELECTRICITY
H04W48/16
ELECTRICITY
H04W8/02
ELECTRICITY
International classification
H04W48/16
ELECTRICITY
H04W8/02
ELECTRICITY
Abstract
A method of and a device for operating a service discovery and selection function in a telecommunications system, wherein the service discovery and selection function registers a service profile of a service provided by at least one service producer of the telecommunications system. The service profile among others includes consistency group information and proximity information. The consistency group information identifies instances of the service sharing a same state and the proximity information identifies deployment of the instances in the telecommunications system. The service discovery and selection function, from the service profile, based on service selection criteria, selects a single service instance of the service for a service consumer of the telecommunications system requesting the service, and identifies the selected service instance to the service consumer.
Claims
1. A method of operating a service discovery and selection function in a telecommunications system, said method comprising the steps of: registering, with said service discovery and selection function, a service profile of a service provided by at least one service producer, said service profile among others comprising consistency group information and proximity information, wherein said consistency group information identifies instances of said service sharing a same state and stored in a shared state repository and said proximity information identifying deployment of said service instances; selecting, by said service discovery and selection function, from said service profile, a single service instance of said service for a service consumer requesting said service, based on service selection criteria accessible to said service discovery and selection function; identifying, by said service discovery and selection function, said selected service instance to said service consumer, and subscribing, by said service discovery and selection function, to receive a notification from a unified data repository (UDR) when there are changes to said selected service instance profile, wherein said proximity information identifies proximity levels of a respective service instance by allowing to select said service instance based on geographical distance of the at least one service producer or a service provider and the service consumer, for optimizing network resources and signalling latency.
2. The method according to claim 1, wherein said consistency group information comprises a plurality of consistency groups and a respective consistency group identifies all instances of a service or different services sharing a same state and stored in a shared state repository.
3. The method according to claim 1, wherein state information of a respective service instance is stored at a state repository accessible to said service discovery and selection function.
4. The method according to claim 1, wherein said service discovery and selection function comprises a management entity, a discovery entity, and a service instance selection entity, wherein said registering is performed at said management entity, requesting said service by a service consumer and identifying said selected service instance to said service consumer is performed at said discovery entity, and selecting a service instance is performed at said service instance selection entity.
5. The method according to claim 4, wherein said service profile and said service selection criteria are stored at said management entity, wherein said service instance selection entity accesses said management entity for selecting said service instance.
6. The method according to claim 4, wherein said service profile is stored at said management entity and said service selection criteria are stored at said service instance selection entity, wherein said service instance selection entity accesses said management entity for selecting said service instance.
7. The method according claim 1, wherein said service discovery and selection function comprises a registration entity, a discovery entity, and a service instance selection entity, having access to said unified data repository (UDR) of said telecommunication, wherein said UDR storing service profiles and service selection criteria, said registering is performed at said registration entity storing said service profile at said UDR, requesting said service by a service consumer and identifying said selected service instance to said service consumer is performed at said discovery entity, and selecting a service instance is performed at said service instance selection entity by accessing said service profile and service selection criteria stored at said UDR.
8. The method according to claim 7, wherein state information of a respective service instance is stored at said UDR.
9. The method according to claim 4, wherein said service instance selection entity is performed as part of said discovery entity.
10. The method according to claim 4, wherein any of said management entity, discovery entity, service instance selection entity and registration entity are performed as a service by said service discovery and selection function.
11. The method according to claim 1, wherein said service discovery and selection function registers service profile changes pertaining to a registered service profile from a service producer.
12. The method according to claim 1, wherein said service discovery and selection function provides service profile changes pertaining to a selected service instance to said service consumer.
13. The method according to claim 1, wherein said service producer and said service consumer are any one of a service provided by said telecommunications system, a Network Function (NF) of said telecommunications system, a server operating with said telecommunications system, and a node operating in said telecommunications system.
14. A service discovery and selection function device, arranged for operating in a telecommunications system, said service discovery and selection function device comprising: a registering processor, arranged for registering a service profile of a service provided by at least one service producer of said telecommunications system, said service profile among others comprising consistency group information and proximity information, wherein said consistency group information identifies instances of said service sharing a same state and stored in a shared state repository and said proximity information identifying deployment of said service instances in said telecommunications system; a selecting processor, arranged for selecting, from said service profile, a single service instance of said service for a service consumer of said telecommunications system requesting said service, based on service selection criteria accessible to said service discovery and selection function; a discovery processor, arranged for identifying, by said service discovery and selection function, said selected service instance to said service consumer, and subscribing to receive a notification from a unified data repository (UDR) when there are changes to said selected service instance profile, wherein said proximity information identifies proximity levels of a respective service instance by allowing to select said service instance based on geographical distance of the at least one service producer or a service provider and the service consumer, for optimizing network resources and signalling latency.
15. A computer program product, comprising a non-transitory computer readable storage medium storing instructions which, when executed on at least one processor, cause the at least one processor to carry out the method according to claim 1.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
DETAILED DESCRIPTION
(10)
(11) A functional description of these network functions is specified in clause 6 of the 3GPP standard 23.501, “System Architecture for the 5G system”, the contents of which are included herein, by reference. Specifically, in
(12)
(13) In subsequent step 22, a service consumer NF 26 queries the NRF 11 for available services and available service providers. After receiving a response from the NRF 11, the service consumer NF 26 requests a service instance of a particular service from the service provider 25, indicated by reference numeral 23. Subsequently a response 24 to the service request 23 is received by the service consumer NF 26 from the service provider 25, and the service consumer 26 may start to use, i.e. consume, the requested service, i.e. service instance, from the service provider 25.
(14) In some service deployments/distributions not all service instances of a same service will share the same context data or state information. In the event that a service consumer 26 needs to select an alternative service instance, for example in the case of a service instance failure, context data or state consistency has to be ensured. In other words, selection of an alternative service instance should prioritize that the data context or state information will not be lost.
(15)
(16) However, the S1 instances e, f, g, h do not share the state repository 31. Instead, they share a different state repository 32. In such a situation, the consumer 26 should be aware of this difference when selecting another service instance in case of failures, for example, as the service instances a-d of S1 33 and e-h may not relate to the same data context or state information.
(17)
(18)
(19) Although only a local state repository is shown in the examples, the skilled person will appreciate that state repository may also be centralized.
(20) Accordingly, in the prior art solutions presented above, in order to be able to select a most suitable service instance from a service provider by a service consumer, the latter needs to be provided with rather complex additional functionality or logic operating on service selection criteria such as geographic information and other non-functional service instance requirements pertaining to service instance selection, for taking account of load distribution and overload protection of service instances, scaling in/out based on traffic demands, ensuring service instance data consistency in case of failures, as well as possible other (future) deployment or robustness service instance selection requirements.
(21)
(22) The Nnrf_NFManagement service 61 registers a service producer or service provider NF 25 with the NRF 11, by providing the service profile of the service producer NF 26 to the NRF 11, and the NRF 11 marks the service producer NF 25 as being available.
(23) The Nnrf_NFDiscovery service 63 enables a service consumer NF 26 to discover a set of NF service instances of a specific NF service or a target NF type. The Nnrf_NFDiscovery service 63 may also enables an NF service to discover another specific NF service.
(24) Table 1 below provides an overview of present service definitions according to the 5G SBA standard provisions. The service operations mentioned in table 1 allow an NF or NF services to communicate with the NRF 11.
(25) TABLE-US-00001 TABLE 1 Service Service Operation Example Service Name Operations Semantics Consumer(s) Nnrf_ NFRegister Request/ AMF, SMF, UDM, NFManagement Response AUSF, NEF, PCF, SMSF, NSSF NFUpdate Request/ AMF, SMF, UDM, Response AUSF, NEF, PCF, SMSF, NSSF NFDeregister Request/ AMF, SMF, UDM, Response AUSF, NEF, PCF, SMSF, NSSF NFStatus- Subscribe/ AMF, SMF, PCF, Subscribe Notify NEF, NSSF, SMSF, AUSF NFStatusNotify AMF, SMF, PCF, NEF, NSSF, SMSF, AUSF NFStatus- AMF, SMF, PCF, UnSubscribe NEF, NSSF, SMSF, AUSF Nnrf_ Request Request/ AMF, SMF, PCF, NFDiscovery Response NEF, NSSF, SMSF, AUSF
(26) In addition to these known NRF services, the present disclosure proposes a new service, i.e. a service instance selection entity or service, Nnrf_NFInstanceSelector, 62. This proposed Nnrf_NFInstanceSelector 62 may be modelled as a separate Third Generation Partnership Project, 3GPP, SBA service or it may also be provided as a part of the already existing Nnrf_NFDiscovery 63 service. The newly proposed Nnrf_NFInstanceSelector 62 may have the following service operations as shown in table 2 below.
(27) TABLE-US-00002 TABLE 2 Service Service Operation Name Operations Semantics Nnrf_NFInstanceSelector Select Request/Response Update Request/Response
(28) According to the embodiment 60, the service producer 25 registers 71 its service instances with the Nnrf_NFManagement 61. This may be done by an existing Nnrf_NFManagement Register operation, however the data provided comprises additional information, according to the present disclosure as part of the Service profile, i.e.: Consistency Group information: this identifies services instances of respective services, regardless whether they are defined within the same NF or a Virtual NF, VNF, that share the same state. Proximity information: this identifies where the service instances are deployed in the SBA. At least the following proximity levels may be identified: Data Center, Region, GeoArea.
(29) The service producer or service provider 25 receives a confirmation or an acknowledgement 72 of the registration 71 from the Nnrf_NFManagement 61. When a service consumer 26 wants to consume a service provided by the service provider 25, then it needs to discover 73, through the Nnrf_NFDiscovery 63, an instance of the service provided by the service producer 25. The present disclosure proposes, in response to such a service request, to always provide a single instance of the service provider 25.
(30) To this end, the Nnrf_NFDiscovery 63 requests 74 with the Nnrf_NFInstanceSelector 62 to provide the most suitable service instance, according to previously stored service selection criteria. These service selection criteria include service selection criteria pertaining to a particular service consumer 26, such as geographic information, and other non-functional service instance requirements pertaining to service instance selection taking account of load distribution and overload protection, scaling in/out based on traffic demands, ensuring data consistency in case of failures and geo redundancy, as well as potentially other deployment or robustness service instance selection requirements.
(31) Nnrf_NFInstanceSelector 62 may retrieve 75 all service producer 25 instance service profiles of a requested service, that include values meeting the selection criteria, and selects the most appropriate service instance.
(32) In a subsequent step 76, the Nnrf_NFInstanceSelector 62 provides an identification of the selected service producer 25 instance to Nnrf_NFDiscovery 63 for communicating 77 to the service consumer 26. As an alternative, the Nnrf_NFInstanceSelector 62 may provide the entire service instance profile, thereby avoiding additional overhead signalling. Then, the Nnrf_NFDiscovery 63 receives the selected service instance profile for communicating to the service consumer 26.
(33) In further steps 78, 79, the service consumer 26 may subscribe to changes in the service instances profile of the service producer 25.
(34)
(35) Providing that the consistency groups not only group one or several instances of the same service, but also apply to instances of different services, allows services that in fact share some data among then. If the services are always defined within the same consistency group, ensures that both services can access the shared data. An example of two dependent services in 5G SBA is, for example, Npcf_PolicyAuthorization and Npcf_SMPolicyControl.
(36) Where are kept within the same Data Context, DC, is an example. There are options where the same data could be replicated between different DCs, this means that the consistency groups may be extended. This may result in two types of consistency groups (or values): async and sync, for example.
(37)
(38) a) Nnrf_NFRegistration 101, employing only Request/Response operations. The subscribe/notify operations are offered by Nnrf_NFDiscovery 103.
(39) b) Nnrf_NFDiscovery 103 also includes subscribe/Notify operations in order to subscribe to changes in the service profile of a service producer 25.
(40) c) Nnrf_NFInstanceSelector 62 has similar functions as described previously.
(41) An overview of the functions of the proposed NRF are provided in table 3 below.
(42) TABLE-US-00003 Service Service Operation Name Operations Semantics Nnrf_ Register Request/Response NFRegistration Update Request/Response Deregister Request/Response Nnrf_ Request Request/Response NFDiscovery ProfileSubscribe Subscribe/Notify ProfileNotify ProfileUnSubscribe Nnrf_ Select Request/Response NFInstanceSelector Update Request/Response
(43) Step 111 in
(44) The UDR 102 may be part of the UDM 13 in a 5G SBA, for example. By storing service profile information in the UDR 102, and standardize its access, then both the registration and discovery services become independent, and the stored data will be as well accessible by other potential consumers, i.e. providing for a multi-vendor solution.
(45) Steps 113, 114 in
(46) Based on this information, Nnrf_NFInstanceSelector 62 finds the corresponding service producer 25 service instance. The step 117 is similar to step 76 in that the Nnrf_NFInstanceSelector 62 provides an identification of the service producer 25 service instance to Nnrf_NFDiscovery 103. In a further step 118, the Nnrf_NFDiscovery 103 gets a selected service instance profile from the UDR 102. Subsequently, the Nnrf_NFDiscovery 103 subscribes 119 to receive a notification from the UDR 102 when there are changes to selected service instance profile.
(47) In the step 120, the Nnrf_NFdiscovery 103 provides the service consumer 26 with the required information from the selected service producer 25 instance profile. The service consumer 26 again may subscribe 121 to changes in service producer 25 instance profile information.
(48) The proposal according to the present embodiment also requires that information in UDR 102 is updated. The following information may need to be updated:
(49) a) Available service provider instances:
(50) Service profiles are updated into UDR 102, by registration of new instances, update of profile of registered instances, and deregistration of instances that are no longer providing service.
(51) b) Service consumer selection criteria:
(52) For each service consumer 26, the selection criteria such as the consistency group and proximity level, as well as a priority among other factors that may be different for each service provider have to be configured in the UDR 102, by using Nnrf_NFInstanceSelector 62. Selection criteria could as well be updated/configured by an authorized Operations and Maintenance, O&M, entity (not shown in figure), either directly in the UDR 102, or by using Nnrf_NFInstanceSelector 62 service.
(53)
(54) The receiver and transmitter modules 151, 53 may be arranged for operating in accordance with HyperText Transfer Protocol/REpresentational State Transfer, HTTP/REST, data transfer technology, over the control plane in an SBA network, for example. Those skilled in the art will appreciate that the receiver and transmitter modules 151, 153 may be implemented as a single transceiver module, for example.
(55) The device 150 comprises a memory or storage 155, a registering module 156, arranged for operating as management entity or registration entity, for example, and arranged for registering a service profile 157 of a service and service instances provided by at least one service producer, such as an NF operating in an SBA. The service profile 157, among others, comprises consistency group information and proximity information of service instances of a service, in accordance with the present disclosure.
(56) The device 150 further comprises a discovery module 158, arranged for operating as discovery entity, for example, for receiving a service request of a service consumer and identifying a single selected service instance to the service consumer. Service instances are selected by a selecting module 159 of the device 150, arranged for operating as service instance selection entity, for example, for selecting, from the service profile 157 of a requested service, a single service instance for a service consumer, based on service selection criteria for selecting service instances registered with the device 150, which selection criteria may be stored, for example, in the memory or storage 156.
(57) The storage or memory 156 may further store context data or state information pertaining to a particular service instance, for example, and other intermediate data values and/or a computer program product which when executed by a processor 160 causes the device 150 to perform a method according to an aspect of the present disclosure. All the internal components of the device 150 communicate with one another using an internal data bus 161.
(58) Other variations to the disclosed examples can be understood and effected by those skilled in the art in practicing the claimed disclosure, from a study of the drawings, the disclosure and the appended claims. In the claims, the word “comprising” does not exclude other elements or steps, and the indefinite article “a” or “an” does not exclude a plurality. A single processor or other unit may fulfil the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage. A computer program may be stored/distributed on a suitable medium, such as an optical storage medium or a solid state medium supplied together with or as part of other hardware, but may also be distributed in other forms, such as via the Internet or other wired or wireless telecommunication systems. Any reference signs in the claims should not be construed as limiting scope thereof.
(59) The present disclosure is not limited to the examples as disclosed above, and can be modified and enhanced by those skilled in the art beyond the scope of the present disclosure as disclosed in the appended claims without having to apply inventive skills and for use in any data communication, data exchange and data processing environment.