System and Method for Active-Standby Policy-Based Routing in a Network
The SCP controller in 5G networks addresses routing inefficiencies by evaluating endpoint availability and applying an active-standby policy, enhancing routing efficiency and service quality through effective management of endpoint pairs.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- ジェイアイオー·プラットフォームズ·リミテッド
- Filing Date
- 2023-03-24
- Publication Date
- 2026-06-29
Smart Images

Figure 0007881564000001 
Figure 0007881564000002 
Figure 0007881564000003
Abstract
Description
Technical Field
[0001] Embodiments of the present disclosure generally relate to the field of routing, and more particularly, to next-generation network techniques that enable routing based on an active standby policy in a next-generation network such as a 5G network.
Background Art
[0002] The following description of related art is intended to provide background information relevant to the field of the present disclosure. This section may include some aspects of the art related to various features of the present disclosure. However, it should be understood that this section is used only to enhance the reader's understanding of the present disclosure and not as an admission of prior art.
[0003] The availability of high-speed and interruption-free communication facilities has become essential in the current high-tech world. There are many communication devices to meet the requirements of high-speed and interruption-free communication facilities, such as smartphones, laptops, tablets, etc. These communication devices can be connected through various wired and wireless network technologies.
[0004] However, as the usage rate and number of communication devices increase exponentially every day, this may have increased the complexity of existing networks. For such reasons, existing services may be related to insufficient service quality, security, and efficiency in current communication networks. In such scenarios, routers can operate as the main control points to remove the increasing complexity of the network, thereby bringing reliable service quality and security. This also smooths the monitoring and improvement of efficiency and other attributes that enable the network to add value. Therefore, by controlling the router, the corresponding network can be greatly controlled.
[0005] In general, routing can be defined as the mechanism for selecting a specific path across or between multiple networks in order to quickly transmit data within a network or between a first and second communication device that may be located far apart from each other. The routing process can be performed on a variety of networks, including circuit-switched networks, such as public switched telephone networks (PSTNs), and computer networks, such as the Internet. In the routing process, routing tables are frequently used to direct the forwarding of data packets. These routing tables can track paths to different network destinations and can be created using routing protocols learned from network traffic or provided by an administrator. In general, 5G service-based architectures may be designed so that all network functions (NFs) can be tightly interconnected, and NFs may have the ability to discover peer nodes and transmit network information between nodes. This technique can create spaghetti-like interconnections between several user devices connected through the network, such as laptops, smartphones, and tablets, which can disrupt the flow of data between user devices and cause traffic or congestion. Furthermore, this can also prevent the system from fully utilizing available resources; for example, several endpoints or nodes may be available for routing, but due to a lack of information, the nodes may remain unused.
[0006] Traditional systems and methods in a network consist of several nodes, each with its own distinct deployment scenario / architecture and functionality. Routing algorithms in traditional systems and methods cannot manage the distinct deployment scenarios / architectures and functionality of each node. Therefore, the establishment of communication channels between nodes may be affected, which can negatively impact the flow of data in the network. In addition, current systems and methods or routing techniques cannot handle requests for data transmission corresponding to down / unavailable nodes. In this case, this unavailability may not be known until routing is performed.
[0007] Therefore, it is necessary to provide a routing solution that can overcome the aforementioned limitations, provide effective routing management for evaluating endpoint availability before routing is performed, and be agnostic to the implementation architecture. [Overview of the project] [Problems that the invention aims to solve]
[0008] The purpose of this disclosure is to provide a 5G service-based architecture that optimizes signaling control.
[0009] The purpose of this disclosure is to enable service providers to gain better visibility into the core network.
[0010] The purpose of this disclosure is to provide a service communication proxy (SCP) that enables message forwarding and routing to destination network functions (NF) / NF services.
[0011] The purpose of this disclosure is to provide an SCF that enables communication security, load balancing, monitoring, and overload control.
[0012] The purpose of this disclosure is to configure endpoint details in a pairwise manner.
[0013] The purpose of this disclosure is to route the total incoming requests between endpoint pairs using a round-robin technique.
[0014] The purpose of this disclosure is to provide multiple two-endpoint and in-correct-sequence data required for the NF profile used for registration.
[0015] The purpose of this disclosure is to enable the effective management of incoming call requests.
[0016] The purpose of this disclosure is to eliminate unnecessary rerouting, and it is also possible to streamline efficient routing steps. [Means for solving the problem]
[0017] This section is provided to introduce some of the objects and aspects of the invention in a simplified form, which will be further described below in the detailed description. This summary is not intended to identify the main features or scope of the claimed subject matter.
[0018] In one embodiment, the disclosure provides a system for performing ingress / egress active-standby-spare routing in a network. This system may include a service communications proxy (SCP) controller communicating with multiple endpoints, which are part of a first public land mobile network (PLMN) cluster. Number n The endpoint is the second PLMN cluster Number n+2The endpoints may be grouped in either the first or second PLMN cluster, where n is any natural number, to form a pair with the endpoints of the first and second PLMN clusters. The SCP controller may further include one or more processors coupled to memory storing instructions executable by one or more processors, and the SCP controller receives a plurality of requests that will be sent from one or more source node devices communicating with the SCP controller to the first and second PLMN clusters, and these requests are grouped into a plurality of pairs associated with the first and second PLMN clusters, respectively. Number n endpoints and Number n+2 Determine the status of the endpoint and for each of the aforementioned pairs Number n endpoints and Number n+2 When the status of the endpoint is determined to be active, multiple requests are sent through the first PLMN cluster for transmission to each of the aforementioned pairs associated with the first PLMN cluster and the second PLMN cluster. Number n endpoints and Number n+2 Multiple requests are configured to be routed equally to the endpoint. Based on the round-robin technique, the paired requests are associated with the first PLMN cluster and the second PLMN cluster, respectively. Number n endpoints and Number n+2 It can be routed equally to the endpoint.
[0019] In one embodiment, routing may be used in either an egress proxy or an ingress proxy, or a combination thereof.
[0020] In one embodiment, the SCP controller may be configured to route multiple requests to only one endpoint within a pair at a time.
[0021] In one embodiment, prior to routing, the SCP controller may be configured to identify at least one available endpoint of a pair of endpoints for a first PLMN cluster and a second PLMN cluster. The first PLMN cluster may include an active endpoint to which multiple requests are routed if an active endpoint is available, and the second PLMN cluster may include an alternative endpoint for routing multiple requests if the corresponding active endpoint is unavailable or non-functional.
[0022] In one embodiment, routing may be performed based on a predefined policy of the SCP controller based on the identification of the pair of endpoints.
[0023] In one embodiment, when all of the plurality of endpoints are active, the SCP controller routes 50% of the plurality of requests to a first pair comprising an endpoint of the first PLMN cluster and an endpoint of the second PLMN cluster, and the remaining 50% of the plurality of requests may be routed to a second pair comprising an endpoint of the first PLMN cluster and an endpoint of the second PLMN cluster. Number n of the first PLMN cluster and an endpoint of the second PLMN cluster Number n+2 In one embodiment, when the endpoint of the first pair is inactive and the remaining endpoints are active, the SCP controller routes 50% of the plurality of requests to an endpoint of the second PLMN cluster, and the remaining 50% of the plurality of requests may be routed to an endpoint of the first PLMN cluster. Number 2n of the first PLMN cluster and an endpoint of the second PLMN cluster Number 2n+2 In one embodiment, when the endpoint of the second pair is inactive and the remaining endpoints are active, the SCP controller routes 50% of the plurality of requests to an endpoint of the second PLMN cluster, and the remaining 50% of the plurality of requests may be routed to an endpoint of the first PLMN cluster.
[0024] In one embodiment, when the endpoint of the first pair is inactive and the remaining endpoints are active, the SCP controller routes 50% of the plurality of requests to an endpoint of the second PLMN cluster, and the remaining 50% of the plurality of requests may be routed to an endpoint of the first PLMN cluster. Number n In one embodiment, when the endpoint of the first pair is inactive and the remaining endpoints are active, the SCP controller routes 50% of the plurality of requests to an endpoint of the second PLMN cluster, and the remaining 50% of the plurality of requests may be routed to an endpoint of the first PLMN cluster. Number n+2 In one embodiment, when the endpoint of the first pair is inactive and the remaining endpoints are active, the SCP controller routes 50% of the plurality of requests to an endpoint of the second PLMN cluster, and the remaining 50% of the plurality of requests may be routed to an endpoint of the first PLMN cluster. Number 2n In one embodiment, when the endpoint of the first pair is inactive and the remaining endpoints are active, the SCP controller routes 50% of the plurality of requests to an endpoint of the second PLMN cluster, and the remaining 50% of the plurality of requests may be routed to an endpoint of the first PLMN cluster.
[0025] In one embodiment, when the endpoint of the second pair is inactive and the remaining endpoints are active, the SCP controller routes 50% of the plurality of requests to an endpoint of the second PLMN cluster, and the remaining 50% of the plurality of requests may be routed to an endpoint of the first PLMN cluster. Number 2nWhen one endpoint is inactive and the remaining endpoints are active, the SCP controller will route 50% of the multiple requests to the first PLMN cluster. Number n The requests are routed to the endpoint, and the remaining 50% of the multiple requests are routed to the second PLMN cluster. Number 2n+2 It can be configured to route to the endpoint.
[0026] In one embodiment, the second PLMN cluster Number n+2 endpoints and Number 2n+2 When one or both of the endpoints are inactive and the remaining endpoints are active, the SCP controller will send multiple requests to the first PLMN cluster. Number n Endpoints and the first PLMN cluster Number 2n It can be configured to route equally to the endpoint.
[0027] In one embodiment, the first PLMN cluster Number n endpoints and Number 2n When one or both of the endpoints are inactive and the remaining endpoints are active, the SCP controller will send multiple requests to the first PLMN cluster. Number n+2 The endpoint and the second PLMN cluster Number 2n+2 It can be configured to route equally to the endpoint.
[0028] In one embodiment, the first pair Number n endpoints and Number n+2 When both endpoints are inactive, the SCP controller will route 100% of the requests to the first PLMN cluster. Number 2n It can be configured to route to the endpoint.
[0029] In one embodiment, the second pair Number 2n endpoints and Number 2n+2When both endpoints are inactive, the SCP controller will route 100% of the requests to the first PLMN cluster. Number n It can be configured to route to the endpoint.
[0030] In one embodiment, when only one endpoint is active and the remaining endpoints are inactive, the SCP controller may be configured to route multiple requests that are routed only to the active endpoint.
[0031] In one embodiment, the number of endpoints in the first PLMN cluster may be equal to the number of endpoints in the second PLMN cluster.
[0032] In one embodiment, the second PLMN cluster may be a disaster recovery (DR) cluster for the first PLMN cluster.
[0033] In one embodiment, in the case of O-based indexing, endpoints in even-numbered indexes belong to the first PLMN cluster, while odd-numbered indexes belong to the DR cluster.
[0034] In one embodiment, the disclosure provides a method for performing ingress / egress active standby spare routing in a network. This method may include the step of a Service Communications Proxy (SCP) controller receiving a plurality of requests to be sent from one or more source node devices communicating with the SCP controller to a first PLMN cluster and a second PLMN cluster. The SCP controller Number n The endpoint is the second PLMN cluster Number n+2It may communicate with multiple endpoints that can be grouped in either the first or second PLMN cluster so as to form a pair with an endpoint, where n is any natural number. The SCP controller may further include one or more processors coupled to memory storing instructions that can be executed by one or more processors. This method is arranged by the SCP controller into multiple pairs associated with the first and second PLMN clusters, respectively. Number n endpoints and Number n+2 The steps to determine the status of the endpoint and each pair by the SCP controller Number n endpoints and Number n+2 When the status of the endpoint is determined to be active, multiple requests are sent through the first PLMN cluster for transmission, to each pair associated with the first PLMN cluster and the second PLMN cluster, respectively. Number n endpoints and Number n+2 Rout to the endpoint of the same name. Step This may further include: Multiple requests are paired based on the round-robin technique, with each pair associated with the first PLMN cluster and the second PLMN cluster, respectively. Number n endpoints and Number n+2 It can be routed equally to the endpoint.
[0035] In one embodiment, the Disclosure provides a user device (UE) that is communicatively coupled to a service communications proxy (SCP) controller, the SCP controller coupling comprising the steps of receiving a connection request from the UE, sending an acknowledgment of the connection request to the SCP controller, and transmitting a set of signals in response to the connection request, the SCP controller may be communicating with at least two public land mobile network (PLMN) classes.
[0036] In one aspect, the disclosure relates to a non-transient computer-readable medium including computer-executable instructions that cause a processor to receive a plurality of requests that will be sent from one or more source node devices communicating with the processor to a first PLMN cluster and a second PLMN cluster. The processor may communicate with a plurality of endpoints. The plurality of endpoints are of the first PLMN cluster. Number n The endpoint corresponds to the second PLMN cluster. Number n+2 The endpoints may be grouped in either the first or second PLMN cluster, where n is a natural number. The processors are then grouped into multiple pairs, each associated with the first and second PLMN clusters, respectively. Number n endpoints and Number n+2 The status of the endpoint can be determined. Furthermore, the processor can determine the status of each of the aforementioned pairs Number n endpoints and Number n+2 When the status of the endpoint is determined to be active, multiple requests are associated with the first PLMN cluster and the second PLMN cluster, for each of the aforementioned pairs. Number n endpoints and Number n+2 Multiple requests can be equally routed through the first PLMN cluster to the endpoint. Based on the round-robin technique, the pairs are associated with the first PLMN cluster and the second PLMN cluster, respectively. Number n endpoints and Number n+2 It can be routed equally to the endpoint.
[0037] The accompanying drawings, incorporated herein and forming part of the present invention, illustrate exemplary embodiments of the methods and systems disclosed, where similar reference numerals refer to the same parts through different drawings. Components in the drawings are not necessarily to a constant scale, but rather the emphasis is on illustrating the principles of the invention. Some drawings may use block diagrams to show components, and the internal circuitry of each component may not be shown. Those skilled in the art will understand that the inventions in such drawings include inventions of electrical components, electronic components, or circuits commonly used to implement such components. [Brief explanation of the drawing]
[0038] [Figure 1A] This figure shows a network architecture in which the proposed system may be implemented, in or using, according to one embodiment of the present disclosure. [Figure 1B] This figure shows a network architecture in which the proposed system may be implemented, in or using, according to one embodiment of the present disclosure. [Figure 1C] This is an exemplary method flowchart according to one embodiment of the present disclosure. [Figure 2] This is an illustrative diagram of an SCP implementation according to one embodiment of the present disclosure, with reference to Figure 1B. [Figure 3A] This is an illustrative flowchart illustrating indirect communication through the proposed system with delegated discovery, according to embodiments of the present disclosure. [Figure 3B] This is an illustrative flowchart illustrating indirect communication through the proposed system without delegated discovery, according to embodiments of the present disclosure. [Figure 4A] This is an illustrative diagram of the system architecture of a service communication proxy (SCP) according to one embodiment of the present disclosure. [Figure 4B] This is an illustrative diagram of the system architecture of a service communication proxy (SCP) according to one embodiment of the present disclosure. [Figure 5]This figure shows an exemplary overview of SCP deployment based on 5G functionality and SCP deployed within an independent deployment unit, according to one embodiment of the present disclosure. [Figure 6] This is an illustrative diagram showing an active-standby technique deployment architecture according to one embodiment of the present disclosure. [Figure 7A] This is an illustrative diagram illustrating the functionality of an active-standby policy implementation based on different statuses of endpoints in active cluster 702 and DR cluster 704, according to one embodiment of the present disclosure. [Figure 7B] This is an illustrative diagram illustrating the functionality of an active-standby policy implementation based on different statuses of endpoints in active cluster 702 and DR cluster 704, according to one embodiment of the present disclosure. [Figure 7C] This is an illustrative diagram illustrating the functionality of an active-standby policy implementation based on different statuses of endpoints in active cluster 702 and DR cluster 704, according to one embodiment of the present disclosure. [Figure 8A] This is an illustrative diagram showing tabular data or information relating to active-standby routing according to one embodiment of the present disclosure. [Figure 8B] This is an illustrative diagram showing tabular data or information relating to active-standby routing according to one embodiment of the present disclosure. [Figure 9] This is an illustrative diagram showing an integrated implementation, including various routing policies, according to one embodiment of the present disclosure. [Figure 10] This is an illustrative diagram of a flowchart illustrating how to facilitate routing communication requests using SCP based on an active-standby policy, according to one embodiment of the present disclosure. [Figure 11] This figure shows an exemplary computer system in which embodiments of the present invention may be utilized in accordance with embodiments of the present disclosure, either within or using therein. [Modes for carrying out the invention]
[0039] The foregoing will become even clearer from the following more detailed description of the present invention.
[0040] The following description includes various specific details for illustrative purposes and to provide a complete understanding of the embodiments of this disclosure. However, it will be apparent that embodiments of this disclosure can be practiced without these specific details. Some of the features described below may be used independently of each other or in any combination of other features. Individual features may not address all of the issues discussed above, or may address only some of the issues discussed above. Some of the issues discussed above may not be fully addressed by any of the features described herein.
[0041] The following description provides only exemplary embodiments and is not intended to limit the scope, applicability, or configuration of the disclosure. Rather, the following description of exemplary embodiments provides a description that enables the implementation of exemplary embodiments for those skilled in the art. It should be understood that various modifications may be made to the function and configuration of the elements without departing from the spirit and scope of the invention as described.
[0042] To give a complete understanding of the embodiments, certain details are given in the following description. However, those skilled in the art will understand that embodiments can be practiced without these specific details. For example, circuits, systems, networks, processes, and other components may be shown as components in block diagram form to avoid obscuring the embodiments with unnecessary details. In other cases, well-known circuits, processes, algorithms, structures, and techniques may be shown without unnecessary details to avoid obscuring the embodiments.
[0043] Furthermore, it should be noted that individual embodiments may be described as processes shown as flowcharts, flow diagrams, data flow diagrams, structural diagrams, or block diagrams. While flowcharts may describe operation as a sequential process, many operations may be performed in parallel or simultaneously. In addition, the order of operations may be rearranged. A process terminates when its operation is complete, but it may have additional steps not shown in the diagram. A process may correspond to a method, function, procedure, subroutine, subprogram, etc. When a process corresponds to a function, its termination may correspond to the function's return to the calling function or main function.
[0044] The terms “exemplary” and / or “demonstrative” are used herein to mean that they serve as examples, cases, or illustrations. To avoid misunderstanding, the subject matter disclosed herein is not limited by such examples. In addition, no aspect or design described herein as “exemplary” and / or “demonstrative” should necessarily be construed as being preferable or advantageous to any other aspect or design, nor should it be construed as excluding equivalent exemplary structures and techniques known to those skilled in the art. Furthermore, to the extent that the terms “includes,” “has,” “contains,” and other similar terms are used in the detailed description or claims, such terms are intended to be comprehensive in a similar manner to the term “comprising” as open-ended terms, without excluding any additions or other elements.
[0045] Throughout this specification, any reference to “one embodiment,” “a certain embodiment,” “a certain example,” or “a certain case” means that a particular feature, structure, or characteristic described in relation to an embodiment is included in at least one embodiment of the present invention. Therefore, occurrences of the phrase “in one embodiment” or “in a certain embodiment” in various places throughout this specification do not necessarily all refer to the same embodiment. Furthermore, a particular feature, structure, or characteristic may be combined in any preferred manner into one or more embodiments.
[0046] The terms used herein are for the sole purpose of describing specific embodiments and are not intended to limit the invention. The singular forms “a,” “an,” and “the” used herein are intended to include the plural form as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and / or “comprising,” when used herein, indicate the presence of the described features, integers, steps, actions, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, actions, elements, components, and / or groups thereof. The terms “and / or” used herein include any and all components of one or more of the related described items.
[0047] This disclosure provides a system and method that can overcome the limitations described above and facilitate effective and improved management of traffic routing for incoming requests. In one exemplary embodiment, the system may include a service communications proxy (SCP) implementation that can facilitate the evaluation, identification, and / or configuration of endpoint pairs prior to routing. For example, this may be done based on a predefined SCP policy, such as an active-standby policy or other relevant integration policy. In one exemplary embodiment, prior to routing, the system and method may enable the identification / configuration of cluster-based endpoint pairs, for example, for an active cluster and a disaster recovery (DR) cluster. An active cluster may include an active endpoint to which requests can be preferably routed if an endpoint is available. A DR cluster may include a DR endpoint, which may be considered an alternative endpoint for routing requests if the corresponding active endpoint is unavailable or non-functional.
[0048] Identifying / configuring endpoint pairs can enable understanding of the active endpoint and the corresponding DR endpoint that may be available for routing prior to routing, which can enable effective routing management of incoming requests. In one exemplary embodiment, according to an active-standby policy, each endpoint in the active cluster may be paired with a corresponding endpoint in the DR cluster to form an endpoint pair. In one exemplary embodiment, the SCP may include an SCP controller to enable identification / configuration / mapping of endpoints in the disaster recovery (DR) cluster to a corresponding set of active clusters. In one exemplary embodiment, a request may be routed to the identified / configured pair if at least one endpoint in the pair is functional. For example, the SCP may be able to assess when an endpoint in the active cluster, e.g., the first endpoint, is unavailable prior to routing a request, and identify or configure the corresponding endpoint in the DR cluster. In another example, the SCP can assess when an endpoint in an active cluster, for example, the first endpoint, becomes unavailable, and can also assess whether the corresponding DR endpoint (the second endpoint) for the first endpoint is unavailable so that requests cannot be routed to either the first or second endpoint in the pair at all.
[0049] In one exemplary embodiment, an active-standby routing policy may be used on an ingress or egress node of an SCP. In one embodiment, the active-standby routing policy endpoint details may be configured pairwise so that, given a time, only one endpoint in a pair can receive a request. In one example, the total number of received requests may be round-robin across the pair of endpoints.
[0050] Furthermore, the system and method may be agnostic to the architecture, structure, functionality, and implementation of network functions of each node. Moreover, the system and method may facilitate SCP implementations that enable load balancing, routing, traffic monitoring, congestion management, service discovery, and other such functions in an effective manner. Various other relevant embodiments or benefits may be possible.
[0051] Figures 1A and 1B show a network architecture in which the proposed system may be implemented, in or using, according to one embodiment of the present disclosure. Generally, next-generation architectures, such as 5G service-based network architectures, may be designed so that multiple nodes can be closely interconnected and have corresponding network functions. In one embodiment, some of the network functions of the 5G network architecture may be: • Access and Mobility Management Function (AMF): The AMF can receive all connection and session-related information from the communication device (also known herein as user equipment or UE) and is responsible for processing connection and mobility management tasks. For example, the AMF can assist with management tasks such as NAS (Non-Access Layer) signaling termination, NAS encryption and integrity protection, and, but is not limited to, registration management, connection management, mobility management, access authentication and authorization, and security context management. • Session Management Function (SMF): The SMF can perform session management functions, such as session establishment, modification, and publication. In addition, the SMF can handle user equipment (UE) IP address allocation and management, DHCP functionality, termination of NAS signaling related to session management, DL data notification, and traffic steering configuration for user plane functions (UPF) for proper traffic routing. • User Plane Function (UPF): The UPF can connect actual data entering via the corresponding Wireless Area Network (RAN) to the Internet. In one exemplary embodiment, the UPF can perform packet routing and forwarding, packet inspection, and quality of service (QoS). Furthermore, the UPF can act as an external PDU session point for interconnection to the Data Network (DN), and can also act as an anchor point for intra-RAT mobility and inter-RAT mobility. • Policy Control Function (PCF): The PCF may provide an integrated policy framework, policy rules for CP functions, and access enrollment information for policy decisions in the UDR. • Authentication Server Function (AUSF): AUSF can function as an authentication server, verifying the authenticity of information flowing through it. • Unified Data Management (UDM): UDM can generate authentication and key matching (AKA) certificates, perform user identification processing, access permission processing, and subscription management. • Application Functionality (AF): AF can inspect the application impact on traffic routing, access the NEF, and interact with the policy framework regarding policy control. • Network Exposure Function (NEF): NEF can perform functions such as publishing capabilities and events, securely providing information from external applications to 3GPP® networks, and converting internal / external information. • NF Repository Function (NRF): The NRF can perform service discovery, maintain NF profiles, and inspect available NF instances. • Network Slice Selection Function (NSSF): NSSF can help select a network slice instance to serve the UE, determine the NSSAI that will be enabled, and decide which AMF will be used to serve the UE.
[0052] In one embodiment, the proposed system 100 may not only be able to solve the challenges posed by the 5G service-based architecture but also optimize signaling control. System 100 may enable service providers to gain better visibility into the core network, where the core network may be defined as the backbone of the network architecture. For example, in this disclosure, the core network may relate to the 5G service-based architecture and may be configured to interconnect separate networks associated with that architecture. Thus, the core network may provide a path for the exchange of information between one or more networks and between corresponding subnetworks. Furthermore, as a backbone, the core network may connect diverse networks, such as LANs, WANs, MANs, etc., which may be located within the same building, in different buildings, within a campus environment, or remotely over a wide area. The system can also enhance network performance by coordinating with other network functions in sequence. According to one embodiment, the 5G system architecture may leverage service-based interactions directly between NF service consumers and NF service producers, or indirectly via an SCP (Service Communication Proxy).
[0053] As shown in Figure 1A, the proposed system 100 may include a network device 112 implementation including an SCP (as shown in Figure 1B) that can be coupled to multiple nodes, including node 106-1, node 106-2, ... node 106-N (hereinafter collectively referred to as node 106 and individually referred to as node 106). The network device 102 may be referred to herein as controller 102, more specifically as SCP controller or simply controller 112.
[0054] In one example, the SCP controller 112 may be configured to facilitate the routing of requests between multiple nodes. In one embodiment, each node 106 may be configured to be coupled to a number of user devices 108-1, 108-2, 108-3, 108-4, ... 108-(N-1), 108-N (hereinafter collectively referred to as user devices 108, and individually as user devices, user equipment, or UE 108). In one embodiment, the system 100 may enable the routing of requests for secure communication between user devices associated with separate or the same node.
[0055] In one embodiment, the user device 108 may include a user device (UE) that is communicatively coupled to a controller 112. The coupling may include the steps of receiving a connection request from the controller 112, sending an acknowledgment of the connection request to the controller, and further transmitting a plurality of signals in response to the connection request.
[0056] In one exemplary embodiment, the SCP controller 112 may be implemented as an application server, may be communicatively operable, or may be communicatively coupled to a node 106 or user device 108 via a network 110 coupled to a server 104. In another exemplary embodiment, the user device 108 may be a wireless device. The wireless device may be a mobile device, which may include, for example, a cellular phone such as a feature phone or smartphone and other devices. The user device 108 may include any type of device capable of providing wireless communication, such as a cellular phone, tablet computer, personal digital assistant (PDA), personal computer (PC), laptop computer, media center, workstation, and other such devices, but is not limited to the devices described above.
[0057] In one embodiment, network 110 may include or relate to a core network (e.g., 5G core network 114 in Figure 1B) comprising multiple nodes (or endpoints or proxies). As shown in Figure 1B, or in an exemplary embodiment, the core network 114 may be associated with various elements / components / functions, such as a service communication proxy (SCP) 112, network functions (NFs), and proxies corresponding to the NFs. In an exemplary embodiment, system 100 may enable the smooth provision of services to user devices 108 by effectively routing communication requests (also called requests). For example, SCP 112 may relate to the core network 114 and manage / enable various other aspects associated with routing and receiving requests. For example, for a request originating from a user, for example from a consumer node (origin node), SCP 112 may enable routing the request to the core network 114 through an ingress node or ingress proxy of SCP 112, where the ingress node may be the entry point for communication requests within SCP 112. Furthermore, SCP112 may enable routing requests to their respective destination nodes through SCP112's egress nodes or egress proxies. Thus, egress nodes can be exit points for communication requests within SCP112. In some embodiments, other aspects managed by SCP112 may include, but are not limited to, configuring endpoints in active and disaster recovery (DR) clusters, identifying at least one endpoint for routing requests, identifying at least active endpoints and / or corresponding endpoints (standby alternate endpoints or disaster recovery (DR) endpoints) in the DR cluster, evaluating predefined criteria prior to routing requests, and other such tasks that may enable effective management of routing of incoming requests.
[0058] In one exemplary embodiment, the network may relate to at least one of wireless networks, wired networks, or a combination thereof. The network may be implemented as one of several different types of networks, such as an intranet, a local area network (LAN), a wide area network (WAN), or the internet. Furthermore, the network may be either a dedicated network or a shared network. A shared network may represent an association of several different types of networks that may use various protocols, such as Hypertext Transfer Protocol (HTTP), Transmit Control Protocol / Internet Protocol (TCP / IP), Wireless Application Protocol (WAP), Automatic Retransmission Request (ARQ), etc. In one embodiment, the network may relate to a 5G network that can be facilitated through, for example, a Global System for Mobile Communications (GSM) network, Universal Terrestrial Radio Network (UTRAN), GSM Evolutionary High-Speed Data Rate (EDGE) Radio Access Network (GERAN), Advanced Universal Terrestrial Radio Access Network (E-UTRAN), Wi-Fi or other LAN access networks, or terrestrial wide area access networks such as satellite or Wireless Microwave Access (WiMAX) networks. Various other types of communication networks or communication services may be possible.
[0059] In one example, network 110 may utilize different types of air interfaces, such as code division multiple access (CDMA), time division multiple access (TDMA), or frequency division multiple access (FDMA) air interfaces and other implementations. In one exemplary embodiment, a wireline user device may use a wired access network exclusively or in combination with a wireless access network, including other network technologies configured to forward, for example, simple telephone services (POTS), public switched telephone networks (PSTN), asynchronous transfer mode (ATM), and Internet Protocol (IP) packets.
[0060] In one embodiment, as shown in Figure 1B, the proposed system 100 can facilitate communication of SCP112 with various separate network components and corresponding network functions, where SCP112 can be communicatively coupled to other devices through the core network 114. In one embodiment, the core network 114 can facilitate a communicative coupling of SCP112 with a 5G-EIR 116, where the 5G-EIR can be defined as an independent network component that can help telecommunications operators protect their networks. The 5G-EIR 116 can help protect the network by providing mechanisms to restrict malicious user terminals on the network.
[0061] In other embodiments, the core network 114 may facilitate a communicative coupling of SCP 112 with a network component that supports a network slice selection function 118 (NSSF). The NSSF 118 may, for example, enable the selection of a network slice instance to serve a user device 108, determine the NSSAI to be enabled, and determine the AMF set to be used to serve the user device 108. In another embodiment, SCP 112 may be coupled with a network component that supports an authentication server function 120 (AUSF), where the AUSF may function as an authentication server to verify the authenticity of information flowing through it.
[0062] In yet another embodiment, SCP112 may be coupled to network components supporting Integrated Data Management 122 (UDM122) and Integrated Data Repository 124 (UDR124), where UDM122 can facilitate centralized technology for controlling network user data. For example, UDM122 may generate authentication and key matching (AKA) certificates, perform user identification processing, access authorizations, and perform subscription management. Furthermore, UDR124 may act as a centralized repository for subscriber information and facilitate services for several network functions. For example, 5G UDM (Integrated Data Management) can use the UDR to store and retrieve subscriber-related data. Alternatively, PCF (Policy Control Function) can use the UDR to store and retrieve policy-related data. Furthermore, NEF (Network Exposure Function) can also use the UDR to store subscriber-related data that is permitted to be exposed to third-party applications.
[0063] In one embodiment, SCP112 may be coupled to a network component that supports a network publishing function 126 (NEF126), where the NEF may perform functions such as publishing capabilities and events, securely providing information from external applications to the 3GPP network, and internal / external information conversion.
[0064] In yet another embodiment, SCP112 may be coupled to a network component supporting a 5G network data analytics function 128 (NWDAF128). NWDAF128 may be configured to streamline and control how core network data is generated and consumed, provide insights, and suggest actions to be taken to enhance the end-user experience. In one exemplary embodiment, NWDAF128 may be configured to overcome market segmentation and proprietary solutions in the area of network analytics. Furthermore, NWDAF128 may address at least one of the main standardization stages, including, but not limited to: • Data acquisition interface from network nodes • Predefined analytical insights • Data disclosure interface for consumers
[0065] In one embodiment, SCP112 may be coupled to a network component supporting session management function 130 (SMF), access and mobility management function 132 (AMF), policy control function 134 (PCF), and application function 136 (AF), where SMF130 may perform session management functions, such as session establishment, modification, and publication. Furthermore, SMF130 may handle user equipment (UE) IP address allocation and management, DHCP functionality, termination of NAS signaling related to session management, DL data notification, traffic steering configuration for user plane functions (UPF) for appropriate traffic routing, and the like.
[0066] Furthermore, the AMF132 can receive all connection and session-related information from communication devices (also referred to herein as user equipment) and can perform connection and mobility management tasks. In addition, the PCF134 can provide an integrated policy framework, policy rules for CP functions, and access enrollment information for policy decisions in the UDR. The AF136 can inspect application impacts on traffic routing, access the NEF, and interact with the policy framework regarding policy control. In one embodiment, the SCP112 can be coupled to network components that support a Short Message Service function 138 (SMSF138), an NF repository function 140 (NRF140), a security edge protected proxy 142 (SEPP142), and a user plane function 144 (UPF144). The SMSF138 can facilitate the forwarding of SMS via NAS in a 5G architecture. Furthermore, the SMSF138 can perform subscriber checks, and similarly, it can perform relay functions between the user device 108 and the SMSC (Short Message Service Center) through interaction with the AMF (Core Access and Mobility Management Function). In addition, the NRF140 can perform service discovery functions, be configured to maintain NF profiles, and can also inspect available NF instances. The BroadForward Security Edge Protection Proxy 142 (BroadForward SEPP142) can also facilitate secure communication between one or more 5G networks. The SEPP140 can also provide end-to-end confidentiality and / or integrity between the source and destination networks for all 5G interconnect roaming messages.
[0067] Furthermore, UPF144 may function to connect actual data entering via the corresponding Wireless Area Network (RAN) to the Internet. In one exemplary embodiment, UPF144 may perform packet routing and forwarding, packet inspection, and handle quality of service (QoS). In addition, UPF144 may act as an external PDU session point for interconnection to a data network (DN), and may also act as an anchor point for intra-RAT mobility and inter-RAT mobility. It should be noted that the functionality of SCP112 may be independent of the distance between network functions. Moreover, SCP112 may facilitate peer-to-peer communication between peer instances / nodes. Furthermore, the basic functionality of SCP112 may include, but is not limited to, efficiently managing such architectures while simultaneously including inter-terminal connectivity between different nodes having distinct deployment scenarios, architectures, and functionalities. The routing capability of the proposed system 100 or SCP112 may be agnostic to the architecture, structure, functionality, and implementation of network functions of each node.
[0068] In one embodiment, the SCP controller (112) may communicate with at least one node 106, which may be a Public Land Mobile Network (PLMN) cluster. Each PLMN cluster may have multiple endpoints associated with the network 110. For example, the endpoints may include multiple user devices (108). The SCP controller (112) may further include one or more processors coupled to a memory storing instructions executable by one or more processors. The controller (112) receives multiple requests from one or more source node devices 106 communicating with the SCP controller 112, which are to be sent to a first PLMN cluster and a second PLMN cluster, and then paired up, respectively, with the first PLMN cluster and the second PLMN cluster. Number n endpoints and Number n+2It can be configured to determine the status of the endpoints. For example, if n=1, the pairing will consist of endpoint 1 of the first PLMN cluster and endpoint 3 of the second PLMN cluster. If n=2, the pairing will consist of endpoint 2 of the first PLMN cluster and endpoint 4 of the second PLMN cluster. If n=3, the pairing will consist of endpoint 3 of the first PLMN cluster and endpoint 5 of the second PLMN cluster.
[0069] In one embodiment, the SCP controller 112 is associated with the first PLMN cluster and the second PLMN cluster, each of the paired Number n endpoints and Number n+2 When the status of the endpoint is determined to be active, multiple requests are sent through the first PLMN cluster to each of the aforementioned pairs. Number n endpoints and Number n+2 It can be further configured to route equally to the endpoints. Multiple requests are paired based on a round-robin technique, associated with the first PLMN cluster and the second PLMN cluster, respectively. Number n endpoints and Number n+2 It can be routed equally to the endpoint. Furthermore, routing can be used in either an egress proxy or an ingress proxy, or a combination thereof.
[0070] In one embodiment, the SCP controller may be configured to route multiple requests to only one endpoint within a pair at a time.
[0071] In one embodiment, when all multiple endpoints are active, the controller directs 50% of the multiple requests to the first PLMN cluster. Number n The endpoint and the second PLMN cluster Number n+2Route to the first pair with endpoints, and the remaining 50% of multiple requests to the first PLMN cluster Number 2n The endpoint and the second PLMN cluster Number 2n+2 It can be configured to route to a second pair having endpoints. For example, 50% of multiple requests may be routed to a first pair having endpoint 1 on the first PLMN cluster and endpoint 3 on the second PLMN cluster, and the remaining 50% of multiple requests may be routed to a second pair having endpoint 2 on the first PLMN cluster and endpoint 4 on the second PLMN cluster.
[0072] In one embodiment, the first pair Number n When one endpoint is inactive and the remaining endpoints are active, the controller will route 50% of the requests to the second PLMN cluster. Number n+2 The requests are routed to the endpoint, and the remaining 50% of the multiple requests are routed to the first PLMN cluster. Number 2n It can be configured to route requests to endpoints. For example, when endpoint 1 of the first pair is inactive and the remaining endpoints are active, the controller may route 50% of requests to endpoint 3 of the second PLMN cluster and the remaining 50% of requests to endpoint 2 of the first PLMN cluster.
[0073] In one embodiment, the second pair Number 2n When one endpoint is inactive and the remaining endpoints are active, the controller will route 50% of the requests to the first PLMN cluster. Number n The requests are routed to the endpoint, and the remaining 50% of the multiple requests are routed to the second PLMN cluster. Number 2n+2It can be configured to route requests to endpoints. For example, when endpoint 2 of the second pair is inactive and the remaining endpoints are active, the controller can be configured to route 50% of the requests to endpoint 1 of the first PLMN cluster and the remaining 50% of the requests to endpoint 4 of the second PLMN cluster.
[0074] In one embodiment, the second PLMN cluster Number n+2 endpoints and Number 2n+2 When one or both of the endpoints are inactive and the remaining endpoints are active, the controller will forward multiple requests to the first PLMN cluster. Number n Endpoints and the first PLMN cluster Number 2n It can be configured to route equally to endpoints. For example, when either or both endpoints 3 and 4 of the second PLMN cluster are inactive and the remaining endpoints are active, the controller can be configured to route multiple requests equally to endpoint 1 and endpoint 2 of the first PLMN cluster.
[0075] In one embodiment, the first PLMN cluster Number n endpoints and Number 2n When one or both of the endpoints are inactive and the remaining endpoints are active, the controller will forward multiple requests to the first PLMN cluster. Number n+2 The endpoint and the second PLMN cluster Number 2n+2 It is configured to route requests equally to endpoints. For example, when either or both endpoints 1 and 2 of the first PLMN cluster are inactive and the remaining endpoints are active, the controller may be configured to route multiple requests equally to endpoint 3 of the first PLMN cluster and endpoint 4 of the second PLMN cluster.
[0076] In one embodiment, the first pair Number n endpoints and Number n+2 When both endpoints are inactive, the controller directs 100% of the requests to the first PLMN cluster. Number 2n It can be configured to route to an endpoint. For example, when both endpoint 1 and endpoint 3 of the first pair are inactive, the controller can be configured to route 100% of multiple requests to endpoint 2 of the first PLMN cluster.
[0077] In one embodiment, the second pair Number 2n endpoints and Number 2n+2 When both endpoints are inactive, the controller directs 100% of the requests to the first PLMN cluster. Number n It is configured to route to the endpoint. For example, when both endpoints 2 and 4 of the second pair are inactive, the controller may be configured to route 100% of the requests to endpoint 1 of the first PLMN cluster.
[0078] In one embodiment, when only one endpoint is active and the remaining endpoints are inactive, the controller may be configured to route multiple requests that are routed only to the active endpoint. Furthermore, the number of endpoints in the first PLMN cluster should be equal to the number of endpoints in the second PLMN cluster.
[0079] In one embodiment, the second PLMN cluster may be a disaster recovery (DR) cluster for a first PLMN cluster which may be an active cluster, and the routing of multiple requests may be sent directly to an endpoint in the DR cluster if the corresponding active endpoint in the first PLMN cluster is unavailable.
[0080] In one embodiment, for O-based indexing, endpoints in even-numbered indexes should belong to the first PLMN cluster, while odd-numbered indexes should belong to the DR cluster.
[0081] Figure 1C shows an exemplary method flow diagram according to one embodiment of the present disclosure. Method (190) may include the step in 192 of the SCP controller 112 receiving a plurality of requests that will be sent from one or more source node devices communicating with the SCP controller 112 to a first PLMN cluster and a second PLMN cluster. The SCP controller (112) Number n The endpoint is the second PLMN cluster Number n+2 It communicates with multiple endpoints that can be grouped in either the first or second PLMN cluster so as to form a pair with an endpoint, where n is a natural number.
[0082] Method (190) also, in 194, was performed by the SCP controller (112) to form multiple pairs associated with the first PLMN cluster and the second PLMN cluster, respectively. Number n endpoints and Number n+2 The status of the endpoint is determined by the SCP controller (112). Pu It may include.
[0083] Furthermore, the method was performed in 196 by the SCP controller (112) on each pair Number n endpoints and Number n+2 When the status of the endpoint is determined to be active, multiple requests are sent through the first PLMN cluster for transmission, to each pair associated with the first PLMN cluster and the second PLMN cluster, respectively. Number n endpoints and Number n+2This may include a step of routing to the endpoints equally. Multiple requests are paired based on a round-robin technique, with each pair associated with the first PLMN cluster and the second PLMN cluster, respectively. Number n endpoints and Number n+2 It can be routed equally to the endpoint.
[0084] Figure 2, with reference to Figure 1B, shows an exemplary diagram of an SCP implementation according to one embodiment of the present disclosure. Figure 2 primarily illustrates this implementation for intelligent load balancing, routing, monitoring, and congestion control at Layer 7, i.e., the application layer of the Open Systems Intercommunication (OSI) model, which allows for complete decoupling of the service layer from the infrastructure layer. SCP can not only solve challenges related to 5G service-based architectures but can also optimize signaling control and thus provide better visibility into the core network. SCP can also enhance network performance by coordinating sequentially with other network functions.
[0085] In one embodiment, system 100 may perform interconnected functions in block 202, facilitate communication between peer nodes in block 204, and create a mesh based on discoveries / information delivered by the peer nodes. Furthermore, system 100 may facilitate scale-up and scale-down functions in block 206, providing increased flexibility. In addition, system 100 may enable the maximum potential of a service-based architecture in block 208. Moreover, in block 210, system 100 may address the need for a module with some central function, thereby facilitating secure communication between node 106 and SCP112 (Figure 1B). For example, SCP112 may be configured to control the flow of data / information between nodes by facilitating load balancing, routing, traffic monitoring, congestion control, and service discovery within a Layer 7 service mesh. In one exemplary embodiment, system 100 may determine network function (NF) instances, and correspondingly, SCP112 may manage function specification service proxy instances. In another exemplary embodiment, the NRF140 may provide registration, re-registration, and NF discovery functions.
[0086] In another exemplary embodiment, system 100 may include NFs that can communicate with NRF140 through an SCP controller. For example, PCF proxies running on "x" NF services and "y" instances may communicate with NRF140 through an SCP controller on SCP112, and NRF140 may act as a central repository and contain information about all NFs. In another exemplary embodiment, the SCP controller may be trained to configure SCP proxies based on real-time circumstances. Therefore, no prior configuration of SCP proxies may be required within system 100.
[0087] Figure 3A shows an exemplary flowchart illustrating indirect communication through the proposed system with delegated discovery, according to an embodiment of the present disclosure. Figure 3B shows an exemplary flowchart illustrating indirect communication through the proposed system without delegated discovery, according to an embodiment of the present disclosure. Referring to Figures 3A and 3B, system 100 implements SCP112 (in Figure 1B) to support both scenarios of indirect communication for discovering peer network functionality, namely indirect communication with / without delegated discovery. · Indirect communication without delegated discovery: As shown in 302 of Figure 3A, in this case, the consumer node or consumer NF320 (the consumer NF relating to the UE sending the request) can directly query NRF140 to obtain information about the NF profile of the provider node or provider NF340 (the destination node to which the request should be sent). Based on the discovery results, in 304, NRF140 may send the NF profile to consumer node 320. In one exemplary embodiment, based on the discovery results, consumer NF320 may select an NF instance from the set of NF service instances. In 306, consumer NF320 may send a request to SCP112 that includes the address of the selected service producer pointing to an NF service instance or set of NF service instances. In one exemplary embodiment, SCP112 may interact with NRF140 to obtain selection parameters, such as location, capabilities, and other such information, depending on the case. In 312, SCP112 may route the request to the selected NF service provider instance or provider node 340. At 314, provider NF340 may generate a service response, which may be further transmitted at 316 to consumer NF320 via SCP112. Similarly, a subsequent request may be transmitted at 310, and the subsequent request may be further processed in the same manner. • Indirect communication with delegated discovery: This communication mode can function even when the user does not perform any discovery or selection. As shown in Figure 3B, in this case the consumer node or consumer NF320 (the consumer NF relating to the UE sending the request) does not need to query NRF140 to directly obtain information about the NF profile of the provider node or provider NF340 (the destination node to which the request should be sent) as shown in Figure 3A. In one exemplary embodiment, also as shown in Figure 3B, at 322, the consumer node 320 may add any necessary discovery and selection parameters required to find a suitable provider node 340 for the service request. In one exemplary embodiment, the SCP may perform discovery using NRF140 and obtain the discovery results. The SCP112 may route the request to a suitable producer instance / provider node 340 using the request address and discovery selection parameters in the request message, as shown in step 328. Provider NF340 may then generate a service response at 330, which may be further sent to consumer NF320 through SCP112 at 324. Similarly, a subsequent request may be sent at 326, and the subsequent request may be processed further in the same manner.
[0088] In one exemplary embodiment, the proposed SCP112 may also be used for indirect communication between NFs and between NF services within any or a combination of public land mobile networks (PLMNs), such as a visiting public land mobile network (VPLMN) and a home public land mobile network (also known as an HPLMN).
[0089] According to one embodiment, in addition to acting as a proxy or routing agent between various network functions, SCP112 may also be configured to perform the following functionalities: • Communication Security: The SCP platform can be configured to allow only authorized consumer NFs to communicate with provider NFs. • Load Balancing: Provider NF can implement various load balancing techniques, such as round-robin and weighted scheduling. In round-robin load balancing, client requests can be routed to available services on a cyclical basis. Round-robin server load balancing works best when servers have nearly identical computing and storage capabilities. • Security Support: SCP also supports security mechanisms between consumers and network service providers. • Traffic Monitoring: SCP can monitor the performance of provider NF in terms of the number of service requests being processed. • Traffic prioritization: The SCP platform may be configured to give priority to specific consumer NF requests over any other consumer NFs. • Discovery of NF: SCP provides an interface for identifying the most appropriate instance of other network functions (e.g., AUSF, PCF) for a particular UE's SUPI, SUCI, or GPSI. • Overload control: SCP has the ability to impose a cap on the number of allowed instances for a particular provider NF. This means that if the number of consumer applications reaches a threshold limit, SCP will not allow any new consumer NFs.
[0090] Figures 4A and 4B illustrate the system architecture of a Service Communications Proxy (SCP) according to one embodiment of the present disclosure. Referring to Figure 4A, the point of delivery (POD) may be abbreviated by a dashed line, and side by side is the system boundary of the Service Communications Proxy (SCP) 112. All other systems / components may be 3GPP-defined 5G network functions, including protocol interfaces with SCP 112.
[0091] In one embodiment, the architecture of a service communication proxy (SCP) may include at least one of the following functionalities: Indirect communication • Delegated discovery • Message forwarding and routing to destination NF / NF services • Communication security (e.g., granting NF service consumers access to NF service producer APIs), load balancing, monitoring, overload control, etc. • Interact with the UDR as needed to resolve UDM group IDs / UDR group IDs / AUSF group IDs / PCF group IDs / CHF group IDs / HSS group IDs based on UE identification information, such as SUPI or IMPI / IMPU.
[0092] In one embodiment, the proposed SCP112 may include an SCP proxy together with an SCP controller 404. In one embodiment, the SCP proxy may be either an ingress proxy or an egress proxy. • Ingress Proxy: This proxy instance ensures that incoming traffic to producer NFs is round-robin based on the configured policy defaults. • Egress Proxy: This proxy instance ensures accurate outgoing consumer traffic flow to the SCP ingress proxy and routing based on NF or SCP selection criteria. It should be understood that hybrid deployments are also possible if a single SCP instance can function as both an egress proxy and an ingress proxy.
[0093] In one embodiment, SCP112 may include multiple SCP proxies, as shown in Figure 4A, which can be linked to SCP controller 404 via an HTTP module, along with NRF, EMS Plus, SMP, API, and various network functions. Furthermore, SCP controller 404 may be configured to manage all SCP proxy instances and select the appropriate proxy instance as egress or ingress for a target NF during the NF registration and discovery flow. To do this, SCP controller 404 needs to be deployed in front of an NRF cluster serving multiple PLMNs or a single PLMN. In one exemplary embodiment, SCP controller 404 may be configured to act as disaster recovery (DR) endpoints for a corresponding set of active PLMN cluster endpoints.
[0094] In one embodiment, an exemplary architecture of SCP112 is shown, as also shown in Figure 4B. SCP112 can streamline request routing through a combination of hardware and software implementations. Figure 4B shows an exemplary diagram of SCP112 of Figure 1B according to one embodiment of the present disclosure. SCP112 may include one or more processors or controllers (for example, an SCP controller 404 as shown in Figure 4A). One or more processors or controllers 404 may be coupled to a memory 410. The memory 410 may store instructions that, when executed by one or more processors or controllers 404, cause SCP112 to perform the steps described herein.
[0095] In one embodiment, the processor or controller 404 may enable routing of requests from a consumer node (relating to a user device sending a request) to a destination mode (or provider node). For example, the processor or controller 404 of SCP112 may identify / configure at least one endpoint or node prior to routing a request. In this example, it may be possible to identify available endpoints within a cluster of endpoints, and the cluster may relate to, for example, an active cluster and a DR cluster. In one exemplary embodiment, a request may be routed to an identified / configured pair if at least one endpoint in the pair may be functional. An active cluster may include an active endpoint to which requests may be preferably routed if its endpoint may be available. A DR cluster may include a DR endpoint, which may be considered an alternative endpoint for routing requests if the corresponding active endpoint may be unavailable or non-functional. In one exemplary embodiment, according to an active-standby policy, endpoints in the active cluster and the DR cluster may be paired to form pairs of endpoints. Pairwise configuration / identification may be performed prior to routing, which may enable effective management of incoming requests. This also allows for pre-planning direct routing to a DR endpoint (in the DR cluster) if the corresponding active endpoint (in the active cluster) may become unavailable. In one alternative embodiment, multiple endpoints in the active cluster may be paired with a single DR endpoint.
[0096] In one exemplary embodiment, the identification / configuration of endpoint pairs may be performed based on a predefined policy of SCP112. For example, the predefined policy may relate to the active-standby implementation described herein. For example, the processor or controller 404 may evaluate when an endpoint in the active cluster, e.g., the first endpoint, is unavailable prior to routing a request, and configure the corresponding endpoint in the DR cluster. In another example, the processor or controller 404 may evaluate when an endpoint in the active cluster, e.g., the first endpoint, is unavailable, and also evaluate whether the corresponding DR endpoint (the second endpoint) is unavailable with respect to the first endpoint, so that the request cannot be routed to the first endpoint at all. This can avoid unnecessary rerouting and also streamline an effective routing step. In one exemplary embodiment, the identification / configuration of endpoint pairs may be performed based on a predefined criterion. For example, the predefined criterion may relate to a header routing criterion, e.g., which may allow the processor or controller 404 of SCP112 to determine (prior to routing) which endpoint is selected based on availability. Various other examples are provided in the following sections, but this disclosure is not limited to these examples. In some examples, the header routing criteria may include, but are not limited to, at least one of the following: a) 3GPP-SBI-Discovery b) 3gpp-sbi-target-apiroot c)3gpp-sbi-binding / 3gpp-sbi-routing-binding In one exemplary embodiment, if multiple predefined criteria or header routing criteria may be considered, the processor or controller 404 may be able to prioritize the predefined criteria in order to enable appropriate selection / identification / configuration of endpoints prior to routing the request.
[0097] SCP implementations may relate to ingress nodes and / or egress nodes. In the case of an ingress node implementation, the NF profile used for registration may include multiple pairs of endpoints and incorrect sequences. In one exemplary embodiment, O-based indexing may be used such that endpoints in even-numbered indices should belong to the active cluster, while odd-numbered indices should belong to the DR cluster.
[0098] The processor or controller 404 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, logic circuits, and / or any device that processes data based on operational instructions. Among its capabilities, the processor or controller 404 may be configured to fetch and execute computer-readable instructions stored in the memory 410 of SCP112. The memory 410 may be configured to store one or more computer-readable instructions or routines in a non-temporary computer-readable storage medium that can be fetched and executed to create and share data packets over network services. The memory 410 may comprise any non-temporary storage device, including, for example, volatile memory such as RAM, or non-volatile memory such as EPROM, flash memory, etc.
[0099] In one embodiment, SCP112 may include an interface 412. Interface 412 may provide interfaces for various devices, such as data input devices and data output devices, which may be called I / O devices, storage devices, etc. Interface 412 may facilitate communication of SCP112. Interface 412 may also provide a communication path for one or more components of SCP112. Examples of such components include, but are not limited to, a processing engine or module 404-1 and a database 424.
[0100] The processing engine or module 404-1 may be implemented as a combination of hardware and programming (e.g., programmable instructions) for implementing one or more functionalities of the processing engine or module 404-1. In the examples described herein, such a combination of hardware and programming may be implemented in several different ways. For example, the programming for the processing engine or module 404-1 may be processor-executable instructions stored on a non-temporary machine-readable storage medium, and the hardware for the processing engine or module 404-1 may comprise processing resources (e.g., one or more processors) for executing such instructions. In the present example, the machine-readable storage medium may store instructions that, when executed by the processing resources, implement the processing engine or module 404-1. In such an example, SCP112 may comprise a machine-readable storage medium that stores instructions and processes resources to execute the instructions, or the machine-readable storage medium may be separate but accessible to SCP112 and the processing resources. In other examples, the processing engine or module 404-1 may be implemented by electronic circuits.
[0101] In one embodiment, the processor or controller 404 may relate to an ingress controller that enables processing / controlling one or more aspects of incoming requests received at the ingress nodes (entry points) of SCP112. In another embodiment, the processor or controller 404 may relate to an egress controller that enables processing / controlling one or more aspects of requests routed at the egress nodes (exit points) of SCP112. In yet another embodiment, the processor or controller 404 may relate to an integrated controller that includes both an ingress controller and an egress controller, enabling processing / controlling one or more aspects of incoming requests received at the ingress nodes (entry points) of SCP112, and / or enabling processing / controlling one or more requests routed at the egress nodes (exit points) of SCP112.
[0102] The SCP112 processing engine or module 404-1 may include one or more components (shown in Figure 4B), including a receive module 416, a proxy information module 418, a routing module 420, and other modules or components 422. In one embodiment, the receive module 416 may enable receiving incoming requests from consumer nodes through the ingress controller, and the routing module 420 may enable routing requests to provider nodes through the egress controller. The proxy information module 418 may enable collecting or storing information about available proxies or endpoints for the active and / or DR cluster. The other modules or components 422 may include, but are not limited to, an ingress module (for ingress nodes), an egress module (for egress nodes), a load balancer, an edge router configuration module, a mapping module (for mapping endpoints for the active and / or DR cluster), a request processing module, an error message generation module, and other modules or engines. Various other functions of the components may be possible. In one embodiment, the database 210 may contain data that can be stored or generated as a result of functionality implemented by any of the components of the processing engine module 404-1 of SCP112.
[0103] Figure 5 shows an exemplary overview of an SCP deployment based on 5G functionality and an SCP deployed within a standalone deployment unit according to one embodiment of the present disclosure. Referring to Figure 5, an overview of an SCP deployment is shown, the SCP deployment may be based on 5G functionality, and the SCP may be deployed within a standalone deployment unit. Furthermore, system 100 may be designed so that system 100 can support the following: • One SCP proxy instance for a single NF type considered for one PLMN, • One SCP proxy instance for a multi-NF type considered for one PLMN. • One SCP proxy instance for multi-NF types that are considered for multiple PLMNs. • Multiple proxies in a single PLMN for multi-NF types, and • A single SCP controller for multiple NRF instances considered for multi-PLMN.
[0104] In one embodiment, system 100 may be configured to provide different types of routing techniques for SCP proxies, where the routing techniques may be implemented according to the requirements of different NF teams and their GR / DR processing. In one embodiment, an ingress active-standby routing technique may be used in an ingress proxy, while an egress active-standby routing technique may be used in an egress proxy. In these routing techniques, the GR cluster or DR cluster may be defined based on a PLMN list. In one example, the proposed active-standby routing technique may also be integrated with other policies, such as an active-active routing policy that can firstly ensure the availability of all endpoints in the active cluster.
[0105] Figure 6 shows an exemplary Figure 600 illustrating a deployment architecture of an active-standby technique according to one embodiment of the present disclosure. In one exemplary embodiment, prior to routing requests, as shown in Figure 6, SCP112 (in Figure 4A) may enable the identification / configuration of in-cluster endpoint pairs relating to, for example, the active cluster and the DR cluster. The active endpoint may be assigned to or related to a corresponding DR endpoint to form an endpoint pair. In one example, an endpoint pair may include an active endpoint and a corresponding DR endpoint in two different clusters. In one exemplary embodiment, request routing may be performed based on a predefined policy (or routing policy) of SCP112, for example, an active-standby implementation, based on the identification / configuration of the endpoint pair.
[0106] In one exemplary embodiment, a routing policy, i.e., an active-standby routing policy, may be used in an egress proxy and / or ingress proxy. In one exemplary embodiment, as in the described active-standby routing policy, the endpoint details may be configured pairwise, so that, given a given time, only one endpoint in a pair can receive a request. In one example, the total incoming requests may be round-robined among pairs of endpoints.
[0107] As shown in Figure 6, each cluster may contain two configured endpoints. For example, clusters may be defined in the network as, for example, cluster A and cluster B. In this example, cluster A may operate as active cluster 602 and may contain configured endpoints, namely endpoint 1 (604-1) and endpoint 2 (604-2), and cluster B may be DR cluster 608 and may contain endpoint 3 (606-1) and endpoint 4 (606-2). In this routing policy for an active-standby implementation, pairwise configuration may apply, so in this example, two pairs may be considered, for example, pair 1, where endpoint 1 (604-1) of active cluster A can be paired with endpoint 3 (606-1) of DR cluster B. Similarly, pair 2, where endpoint 2 (604-2) of active cluster A can be paired with endpoint 4 (606-2) of DR cluster B, may be considered. In a typical scenario, assuming all endpoints are available or functional, 50% of the total requests received by SCP112 may be routed to pair 1 and the remaining 50% to pair 2. However, if at least one of the endpoints may be non-functional or unavailable for routing, SCP112 may enable dynamic routing of requests by identifying / configuring pairs of endpoints in the active and / or DR cluster to assess the endpoint status. Various possible scenarios are discussed below in this specification: • Exemplary Scenario 1 - When all endpoints (endpoint 1, endpoint 2, endpoint 3, endpoint 4) are available or functional. In this example, 50% of the total requests (or traffic) may be sent to endpoint 1, and the remaining 50% of the requests may be sent to endpoint 2. • Exemplary Scenario 2 - When Endpoint 1 is down and the other 3 endpoints are up. In this case, 50% of the total requests may proceed to endpoint 3, and the remaining 50% may proceed to endpoint 2. • Exemplary Scenario 3 - When endpoint 2 is down and the other 3 endpoints are up. In this case, 50% of the total requests may proceed to endpoint 1, and the remaining 50% of the requests may proceed to endpoint 4. • Exemplary Scenario 4 - When either or both of endpoints 3 and 4 are down. In this case, requests can be routed between endpoint 1 and endpoint 2 in equal proportions, as usual. Exemplary Scenario 5 - When both Endpoint 1 and Endpoint 2 are down In this case, requests can be routed between endpoint 3 and endpoint 4 in equal proportions. Exemplary Scenario 6 - When Endpoint 1 and Endpoint 3 are down In this case, 100% of requests can be routed to endpoint 2. Exemplary Scenario 7 - When Endpoints 2 and 4 are down In this case, 100% of requests can be routed to endpoint 1. Example Scenario 8: When only one endpoint is up and the other three endpoints are down. In this case, all requests can only be routed to the active endpoint. The above scenarios are illustrative, and it should be understood that this disclosure is not limited to the examples described. Furthermore, although only two endpoints are shown within each cluster, it should also be understood that the number of clusters is not limited to two. It should also be understood that the routing policy described includes active and DR clusters with the same number of endpoints to avoid a scenario where the DR endpoint may be up, but the SCP may still not be available to route requests. In an alternative exemplary embodiment, a pairwise configuration could also be considered, pairing multiple endpoints in the active cluster with a single endpoint in the DR cluster. This could enable effective utilization of the DR endpoint.
[0108] Figures 7A–7C show exemplary figures 700, 720, and 740, respectively, illustrating the functionality of an active-standby policy implementation based on different statuses of endpoints in an active cluster 702 and a DR cluster 704, according to one embodiment of the present disclosure. In one exemplary embodiment, all endpoints (1–7) in the active cluster 702 and the DR cluster 704 can be active (marked with a checkmark), as shown in 700 in Figure 7A. Furthermore, the numbers assigned to endpoints in the active cluster 702 are similar to the numbers assigned to the corresponding endpoints in the DR cluster 704. For ease of understanding, the same numbers may be assigned to indicate the respective pairings of endpoints in clusters 702 and 704. The numbers 1–7 may be provided for simplicity only, but it should be understood that the clusters are not limited to 7 endpoints. As soon as one or more requests are received, it can be checked whether all endpoints in the active cluster 702 are functional / available. As shown in Figure 7A, since all endpoints in the active cluster 702 are found to be active, 100% of the traffic can be routed to the active cluster 702 so that the retrieved requests can be sent and distributed through all endpoints in the active cluster 702.
[0109] In another exemplary embodiment, as also shown in 720 of Figure 7B, some of the endpoints in the active cluster 702 and the DR cluster 704 may be active (marked with a checkmark), while others may be unavailable or non-functional (marked with an X). For example, endpoints 2 and 7 in the active cluster 702 may be non-functional, and endpoint 4 in the DR cluster 704 may be non-functional. As soon as one or more requests are received in the SCP, it can be checked whether all endpoints in the active cluster 702 are functional / available. As mentioned, some of the endpoints in the active cluster 702 may be found to be active, so traffic may be routed to those available endpoints in the active cluster 702 (such as endpoints 1, 3, 4, 5, and 6). However, since endpoints 2 and 7 in the active cluster 702 are not available / functional endpoints, traffic or requests may be sent to endpoints 2 and 7 in the DR cluster 704 instead of endpoints 2 and 7 in the active cluster 702. It is also worth noting that even though endpoint 4 of DR cluster 704 may be inactive, the corresponding active cluster endpoint may be active, meaning that a non-functional endpoint in a DR cluster may not affect the traffic distribution.
[0110] In another exemplary embodiment, as also shown at 740 in Figure 7C, none of the endpoints in the active cluster 702 may be available (marked with an X), while some endpoints in the DR cluster 704 may be available (marked with a checkmark). For example, endpoints 1, 2, 4, 5, and 7 in the DR cluster 704 may be functional, but endpoints 3 and 6 in the DR cluster 704 may not be functional. As soon as one or more requests are received in the SCP, it can be checked whether all endpoints in the active cluster 702 are functional / available. As mentioned, none of the endpoints in the active cluster 702 may be found to be available, so the traffic can be routed to the active, paired endpoints in the DR cluster 704 (such as endpoints 1, 2, 4, 5, and 7). However, since endpoints 3 and 6 in the DR cluster 704 may not be available / functional endpoints, the traffic or requests cannot be sent to these endpoints. Therefore, the proposed system 100 / SCP112 can solve challenges such as congestion control, traffic prioritization, and overload control, thereby enabling the effective use of resources and management of traffic in relation to requests.
[0111] Figures 8A and 8B illustrate exemplary diagrams showing tabular data or information relating to active-standby routing according to one embodiment of the present disclosure. As shown in 800 of Figure 8A, with respect to consumer node 802, the SCP of the present disclosure may enable processing an active-standby spare routing table 804 showing various NF instances relating to PLMN IDs and information about the destination node. In one example, to enable pairwise configuration of endpoints in the active cluster and DR cluster, the SCP may enable performing endpoint identification / configuration. The routing table 804 and the corresponding adjacent detail tables show various NF instances and corresponding PLMN-ids relating to endpoints in the active cluster and DR cluster. In one exemplary embodiment, or as shown in Figure 8B, an exemplary diagram shows that the routing of a request may be based on the corresponding PLMN-id and context. In one exemplary embodiment, the routing of a request may be based on the corresponding PLMN-id and NF type. In one exemplary embodiment, the routing of a request may be based on the corresponding context. In one exemplary embodiment, the routing of a request may be based on the corresponding NF instance ID. In one exemplary embodiment, the routing of a request may be based on the corresponding NF set ID. In one exemplary embodiment, request routing may be based on the corresponding NF service set ID. In another exemplary embodiment, request routing may be based on the NF service instance ID. Various other embodiments may be possible.
[0112] Figure 9 shows an exemplary Figure 900 illustrating an integrated implementation including various routing policies according to one embodiment of the present disclosure. As shown in Figure 9, with respect to consumer node 902, the system or SCP 112 includes various routing policies that can be used to determine the specific routing of requests, which may enable the integrated implementation. For example, Table 904 shows routing based on SCP's active-standby routing policy, including routing between pairwise configured endpoints in active and DR clusters as described above. In another example, Table 906 shows routing based on SCP's active-active routing policy, including routing between endpoints in the active cluster to ensure that all endpoints in the active cluster can be effectively utilized. In yet another example, Table 908 shows routing based on SCP's primary-secondary routing policy, including routing between endpoints in primary and secondary clusters, where the primary cluster may be used in preference to the secondary cluster so that endpoints in the secondary cluster can only be used for routing when it is verified that all primary clusters are unavailable. In yet another example, Table 910 shows routing based on SCP's hybrid primary-secondary routing policy, including routing between endpoints in primary and secondary clusters based on active mode and standby mode.
[0113] Figure 10 shows an exemplary diagram of a flow diagram 1000 for facilitating the routing of communication requests using SCP according to one embodiment of the present disclosure. Flow diagram 1000 may represent a general sequence of steps for outgoing or incoming communication. In 1002, the method may include the step of identifying at least one available endpoint in the cluster. In 1004, the method may include the step of routing the communication request from a consumer node (relating to the user device sending the request) to a destination mode or provider node (relating to the user device receiving the request), and the request may be routed to an identified / configured pair if at least one endpoint in the pair is functional.
[0114] In one example, the step of identifying at least one available endpoint may include, for example, identifying / configuring endpoint pairs for an active cluster and a DR cluster. The active cluster may include an active endpoint to which requests can be preferably routed if an endpoint is available. The DR cluster may include a DR endpoint, which may be considered an alternative endpoint for routing requests if the corresponding active endpoint is unavailable or non-functional. In one exemplary embodiment, each endpoint in the active cluster may be paired with a corresponding endpoint in the DR cluster to form an endpoint pair. In one embodiment, the method may allow identifying / configuring endpoint pairs in the active cluster and the DR cluster, for example, a DR endpoint for an unavailable / non-functional endpoint in the active cluster. This may be done prior to routing being performed, which may allow for effective management of incoming requests. This may also allow for pre-planning direct routing to a DR endpoint (in the DR cluster) if the corresponding active endpoint (in the active cluster) is unavailable.
[0115] In one exemplary embodiment, routing may be performed based on a predefined policy of SCP112, based on the identification / configuration of endpoint pairs. For example, the predefined policy may relate to the active-standby implementation described herein. In one exemplary embodiment, a request may be routed to an identified / configured pair if at least one endpoint in the pair can be functional. For example, this method may include a step of evaluating when an endpoint in the active cluster, e.g., the first endpoint, is unavailable, and it may be possible to configure a corresponding endpoint in the DR cluster prior to routing the request. In another example, this method may include a step of evaluating when an endpoint in the active cluster, e.g., the first endpoint, is unavailable, and it may also be possible to evaluate whether the corresponding configured DR endpoint (the second endpoint) for the first endpoint is also unavailable, so that the request cannot be routed to the pair at all. This can avoid unnecessary rerouting and also streamline an effective routing step. In one exemplary embodiment, routing may be performed based on a predefined criterion, based on the identification / configuration of endpoint pairs. For example, predefined criteria may relate to header routing criteria, which could allow SCP112 to determine which endpoint is selected (prior to routing) based on availability. Various other examples are provided in the following sections, but this disclosure is not limited to these examples. In some examples, the header routing criteria may include, but are not limited to, at least one of the following: a) 3GPP-SBI-Discovery b) 3gpp-sbi-target-apiroot c)3gpp-sbi-binding / 3gpp-sbi-routing-binding In one exemplary embodiment, if multiple predefined criteria or header routing criteria may be considered, the processor or controller 404 may be able to prioritize the predefined criteria in order to enable the appropriate selection of an endpoint prior to routing the request. Various other embodiments may be possible.
[0116] Figure 11 shows, in or using therein, an exemplary computer system in which embodiments of the present invention may be utilized according to embodiments of the present disclosure. As shown in Figure 11, the computer system 1100 may include an external storage device 1110, a bus 1120, main memory 1130, read-only memory 1140, a mass storage device 1150, a communication port 1160, and a processor 1170. Those skilled in the art will understand that the computer system may include two or more processors and communication ports. The processor 1170 may include various modules associated with embodiments of the present invention. The communication port 1160 may be any of the following: a modem-based dial-up connection, a 10 / 100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or an RS-232 port for use with other existing or future ports. The communication port 1160 may be selected depending on the network, such as a local area network (LAN), a wide area network (WAN), or any network to which the computer system is connected. Memory 1130 may be random-access memory (RAM) or any other dynamic storage device commonly known in the art. Read-only memory 1140 may be any static storage device. Mass storage 1150 may be any current or future mass storage solution that can be used to store information and / or instructions.
[0117] Bus 1120 connects the processor 1170 to other memory, storage, and communication blocks in a communicative manner. Optionally, operator and management interfaces, such as a display, keyboard, and cursor control device, may also be connected to bus 1120 to support direct operator interaction with the computer system. Other operator and management interfaces may be provided through network connections connected via communication port 1160. The components described above are merely illustrative of various possibilities. The exemplary computer system described above should not in any way limit the scope of this disclosure.
[0118] While embodiments described herein are based on SCP, it should be understood that the proposed systems and methods may be implemented within any computing device or external device without departing from the scope of the invention.
[0119] While preferred embodiments have been given considerable emphasis in this specification, it should be understood that many embodiments may be made and many modifications may be made to preferred embodiments without departing from the principles of the present invention. These and other modifications in preferred embodiments of the present invention will be apparent to those skilled in the art from this disclosure, and it should be clearly understood that the foregoing descriptions to be implemented are merely illustrative and not limiting to the present invention.
[0120] The disclosures in this patent document include, but are not limited to, materials subject to intellectual property rights, such as copyrights, designs, trademarks, IC layout designs, and / or trade dress protections, belonging to Jio Platforms Limited (JPL) or its affiliates (hereinafter referred to as the Owner). The Owner has no objection to facsimile reproductions of any part of the patent document or patent disclosure, such as those appearing in the patent files or patent records of the Patent and Trademark Office, but otherwise retains all rights. All rights to such intellectual property rights are entirely owned by the Owner. Benefits of this disclosure
[0121] This disclosure provides a system and method for facilitating the effective and improved management of traffic routing related to incoming requests.
[0122] This disclosure provides systems and methods that may be agnostic for the architecture, structure, functionality, and implementation of network functions of each node.
[0123] This disclosure provides systems and methods to facilitate SCP implementations that enable load balancing, routing, traffic monitoring, congestion control, service discovery, and other such functions in an effective manner.
[0124] This disclosure provides a system and method that enables the effective management of incoming requests.
[0125] This disclosure provides a system and method that can eliminate unnecessary rerouting and still streamline effective routing steps. [Explanation of symbols]
[0126] 100 Systems 102 Network devices, controllers 104 Servers 106 nodes 10⁶-1, 10⁶-2, ... 10⁶-N nodes 108 User Devices 108-1, 108-2, 108-3, 108-4, ... 108-(N-1), 108-N User Devices 110 Network 112 Network devices, SCPs, SCP controllers, controllers, service communication proxies (SCPs) 114 Core Network 116 5G-EIR 118 Network Slice Selection Function (NSSF) 120 Authentication Server Function (AUSF) 122 Unified Data Management (UDM) 124. Integrated Data Repository (UDR) 126 Network Publish Function (NEF) 128 5G Network Data Analysis Function (NWDAF) 130 Session Management Function (SMF) 132 Access and Management Functions (AMF) 134 Policy Control Function (PCF) 136 Application Functions (AF) 138 Short Message Service (SMSF) 140 NF Repository Function (NRF) 142. Security Edge Protection Proxy (SEPP) 144 User Plane Function (UPF) 210 Databases 320 Consumer Nodes or Consumer NFs 340 provider nodes or provider NF Figure 400 404 SCP controller, processor, or controller 404-1 Processing engine or module 410 memory 412 Interface 416 Received Joules 418 Proxy Information Module 420 Routing Modules 422 Other modules or components 424 databases Figure 450 Figure 600 602 Active Cluster 604-1 Endpoint 1 604-2 Endpoint 2 606-1 Endpoint 3 606-2 Endpoint 4 608 DR cluster Figure 700 702 Active Cluster 704 DR cluster Figure 720 Figure 740 802 Consumer Node 804 Active-standby spare routing table, routing table Figure 900 902 Consumer Node 904 table 906 table 908 table 910 table 1000 Flowcharts 1100 Computer System 1110 External storage device 1120 Bus 1130 Main memory, memory 1140 Read-only memory 1150 Large-capacity storage devices 1160 Communication Port 1170 Processor
Claims
1. A system (100) for performing ingress / egress active standby spare routing in a network, A service communication proxy (SCP) controller (112) communicating with multiple endpoints. The SCP controller (112) comprises one or more processors (404), and the The SCP controller (112) receives a plurality of requests that will be sent to the first PLMN cluster and the second PLMN cluster from one or more source node devices communicating with the SCP controller (112). Determine the status of multiple pairs of endpoints numbered n and n+2 associated with the first PLMN cluster and the second PLMN cluster, respectively. When the status of each paired endpoint number n and endpoint number n+2 is determined to be active, the multiple requests are routed equally through the first PLMN cluster for transmission to each paired endpoint number n and endpoint number n+2 associated with the first PLMN cluster and the second PLMN cluster. It is configured in such a way, The aforementioned multiple requests are routed equally to the paired endpoints numbered n and n+2, respectively, associated with the first PLMN cluster and the second PLMN cluster, based on a round-robin technique. system.
2. The system according to claim 1, wherein the routing is used in either an egress proxy or an ingress proxy, or a combination thereof.
3. The system according to claim 1, wherein the SCP controller 112 is configured to route the multiple requests to only one endpoint in a pair at a time.
4. Prior to routing, the SCP controller 112 is configured to identify at least one available endpoint among the paired endpoints relating to the first PLMN cluster and the second PLMN cluster, the first PLMN cluster comprises a plurality of active endpoints to which the plurality of requests are routed when the plurality of endpoints are available, and the second PLMN cluster comprises a plurality of corresponding alternate endpoints for routing the plurality of requests when the corresponding plurality of active endpoints are unavailable or non-functional, the system according to claim 1.
5. The system according to claim 4, wherein the routing is performed based on the identification of the paired endpoints and on a predefined policy of the SCP controller 112.
6. The system according to claim 1, wherein when all of the plurality of endpoints are active, the SCP controller is configured to route 50% of the plurality of requests to a first pair comprising the number n endpoint of the first PLMN cluster and the number n+2 endpoint of the second PLMN cluster, and the remaining 50% of the plurality of requests to a second pair comprising the number 2n endpoint of the first PLMN cluster and the number 2n+2 endpoint of the second PLMN cluster.
7. The system according to claim 1, wherein when the numbered n endpoint of the first pair is inactive and the remaining endpoints are active, the SCP controller (112) is configured to route 50% of the plurality of requests to the numbered n+2 endpoint of the second PLMN cluster and the remaining 50% of the plurality of requests to the numbered 2n endpoint of the first PLMN cluster.
8. The system according to claim 1, wherein when the numbered endpoint 2n of the second pair is inactive and the remaining endpoints are active, the SCP controller (112) is configured to route 50% of the plurality of requests to the numbered endpoint n of the first PLMN cluster and the remaining 50% of the plurality of requests to the numbered endpoint 2n+2 of the second PLMN cluster.
9. The system according to claim 1, wherein when either or both of the number n+2 endpoint and the number 2n+2 endpoint of the second PLMN cluster are inactive and the remaining endpoints are active, the SCP controller (112) is configured to route the plurality of requests equally to the number n endpoint of the first PLMN cluster and the number 2n endpoint of the first PLMN cluster.
10. The system according to claim 1, wherein when either or both of the endpoint number n and the endpoint number 2n of the first PLMN cluster are inactive and the remaining endpoints are active, the SCP controller (112) is configured to route the plurality of requests equally to the endpoint number n+2 of the first PLMN cluster and the endpoint number 2n+2 of the second PLMN cluster.
11. The system according to claim 1, wherein when both the number n endpoint and the number n+2 endpoint of the first pair are inactive, the SCP controller (112) is configured to route 100% of the plurality of requests to the number 2n endpoint of the first PLMN cluster.
12. The system according to claim 1, wherein when both endpoints numbered 2n and 2n+2 of the second pair are inactive, the SCP controller (112) is configured to route 100% of the plurality of requests to endpoint numbered n of the first PLMN cluster.
13. The system according to claim 1, wherein when only one endpoint is active and the remaining endpoints are inactive, the SCP controller (112) is configured to route the plurality of requests that are routed only to the active endpoint.
14. The system according to claim 1, wherein the number of endpoints in the first PLMN cluster is equal to the number of endpoints in the second PLMN cluster.
15. The system according to claim 1, wherein the second PLMN cluster is a disaster recovery (DR) cluster for the first PLMN cluster, the first PLMN cluster is an active cluster, and the routing of the plurality of requests is such that if the corresponding active endpoint in the first PLMN cluster is unavailable, the requests are sent directly to an endpoint in the DR cluster.
16. The system according to claim 13, wherein, in the case of O-based indexing, endpoints in even-numbered indexes belong to the first PLMN cluster and odd-numbered indexes belong to the DR cluster.
17. A method (190) for performing ingress / egress active standby spare routing in a network, A receiving step of a Service Communication Proxy (SCP) controller (112) receiving a plurality of requests to be sent to a first PLMN cluster and a second PLMN cluster from one or more source node devices communicating with the SCP controller (112), wherein the SCP controller (112) communicates with a plurality of endpoints, the plurality of endpoints are grouped in either the first PLMN cluster or the second PLMN cluster such that the endpoint number n of the first PLMN cluster forms a pair with the endpoint number n+2 of the second PLMN cluster, where n is any natural number, and the SCP controller (112) further comprises one or more processors (404) coupled to a memory (410) storing instructions executable by one or more processors (404), The SCP controller (112) determines the status of multiple pairs of endpoints numbered n and n+2, which are associated with the first PLMN cluster and the second PLMN cluster, respectively. When the SCP controller (112) determines that the status of each paired endpoint number n and endpoint number n+2 is active, the steps include: routing the plurality of requests equally through the first PLMN cluster for transmission to each paired endpoint number n and endpoint number n+2 associated with the first PLMN cluster and the second PLMN cluster, respectively; Equipped with, The aforementioned multiple requests are routed equally to the paired endpoints numbered n and n+2, respectively, associated with the first PLMN cluster and the second PLMN cluster, based on a round-robin technique. method.
18. The method according to claim 17, wherein the routing is used in either an egress proxy or an ingress proxy, or a combination thereof.
19. The method according to claim 17, further comprising the step of routing the plurality of requests to only one endpoint in a pair at a time by the SCP controller (112).
20. The method according to claim 17, wherein, prior to routing, the method further comprises the step of having the SCP controller 112 identify at least one available endpoint among the paired endpoints relating to the first PLMN cluster and the second PLMN cluster, wherein the first PLMN cluster comprises a plurality of active endpoints to which the plurality of requests are routed when the plurality of endpoints are available, and the second PLMN cluster comprises a plurality of corresponding alternate endpoints for routing the plurality of requests when the corresponding plurality of active endpoints are unavailable or non-functional.
21. The method according to claim 20, wherein the routing is performed based on the identification of the paired endpoints and on a predefined policy of the SCP controller 112.
22. The method according to claim 17, further comprising the step that, when all of the plurality of endpoints are active, the method routes 50% of the plurality of requests by the SCP controller (112) to a first pair comprising the number n endpoint of the first PLMN cluster and the number n+2 endpoint of the second PLMN cluster, and the remaining 50% of the plurality of requests to a second pair comprising the number 2n endpoint of the first PLMN cluster and the number 2n+2 endpoint of the second PLMN cluster.
23. The method according to claim 17, further comprising the step that when the numbered n endpoint of the first pair is inactive and the remaining endpoints are active, the method is routed by the SCP controller (112) to the numbered n+2 endpoint of the second PLMN cluster and to the remaining 50% of the multiple requests to the numbered 2n endpoint of the first PLMN cluster.
24. The method according to claim 17, wherein when the numbered endpoint 2n of the second pair is inactive and the remaining endpoints are active, the SCP controller is configured to route 50% of the plurality of requests to the numbered endpoint n of the first PLMN cluster and the remaining 50% of the plurality of requests to the numbered endpoint 2n+2 of the second PLMN cluster.
25. The method according to claim 17, further comprising the step of routing the plurality of requests equally to the endpoint number n of the first PLMN cluster and the endpoint number 2n+2 of the first PLMN cluster when either or both of the endpoints number n+2 of the second PLMN cluster are inactive and the remaining endpoints are active, by the SCP controller (102).
26. The method according to claim 17, wherein when either or both of the endpoint number n and the endpoint number 2n of the first PLMN cluster are inactive and the remaining endpoints are active, the SCP controller is configured to route the plurality of requests equally to the endpoint number n+2 of the first PLMN cluster and the endpoint number 2n+2 of the second PLMN cluster.
27. The method according to claim 17, further comprising the step of routing 100% of the plurality of requests to the endpoint number 2n of the first PLMN cluster by the SCP controller (112) when both the endpoint number n and the endpoint number n+2 of the first pair are inactive.
28. The method according to claim 17, further comprising the step of routing 100% of the plurality of requests to the number n endpoint of the first PLMN cluster by the SCP controller (112) when both the number 2n endpoint and the number 2n+2 endpoint of the second pair are inactive.
29. The method according to claim 17, further comprising the step of routing the plurality of requests, which are routed only to the active endpoint, by the SCP controller (112) when only one endpoint is active and the remaining endpoints are inactive.
30. The method according to claim 17, wherein the number of endpoints in the first PLMN cluster is equal to the number of endpoints in the second PLMN cluster.
31. The method according to claim 17, wherein the second PLMN cluster is a disaster recovery (DR) cluster for the first PLMN cluster, the first PLMN cluster is an active cluster, and the routing of the plurality of requests is such that if the corresponding active endpoint in the first PLMN cluster is unavailable, it is sent directly to an endpoint in the DR cluster.
32. The method according to claim 31, wherein, in the case of O-based indexing, endpoints in even-numbered indexes belong to the first PLMN cluster and odd-numbered indexes belong to the DR cluster.
33. User equipment (UE) (108) communicatively coupled to an SCP controller (112), wherein the SCP controller coupling is The steps include receiving a connection request from the UE(108), The steps include sending an acknowledgment of the connection request to the SCP controller, The steps include transmitting a plurality of signals in response to the aforementioned connection request. The SCP controller is configured to communicate with at least two public land mobile network (PLMN) clusters of the system described in claim 1. User equipment (UE) (108).
34. A non-temporary computer-readable medium having processor-executable instructions, wherein the instructions are, Receiving a plurality of requests that will be transmitted from one or more source node devices communicating with the processor to a first public land mobile network (PLMN) and a second PLMN cluster, The processor communicates with a plurality of endpoints, and the plurality of endpoints are grouped in either the first PLMN cluster or the second PLMN cluster such that the endpoint number n of the first PLMN cluster forms a pair with the corresponding endpoint number n+2 of the second PLMN cluster, where n is any natural number. Receiving and Determine the status of multiple pairs of endpoints numbered n and n+2 associated with the first PLMN cluster and the second PLMN cluster, respectively. When the status of each paired endpoint number n and endpoint number n+2 is determined to be active, the multiple requests are to be routed equally through the first PLMN cluster for transmission to each paired endpoint number n and endpoint number n+2 associated with the first PLMN cluster and the second PLMN cluster. Have them do it, The multiple requests are routed equally to the paired endpoint number n and the endpoint number n+2, respectively, associated with the first PLMN cluster and the second PLMN cluster, based on a round-robin technique. Non-temporary computer-readable media.