SYSTEM AND METHOD FOR HYBRID ROUTING IN 5G NETWORKS
The hybrid routing system addresses the inefficiencies in current routing systems by using a controller to dynamically select between active and secondary PLMN clusters, optimizing data paths and ensuring uninterrupted data transmission in next-generation networks.
Patent Information
- Application Number
- JP2023521938
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-03-31
- Filing Date
- 2023-03-24
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2043-03-24
AI Technical Summary
Current routing systems in next-generation networks, such as 5G, face challenges in managing traffic efficiently and handling node unavailability, leading to issues with quality of service, security, and network complexity.
A hybrid routing system that uses a controller to manage traffic by selecting between primary and secondary PLMN clusters based on endpoint activity, ensuring efficient data path optimization and load balancing.
The system effectively manages traffic by routing requests through active endpoints, optimizing data paths, and ensuring uninterrupted data transmission, thereby improving network efficiency and reliability.
Smart Images

Figure 2025510421000001_ABST
Abstract
Description
[Technical field]
[0001] Reservation of Rights Portions of the disclosure of this patent document contain material that is subject to intellectual property rights, including, but not limited to, copyright, design, trademark, IC layout design, and / or trade dress protection, belonging to Jio Platforms Limited (JPL) or its affiliates (hereinafter referred to as the Owner). The Owner has no objection to the reproduction by anyone of the patent document or patent disclosure as it appears in the Patent and Trademark Office files or records, but otherwise reserves all rights. All rights to such intellectual property are fully reserved by the Owner. The patent documents include systems and methods defined in 3GPP® Technical Specifications (TS) 3GPP TS 29.203, 3GPP TS 29.212, 3GPP TS 29.213, 3GPP TS 29.214, 3GPP TS 29.272, etc.
[0002] The present invention relates generally to the field of routing, and more particularly to next generation network techniques that enable hybrid routing with an active instance as well as several standby instances in next generation networks, such as 5G networks or hybrid / integrated systems including 4G, 5G, and / or 6G. [Background technology]
[0003] The following description of related art is intended to provide background information regarding the field of the present disclosure. This section may include certain aspects of the art that may be relevant 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 is not intended as an admission of prior art.
[0004] In today's high-tech world, the availability of fast and uninterrupted communication facilities has become essential. Many communication devices such as smartphones, laptops, tablets, etc. are available in the market, competing the requirement for fast and uninterrupted communication facilities. These communication devices can be connected through various wired and wireless network technologies.
[0005] However, the usage and number of communication devices is exponentially increasing day by day, which results in increased complexity of existing networks. This can lead to insufficient quality of service, security, and efficiency in current communication networks. In such scenarios, routers act as the primary control point that helps simplify the increased complexity of the network, provides reliable quality of service and security, facilitates monitoring and improvement in efficiency, and other attributes that allow the network to add value. Thus, by controlling the router, one can have a great deal of control over the corresponding network.
[0006] In general, routing can be defined as the mechanism of selecting a particular path within a network or between or across multiple networks for quickly transmitting data between a first communication device and a second communication device that may be located remotely from each other. Routing can be performed on a variety of networks, including circuit-switched networks, e.g., the Public Switched Telephone Network (PSTN), as well as computer networks, e.g., the Internet.
[0007] In the routing process, routing tables are frequently used to direct the forwarding of data packets. Routing tables record the routes to various network destinations. Routing tables can be created using routing protocols, can be learned from network traffic, or can be provided by an administrator.
[0008] In general, next-generation based architectures, such as 5G service-based architectures, are designed such that all network functions are closely interacted with each other. These network functions may possess the ability to discover peer nodes and transmit network information between nodes. This approach necessarily leads to a spaghetti of interconnections between several user devices, such as laptops, smartphones, tablets, etc., connected through the network, which may disrupt the flow of data between said user devices or may lead to data loss. In certain scenarios, it may also lead to data substitution, which is highly undesirable.
[0009] The conventional system and method are configured in a network of several nodes, each having a separate deployment scenario / architecture and function. The routing algorithm in the conventional system and method cannot manage the individual deployment scenario / architecture and function of each node. Therefore, the establishment of communication channels between the nodes may be affected, which in turn may adversely affect the flow of data in the network.
[0010] In addition, current systems and methods or routing techniques are unable to handle requests relating to the transmission of data corresponding to down / unavailable nodes.
[0011] Therefore, there is a need to provide a routing solution that can optimize data paths for information exchanged between user devices and that can solve the various network-related problems mentioned above. Summary of the Invention [Problem to be solved by the invention]
[0012] It is an object of the present disclosure to provide a system and method that facilitates management of traffic related to incoming requests by enabling efficient and improved routing of traffic.
[0013] Another object of the present disclosure is to provide a system and method that is independent of the architecture, structure, functionality, and implementation of network functions of each node.
[0014] Another object of the present disclosure is to provide a system and method that facilitates SCP implementation that enables load balancing, routing, traffic monitoring, congestion control, service discovery, and other such functions in an efficient manner.
[0015] It is an object of the present disclosure to provide a system and method for facilitating uninterrupted data transmission traffic. [Means for solving the problem]
[0016] According to an aspect, the present disclosure relates to a system for enabling hybrid routing in a network. The system includes a controller with one or more processors coupled to a memory storing instructions executable by the one or more processors, the controller communicating with one or more public land mobile network (PLMN) clusters associated with the network, a plurality of source node devices, and a terminal node device. The controller is further configured to collect a plurality of requests to be transmitted to the terminal node device from the plurality of source node devices communicating with the controller. The controller is further configured to determine, for each of the plurality of requests, a source node device along with a corresponding pre-mapped primary PLMN cluster and a secondary PLMN cluster from among the one or more PLMN clusters, and then determine a state of each endpoint of the pre-mapped primary PLMN cluster. If the state of each endpoint of the pre-mapped primary PLMN cluster is determined to be inactive, the controller is configured to route the request via the pre-mapped secondary PLMN cluster for transmitting the request to the terminal node device.
[0017] In one aspect, the proposed system is independent of each node's architecture, structure, functionality, and implementation of network functions.
[0018] In another aspect, the proposed system may facilitate SCP implementations that enable load balancing, routing, traffic monitoring, congestion control, service discovery, and other such functions in an efficient manner.
[0019] In one aspect, if it is determined that the request is received from a first source node device, the controller may be further configured to select a first PLMN cluster from one or more PLMN clusters for transmitting the request and determine a state of all endpoints of the first PLMN cluster, the first PLMN cluster may be a pre-mapped primary PLMN cluster for the first source node device. If it is determined that the state of all endpoints of the first PLMN cluster is inactive, the controller may be further configured to select a second PLMN cluster from one or more PLMN clusters and route the request to the second PLMN cluster for transmitting the request to a terminating node device. Furthermore, the second PLMN cluster may be a pre-mapped secondary PLMN cluster for the source node device.
[0020] In another aspect, the controller may be further configured to transmit the request directly to the end node device via the first PLMN cluster if a state of at least one of the endpoints of the first PLMN cluster is determined to be active. Furthermore, if a state of two or more endpoints of any of the first and second PLMN clusters is determined to be active, the controller may be configured to proportionally distribute in the network data traffic related to a request of the plurality of requests associated with the first source node device among active endpoints of the PLMN cluster.
[0021] In one aspect, the controller may be configured to select a third PLMN cluster from one or more PLMN clusters for transmitting the request when it is determined that the request is received from a source node device other than the first source node device, the third PLMN cluster may be a pre-mapped primary PLMN cluster for the source node device. Further, the controller may be configured to determine a state of all endpoints of the third PLMN cluster, and when it is determined that the state of all endpoints of the third PLMN cluster is inactive, the controller may be further configured to select a fourth PLMN cluster from one or more PLMN clusters and route the request from the third PLMN cluster to the fourth PLMN cluster for transmitting the request to a terminating node device, the fourth PLMN cluster may be a pre-mapped secondary PLMN cluster for the source node device.
[0022] In one aspect, the controller may be further configured to transmit the request directly to the end node device via a third PLMN cluster if a state of at least one of the endpoints of the third PLMN cluster is determined to be active. Furthermore, if a state of two or more endpoints of any of the third and fourth PLMN clusters is determined to be active, the controller may be further configured to proportionally distribute in the network data traffic related to requests of the plurality of requests associated with source node devices other than the first source node device among active endpoints of the PLMN clusters.
[0023] In other aspects, the controller may be configured to split a single PLMN cluster of the one or more PLMN clusters into two sub-clusters, one of the two sub-clusters serving as a third PLMN cluster and the other sub-cluster serving as a fourth PLMN cluster.
[0024] In another aspect, the controller may be configured to facilitate configuration of one or more PLMN clusters as either a primary PLMN cluster and a secondary PLMN cluster for a plurality of source node devices based on a mapping of the routing table.
[0025] In yet another aspect, the controller may be configured to trigger a negative response corresponding to the request if a state of all endpoints in a secondary PLMN cluster is determined to be inactive.
[0026] According to another aspect, the present disclosure relates to a method for enabling hybrid routing in a network. The method includes, in a controller in communication with one or more public land mobile network (PLMN) clusters associated with the network, first collecting a plurality of requests to be transmitted to a terminal node device from a plurality of source node devices. The method further includes, in the controller, for each of the plurality of requests, determining a source node device along with a correspondingly mapped primary PLMN cluster and secondary PLMN cluster from among the one or more PLMN clusters, and then, in the controller, determining a state of each endpoint of the pre-mapped primary PLMN cluster. The method further includes, if a state of each endpoint of the pre-mapped primary PLMN cluster is determined to be inactive, routing the request through the pre-mapped secondary PLMN cluster for transmitting the request to the terminal node device.
[0027] In one aspect, if it is determined that the request is received from a first source node device, the method may include selecting a first PLMN cluster from one or more PLMN clusters for transmitting the request, and then determining a state of all endpoints of the first PLMN cluster, the first PLMN cluster may be a pre-mapped primary PLMN cluster for the first source node device. If it is determined that the state of all endpoints of the first PLMN cluster is inactive, the method may include selecting a second PLMN cluster from one or more PLMN clusters, and routing the request from the first PLMN cluster to the second PLMN cluster for transmitting the request to a terminating node device, the second PLMN cluster may be a pre-mapped secondary PLMN cluster for the first PLMN cluster.
[0028] In another aspect, if a status of at least one of the endpoints of the first PLMN cluster is determined to be active, the method may include sending the request directly to an end node device via the first PLMN cluster.
[0029] In one aspect, if the state of two or more endpoints of any of the first and second PLMN clusters is determined to be active, the method may include proportionally distributing data traffic related to requests of the plurality of requests associated with the first source node device within the network among the active endpoints of said PLMN clusters.
[0030] In one aspect, if it is determined that the request is received from a source node device other than the first source node device, the method may include selecting a third PLMN cluster from one or more PLMN clusters for transmitting the request and determining a state of all endpoints of the third PLMN cluster, the third PLMN cluster may be a pre-mapped primary PLMN cluster for the source node device. If it is determined that the state of all endpoints of the third PLMN cluster is inactive, the method may include selecting a fourth PLMN cluster from one or more PLMN clusters and routing the request from the third PLMN cluster to the fourth PLMN cluster for transmitting the request to at least one of the end node devices, the fourth PLMN cluster may be a pre-mapped secondary PLMN cluster for the source node device.
[0031] In another aspect, if a status of at least one of the endpoints of the third PLMN cluster is determined to be active, the method may include sending the request directly to an end node device via the third PLMN cluster.
[0032] In yet another aspect, if the status of all endpoints in the secondary PLMN cluster is determined to be inactive, the method may include triggering a negative response corresponding to the request.
[0033] In one aspect, the method may include a step of dividing a single PLMN cluster into two sub-clusters, one of which may function as a third PLMN cluster and the other of which may function as a fourth PLMN cluster.
[0034] In another aspect, the method may facilitate configuration of one or more PLMN clusters as either a primary PLMN cluster and a secondary PLMN cluster for a plurality of source node devices based on a mapping of a routing table.
[0035] The accompanying drawings, which are incorporated herein and constitute a part of the present invention, illustrate exemplary embodiments of the disclosed method and system, with like reference numerals referring to the same parts throughout the different drawings. The components in the drawings are not necessarily to scale, emphasis instead being placed on clearly illustrating the principles of the invention. The same drawings may use block diagrams to illustrate components and may not show the internal circuitry of each component. It will be understood by those skilled in the art that the inventions in such drawings include inventions in electrical components, electronic components, or circuits commonly used to implement such components. [Brief description of the drawings]
[0036] [Figure 1A] FIG. 1 illustrates an exemplary network architecture in which the proposed system may be implemented, in order to explain its operation in more detail, according to one embodiment of the present disclosure. [Figure 1B] FIG. 1 illustrates an exemplary network architecture in which the proposed system may be implemented, in order to explain its operation in more detail, according to one embodiment of the present disclosure. [Figure 1C] FIG. 1 illustrates an exemplary network architecture in which the proposed system may be implemented, in order to explain its operation in more detail, according to one embodiment of the present disclosure. [Figure 1D] FIG. 1 illustrates an exemplary network architecture in which the proposed system may be implemented, in order to explain its operation in more detail, according to one embodiment of the present disclosure. [Diagram 2] Referring to FIG. 1D, an exemplary diagram of an SCP implementation according to one embodiment of the present disclosure. [Figure 3A]FIG. 1 illustrates an example representation of a flow diagram illustrating indirect communication through the proposed system with delegated discovery, according to an embodiment of the present disclosure. [Figure 3B] FIG. 1 illustrates an example representation of a flow diagram illustrating indirect communication through the proposed system without delegated discovery, according to an embodiment of the present disclosure. [Figure 4A] FIG. 1 illustrates an exemplary representation of a system architecture of a service communication proxy (SCP) according to one embodiment of the present disclosure. [Figure 4B] FIG. 1 illustrates an exemplary representation of a system architecture of a service communication proxy (SCP) according to one embodiment of the present disclosure. [Diagram 5] FIG. 1 illustrates an exemplary overview of an SCP deployment based on 5G capabilities and SCPs deployed in independent deployment units, according to one embodiment of the present disclosure. [Figure 6] FIG. 2 is an exemplary diagram illustrating hybrid-specific traffic separation according to one embodiment of the present disclosure. [Figure 7A] FIG. 1 is an exemplary flow diagram illustrating a hybrid-specific primary secondary routing technique in accordance with one embodiment of the present disclosure. [Figure 7B] FIG. 7B is a diagram referring to FIG. 7A illustrating the functioning of a hybrid-specific primary secondary routing technique when some clusters are not operational, according to one embodiment of the present disclosure. [Figure 8] FIG. 2 illustrates an exemplary representation showing various clusters associated with hybrid routing, according to one embodiment of the present disclosure. [Figure 9] FIG. 2 illustrates an exemplary representation showing an integrated implementation including various routing policies, according to one embodiment of the present disclosure. [Figure 10] 1 is a flow chart illustrating steps of a proposed method according to one embodiment of the present disclosure. [Figure 11] FIG. 1 illustrates an exemplary computer system in which embodiments of the present disclosure may be utilized, in accordance with an embodiment of the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0037] The above will become more apparent from the following more detailed description of the invention.
[0038] In the following description, for the purpose of explanation, various specific details are set forth to provide a thorough understanding of the embodiments of the present disclosure. However, it will be apparent that the embodiments of the present disclosure may be practiced without these specific details. Some features described below can each be used independently of each other, or can be used in any combination with other features. Individual features may not address all of the problems discussed above, or may address only some of the problems discussed above. Some of the problems discussed above may not be fully addressed by any of the features described herein.
[0039] The following description provides only exemplary embodiments and is not intended to limit the scope, applicability, or configuration of the present disclosure. Rather, the following description of exemplary embodiments provides those skilled in the art with an enabling description for implementing the exemplary embodiments. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the invention as described.
[0040] Specific details are given in the following description to provide a thorough understanding of the embodiments. However, it will be understood by those skilled in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, networks, processes, and other components may be shown as components in block diagram form so as not to obscure the embodiments in unnecessary detail. In other instances, well-known circuits, processes, algorithms, structures, and techniques may be shown without unnecessary detail so as to avoid obscuring the embodiments.
[0041] It should also be noted that the particular embodiments may be described as a process that is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe operations as a sequential process, many of the operations may be performed in parallel or simultaneously. Additionally, the order of operations may be rearranged. A process terminates when its operations are completed, but may have additional steps not included in the diagram. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, or the like. When a process corresponds to a function, its termination may correspond to a return of the function to the calling function or to the main function.
[0042] The words "exemplary" and / or "demonstrative" are used herein to mean serving as an example, instance, or illustration. To avoid doubt, the subject matter disclosed herein is not limited to such examples. In addition, any aspect or design described herein as "exemplary" and / or "demonstrative" should not necessarily be construed as preferred or advantageous over other aspects or designs, nor is it meant to exclude equivalent exemplary structures and techniques known to those skilled in the art. Furthermore, to the extent that the terms "including," "having," "containing," and other similar words are used in either the detailed description or the claims, such terms are intended to be inclusive, similar to the term "comprising" as an open transition word, without excluding any additional or other elements.
[0043] References throughout this specification to "one embodiment," or "an embodiment," or "an instance," or "one instance" mean that a particular feature, structure, or characteristic described in connection with an embodiment is included in at least one embodiment of the present invention. Thus, the appearances of the phrase "in one embodiment," or "in an embodiment" in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0044] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms "a," "an," and "the" are intended to include the plural unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and / or "comprising," as used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.
[0045] The present disclosure provides a system and method that may overcome the above-mentioned limitations and may facilitate efficient and improved management of traffic routing related to incoming requests. In an exemplary embodiment, the system may include a service communication proxy (SCP) implementation that may facilitate evaluation, identification, and / or configuration of pairs of endpoints in an active cluster and a DR cluster prior to routing. For example, this may be performed based on a predefined SCP policy, such as a hybrid routing policy, or other related integration policy. In an exemplary embodiment, prior to routing, the system and method may enable identification / configuration of pairs of endpoints in clusters related to, for example, an active cluster and a disaster recovery (DR) cluster. The active cluster may include active endpoints to which requests may preferably be routed if the endpoints are available. The DR cluster may include DR endpoints, which may be considered as alternative endpoints for routing requests if the corresponding active endpoints in the active cluster are unavailable or not functioning.
[0046] Identification / configuration of pairs of endpoints may enable determining active endpoints and corresponding DR endpoints that may be available for routing before routing is performed, which may enable routing management of incoming requests. In an exemplary embodiment, by hybrid techniques / policies, each endpoint in an active cluster may be paired with a corresponding endpoint in a DR cluster to form a pair of endpoints. In an exemplary embodiment, an SCP may include an SCP controller that enables identification / configuration / mapping of endpoints in a disaster recovery (DR) cluster to a corresponding set of active clusters. In an exemplary embodiment, a request may be routed to an identified / configured pair if there is a case where at least one endpoint in the pair is functional. For example, an SCP may evaluate the case where an endpoint in an active cluster, e.g., a first endpoint, is unavailable, and may identify or configure a corresponding endpoint in a DR cluster, before routing a request. In another example, an SCP may evaluate the case where an endpoint, e.g., a first endpoint in an active cluster, is unavailable, and may also evaluate whether a corresponding DR endpoint (e.g., a second endpoint) related to the first endpoint is unavailable, such that a request may not be routed to the first or second endpoint in the pair at all.
[0047] In an exemplary embodiment, a hybrid routing policy may be used at the ingress and egress nodes of the SCP. In one embodiment, the hybrid routing policy endpoint details may be configured per pair such that only one endpoint in the pair may receive requests at a given time. In one example, all received requests may be routed in a round-robin fashion between the pair of endpoints.
[0048] Moreover, the system and method may be independent of the architecture, structure, functionality, and implementation of network functions of each node. Moreover, the system and method may facilitate SCP implementation that may effectively enable load balancing, routing, traffic monitoring, congestion control, service discovery, and other such functions. Various other related embodiments and advantages may be possible.
[0049] 1A-1D show a network architecture in which the proposed system can be implemented according to one embodiment of the present disclosure.
[0050] In general, the 5G network architecture can be designed in a way that multiple nodes can be closely interconnected and thus can become corresponding network functions. In one embodiment, some of the network functions of the 5G network architecture are as follows: o Access and Mobility Management Function (AMF): The AMF may receive all connection-related and session-related information from communication devices (also referred to herein as User Equipment or UE) and is responsible for handling connection and mobility management tasks. For example, the AMF may assist with termination of NAS (Non-Access Stratum) signaling, ciphering and integrity protection of NAS, as well as management tasks such as, but not limited to, registration management, connection management, mobility management, access authentication and authorization, and security context management. o Session Management Function (SMF): The SMF may perform functions related to session management, e.g., session establishment, modification, and release. Additionally, the SMF may handle User Equipment (UE) IP address allocation and management, DHCP functions, termination of NAS signaling related to session management, DL data notification, traffic steering configuration of the User Plane Function (UPF) for proper traffic routing, etc. o User Plane Function (UPF): The UPF may connect the actual data coming through the corresponding Radio Area Network (RAN) to the Internet. In an exemplary embodiment, the UPF may route and forward packets, perform packet inspection, and handle Quality of Service (QoS). Additionally, the UPF may act as an external PDU session point of interconnection to the Data Network (DN) and may also act as an anchor point for intra-RAT as well as inter-RAT mobility. o Policy Control Function (PCF): The PCF can provide a unified policy framework, policy rules for CP functions, and access subscription information for policy decisions in the UDR. Authentication Server Function (AUSF): The AUSF can act as an authentication server and function to check the authenticity of the information flowing through it. Unified Data Management (UDM): The UDM can generate Authentication and Key Agreement (AKA) credentials, handle user identification, perform access authorization, and handle subscription management. o Application Function (AF): The AF is responsible for checking the impact of applications on traffic routing, accessing the NEF and interacting with the policy framework for policy control. o Network Exposure Function (NEF): The NEF can perform functions such as publishing capabilities and events, securely providing information from external applications to the 3GPP network, and internal / external information translation. NF Repository Function (NRF): The NRF performs service discovery functions, maintains NF profiles and can check for available NF instances. o Network Slice Selection Function (NSSF): The NSSF may assist in selecting a network slice instance to serve the UE, determining the allowed NSSAI, and determining the AMF to be used to serve the UE.
[0051] It may be understood that the proposed system and architecture may not only be limited to 5G-based systems / solutions, but may also be used in independent or hybrid / integrated solutions implemented based on any or a combination of 4G, 5G, and / or 6G networks.
[0052] According to one embodiment, the system may also enhance network performance by continually coordinating with other network functions. Additionally, the system architecture may leverage service-based interactions between service consumers and service producers, either directly or indirectly via a service communication proxy (SCP).
[0053] 1A, as shown, a proposed system 100-1 may be used to implement a hybrid routing technique in a network having several active clusters as well as several inactive clusters. The system 100-1 may include a network device 102 (also referred to herein as a controller 102) that may be configured to communicate with one or more public land mobile network (PLMN) clusters, such as cluster 1, cluster 2, cluster 3, cluster 4...cluster N, associated with the network.
[0054] In one embodiment, the controller 102 communicates with multiple node devices 108-1, 108-2, 108-3, 108-N, which may consist of multiple source node devices (also referred to herein collectively as source node devices and individually as source node devices) so as to receive multiple requests to be sent to the end node devices from the source node devices. In one embodiment, the requests may be sent manually by a user via a particular source node device. In another embodiment, the requests may be generated automatically via a particular source node device.
[0055] Furthermore, the controller 102 may determine, for each of the multiple requests, a source node device along with a correspondingly mapped primary and secondary PLMN clusters from among one or more PLMN clusters. Thus, the controller 102 may determine the status of each endpoint of the pre-mapped primary PLMN cluster.
[0056] In one embodiment, if the state of each endpoint of the pre-mapped primary PLMN cluster is determined to be inactive, the controller 102 may route the request through the pre-mapped secondary PLMN cluster for transmission to the end node device.
[0057] According to one embodiment, as shown in FIG. 1A, when it is determined that the request is received from a first source node device 108-1, the controller 102 may be configured to select a first PLMN cluster, e.g., cluster 1, from one or more PLMN clusters for transmitting the request to the end node device 108-N. The controller 102 may further determine a status of all endpoints of the first PLMN cluster, i.e., cluster 1, which may be a pre-mapped primary PLMN cluster for the source node device 108-1. In one embodiment, when it is determined that the status of at least one of the endpoints of the first PLMN cluster is active, the system 100-1 may transmit the request directly to the end node device 108-N via the first PLMN cluster.
[0058] In another exemplary embodiment, if the status of at least one endpoint in the primary PLMN cluster is also determined to be active, the controller 102 may be configured to route the request directly from the source node device 108-1 to the end node device 108-N via the endpoint in the primary PLMN cluster (cluster 1) via a first primary path (as shown in FIG. 1A ).
[0059] In other embodiments, if the status of two or more endpoints in a first PLMN cluster (cluster 1) is determined to be active, the controller 102 may proportionally distribute data traffic related to requests of the multiple requests associated with the first source node device 108-1 within the network among the active endpoints of cluster 1.
[0060] In another embodiment, if the status of all endpoints of a first PLMN cluster, i.e., cluster 1, is determined to be inactive, the controller 102 may be configured to select a second PLMN cluster, e.g., cluster 3, from one or more PLMN clusters and route the request to the second PLMN cluster, i.e., cluster 3, for transmitting the request to the end node device 108-N. The second PLMN cluster may be a pre-mapped secondary PLMN cluster for the source node device 108-1. In an exemplary embodiment, the request may be routed from cluster 1 to cluster 3 using a round-robin scheme. In another exemplary embodiment, the controller 102 may be configured to route the request to cluster 3 via a first secondary path (as shown in FIG. 1A).
[0061] In one implementation, the system 100-1 can facilitate the configuration and mapping of one or more PLMN clusters as either a primary PLMN cluster or a secondary PLMN cluster based on a routing table mapping. In an example embodiment, the primary PLMN cluster may correspond to an active cluster, and the secondary PLMN cluster may correspond to a DR cluster.
[0062] In one embodiment, if the state of two or more endpoints of the second PLMN cluster (cluster 3) is determined to be active, the controller 102 may proportionally distribute data traffic related to requests of the plurality of requests associated with the first source node device 108-1 among the active endpoints of cluster 3 in the network. In one embodiment, if traffic is split between two clusters such that one cluster handles active traffic and the other cluster handles the DR cluster, the PLMN list of the DR cluster may be replaced with an alias PLMN list. In such an embodiment, this configuration may be defined in the SCP controller and / or the SCP proxy.
[0063] Furthermore, if the status of all endpoints in the secondary PLMN cluster (cluster 3) is determined to be inactive, system 100-1, via controller 102, may trigger a negative response to the request.
[0064] According to another embodiment, as shown in Figure 1B, if it is determined that the request is received from a source node device other than the first source node device, e.g., source node device 108-2, the controller 102 may be configured to select a third PLMN cluster, e.g., cluster 2, from one or more PLMN clusters to transmit the request. Further, the controller 102 may determine a state of all endpoints in the third PLMN cluster (cluster 2), which may be a pre-mapped primary PLMN cluster for the source node device 108-2.
[0065] In one embodiment, if the status of at least one of the endpoints in the third PLMN cluster (cluster 2) is determined to be active, the system 100-2 may send the request directly to the end node device 108-N via the third PLMN cluster (cluster 2).
[0066] In an exemplary embodiment, if the status of at least one endpoint in the primary PLMN cluster (cluster 3) is also determined to be active, the controller 102 may be configured to route the request directly from the source node device 108-1 to the end node device 108-N via the endpoint in the primary PLMN cluster (cluster 3) via a second primary path (as shown in FIG. 1B ).
[0067] In another embodiment, if the status of two or more endpoints of a third PLMN cluster (cluster 2) is determined to be active, the controller 102 may be configured to proportionally distribute data traffic related to requests of the plurality of requests associated with the source node device 108-2 within the network among the active endpoints of the third PLMN cluster (cluster 2).
[0068] In one embodiment, if the status of all endpoints in a third PLMN cluster (cluster 2) is determined to be inactive, the controller 102 may be configured to select a fourth PLMN cluster, e.g., cluster 4, from one or more PLMN clusters and route the request from the third PLMN cluster (cluster 2) to the fourth PLMN cluster (cluster 4), e.g., in a round robin manner, for transmitting the request to the end node device, where the fourth PLMN cluster (cluster 4) may be a pre-mapped secondary PLMN cluster for the source node device.
[0069] In an exemplary embodiment, the request may be routed from a third PLMN cluster (cluster 2) to a fourth PLMN cluster (cluster 4) via a second secondary path (as shown in FIG. 1B).
[0070] In another embodiment, if the status of all endpoints in the secondary PLMN cluster is determined to be inactive, the controller 102 may be configured to trigger a negative response to the request.
[0071] In an exemplary embodiment, a single PLMN cluster may be split into two sub-clusters, one of which may function as a third PLMN cluster and the other of which may function as a fourth PLMN cluster. In another exemplary embodiment, the controller 102 may facilitate configuration and pre-mapping of one or more PLMN clusters as either primary and secondary PLMN clusters for multiple source node devices based on the mapping of the routing table.
[0072] In one exemplary embodiment, system 100-2 may be configured to map one primary PLMN cluster to two or more secondary PLMN clusters. In another exemplary embodiment, system 100 may be configured to map two or more primary PLMN clusters to one secondary PLMN cluster.
[0073] In an exemplary embodiment, the system may also include a tertiary PLMN cluster, and if all endpoints of the secondary router are also inactive, the system 100-2 may route requests through the tertiary PLMN cluster.
[0074] In one embodiment, the number of endpoints in a primary PLMN cluster may be equal to the number of endpoints in the corresponding secondary PLMN cluster. In other embodiments, the number of endpoints in a primary PLMN cluster may be different from the number of endpoints in the corresponding secondary PLMN cluster.
[0075] As shown in FIG. 1C, network device 102 may be coupled to multiple nodes, including node 106-1, node 106-2, ... node 106-N, and configured to facilitate secure communications between the multiple nodes (hereinafter collectively referred to as nodes 106 and individually as node 106).
[0076] In one embodiment, each of the nodes can be configured to be coupled with multiple user devices 108-1, 108-2, 108-3, 108-4...108-(N-1), 108-N (collectively referred to hereinafter as user devices or UEs 108 and individually as user devices 108). In one embodiment, the system 100-3 can establish secure communications between user devices associated with different nodes. In another embodiment, the system 100-3 can establish secure communications between user devices associated with the same node.
[0077] In an exemplary embodiment, system 100-3 can effectively establish secure communications between user device 108-1 and user device 108-2, both of which are coupled to node 106-1. In another exemplary embodiment, system 100 can equally effectively establish secure communications between user device 108-2 and user device 108-N, both of which are coupled to node 106-1 and node 106-N.
[0078] In an exemplary embodiment, the network device 102 (also referred to herein as the network 102) may be configured as an application server and may be operable to communicate with the user device 108 via a network coupled to the server 104, or may be integrated with the user device 108 via a network coupled to the 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 mobile phone, such as a feature phone or a smartphone, and other devices. The user device 108 may not be limited to the aforementioned devices, and may include any type of device capable of providing wireless communications, such as a mobile phone, a tablet computer, a personal digital assistant (PDA), a personal computer (PC), a laptop computer, a media center, a workstation, and other such devices. The SCP implementation may involve an ingress node and / or an egress node. In the case of an ingress node implementation, the NF profile used for registration may include the two endpoints multiple and in the correct order. In an exemplary embodiment, a zero-based indexing may be used such that an even index of the endpoint should belong to the active cluster and an odd index should belong to the DR cluster.
[0079] In one embodiment, the proposed system 100-3 may not only solve the challenges introduced by the next generation service-based architecture, but may also be able to optimize signaling control. The system 100-3 may enable service providers to gain better visibility into the core network, which may be defined as the backbone of the network architecture. For example, in the present disclosure, the core network may relate to a 5G service-based architecture and may be configured to interconnect different networks related to the architecture. Thus, the core network may provide a path for the exchange of information between one or more of the networks and the corresponding sub-networks. Furthermore, as a backbone, the core network may connect diverse networks, e.g., local area networks (LANs), wide area networks (WANs), metropolitan area networks (MANs), etc., that may be located in the same building, in different buildings, in a canvas environment, or across a wide district. The system may also enhance the performance of the network by continuously coordinating with other network functions. According to one embodiment, the 5G system architecture may leverage service-based interactions between NF service consumers and NF service producers directly or indirectly via a service communication proxy (SCP).
[0080] In an exemplary embodiment, the network may relate to at least one of a wireless network, a wired network, or a combination thereof. The network may be implemented as one of various types of networks, such as an intranet, a LAN, a WAN, the Internet, etc. Furthermore, the network may be either a dedicated network or a shared network. A shared network may represent an association of various types of networks that may use various protocols, such as Hypertext Transfer Protocol (HTTP), Transmission Control Protocol / Internet Protocol (TCP / IP), Wireless Application Protocol (WAP), Automatic Repeat Request (ARQ), etc. In an embodiment, the network may relate to, for example, a 5G network, which may be facilitated via a satellite or terrestrial wide area access network, such as a Global System for Mobile Communications (GSM) network, a Universal Terrestrial Radio Network (UTRAN), an Enhanced Data Rate for GSM Evolution (EDGE) Radio Access Network (GERAN), an Evolved Universal Terrestrial Radio Access Network (E-UTRAN), a WIFI or other LAN access network, or a Wireless Microwave Access (WIMAX) network. Various other types of communication networks or services may be possible.
[0081] In one example, the network 102 may utilize various 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 an exemplary embodiment, wired user devices may use wired access networks exclusively or in combination with wireless access networks including, for example, plain old telephone service (POTS), public switched telephone network (PSTN), asynchronous transfer mode (ATM), and other network technologies configured to transport Internet Protocol (IP) packets.
[0082] In one embodiment, as shown in FIG. 1D, the proposed system 100-4 can facilitate the interaction of the SCP 112 with various different network components and corresponding network functions, and the SCP 112 can be communicatively coupled to all other devices via a core network 114. In one embodiment, the core network 114 can facilitate the communicative coupling of the SCP 112 with a 5G-EIR 116, which can be defined as an independent network component that may help a carrier protect its network. The 5G-EIR can help protect the network by providing a mechanism to restrict malicious user terminals in the network.
[0083] In other embodiments, the core network 114 can facilitate communication coupling between the SCP 112 and a network component supporting a network slice selection function 118 (NSSF 118), which can select a network slice instance to serve the user device 108, determine an allowed NASSAI, and determine an AMF set to be used to serve the user device 108.
[0084] In another embodiment, the SCP 112 may be coupled to a network component that supports an Authentication Server Function (AUSF) 120, which may function as an authentication server and check the authenticity of information flowing therethrough.
[0085] In yet another embodiment, the SCP 112 can be combined with network components supporting a Unified Data Management 122 (UDM 122) and Unified Data Repository 124 (UDR 124), where the UDM 122 can facilitate a centralized technique for controlling network user data. For example, the UDM 122 can generate authentication and key agreement (AKA) credentials, perform user identification processing, access authorization, and perform subscription management.
[0086] Additionally, the UDM 124 may act as a central repository for subscriber-related information and facilitate services to several network functions. For example, a 5G UDM (Unified Data Management) may use the UDR to store and retrieve data related to subscriptions. Alternatively, a PCF (Policy Control Function) may use the UDR to store and retrieve policy-related data. Additionally, a NEF (Network Exposure Function) may also use the UDR to store subscriber-related data that is authorized to be exposed to third-party applications.
[0087] In one embodiment, the SCP 112 may be coupled to a network component that supports a Network Exposure Function 126 (NEF 126), which can perform functions such as publishing capabilities and events, securely providing information from external applications to the 3GPP network, and translating internal / external information.
[0088] In yet another embodiment, the SCP 112 can be coupled with a network component supporting a 5G Network Data Analytics Function 128 (NWDAF 128), which can be configured to provide insights and suggest actions to be taken to streamline and control how core network data is generated and consumed and enhance end-user experience. In an exemplary embodiment, the NWDAF can be configured to overcome market fragmentation and proprietary solutions in the field of network analytics. Additionally, the NWDAF can: -Interface for collecting data from network nodes Predefined analytical insights Data publishing interface for consumers Three main standardization points may be addressed:
[0089] In one embodiment, the SCP 112 may be coupled with network components supporting a Session Management Function 130 (SMF 130), an Access and Mobility Management Function 132 (AMF 132), a Policy Control Function 134 (PCF 134), and an Application Function 136 (AF 136), where the SMF 130 may perform functions related to session management, such as session establishment, modification, and release. Additionally, the SMF 130 may handle User Equipment (UE) IP address allocation and management, DHCP functions, termination of NAS signaling related to session management, DL data notification, traffic steering configuration of the User Plane Function (UPF) for proper traffic routing, etc.
[0090] Additionally, the AMF 132 may receive all connection and session related information from the communication device (also referred to herein as user equipment) and may be responsible for handling connection and mobility management tasks. Additionally, the PCF 134 may provide access to a unified policy framework, policy rules for the CP function, and subscription information for policy decisions in the UDR. The AF 136 may check the impact of applications on traffic routing, may have access to the NEF, and may interact with the policy framework for policy control.
[0091] In one embodiment, the SCP 112 can be combined with network components supporting a Short Message Service Function 138 (SMSF 138), a NF Repository Function 140 (NRF 140), a Security Edge Protection Proxy 142 (SEPP 142), and a User Plane Function 144 (UPF 144). The SMSF 138 can facilitate the transfer of SMS over the NAS in the 5G architecture. Additionally, the SMSF 138 can perform subscription checks and 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).
[0092] Additionally, the NRF 140 may be configured to perform service discovery functions, maintain NF profiles, and may also check for available NF instances. A BroadForward Security Edge Protection Proxy 142 (BroadForward SEPP 142) may also facilitate secure communications between one or more 5G networks. The SEPP 140 may also provide end-to-end confidentiality and / or integrity between source and destination networks for all 5G interconnect roaming messages.
[0093] Additionally, the UPF 144 can function to connect the actual data coming in through the corresponding Radio Area Network (RAN) to the Internet. In an exemplary embodiment, the UPF 144 can route and forward packets, perform packet inspection, and handle Quality of Service (QoS). Additionally, the UPF 144 can function as an external PDU session point of interconnection to the Data Network (DN) 146, and can also function as an anchor point for intra-RAT as well as inter-RAT mobility.
[0094] It should be noted that the functionality of the SCP 112 is independent of the distance between network functions. Additionally, the SCP 112 can facilitate peer-to-peer communication between peer instances / nodes.
[0095] Moreover, the basic function of the SCP 112 is to provide end-to-end connectivity between different nodes having different deployment scenarios, architectures, and functions while efficiently managing such architectures. The routing capabilities of the proposed system 100-4 are independent of the architecture, structure, functionality, and network function implementation of each node.
[0096] In one embodiment, the present system and method may be applied as an integrated or hybrid routing solution based technique, including but not limited to any or combination of fourth generation (4G), fifth generation (5G), or sixth generation (6G) based architectures / implementations. In an exemplary embodiment, the routing solutions and algorithms may include 4G to 5G based interworking routing scenarios including interworking. For example, this implementation may include, but is not limited to: HTTP2 to HTTP Other conversions may be possible at the TCP / IP layer, for example between NEF (5G node) and SCEF (4G node), and between HSS (4G) and UDM (5G). Various other protocols may be used within the scope of this disclosure. The protocol may be obtained by converting the protocol, including:
[0097] In another exemplary embodiment, the routing solution may be designed to solve upcoming 6G routing. For example, this may be accomplished by enabling grid routing, or may be possible to plug into any protocol stack, or may be possible through implementation of other aspects. In yet another exemplary embodiment, the routing solution may include artificial intelligence (AI) based adaptive routing based on availability of historical data. In yet another exemplary embodiment, the routing solution may include adaptive circuit breaker mechanisms that may enable detection of catastrophic events in the network and may protect network elements. Various other similar aspects / embodiments may be possible.
[0098] FIG. 2, referring to FIG. 1D, shows at 200 an example diagram of an SCP implementation according to an embodiment of the present disclosure. FIG. 2 mainly shows current implementations for intelligent load balancing, routing, monitoring, and congestion control at the application layer, i.e., layer 7 of the Open System Interconnection (OSI) model, which may completely separate the service layer from the infrastructure layer. SCP may not only solve challenges related to next-generation based architectures, such as 5G service-based architectures, but may also optimize signaling control and therefore provide better visibility to the core network. SCP 112 may also enhance network performance by continuously coordinating with other network functions.
[0099] In one embodiment, the system 100 may perform interconnected functions in block 202 and facilitate communication between peer nodes and create a mesh based on discovery / information distributed by the peer nodes in block 204. In one embodiment, the proposed system includes tightly interconnected network functions. The system has the ability to discover peer nodes and forward network information. Furthermore, the system 100 may facilitate scale-up and scale-down capabilities in block 206, which may provide improved flexibility. Furthermore, the system 100 may enable utilization of the full potential of a service-based architecture in block 208. Furthermore, the system 100 may address the need for a module with some central functionality in block 210, thereby facilitating secure communication between the nodes 106 and the SCP 112 (of FIG. 1D). In one embodiment, the system optimizes the data path of information exchanged between the network functions, resolving issues including, but not limited to, congestion control, traffic prioritization, overload control, and the like. For example, the SCP 112 may be configured to control the flow of data / information between nodes by facilitating load balancing, routing, traffic monitoring, congestion control, and service discovery in a Layer 7 service mesh. In an exemplary embodiment, the system 100 may determine network function (NF) instances, and correspondingly, the SCP 112 may manage function-specific service proxy instances. In another exemplary embodiment, the NRF 140 may provide registration, re-registration, and NF discovery functionality.
[0100] In another exemplary embodiment, the system 100 may include NFs that may communicate with the NRF 140 via an SCP controller. For example, a PCF proxy running on an NF service of 'x' and an instance of 'y' may communicate with the NRF 140, which may act as a central repository and contain information about all NFs, via the SCP controller of the SCP 112. In another exemplary embodiment, the SCP controller may be trained to configure the SCP proxies based on real-time conditions. Thus, pre-configuration of the SCP proxies may not be required in the system 100.
[0101] FIG. 3A shows an example representation of a flow diagram illustrating indirect communication through the proposed system with delegated discovery according to an embodiment of the present disclosure. FIG. 3B shows an example representation of a flow diagram illustrating indirect communication through the proposed system without delegated discovery according to an embodiment of the present disclosure. With reference to FIG. 3A and FIG. 3B, the system 100 implements the SCP 112 (of FIG. 1D) to support both scenarios of indirect communication, i.e., indirect communication with / without delegated discovery, for discovery of peer network capabilities. Indirect communication without delegated discovery: As shown in 300-1 in FIG. 3A, in this case, a consumer node or consumer NF 320 (consumer NF related to the UE sending the request) may directly query the NRF 140 to obtain information related to the NF profile of a provider node or provider NF 340 (destination node to which the request needs to be sent) at 302. Based on the discovery result, the NRF 140 may send the NF profile to the consumer node 320 at 304. In an exemplary embodiment, based on the discovery result, the consumer NF 320 may select an NF instance of the NF service instance set. In 306, the consumer NF 320 may send a request to the SCP 112 including the address of the selected service producer pointing to the NF service instance or set of NF service instances. In an exemplary embodiment, the SCP 112 may possibly interact with the NRF 140 to obtain selection parameters such as location, capacity, and other such information. In 312, the SCP 112 may route the request to the selected NF service provider instance or provider node 340. At 314, the provider NF 340 may generate a service response, which may be further transmitted to the consumer NF 320 via the SCP 112 at 316. 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 may work even if the user does not perform any discovery or selection. As shown at 300-2 in FIG. 3B, in this case, the consumer mode or consumer NF 320 (consumer NF related to the UE sending the request) does not directly query the NRF 140 to obtain information related to the NF profile of the provider node or provider NF 340 (destination node to which the request needs to be sent) shown in FIG. 3A. In an exemplary embodiment, as shown in FIG. 3B, the consumer node 320 may add any necessary discovery and selection parameters to the service request required to find the appropriate provider node 340 at 322. In an exemplary embodiment, the SCP may perform discovery with the NRF 140 and obtain the discovery result. The SCP 112 may use the request address and discovery selection parameters in the request message to route the request to the appropriate producer instance / provider node 340 as shown in step 328. The provider NF 340 may then generate a service response at 330, which may be further transmitted to the consumer NF 320 via the SCP 112 at 324. Similarly, a subsequent request may be sent at 326, and the subsequent request may be further processed in the same manner.
[0102] In an exemplary embodiment, the proposed SCP 112 may also be used for indirect communication between NFs and NF services within any or a combination of Public Land Mobile Networks (PLMNs), such as, for example, a Visiting Public Land Mobile Network (VPLMN) and a Home Public Land Mobile Network (also referred to as a Home Public Land Mobile Network (HPLMN).
[0103] According to one embodiment, apart from acting as a proxy or routing agent between various network functions, the SCP 112 may also be configured to perform the following functions: · Communications Security: The SCP platform may be configured to ensure that only authorized consumer NFs can communicate with provider NFs. Load balancing: The provider NF may configure various load balancing techniques such as round robin and weighted scheduling, in which client requests may be periodically routed to available servers. Round robin server load balancing may work optimally when servers have roughly the same computing and storage capabilities. · Support for security: SCP also supports security mechanisms between consumers and providers of network services. Traffic monitoring: The SCP may monitor the performance of the provider NFs with respect to the number of service requests being processed. · Traffic prioritization: The SCP platform may be configured to prioritize the requests of a particular consumer NF over any other consumer NF. · NF Discovery: The SCP provides an interface to identify the most appropriate instance of other network function (e.g. AUSF, PCF) for a particular UE's SUPI, SUCI, or GPSI. Overload control: The SCP has the ability to set an upper limit on the number of admissions to a particular instance of a provider NF, meaning that it will not admit new consumer NFs if the number of consumer applications reaches a threshold limit.
[0104] 4A-4B show example representations 400-1 and 400-2 of a system architecture of a service communication proxy (SCP) according to one embodiment of the present disclosure. With reference to FIG. 4A, a point of delivery (POD) may be outlined by a dashed line, alongside the system boundary of the service communication proxy (SCP) 112. All other systems / components may be 3GPP-defined 5G network functions that may include a protocol interface with the SCP 112.
[0105] In one embodiment, the Service Communication Proxy (SCP) architecture includes the following functions: Indirect communication Delegated Discovery Forwarding and routing messages to destination NFs / NF services Communication security (e.g., authorization of NF service consumers to access NF service producer APIs), load balancing, monitoring, overload control, etc. Optionally interact with the UDR to resolve the UDM Group ID / UDR Group ID / AUSF Group ID / PCF Group ID / CHF Group ID / HSS Group ID based on the UE identity, e.g. SUPI or IMPI / IMPU may include at least one of the following:
[0106] In one embodiment, the proposed SCP 112 may include an SCP proxy along with an SCP controller 404. In one embodiment, the SCP proxy may be either an ingress proxy or an egress proxy, where: · Ingress Proxy: This proxy instance ensures that incoming traffic to producer NFs based on configured policy defaults is round-robin. · Egress Proxy: This proxy instance ensures that consumer egress traffic flows to the correct SCP ingress proxy and routes it based on NF or SCP selection criteria. It may be appreciated that hybrid deployments are also possible, where a single SCP instance may act as an egress proxy as well as an ingress proxy.
[0107] In one embodiment, the SCP 112 may include multiple SCP proxies as shown in FIG. 4A, which may be communicatively linked to the SCP controller 404 via an HTTP module along with the NRF, EMS, Plus, SMP, API, and various network functions. Additionally, the SCP controller 404 may be configured to manage all SCP proxy instances and select the appropriate proxy instance as an egress or ingress for the target NF during NF registration and discovery flows; to do this, the SCP controller 404 needs to be placed in front of an NRF cluster serving multiple PLMNs or a single PLMN. In an exemplary embodiment, the SCP controller 404 may configure some instances of a PLMN to act as disaster recovery (DR) endpoints for a corresponding set of active PLMN cluster endpoints.
[0108] In one embodiment, as shown in FIG. 4B, an exemplary architecture of the SCP 112 is shown. The SCP 112 may facilitate routing of requests through a combination of hardware and software implementations. FIG. 4B shows an exemplary representation of the SCP 112 of FIG. 1D according to one embodiment of the present disclosure. The SCP 112 may include one or more processors or controllers (e.g., the SCP controller 404 shown in FIG. 4A). The one or more processors or controllers 404 may be coupled to a memory 410. The memory 410 may store instructions that, when executed by the one or more processors or controllers 404, cause the SCP 112 to perform the steps described herein.
[0109] In one embodiment, the processor or controller 404 may enable routing of requests from a consumer node (pertaining to a user device sending a request) to a destination node (or provider node). For example, the processor or controller 404 of the SCP 112 may identify / configure at least one endpoint or node before routing the request. In this example, an identification of available endpoints within a cluster of endpoints may be made, where the cluster may pertain, for example, to a primary / active cluster and a secondary / DR cluster. In an exemplary embodiment, the request may be routed to an identified / configured pair if at least one endpoint within the pair may be functional. The active cluster may include an active endpoint to which the request may be preferably routed if an endpoint is available. The DR cluster may include a DC endpoint, which may be considered an alternative endpoint for routing the request if all endpoints in the primary cluster may be unavailable or non-functional.
[0110] In one example, a hybrid policy may identify the state / operational state of all endpoints in the active and DR clusters. The configuration / identification may be performed prior to routing, which may allow for effective management of incoming requests. It may also be possible to pre-plan routing directly to a DR endpoint (in a DR cluster) in cases where none of the endpoints (in an active cluster) may be available. In an alternative embodiment, multiple endpoints in an active cluster may be paired with a single DR endpoint.
[0111] In an exemplary embodiment, the identification / configuration of the pairs of endpoints may be performed based on a predefined policy of the SCP 112. For example, the predefined policy may relate to the hybrid-specific primary-secondary implementation described herein. For example, the processor or controller 404 may evaluate the case when all endpoints of the active cluster are unavailable and may be able to configure some endpoints in the corresponding DR cluster before routing the request. In another example, the processor or controller 404 may evaluate the case when none of the endpoints of the active cluster are available and may also be able to evaluate if all endpoints of the corresponding DR are unavailable such that the request may not be routed at all. This may eliminate unnecessary rerouting and may facilitate an effective routing step. In an exemplary embodiment, the identification / configuration of the endpoints may be performed based on a predefined criterion. For example, the predefined criterion may relate to a header routing criterion that may enable the processor or controller 404 of the SCP 112 to determine which endpoints should be selected (prior to routing) based on availability. Various other examples are provided in the following paragraphs, but the disclosure may not be limited by these examples. In one example, the header routing criteria may be predefined in 3GPP TS 29.500. For example, but not limited to, the header routing criteria may include: a) 3gpp-sbi-discovery b) 3gpp-sbi-target-apiroot c) 3gpp-sbi-binding / 3gpp-sbi-routing-binding In an exemplary embodiment, if multiple predefined criteria or header routing criteria are considered, the processor or controller 404 may be able to prioritize the predefined criteria to enable appropriate selection / identification / configuration of the endpoint prior to routing of the request. Various other embodiments may be possible.
[0112] The SCP implementation may involve an ingress node and / or an egress node. For an ingress node implementation, the NF profile used for registration may include two endpoints in multiples and in the correct order. In an example embodiment, zero-based indexing may be used such that an even index of the endpoint should belong to the active cluster and an odd index should belong to the DR cluster.
[0113] 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 other capabilities, the processor or controller 404 may be configured to fetch and execute computer-readable instructions stored in the memory 410 of the SCP 112. The memory 410 may be configured to store one or more computer-readable instructions or routines in a non-transitory computer-readable storage medium, and the one or more computer-readable instructions or routines may be fetched and executed to create or share data packets via the network service. The memory 410 may comprise any non-transitory storage device, including, for example, a volatile memory such as a RAM, or a non-volatile memory such as an EPROM, a flash memory, and the like.
[0114] In one embodiment, the SCP 112 may include an interface 412. The interface 412 may comprise various interfaces, for example, interfaces for data input and output devices, referred to as I / O devices, storage devices, etc. The interface 412 may facilitate communications for the SCP 112. The interface 412 may also provide a communications path for one or more components of the SCP 112. Examples of such components include, but are not limited to, a processing engine or module 404-1, and a database 424.
[0115] The processing engine or module 404-1 may be implemented as a combination of hardware and programming (e.g., programmable instructions) to implement one or more functions 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-transitory 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) to execute such instructions. In this 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, the SCP 112 may comprise a machine-readable storage medium that stores the instructions and the processing resources that execute the instructions, or the machine-readable storage medium may be separate from, but accessible to, the SCP 112 and the processing resources. In other examples, the processing engine or module 404-1 may be implemented by electronic circuitry.
[0116] In one embodiment, the processor or controller 404 may be associated with an ingress controller that allows for processing / controlling one or more aspects of an incoming request received at an ingress node (entry point) of the SCP 112. In another embodiment, the processor or controller 404 may be associated with an egress controller that allows for processing / controlling one or more aspects of a request being routed at an egress node (exit point) of the SCP 112. In yet another embodiment, the processor or controller 404 may be associated with a unified controller that includes both ingress and egress controllers that allow for processing / controlling one or more aspects of an incoming request received at an ingress node (entry point) of the SCP 112 and / or that allows for processing / controlling one or more aspects of a request being routed at an egress node (exit point) of the SCP 112.
[0117] The processing engine or module 404-1 of the SCP 112 may include one or more components including a receiving module 416, a proxy information module 418, a routing module 420, and other modules or components 422, as shown in FIG. 4B. In one embodiment, the receiving module 416 may enable receiving incoming requests from consumer modules via an ingress controller, and the routing module 420 may enable routing the requests to provider nodes via an egress controller. The proxy information module 418 may enable collecting or storing information related to available proxies or endpoints related to the active and / or DR clusters. The other modules or components 422 may include, but are not limited to, an ingress module (related to an ingress node), an egress module (related to an egress node), a load balancer, an edge router configuration module, a mapping module (that maps endpoints related to the active and / or DR clusters), 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, database 210 may include data that may be stored or generated as a result of functions implemented by any of the components of SCP 112's processing engine module 404-1.
[0118] 5 illustrates an example overview of an SCP deployment based on 5G capabilities and SCPs deployed in separate deployment units, according to one embodiment of the present disclosure. Referring to FIG. 5, an overview of an SCP deployment is shown at 500, where the SCP deployment may be based on 5G capabilities and the SCPs may be deployed in separate deployment units. Further, the system 100 hereinafter includes: one SCP proxy instance for a single NF type considered for one PLMN, One SCP proxy instance for multiple NF types considered for one PLMN; One SCP proxy instance for multiple NF types considered for multiple PLMNs; Multiple proxies in a single PLMN for multiple NF types; and A single SCP controller for multiple NRF instances considered for multiple PLMNs may be designed to support
[0119] In one embodiment, the system 100 may be configured to provide different types of routing techniques for the SCP proxy, and the routing techniques may be implemented according to different NF teams and their GR / DR processing requirements. In one embodiment, an ingress hybrid routing technique may be used at the ingress proxy, and an egress hybrid routing technique may be used at the egress proxy. In these routing techniques, a GR cluster or a DR cluster may be defined based on a PLMN list. In one example, the proposed hybrid routing technique may also be integrated with other policies, such as an active-active routing policy, an active-standby routing policy, etc., which may ensure utilization of all endpoints in an initially active cluster.
[0120] 6, the system 100 can perform hybrid traffic separation, including traffic from other sites, via network function mapping between a primary site (not shown) and a disaster recovery (DR) site 610 such that requests can be routed to a DR-defined network function if the primary site is not operational. The system 100 can also separate traffic within a circle. Traffic of the same circle can be routed to one cluster at 604, and traffic from other circles received as DR traffic can be processed by a different cluster at 602.
[0121] In one embodiment, to separate the traffic between two clusters, where one cluster handles active traffic at 608 and the other cluster handles DR traffic at 608, the system 100 can replace the PLMN list of the DR cluster with some alias PLMN list. This configuration can be defined by the SCP controller as well as the SCP proxy.
[0122] FIG. 7A shows an exemplary flow diagram representing a hybrid-specific primary secondary routing technique, where a request from another site apart from a particular site, e.g., a site in Nagpur, may be obtained at 702, and a request from a site in Nagpur may be obtained at 706. Then, at 704, it is checked whether any / at least one endpoint is active. If yes, the obtained request may be sent and distributed in the primary cluster 710. However, if none of the endpoints are found to be active, then at 708, it is checked whether the obtained request is from Nagpur. If yes, then at 712, it is again checked whether any / at least one endpoint is active.
[0123] In one embodiment, if the captured request is found not to be from Nagpur at 708, it is served to the DR cluster 720 in Nagpur.
[0124] In one embodiment, if at least one endpoint is found to be active at 712, the retrieved request is sent and distributed at the active cluster 730 in Nagpur. However, if none of the endpoints are found to be active at 712, the retrieved request is provided to the DR 740 in Nagpur.
[0125] FIG. 7B, which refers to FIG. 7A, illustrates the functioning of the hybrid-specific primary-secondary routing technique when the active cluster at Nagpur is not operational.
[0126] In one embodiment, the hybrid routing protocol uses distance vectors for a more accurate metric to determine the best path to the destination network and can report routing information only if there is a change in the topology of the network. Hybrid routing may also enable quick convergence, but requires less processing power and memory compared to link state routing. Furthermore, the proposed system 100 can solve problems such as, but not limited to, congestion control, traffic prioritization, and overload control, thereby optimizing the data path of information exchanged between various network functions, thereby avoiding cases of data blockage, data loss, and data replacement.
[0127] In one embodiment, the processor or controller 404 may be associated with an ingress controller that allows for processing / controlling one or more aspects of an incoming request received at an ingress node (entry point) of the SCP 112. In another embodiment, the processor or controller 404 may be associated with an egress controller that allows for processing / controlling one or more aspects of a request being routed at an egress node (exit point) of the SCP 112. In yet another embodiment, the processor or controller 404 may be associated with a unified controller that includes both ingress and egress controllers that allow for processing / controlling one or more aspects of an incoming request received at an ingress node (entry point) of the SCP 112 and / or that allows for processing / controlling one or more aspects of a request being routed at an egress node (exit point) of the SCP 112.
[0128] In one embodiment, the system 100 may be configured to provide different types of routing techniques to the SCP proxy 402, which may be implemented according to different NF teams and their GR / DR processing requirements. In one embodiment, an ingress hybrid routing technique may be used at the ingress proxy, and an egress hybrid routing technique may be used at the egress proxy. In these routing techniques, a GR cluster or a DR cluster may be defined based on a PLMN list. In one example, the proposed hybrid routing technique may also be integrated with other policies, which may ensure utilization of all endpoints in the initially active cluster.
[0129] Thus, the proposed system 100 can solve problems such as, but not limited to, congestion control, traffic prioritization, and overload control, thereby optimizing data paths for information exchanged between various network functions, thereby avoiding cases of data blockage, data loss, and data substitution.
[0130] 8 illustrates an example representation related to primary-secondary hybrid routing according to one embodiment of the present disclosure. In an example embodiment, three clusters, namely Cluster A, Cluster B, and Cluster C, can be configured as either primary or secondary clusters based on the hybrid-specific primary-secondary hybrid routing table shown. In one instance, Cluster B can function as an independent active cluster as well as a DR cluster for either or both Cluster A and Cluster C.
[0131] FIG. 9 illustrates an exemplary representation showing an integrated implementation including various routing policies, according to one embodiment of the present disclosure.
[0132] As shown in FIG. 9, for consumer nodes, the system or SCP 112 may enable an integrated implementation to include various routing policies that may be used to determine the specific routing of a request. For example, the table shows routing based on a hybrid routing policy of the SCP including routing between endpoints configured in an active cluster and a DR cluster based on active and standby modes as described above. In another example, the table shows routing based on an active-active routing policy of the SCP including routing between endpoints in an active cluster to ensure that all endpoints in the active cluster may be effectively utilized. In another example, the table shows routing based on an active-standby routing policy of the SCP including routing between endpoints in a primary cluster and a secondary cluster, where endpoints in the active cluster may be paired with endpoints in the DR cluster such that if one endpoint in the active cluster is unavailable, the request is routed to the corresponding paired endpoint in the DR cluster. In another example, the table shows routing based on a primary-secondary routing policy of the SCP including routing between endpoints in a primary cluster and a secondary cluster.
[0133] 10 shows an example representation of a flow diagram illustrating a proposed method 1000 for implementing a hybrid routing technique in a network. The method 1000 may include, at step 1002, collecting, at a controller in communication with one or more public land mobile network (PLMN) clusters associated with the network, a plurality of requests to be transmitted from a plurality of source node devices to an end node device.
[0134] In one embodiment, the method 1000 may include, at step 1004, determining in the controller, for each of the plurality of requests collected in step 1002, a source node device along with a correspondingly mapped primary PLMN cluster and secondary PLMN cluster from among one or more PLMN clusters.
[0135] In another embodiment, the method 1000 may include determining, at the controller, a state of each endpoint of the pre-mapped primary PLMN cluster, at step 1006. Additionally, the method 1000 may include, at step 1008, routing the request through the pre-mapped secondary PLMN cluster for transmission to the end node device if the state of each endpoint of the pre-mapped primary PLMN cluster is determined to be inactive at step 1006.
[0136] In one embodiment, if it is determined that the request is received from a first source node device, the method 1000 may include selecting a first PLMN cluster from one or more PLMN clusters to transmit the request, and then determining a status of all endpoints of the first PLMN cluster, where the first PLMN cluster may be a pre-mapped primary PLMN cluster for the first source node device.
[0137] In another embodiment, if the status of all endpoints of the first PLMN cluster is determined to be inactive, the method 1000 may include selecting a second PLMN cluster from the one or more PLMN clusters, and then routing the request from the first PLMN cluster to the second PLMN cluster for transmission to a terminal node device, where the second PLMN cluster may be a pre-mapped secondary PLMN cluster for the first source node device.
[0138] In one embodiment, if the status of at least one of the endpoints of the first PLMN cluster is determined to be active, the method 1000 may include sending the request directly to a terminal node device via the first PLMN cluster.
[0139] In other embodiments, if the state of two or more endpoints of any of the first and second PLMN clusters is determined to be active, the method 1000 may include proportionally distributing data traffic related to requests of the plurality of requests associated with the first source node device within the network among the active endpoints of the PLMN clusters.
[0140] According to another embodiment, if it is determined that the request is received from a source node device other than the first source node device, the method 1000 may include selecting a third PLMN cluster from one or more PLMN clusters for transmitting the request and determining a state of all endpoints of the third PLMN cluster, where the third PLMN cluster may be a pre-mapped primary PLMN cluster for the source node device.
[0141] Further, if the status of all endpoints in the third PLMN cluster is determined to be inactive, the method 1000 may include selecting a fourth PLMN cluster from the one or more PLMN clusters, and routing the request from the third PLMN cluster to the fourth PLMN cluster for transmission to a terminating node device, where the fourth PLMN cluster may be a pre-mapped secondary PLMN cluster for the source node device.
[0142] In one embodiment, if the status of at least one of the endpoints of the third PLMN cluster is determined to be active, the method 1000 may include sending the request directly to the end node device via the third PLMN cluster.
[0143] In one embodiment, the method 1000 may include a step of dividing a single PLMN cluster into two sub-clusters, one of which may function as a third PLMN cluster and the other of which may function as a fourth PLMN cluster.
[0144] In one embodiment, if the state of two or more endpoints of any of the third and fourth PLMN clusters is determined to be active, the method 1000 may include proportionally distributing data traffic related to requests of a plurality of requests associated with a source node device other than the first source node device in the network among the active endpoints of the PLMN clusters.
[0145] In another embodiment, the method 1000 may facilitate configuration of one or more PLMN clusters as either a primary PLMN cluster and a secondary PLMN cluster for a plurality of source node devices based on a mapping of a routing table.
[0146] In yet another embodiment, if the status of all endpoints in the secondary PLMN cluster is determined to be inactive, the method 1000 may include triggering a negative response to the request.
[0147] FIG. 11 illustrates an exemplary computer system in which embodiments of the present disclosure may be utilized.
[0148] As shown in FIG. 11, computer system 1100 may include external storage device 1110, bus 1120, main memory 1130, read-only memory 1140, mass storage device 1150, communication port 1160, and processor 1170. Those skilled in the art will appreciate that computer systems may include more than one processor and communication port. Processor 1170 may include various modules related to embodiments of the present invention. Communication port 1160 may be any of RS-232 ports for use with modem-based dial-up connections, 10 / 100 Ethernet ports, gigabit or 10 gigabit ports using copper or fiber, serial ports, parallel ports, or other existing or future ports. Communication port 1160 may be selected depending on the network, such as a local area network (LAN), wide area network (WAN), or any network to which the computer system connects. Memory 1130 may be random access memory (RAM), or any other dynamic storage device commonly known in the art. Read-only memory 1140 can be any static storage device, such as, but not limited to, a programmable read-only memory (PROM) chip for storing static information, such as, for example, boot-up instructions or BIOS instructions for processor 1170. Mass storage 1150 can be any current or future mass storage solution that can be used to store information and / or instructions.
[0149] Bus 1120 communicatively couples processor 1170 to other memory, storage, and communication blocks and can be, for example, a Peripheral Component Interconnect (PCI) / PCI-Extension (PCI-X) bus for connecting expansion cards, drives, and other subsystems, a Small Computer System Interface (SCSI), USB, etc., as well as other buses such as a Front Side Bus (FSB) that connects processor 1170 to a software system.
[0150] Optionally, operator and management interfaces, such as a display, keyboard, and cursor control devices, may also be coupled to bus 1120 to support direct operator interaction with the computer system. Other operator and management interfaces may be provided through a network connection connected through communications port 1160. The components described above are intended only to illustrate various possibilities. In no way should the aforementioned exemplary computer system limit the scope of the present disclosure.
[0151] Although the embodiments herein are described with respect to a network device, it will be understood that the proposed systems and methods can be implemented in any computing or external device without departing from the scope of the present invention.
[0152] Although considerable emphasis has been placed herein on the preferred embodiment, it will be understood that many embodiments can be made and that many changes can be made in the preferred embodiment without departing from the principles of the invention. These and other changes in the preferred embodiment of the invention will be apparent to those skilled in the art from this disclosure, and it should thereby be clearly understood that the foregoing description is to be taken merely as illustrative of the invention and not as a limitation.
[0153] While the above describes various embodiments of the present invention, other and further embodiments of the present invention may be devised without departing from the basic scope of the present invention. The scope of the present invention is determined by the claims that follow. The present invention is not limited to the described embodiments, versions, or examples, which, when combined with information and knowledge available to those skilled in the art, are included to enable those skilled in the art to make and use the invention.
[0154] Advantages of the present disclosure The present disclosure provides systems and methods that facilitate managing traffic associated with incoming requests by enabling efficient and improved routing of the traffic.
[0155] The present disclosure provides systems and methods that may be independent of each node's architecture, structure, functionality, and implementation of network functions.
[0156] The present disclosure provides systems and methods that facilitate SCP implementations that enable load balancing, routing, traffic monitoring, congestion control, service discovery, and other such functions in an efficient manner.
[0157] Abbreviation table Abbreviation Full form PSTN Public Switched Telephone Network PLMN Public Land Mobile Network SCP Service Communication Proxy DR Disaster Recovery AMF Access and Mobility Management Functions NAS non-access layer SMF Session Management Facility UE User Equipment UPF User Plane Function RAN Radio Area Network QoS Quality of Service DN Data Network PCF Policy Control Function ASF authentication server function UDM Unified Data Management AF Application Features NEF Network Exposure Function NF Network Function NRF NF Repository Function NSSF Network Slice Selection Function UDR Unified Data Repository AKA Authentication and Key Agreement NWDAF network data analysis function SMSF Short Message Service Facility SEPP Security Edge Protection Proxy SMSC Short Message Service Center VPLMN Visiting Public Land Mobile Network HPLMN Home Public Land Mobile Network [Explanation of symbols]
[0158] 100 Systems 100-1 System 100-2 System 100-3 System 100-4 System 102 Network devices, controllers, networks 104 Server 106, 106-1 to 106-N nodes 108 User Device, UE 108-1~108N User devices, node devices 108-1 First source node device 108-N End Node Device 112 SCP, Service Communication Proxy (SCP) 114 Core Network 116 5G-EIR 118 Network Slice Selection Function, NSSF 120 Authentication Server Function (AUSF) 122 Unified Data Management, UDM 124 Unified Data Repository, UDR 126 Network Exposure Function, NEF 128 5G network data analysis function, NWDAF 130 Session Management Facility, SMF 132 Access and Mobility Management Function, AMF 134 Policy Control Function, PCF 136 Application Functions, AF 138 Short Message Service Facility, SMSF 140 NF Repository Function, NRF 142 Security Edge Protection Proxy, SEPP, Carryover Security Edge Protection Proxy, Carryover SEPP 144 User Plane Function, UPF 146 Data Network (DN) 210 Database 320 Consumer Node or Consumer NF, Consumer Node, Consumer NF 340 Provider Node or Provider NF, NF Service Provider Instance or Provider Node, Provider NF, Producer Instance / Provider Node 400-1 Service Communication Proxy (SCP) System Architecture 400-2 Service Communication Proxy (SCP) System Architecture 404 SCP Controller, Processor or Controller 404-1 Processing engine or module, processing engine module 410 Memory 412 Interface 416 Receiver Module 418 Proxy Information Module 420 Routing Module 422 Other Modules or Components 424 Database 610 Disaster Recovery (DR) Site 710 Primary Cluster 720 DR Cluster in Nagpur 730 Active Clusters in Nagpur 740 DR of Nagpur 1100 Computer Systems 1110 External storage device 1120 Bus 1130 Main memory 1140 Read-only memory 1150 Mass storage devices, mass storage 1160 communication port 1170 Processor
Claims
1. A system (100) for enabling hybrid routing in a network, comprising: a controller (102) in communication with one or more public land mobile network (PLMN) clusters associated with the network, a plurality of source node devices, and end node devices, the controller comprising one or more processors coupled to a memory storing instructions executable by the one or more processors; collecting a plurality of requests to be sent to the end node device from a plurality of source node devices in communication with the controller; For each of the plurality of requests, determining a source node device along with corresponding pre-mapped primary and secondary PLMN clusters from among the one or more PLMN clusters; determining a state of each endpoint of said pre-mapped primary PLMN cluster; if the state of each endpoint of the pre-mapped primary PLMN cluster is determined to be inactive, route the request through the pre-mapped secondary PLMN cluster for transmission to the end node device. A controller (102) configured to A system (100) comprising:
2. If it is determined that the request is received from a first source node device (108-1), the controller (102) is further configured to: select a first PLMN cluster from the one or more PLMN clusters to transmit the request to; determine a state of all endpoints of the first PLMN cluster; and determine whether the first PLMN cluster is a pre-mapped primary PLMN cluster for the first source node device (108-1); When the state of all the endpoints of the first PLMN cluster is determined to be inactive, the controller (102) is configured to select a second PLMN cluster from the one or more PLMN clusters and route the request to the second PLMN cluster for transmission to the end node device (108-N), the second PLMN cluster being a pre-mapped secondary PLMN cluster for the source node device (108-1).
2. The system (100) of claim 1.
3. 3. The system (100) of claim 2, wherein if a state of at least one of the endpoints of the first PLMN cluster is determined to be active, the controller (102) is further configured to send the request directly to the end node device (108-N) via the first PLMN cluster.
4. 3. The system of claim 2, wherein if a state of two or more endpoints of any of the first and second PLMN clusters is determined to be active, the controller is further configured to proportionally distribute data traffic related to requests of the plurality of requests associated with the first source node device among the active endpoints of the PLMN clusters within the network.
5. 5. The system of claim 4, wherein the controller is configured to replace the second PLMN cluster with another PLMN cluster when the second PLMN cluster processes failure recovery traffic, the configuration being defined as a service communication proxy (SCP) controller and / or an SCP proxy.
6. If it is determined that the request is received from a source node device other than the first source node device (108-2), the controller (102) is further configured to: select a third PLMN cluster from the one or more PLMN clusters for transmitting the request; and determine a state of all endpoints of the third PLMN cluster, the third PLMN cluster being a pre-mapped primary PLMN cluster for the source node device (108-2); if the states of all the endpoints in the third PLMN cluster are determined to be inactive, the controller (102) is further configured to select a fourth PLMN cluster from the one or more PLMN clusters and route the request from the third PLMN cluster to the fourth PLMN cluster for transmitting the request to the end node device, the fourth PLMN cluster being a pre-mapped secondary PLMN cluster for the source node device (108-2); 3. The system (100) of claim 2.
7. 6. The system (100) of claim 5, wherein if a state of at least one of the endpoints of the third PLMN cluster is determined to be active, the controller (102) is further configured to send the request directly to the end node device via the third PLMN cluster.
8. 6. The system of claim 5, wherein the controller is configured to divide a single PLMN cluster of the one or more PLMN clusters into two sub-clusters, one of the two sub-clusters functioning as the third PLMN cluster and the other sub-cluster functioning as the fourth PLMN cluster.
9. 6. The system (100) of claim 5, wherein if the state of two or more endpoints of any of the third and fourth PLMN clusters is determined to be active, the controller (102) is further configured to proportionally distribute data traffic related to requests of the plurality of requests associated with a source node device other than the first source node device (108-2) within the network among the active endpoints of the PLMN clusters.
10. 6. The system of claim 5, wherein the controller is further configured to facilitate configuration of the one or more PLMN clusters as either the primary PLMN cluster or the secondary PLMN cluster for a plurality of source node devices based on a mapping of a routing table.
11. 6. The system (100) of claim 5, wherein the controller (102) is further configured to trigger a negative response corresponding to the request if a state of all of the endpoints in the secondary PLMN cluster is determined to be inactive.
12. A method (1000) for enabling hybrid routing in a network, comprising: collecting (1002) a plurality of requests to be sent to an end node device from a plurality of source node devices in a controller in communication with one or more public land mobile network (PLMN) clusters associated with the network; determining (1004) in the controller, for each of the plurality of requests, a source node device along with corresponding pre-mapped primary and secondary PLMN clusters from among the one or more PLMN clusters; determining (1006) in the controller a state of each endpoint of the pre-mapped primary PLMN cluster; if the state of each endpoint of the pre-mapped primary PLMN cluster is determined to be inactive, routing the request through the pre-mapped secondary PLMN cluster for sending the request to at least one of one or more end node devices (1008); A method (1000).
13. If it is determined that the request is received from a first source node device, the method (1000) includes the steps of selecting a first PLMN cluster from the one or more PLMN clusters to transmit the request, and then determining a state of all endpoints of the first PLMN cluster, the first PLMN cluster being a pre-mapped primary PLMN cluster for the first source node device; If the state of all the endpoints of the first PLMN cluster is determined to be inactive, the method (1000) includes the steps of selecting a second PLMN cluster from the one or more PLMN clusters, and routing the request from the first PLMN cluster to the second PLMN cluster for sending the request to an end node device, the second PLMN cluster being a pre-mapped secondary PLMN cluster for the first PLMN cluster. The method (1000) of claim 11.
14. 13. The method (1000) of claim 12, further comprising, if a state of at least one of the endpoints of the first PLMN cluster is determined to be active, transmitting the request directly to the end node device via the first PLMN cluster.
15. 13. The method of claim 12, further comprising the step of: if the state of two or more endpoints of any of the first and second PLMN clusters is determined to be active, the method comprising the step of proportionally distributing data traffic relating to requests of the plurality of requests associated with the first source node device within the network among the active endpoints of the PLMN clusters.
16. If it is determined that the request is received from a source node device other than the first source node device, the method (1000) includes the steps of selecting a third PLMN cluster from the one or more PLMN clusters for transmitting the request, and determining a state of all endpoints of the third PLMN cluster, the third PLMN cluster being a pre-mapped primary PLMN cluster for the source node device; If the state of all the endpoints in the third PLMN cluster is determined to be inactive, the method (1000) includes selecting a fourth PLMN cluster from the one or more PLMN clusters and routing the request from the third PLMN cluster to the fourth PLMN cluster for transmitting the request to the end node device, the fourth PLMN cluster being a pre-mapped secondary PLMN cluster for the source node device.
13. The method (1000) of claim 12.
17. 16. The method (1000) of claim 15, wherein if a state of at least one of the endpoints of the third PLMN cluster is determined to be active, the method (1000) includes a step of directly transmitting the request to the end node device via the third PLMN cluster.
18. 16. The method of claim 15, wherein the method includes dividing a single PLMN cluster into two sub-clusters, one of the two sub-clusters serving as the third PLMN cluster and the other sub-cluster serving as the fourth PLMN cluster.
19. 16. The method of claim 15, further comprising the step of: if the state of two or more endpoints of any of the third and fourth PLMN clusters is determined to be active, the method comprising the step of proportionally distributing data traffic related to requests of the plurality of requests associated with a source node device other than the first source node device within the network among the active endpoints of the PLMN clusters.
20. 16. The method of claim 15, further comprising: facilitating configuration of the one or more PLMN clusters as either the primary PLMN cluster or the secondary PLMN cluster for a plurality of source node devices based on a mapping of a routing table.
21. 16. The method (1000) of claim 15, further comprising the step of triggering a negative response corresponding to the request if the status of all the endpoints in the secondary PLMN cluster is determined to be inactive.
22. A non-transitory computer-readable storage medium including machine-executable instructions for: collecting a plurality of requests to be sent to the end node device from a plurality of source node devices in communication with the controller; For each of the plurality of requests, determining a source node device along with corresponding pre-mapped primary and secondary PLMN clusters from among the one or more PLMN clusters; determining a state of each endpoint of said pre-mapped primary PLMN cluster; if the state of each endpoint of the pre-mapped primary PLMN cluster is determined to be inactive, route the request through the pre-mapped secondary PLMN cluster for transmission to the end node device. A non-transitory computer-readable storage medium executable by a processor, such as a
Citation Information
Patent Citations
Method, system, and computer-readable medium for providing service proxy functionality in a telecommunications network core using a service-based architecture
JP2022506176A
Method and apparatus for routing data in a wireless communication system
US20180132118A1
Communication method and apparatus, entity, and storage medium
US20210392522A1
Routing communication in telecommunications network having multiple service communication proxies
WO2021160676A1