Method, system and computer readable medium for distributing an S1 connection to a mobility management entity (MME) and an N2 connection to an access and mobility management function (AMF) - Patents.com

JP7641363B2Active Publication Date: 2025-03-06ORACLE INT CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2023518266
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-09-21
Filing Date
2021-03-24
Publication Date
2025-03-06
Estimated Expiration
2041-03-24

Smart Images

  • Figure 0007641363000001
    Figure 0007641363000001
  • Figure 0007641363000002
    Figure 0007641363000002
  • Figure 0007641363000003
    Figure 0007641363000003
Patent Text Reader

Abstract

A method for distributing connections to mobility management node instances includes issuing IP addresses for receiving connection requests and ingress messages from RAN nodes. The method further includes maintaining connection loading measurements for the mobility management node instances, receiving connection request messages generated by RAN nodes to initiate connections with one of the mobility management node instances, applying a connection distribution algorithm to select a mobility management node instance for processing the connection request message, and creating an association between the IP address of the selected mobility management node instance and the IP address and port of the RAN node extracted from source IP address and source port fields of the connection request. The method further includes forwarding the connection request message to the selected mobility management node instance.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] Priority claim This application claims the benefit of priority to U.S. Patent Application No. 17 / 027,633, filed September 21, 2020, the disclosure of which is incorporated herein by reference in its entirety.

[0002] Technical Field The subject matter described herein relates to connection distribution in a mobile communication network. More particularly, the subject matter described herein relates to a method, a system, and a computer-readable medium for distributing an S1 connection to an MME and an N2 connection to an AMF. [Background technology]

[0003] background In a 4G mobile communication network, a mobility management entity is a node that communicates with a radio access node to perform mobility-related functions on behalf of a mobile subscriber. In a 5G communication network, an AMF is a node that communicates with a radio access node to perform mobility-related functions on behalf of a user. The connection between a radio access node and an MME node is referred to as an S1 connection because the interface between the radio access node and the MME is an S1 interface. Similarly, in a 5G communication network, the interface between a radio access node and an AMF is referred to as an N2 interface, and the connection via this interface is referred to as an N2 connection.

[0004] One problem that arises in mobile communication networks is that MME and AMF nodes may have to be scaled up or down, especially in a cloud configuration. During the scale-up or scale-down of an MME or AMF node, it may be necessary to add or remove an S1 or N2 connection. Adding or removing an S1 or N2 connection may be disruptive to the radio access nodes.

[0005] In view of these problems, there is a need for improved methods, systems, and computer-readable media for enabling reconfiguration of MME or AMF nodes without adversely affecting S1 or N2 connections with radio access nodes. Summary of the Invention

[0006] overview The method for distributing connections to mobility management node instances includes issuing Internet Protocol (IP) addresses for receiving connection requests (such as S1 or N2 connection requests) and ingress messages from Radio Access Network (RAN) nodes. The method further includes the connection load balancer maintaining connection loading measurements of the mobility management node instances. The method further includes receiving at the connection load balancer a connection request message generated by a RAN node to initiate a connection with one of the mobility management node instances. The method further includes the connection load balancer applying a connection distribution algorithm to select a mobility management node instance for processing the connection request message. The method further includes the connection load balancer creating, for protocol continuity, in a database or cache, at least partially populated by the connection load balancer, an association between an IP address of the selected mobility management node instance and an IP address and port of the RAN node extracted from a source IP address field and a source port field of the connection request message. The method further includes the step of the connection load balancer forwarding the connection request message to the mobility management node instance selected using the connection distribution algorithm.

[0007] In accordance with yet another aspect of the subject matter described herein, issuing the IP address includes the connection load balancer broadcasting a gratuitous ARP or Internet Control Management Protocol version 6 (ICMPv6) neighbor discovery message, the gratuitous ARP or ICMPv6 neighbor discovery message associating the IP address with a Media Access Control (MAC) address of the connection load balancer.

[0008] According to yet another aspect of the subject matter described herein, the IP address issued by the connection load balancer may be associated with a loopback interface of the mobility management node instance. Associating the IP address with the loopback address of the mobility management node instance allows the mobility management node instance to use the IP address as an alias without broadcasting an Address Resolution Protocol (ARP) or ICMP message containing the IP address.

[0009] According to yet another aspect of the subject matter described herein, determining whether the message is an initial message or a subsequent message may include determining that the message is an initial message, and determining whether the connection is assigned to one of the mobility management node instances may include determining that the connection is not assigned to one of the mobility management node instances. If the message is determined to be an initial message and the connection is not assigned to one of the mobility management node instances, an S1 connection is assigned to one of the mobility management node instances using a load balancing algorithm. The initial message is then forwarded to the mobility management node instance assigned to the S1 connection.

[0010] In accordance with yet another aspect of the subject matter described herein, determining whether the message is an initial message or a subsequent message associated with an S1 connection may include determining that the message is a subsequent message. Determining whether the S1 connection associated with the subsequent message is assigned to one of the message processors may include determining that the S1 connection is assigned to one of the mobility management node instances. If the message is determined to be a subsequent message with the S1 connection assigned to one of the mobility management node instances, the message may be forwarded to the assigned mobility management node instance.

[0011] According to yet another aspect of the subject matter described herein, determining whether the message is an initial message or a subsequent message may include determining that the message is an initial message, and determining whether the connection is assigned to one of the mobility management node instances may include determining that the connection is not assigned to one of the mobility management node instances. If the message is determined to be an initial message and the connection is not assigned to one of the mobility management node instances, an N2 connection is assigned to one of the mobility management node instances using a load balancing algorithm. The initial message is then forwarded to the mobility management node instance assigned to the N2 connection.

[0012] In accordance with yet another aspect of the subject matter described herein, determining whether the message is an initial message or a subsequent message associated with an N2 connection may include determining that the message is a subsequent message. Determining whether the N2 connection associated with the subsequent message is assigned to one of the message processors may include determining that the N2 connection is assigned to one of the mobility management node instances. If the message is determined to be a subsequent message with the N2 connection assigned to one of the mobility management node instances, the message may be forwarded to the assigned mobility management node instance.

[0013] In accordance with another aspect of the subject matter described in this specification, a method for distributing connections to a mobility management node instance includes listening at the mobility management node instance to the IP address issued by the connection load balancer.

[0014] According to another aspect of the subject matter described herein, a group refers to a group of connections initiated from a particular peer RAN node towards the mobility management node. Thus, connections from each peer RAN node are separated into different groups in the connection load balancer. Each group is identified in the connection load balancer by the IP address of the peer RAN node used as a source address for the initial message.

[0015] In accordance with yet another aspect of the subject matter described herein, for each S1 connection request that lands at a connection load balancer, its source IP address is used to identify the group for which the load balancing algorithms are evaluated.

[0016] In accordance with yet another aspect of the subject matter described herein, the step of assigning one of the mobility management node instances to the S1 connections using a load balancing algorithm includes maintaining a group count of each of the mobility management node instances for each group, the group count indicating the number of S1 connections assigned to each mobility management node instance. For each mobility management node instance, a group count difference between the group count of the mobility management node instance and a minimum group count of the mobility management node instance is calculated. Message processors having a group count difference less than a connection distribution threshold are included as connection distribution candidates. Mobility management node instances having a group count difference equal to or greater than the connection distribution threshold are excluded from consideration as connection distribution candidates.

[0017] In accordance with yet another aspect of the subject matter described herein, for each N2 connection request that lands at a connection load balancer, its source IP address is used to identify the group for which the load balancing algorithms are evaluated.

[0018] In accordance with yet another aspect of the subject matter described herein, the step of assigning one of the mobility management node instances to the N2 connections using a load balancing algorithm includes maintaining a group count of each of the mobility management node instances for each group, the group count indicating the number of N2 connections assigned to each mobility management node instance. For each mobility management node instance, a group count difference between the group count of the mobility management node instance and a minimum group count of the mobility management node instance is calculated. Mobility management node instances having a group count difference less than a connection distribution threshold are included as connection distribution candidates. Message processors having a group count difference equal to or greater than the connection distribution threshold are excluded from consideration as connection distribution candidates.

[0019] In accordance with another aspect of the subject matter described herein, a method for distributing connections to mobility management node instances includes detecting a failure of one of the mobility management node instances and automatically routing the connection request message to an available mobility management node instance.

[0020] In accordance with another aspect of the subject matter described herein, a method for distributing connections to mobility management node instances includes detecting a re-establishment of the mobility management node instance, and applying the connection distribution algorithm includes including the re-established mobility management node instance as a selection candidate for the connection distribution algorithm.

[0021] In accordance with another aspect of the subject matter described in this specification, a method for distributing connections to mobility management node instances includes detecting availability of a new mobility management node instance, and applying the connection distribution algorithm includes including the new mobility management node instance as a selection candidate for the connection distribution algorithm.

[0022] According to another aspect of the subject matter described herein, there is provided a system for distributing connections to mobility management node instances, the system including a connection load balancer including at least one processor and a memory, the system further including an S1 / N2 connection distributor, the S1 / N2 connection distributor issuing Internet Protocol (IP) addresses for receiving connection requests and ingress messages from Radio Access Network (RAN) nodes, maintaining connection loading measurements of the mobility management node instances, receiving connection request messages generated by RAN nodes to initiate connections with one of the mobility management node instances, applying a connection distribution algorithm to select a mobility management node instance for processing the connection request messages, the connection load balancer creating, for protocol continuity, in a database or cache at least partially populated by the connection load balancer, an association between the IP address of the selected mobility management node instance and an IP address and port of the RAN node extracted from a source IP address field and a source port field of the connection request message, and forwarding the connection request message to the mobility management node instance selected using the connection distribution algorithm.

[0023] In accordance with another aspect of the subject matter described herein, the S1 / N2 connection distributor is configured to publish the IP address by broadcasting a gratuitous Address Resolution Protocol (ARP) or ICMPv6 Neighbor Discovery message to a border gateway node, the gratuitous ARP or ICMPv6 Neighbor Discovery message associating the IP address with a Media Access Control (MAC) address of an interface of the connection load balancer.

[0024] In accordance with another aspect of the subject matter described herein, the S1 / N2 connection distributor is configured to maintain one or more groups, each group consisting of one or more IP addresses of the peer RANs that the group represents.

[0025] In accordance with another aspect of the subject matter described herein, the S1 / N2 splice splitter is configured with a splice split threshold.

[0026] According to another aspect of the subject matter described herein, the S1 / N2 connection distributor is configured to maintain the connection load information per configured group, for each configured group, the S1 / N2 connection distributor maintains a group count for each of the mobility management node instances, the group count including a count of a number of connections with the mobility management node instance, and the S1 / N2 connection distributor is further configured to calculate, for each mobility management node instance, a group count difference between the group count of the mobility management node instance and a lowest group count of the mobility management node instance, and include as connection distribution candidates mobility management node instances having a group count difference less than a connection distribution threshold.

[0027] In accordance with yet another aspect of the subject matter described herein, the S1 / N2 connection distributor is configured to detect a failure of one of the mobility management node instances and automatically route the connection request message to an available mobility management node instance.

[0028] In accordance with another aspect of the subject matter described in this specification, the S1 / N2 connection distributor is configured to detect re-establishment of the mobility management node instance and include the re-established mobility management node instance as a selection candidate for the connection distribution algorithm.

[0029] In accordance with yet another aspect of the subject matter described in this specification, the S1 / N2 connection distributor is configured to detect availability of a new mobility management node instance and include the new mobility management node instance as a selection candidate for the connection distribution algorithm.

[0030] According to yet another aspect of the subject matter described herein, a non-transitory computer-readable medium having executable instructions stored thereon, the instructions, when executed by a processor of a computer, control the computer to perform steps including a connection load balancer issuing an Internet Protocol (IP) address for receiving connection requests and ingress messages from Radio Access Network (RAN) nodes, the connection load balancer further maintaining connection loading measurements of the mobility management node instances, the connection load balancer further receiving at the connection load balancer a connection request message generated by a RAN node to initiate a connection with one of the mobility management node instances, the connection load balancer further applying a connection distribution algorithm to select a mobility management node instance for processing the connection request message. The steps further include the connection load balancer creating, for protocol continuity, in a database or cache at least partially populated by the connection load balancer, an association between the IP address of the selected mobility management node instance and the IP address and port of the RAN node extracted from the source IP address and source port fields of the connection request message, and further including the connection load balancer forwarding the connection request message to the mobility management node instance.

[0031] In accordance with another aspect of the subject matter described herein, the connection request message includes a connection request message for an S1 connection or an N2 connection.

[0032] The subject matter described herein can be implemented in hardware, software, firmware, or any combination thereof. Thus, the terms "function", "node" or "module" as used herein refer to hardware that may also include software and / or firmware components to implement the described features. In one exemplary implementation, the subject matter described herein can be implemented using a computer-readable medium having computer-executable instructions stored thereon that, when executed by a processor of a computer, control a computer to perform steps. Exemplary computer-readable media suitable for implementing the subject matter described herein include non-transitory computer-readable media such as disk memory devices, chip memory devices, programmable logic devices, and application specific integrated circuits. Additionally, the computer-readable medium implementing the subject matter described herein may be located on a single device or computing platform, or may be distributed across multiple devices or computing platforms.

[0033] The subject matter described herein will now be described with reference to the accompanying drawings. [Brief description of the drawings]

[0034] [Figure 1] A network diagram showing an S1 connection or N2 connection between a radio access node and an MME instance or an AMF instance. [Diagram 2] A network diagram showing the problems that arise when an MME node instance or an AMF node instance goes down. [Diagram 3]A network diagram illustrating a mobile communications network having a connection load balancer for load balancing S1 / N2 connections with MME / AMF instances that avoids at least some of the problems associated with current systems. [Figure 4] FIG. 1 is a network diagram illustrating load balancing of ingress traffic over S1 or N2 connections using a connection load balancer. [Diagram 5] FIG. 1 is a network diagram illustrating egress traffic flow in a mobile communications network including a connection load balancer. [Figure 6A] FIG. 13 is a call flow diagram showing connection load balancer initialization. [Figure 6B] FIG. 13 is a call flow diagram showing connection load balancer initialization. [Figure 7] FIG. 1 is a call flow diagram illustrating connection distribution using a connection load balancer. [Figure 8] FIG. 1 is a call flow diagram illustrating protocol continuity using a connection load balancer. [Figure 9] FIG. 1 is a network diagram illustrating RAN connection establishment using a connection load balancer. [Figure 10] FIG. 2 is a block diagram illustrating an example connection load balancer. [Figure 11] 11 is a flowchart illustrating an example process performed by a connection load balancer for S1 / N2 connection distribution. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0035] Detailed Description Mobile networks are evolving with multiple technologies and interconnections for sending signaling. One current challenge of mobile communication networks is to migrate applications and nodes providing services in mobile communication networks to the cloud. Cloud-based environments also require smart scaling up and down of networks. It is potentially necessary to reconfigure MME / AMF nodes when they are scaling up / down in the cloud. All S1 / N2 connections need to be added / removed during scaling up and down. S1 connections are connections between Radio Access Network (RAN) nodes and MME. N2 connections are connections between RAN nodes and AMF.

[0036] The subject matter described herein aims to solve the problem of reconfiguring MME / AMF nodes using a Connection Load Balancer (CLB), which may be located in the cloud, allowing the network to manage the scale-up and scale-down of MME and / or AMF without affecting RAN nodes connected to the MME / AMF nodes in the cloud or on-premise.

[0037] In current systems, multiple MME / AMF nodes operate as multiple instances to facilitate S1 / N2 traffic scaling / high availability process from the RAN side, whereby each MME / AMF instance has a dedicated connection with an external RAN node. Each MME / AMF instance may have multiple S1 / N2 connections from the same RAN node. For high availability, one RAN node may have S1 / N2 connections across multiple MME / AMF instances.

[0038] When any one or more MME / AMF instances go down (due to an error or scale down), all S1 / N2 connections with these instances are disconnected. When an MME / AMF instance comes up (after disaster recovery or scale up), new S1 / N2 connections have to be configured from the RAN. Due to the above fact, a remote RAN node that wants to reconnect to an MME / AMF instance needs to manage each S1 / N2 connection with a different IP address to achieve load balancing across the MME / AMF instances. Having to separately manage each S1 / N2 connection with a different IP address by the remote RAN creates a configuration burden on the remote RAN node, especially when the connections need to be re-established after an MME or AMF becomes operational again after an outage period.

[0039] Figure 1 illustrates a RAN node connected to multiple MME / AMF instances, which represent a single MME / AMF node. With reference to Figure 1, a RAN node 100 is connected to multiple MME / AMF instances 102 via S1 / N2 connections 104. Each MME / AMF instance 102 includes an Ethernet interface 106 over networks A and B. Each Ethernet interface 106 includes a MAC address, and a separate IP address is associated with each Ethernet interface 106.

[0040] In the illustrated example, each of the S1 / N2 connections 104 includes a primary ingress connection path 108 associated with one of the Ethernet interfaces of the MME / AMF 102 and a secondary ingress connection path 110 associated with another Ethernet interface 106 of the MME / AMF instance 102. The primary and secondary communication paths may be Stream Control Transmission Protocol (SCTP) based multi-homed connection paths. However, the subject matter described herein is not limited to using an SCTP multi-homed connection with only two associations. The number of associations can be adjusted from one association to the maximum associations supported by the SCTP protocol. However, the subject matter described herein is not limited to using SCTP as a transport layer protocol. Transmission Control Protocol (TCP) may be used instead of SCTP without departing from the scope of the subject matter described herein.

[0041] In the example shown, IP address IP-NODE-NA is the IP address of the MME / AMF instance-1 102 for signaling device or Ethernet interface A 106. IP address IP-NODE-NB is the IP address of the MME / AMF instance-1 102 for signaling device B or Ethernet interface B 106. IP address IP-NODE-NA is the IP address of the MME / AMF instance-N 102 for signaling device or Ethernet interface A 106. IP address IP-NODE-NB is the IP address of the MME / AMF instance-N 102 for signaling device or Ethernet interface B 106.

[0042] A remote RAN node may be connected to an MME / AMF instance via an S1 / N2 connection, which may be implemented on a single processor or multiple processors depending on the redundancy model selected. The subject matter described herein is not limited to managing S1 / N2 connections to MME / AMF instances implemented on a single processor or multiple processors. Either case is intended to be within the scope of the subject matter described herein.

[0043] Figure 2 illustrates some of the problems with the current network architecture when an MME / AMF instance goes down. When an MME / AMF instance goes down, RAN nodes previously connected to the affected MME / AMF would need to reconfigure the affected connection with a static IP of another MME / AMF instance. Such reconfiguration is burdensome for both ends of the S1 / N2 connection.

[0044] In addition to the reconfiguration issues caused by the current architecture, automatic connection distribution to the least loaded MME / AMF instance will not be possible. RAN nodes do not have visibility into the loading of MME / AMF instances, especially when the instances change due to outages or changes in cloud configuration. As a result, distribution of S1 / N2 connections by RAN nodes may be suboptimal.

[0045] Another problem that may exist in the current network architecture is that if any MME / AMF instance (or instances) goes down, the connections connected to it / them will not be automatically distributed to other MME / AMF instances, thus leaving the connections inoperable unless manual intervention is performed to reconfigure the connections with other MME / AMF instances. When an MME / AMF instance goes down, automatic reconfiguration of connections will not be possible.

[0046] In the example shown in Figure 2, when one of the MME / AMF instances 102 goes down, the S1 / N2 connections connected to the failed or inoperative MME / AMF instance 102 are interrupted. Reconnection attempts with the failed MME / AMF 102 result in connection failure. Also, there is no automatic load balancing to the remaining MME / AMFs 102.

[0047] To avoid or mitigate at least some of the problems associated with the current S1 / N2 connection architecture, a connection load balancer may be provided between the RAN nodes and the MME / AMF instances to perform automatic reconfiguration of the connections when the MME / AMF instance configuration changes without requiring reconfiguration of the connections between the connection load balancer and the remote RAN nodes. For example, the connection load balancer may be used to solve the problems mentioned with respect to FIG. 2.

[0048] In one implementation, the connection load balancer exposes a set of public IP addresses to connect to all MME / AMF instances that are being used to serve the RAN nodes. This provides the MME / AMF nodes with the flexibility to scale up or down without requiring changes to the public IP address information provided to the RAN nodes. Because the public IP addresses exposed by the connection load balancer are independent of the MME / AMF configuration, the MME / AMF configuration can change without requiring remote RAN nodes to reconfigure their S1 / N2 connections.

[0049] In addition to reducing the amount of reconfiguration required on the part of remote RAN nodes, the connection load balancer provides the flexibility to automatically balance connections on available MME / AMF resources, thereby optimizing resource usage. For example, the connection load balancer can maintain measurements of S1 / N2 connection loading of MME / AMF instances and use these measurements to make S1 / N2 connection distribution decisions. If there is a message processing capacity loss at an MME / AMF node, the connection load balancer can redistribute connections to other MME / AMF instances to provide the same level of service to the remote RAN nodes.

[0050] In Figure 3, the connectivity load balancer 300 includes Ethernet interfaces 302 and 304. The connectivity load balancer 300 exposes only IP addresses IP-NODE-A and IP-NODE-B to the RAN devices such as the RAN node 100. IP addresses IP-NODE-1-A, IP-NODE-1-B, IP-NODE-NA and IP-NODE-NB are not issued to the RAN nodes. As virtual entities, the connectivity load balancer 300 and / or the mobility management node instance 102 may represent virtual machines running on a hypervisor on cloud computing hardware.

[0051] Figure 4 illustrates an example of a proposed solution using a connection load balancer for ingress traffic. In Figure 4, the connection load balancer 300 receives S1 / N2 connection requests from the RAN node 100, performs load balancing to load balance these requests among the MME / AMF instances 102, and forwards these connection requests to the selected MME / AMF 102. Since the IP address of the MME / AMF 102 is not exposed to the RAN node 100, if the MME / AMF instance 102 needs to be scaled up or down, such scaling can be handled seamlessly in the connection load balancer 300, as described in more detail below. The IP address IP-NODE-A is issued to the RAN node 100 and other RAN nodes on network A. The RAN node 100 and other nodes on network A use the IP address IP-NODE-A as a destination IP address for ingress S1 / N2 connections via network A, with the ingress direction being from the RAN node to the MME / AMF instance. The IP address IP-Node-B is issued to the RAN node 100 and other RAN nodes on Network B. The RAN node 100 and other nodes on Network B use the IP address IP-Node-B as the destination IP address for ingress S1 / N2 connections via Network B.

[0052] Figure 5 illustrates the path of egress traffic using a network including a connection load balancer 300. In Figure 5, it can be seen that the egress traffic travels from the MME / AMF instance 102 to the RAN node 100 without passing through the connection load balancer 300. In this example, the egress direction is from the MME / AMF instance to the RAN node. The egress traffic from the MME / AMF instance does not pass through the connection load balancer 300 because the egress traffic is addressed to the IP address of the remote RAN node obtained from the ingress message from the remote RAN node.

[0053] 6A and 6B are diagrams illustrating the initialization phase of the connection load balancer 300. In step A.1 of FIG. 6A, a border gateway 600, which may be connected between the RAN node 100 and the connection load balancer 300, receives a broadcast gratuitous address resolution protocol (ARP) message or an ICMPv6 neighbor discovery message from the connection load balancer 300. The broadcast gratuitous ARP message or the ICMPv6 neighbor discovery message associates the IP addresses IP-node-A and IP-node-B with the media access control (MAC) addresses MAC-A and MAC-B, respectively. In step A.2, the border gateway 600 updates its MAC table to associate the IP addresses IP-node-A and IP-node-B with the MAC addresses MAC-A and MAC-B, respectively. Note that the MAC addresses MAC-A and MAC-B are associated with the Ethernet interfaces 302 and 304 of the connection load balancer 300, not with the MME / AMF instances.

[0054] FIG. 6B illustrates steps for configuring an MME / AMF instance. With reference to FIG. 6B, in step B.1, each MME / AMF instance configures alias IP addresses IP-node-A and IP-node-B on its loopback interface. Since loopback interfaces do not have MAC addresses, ARP messages and ICMPv6 neighbor discovery messages are not sent by these MME / AMF interfaces. In step B.2, each MME / AMF instance is configured with a multi-homed responder connection that initiates listing for incoming S1 / N2 connection requests the address IP-node-A for the primary path and the address IP-node-B for the secondary path. As described above, the IP addresses IP-node-A and IP-node-B are associated with the MAC addresses MAC-A and MAC-B of the connection load balancer 300. Since the remote RAN node connects to multiple different MME / AMF instances using IP addresses IP-node-A and IP-node-B, and the connection load balancer determines which MME / AMF instance should handle a given connection request, the MME / AMF instances can be reconfigured without requiring the remote RAN nodes to reconfigure their S1 / N2 connections as a result of the reconfiguration.

[0055] As mentioned above, one function that may be performed by the connection load balancer 300 is the distribution of S1 / N2 connections from remote RAN nodes among MME / AMF instances. Figure 7 is a message flow diagram illustrating an example of messages that may be exchanged in a connection distribution algorithm performed by the connection load balancer 300. With reference to Figure 7, in step C.1, an S1 / N2 connection request for connection-1 with destination IP address {IP-node-A, IP-node-B} and source IP address {R-IP-x, R-IP-y} and destination port P1 arrives from a remote RAN node.

[0056] In step C.2, the Border Gateway 600 queries its MAC table for {IP-Node-A, IP-Node-B} and forwards the connection request for Connection-1 to the Connection Load Balancer 300. In step C.3, the Connection Load Balancer 300 applies a connection distribution algorithm to determine the MME / AMF instance to which the connection request should be forwarded. In one example implementation, the connection load balancing is performed based on the following parameters:

[0057] · Group: Represents all connections from a particular peer, i.e. a RAN node. Group count (i.e., count of connections from remote RAN nodes per MME / AMF instance per group) – initialized to zero for all MME / AMF instances.

[0058] Connection distribution threshold (valid across groups) - MME / AMF instances with a group count difference from the lowest group count equal to or greater than this value are not considered to be candidates for receiving a new connection request. For example, if MME / AMF instances 1, 2 and 3 have group counts of 1, 2 and 3, and the connection distribution threshold is 2, then MME / AMF instances 1 and 2 are considered to be candidates for receiving a new connection request. MME / AMF instance 1 is the instance with the lowest group count, so it has a group count difference of 1-1=0, which is less than the connection distribution threshold of 2. MME / AMF instance 2 has a group count difference of 2-1=1 with respect to MME / AMF instance 1, which is less than the connection distribution threshold of 2. MME / AMF instance 3 has a group count difference of 3-1=2 with respect to MME / AMF instance 1. Since 2 is equal to the connection distribution threshold, MME / AMF instance 3 is not considered to be a candidate for receiving a new connection request.

[0059] If multiple MME / AMF instances have a group count difference less than the connection distribution threshold, the connection load balancer 300 may select among the available candidates in ascending order using any suitable parameter, such as the instance identifiers of the MME / AMF instances. Continuing with the previous example, if MME / AMF instances 1 and 2 are candidates for a new connection request, MME / AMF instance 1 may be selected for the new connection request before MME / AMF instance 2 based on the ascending order of instance identifier principle.

[0060] Once the connection load balancer 300 identifies the MME / AMF instance to which the connection request should be forwarded, the connection load balancer 300 may perform the following steps: Increment the group count of MME / AMF instance-I (MME / AMF instance i is the MME / AMF instance to which the connection load balancer 300 has determined that the connection load balancer should be forwarded) Creates association records in its cache for protocol continuity In this example, the association associates the source IP address and source port of the remote peer with the destination IP address of the MME / AMF instance. Symbolically, the association record may be {Src-IP, Src-Port, Dest-IP (MME / AMF instance)}. In FIG. 5, the destination IP address of the MME / AMF instance is IP-node-A-1, which is an IP address of an MME / AMF instance different from the alias IP address IP-node-A issued by the connection load balancer 300.

[0061] In step C.4, the connection load balancer 300 forwards the connection request to the MME / AMF instance-i determined in step C.3.

[0062] In step C.5, the MME / AMF instance-i accepts the connection. The response is sent directly to the remote peer via the border gateway. The connection load balancer is not in the return path for messages sent from the MME / AMF instance-i to the RAN node 100.

[0063] Figure 8 is a message flow diagram illustrating signaling for call continuity in a network including a connection load balancer 300. Referring to Figure 8, in step D.1, an S1 / N2 message arrives over connection-1 with destination IP address {IP-node-A, IP-node-B}, source IP address {R-IP-x, R-IP-y} and destination port P1.

[0064] In step D.2, the border gateway 600 queries its MAC table for {IP-node-A, IP-node-B} and forwards the S1 / N2 message to the connection load balancer 300 via connection-1. In this example, it is assumed that the connection request for connection-1 has already been processed as described above.

[0065] In step D.3, the connection load balancer 300 queries its association database (in cache memory) to determine the MME / AMF instances to which the connection load balancer 300 has previously forwarded the connection request message. In this example, it is assumed that the following association records are present in the association database maintained by the connection load balancer 300:

[0066] {R-IP-x, P1, MME / AMF instance-i)} → MME / AMF instance-i This entry was created in its association database by connection load balancer 300 based on the application of a load balancing algorithm to the connection request, as described above.

[0067] In step D.4, the connection load balancer 300 forwards the message to the MME / AMF instance-i determined in step D.3.

[0068] In step D.5, the MME / AMF instance-i accepts the message, processes the message, prepares a response, and sends the response over the same connection, which is sent directly to the remote peer via the border gateway 600. The connection load balancer 300 is not in the forwarding path for messages sent from the MME / AMF instance 102 to the RAN node 100.

[0069] Figure 9 illustrates a diagram of RAN connection re-establishment. In Figure 9, in step 1, MME / AMF instance 1 102 providing S1 / N2 connection 1 goes down. In step 2, S1 / N2 connection 1 connected to MME / AMF instance 1 102 is interrupted. In step 3, re-establishment of S1 / N2 connection 1 is attempted by the remote RAN node 100. The connection load balancer 300 re-routes the connection request to MME / AMF instance-i based on the connection distribution algorithm described above. It is not necessary for the remote RAN node 100 to know the IP address of the new MME / AMF instance to which the connection is being re-routed. The remote RAN node 100 sends the re-connection request to the alias IP address issued by the connection load balancer 300 on behalf of the MME / AMF instance, and the connection load balancer 300 uses its connection distribution algorithm to select an MME / AMF instance to handle the connection re-establishment request.

[0070] FIG. 10 is a block diagram illustrating an exemplary connection load balancer. With reference to FIG. 10, the connection load balancer 300 includes at least one processor 1000 and a memory 1002. The S1 / N2 connection distributor 1004 can be realized in software stored in the memory 1002 to perform the S1 / N2 connection distribution steps described herein. The connection load balancer 300 also includes signaling or Ethernet interfaces 302 and 304 that receive incoming S1 / N2 connection requests from RAN nodes. In one example, the connection load balancer 300 associates the MAC addresses of the signaling interfaces 302 and 304 with issued IP addresses that are also associated with loopback interfaces of the MME / AMF instance 102. The connection load balancer 300 may also include an S1 / N2 association cache or database 1006 populated, at least in part, by the connection load balancer 300 with an association between the IP address of the MME / AMF instance 102 selected to handle the connection and the remote RAN peer IP address and port. For example, the S1 / N2 connection distributor 1004 may create an association in the S1 / N2 association database or cache 1006 between the IP address of the MME / AMF instance 102 assigned to the connection and the IP address and port of the remote RAN node extracted from the source IP address and port fields of the connection management message.

[0071] 11 is a flow chart illustrating an example method that may be performed by the connection load balancer 300 in distributing S1 / N2 connections to mobility management nodes. With reference to FIG. 11, in step 1100, the method includes the connection load balancer issuing an Internet Protocol (IP) address for receiving S1 / N2 connection requests and ingress messages from RAN nodes. For example, the S1 / N2 connection distributor 1004 of the connection load balancer 300 may broadcast a gratuitous ARP message or an ICMPv6 Neighbor Discovery message that associates the issued IP address with a MAC address of the connection load balancer's signaling interface at the border gateway. Using the IP address IP-node-A in FIG. 5 and FIG. 6A as an example, the connection load balancer 300 sends a gratuitous ARP message or an ICMPv6 Neighbor Discovery message to the border gateway 600, which associates the IP address IP-node-A with the MAC address MAC-A, which is the MAC address of the signaling interface SIG-A 302 of the connection load balancer 300. Each MME / AMF instance 102 configures its loopback interface with the IP address IP-node-A as an alias address. The reason for using the loopback interface to add the issued IP address as an alias on the MME / AMF instance is that the loopback interface does not have a MAC address, and no ARP response or ICMPv6 Neighbor Discovery message response is sent if an ARP request or ICMPv6 Neighbor Discovery request is received for an IP address configured as an alias on the loopback interface. Therefore, multiple MME / AMF instances can configure the same issued IP address without network conflicts.The reason why the IP addresses IP-NODE-A and IP-NODE-B are configured as aliases on the loopback interface of the MME / AMF instance is so that the MME / AMF instance binds the transport layer with these addresses to listen on this port for S1 / N2 connection requests.

[0072] Returning to FIG. 11, in step 1102, the method further includes the connection load balancer maintaining a connection loading measurement of the mobility management node instances for each group. In one example, the connection load balancer 300 may maintain a group count for each MME / AMF instance 102 for all configured groups. The group count indicates the number of connections assigned to each MME / AMF instance 102 per group. Other loading measurements may be used without departing from the scope of the subject matter described herein.

[0073] In step 1104, the method further includes receiving, at the connection load balancer, a connection request message generated by a remote peer RAN node to initiate a connection with one of the mobility management node instances. For example, if the mobility management node instance is an MME, the connection request may be an S1 connection request. If the mobility management node instance is an AMF, the connection request may be an N2 connection request.

[0074] In step 1106, the method further includes the connection load balancer applying a connection distribution algorithm to select a mobility management node instance for processing the connection request message, and the connection load balancer creating an association between the IP address of the selected mobility management node instance and the IP address and port of the remote RAN peer extracted from the source IP address and source port of the connection request message in a database at least partially populated by the connection load balancer for protocol continuity. For example, the connection distribution algorithm may select an MME / AMF instance from the MME / AMF instances having a group count difference exceeding a connection distribution threshold for receiving a new S1 or N2 connection request. The connection load balancer 300 may create an association between the issued IP address associated with the selected MME or AMF instance and the IP address and port of the remote RAN peer in the S1 / N2 association cache or database 306. Using FIG. 5 as an example, this association may be between an IP address and port of the RAN node 100 and an IP address IP-Node-A issued on behalf of one of the MME / AMF instances 102 selected to handle the connection.

[0075] In step 1108, the method further includes the connection load balancer forwarding the connection request message to the selected mobility management node instance using a connection distribution algorithm. For example, the connection load balancer 300 may forward the connection request to the MME / AMF instance selected in step 1106 and update the group count of the MME / AMF instance. The connection load balancer creates an association record in its cache of subsequent messages over this S1 / N2 connection that can be forwarded to this MME / AMF instance for protocol continuity. In the message sent to the MME / AMF instance, the connection load balancer may include its MAC address as a source MAC address.

[0076] advantage The connection load balancer described herein provides at least the following advantages:

[0077] The connection load balancer described herein can be used to distribute S1 / N2 connections among MME / AMF instances, which reduces the impact of MME / AMF configuration changes on the sending node, i.e., the sending node or remote peer does not need to re-establish a connection with a new IP address when an MME / AMF instance goes down or a new MME / AMF instance is established.

[0078] A connection load balancer can be used to solve this problem by managing the internal interfaces with a single interface to the remote peer, regardless of whether one IP interface card or multiple interface cards are used to set up the S1 / N2 connections.

[0079] Installing a connection load balancer upstream of the cloud / on-premise environment MME / AMF node has the following advantages:

[0080] The reconfiguration impact on remote nodes is reduced when MME / AMF nodes are scaled up or down.

[0081] Automatic load balancing of S1 / N2 traffic for optimal use of resources in the cloud.

[0082] High redundancy is achieved without requiring extensive external configuration on the part of the remote peers.

[0083] It will be understood that various details of the presently disclosed subject matter may be changed without departing from the scope of the presently disclosed subject matter. Further, the above description is by way of example only and not by way of limitation.

Claims

1. A method for distributing S1 / N2 connections to mobility management node instances, comprising: a connection load balancer issuing an Internet Protocol (IP) address for receiving connection requests and ingress messages from a Radio Access Network (RAN) node; said connection load balancer maintaining connection loading measurements of said mobility management node instances; receiving at the connection load balancer a connection request message generated by a RAN node to initiate an S1 / N2 connection with one of the mobility management node instances; applying a connection distribution algorithm by the connection load balancer to select a mobility management node instance for processing the connection request message; creating, for protocol continuity, an IP address of the selected mobility management node instance and an IP address and port of the RAN node extracted from the source IP address and source port fields of the connection request message in an S1 / N2 association cache or database at least partially populated by the connection load balancer; the connection load balancer forwarding the connection request message to the mobility management node instance selected using the connection distribution algorithm.

2. receiving a subsequent message at the connection load balancer over the connection; querying said cache or database using the source IP address and source port extracted from said subsequent message to determine the IP address of the mobility management node instance serving said connection; and the connection load balancer forwarding the subsequent message to the IP address of the mobility management node instance.

3. 3. The method of claim 1 or 2, wherein the step of issuing the IP address comprises broadcasting a gratuitous Address Resolution Protocol (ARP) message or an Internet Control Management Protocol version 6 (ICMPv6) Neighbor Discovery message to a border gateway node, the gratuitous ARP message or the ICMPv6 Neighbor Discovery message associating the issued IP address with a Media Access Control (MAC) address of an interface of the connection load balancer.

4. The method according to any one of claims 1 to 3, comprising the step of configuring the IP address issued by the connection load balancer as an alias address of a loopback interface of the mobility management node instance.

5. The method of claim 4 , comprising the step of listening at the mobility management node instance to the IP address issued by the connection load balancer.

6. The method according to any one of claims 1 to 5, wherein the mobility management node instance comprises a mobility management entity (MME) instance or an access and mobility management function (AMF) instance, and wherein receiving the attachment request message comprises receiving an S1 or N2 attachment request message.

7. 7. The method of claim 1, wherein maintaining connection loading measurements comprises maintaining a group count for each mobility management node instance for all configured groups on each mobility management node instance, the group comprising one or more IP addresses of RAN nodes which the group represents, the group count comprising a count of the number of connections with the mobility management node instance, and selecting a mobility management node instance comprises selecting a mobility management node instance using the group count.

8. A method according to any one of claims 1 to 7, comprising the step of detecting a failure of one of the mobility management node instances and automatically routing the connection request message to an available mobility management node instance.

9. 9. The method of claim 8, comprising detecting a re-establishment of the mobility management node instance, and wherein applying the connection distribution algorithm comprises including the re-established mobility management node instance as a selection candidate of the connection distribution algorithm.

10. 10. The method according to claim 1, further comprising the step of detecting the availability of a new mobility management node instance, and wherein applying the connection distribution algorithm comprises including the new mobility management node instance as a selection candidate of the connection distribution algorithm.

11. A system for distributing S1 / N2 connections to mobility management node instances, comprising: a connection load balancer including at least one processor and a memory; an S1 / N2 connection distributor implemented by said at least one processor; The S1 / N2 connection distributor is issuing an Internet Protocol (IP) address for receiving connection requests and ingress messages from Radio Access Network (RAN) nodes; maintaining connection loading measurements of said mobility management node instances; receiving a connection request message generated by a RAN node to initiate an S1 / N2 connection with one of the mobility management node instances; applying a connection distribution algorithm to select a mobility management node instance for processing the connection request message, and creating, for protocol continuity, an association between an IP address of the selected mobility management node instance and an IP address and port of the RAN node extracted from a source IP address and source port field of the connection request message in an S1 / N2 association cache or database, at least partially populated by the connection load balancer; forwarding the attachment request message to the selected mobility management node instance.

12. The S1 / N2 connection distributor further comprises: receiving a subsequent message at the connection load balancer over the connection; querying said cache or database using the source IP address and source port extracted from said subsequent message to determine the IP address of the mobility management node instance servicing said connection; The system of claim 11 , wherein the connection load balancer is configured to forward the subsequent message to the IP address of the mobility management node instance.

13. 13. The system of claim 11 or 12, wherein publishing the IP address includes broadcasting a gratuitous Address Resolution Protocol (ARP) message or an Internet Control Management Protocol version 6 (ICMPv6) Neighbor Discovery message to a border gateway node, the gratuitous ARP message or the ICMPv6 Neighbor Discovery message associating the IP address of the connection load balancer with a Media Access Control (MAC) address of an interface of the connection load balancer.

14. The system of any one of claims 11 to 13, wherein the mobility management node instance comprises a mobility management entity (MME) instance or an access and mobility management function (AMF) instance, and receiving the attachment request message comprises receiving an S1 or N2 attachment request message.

15. 15. The system of claim 11, wherein maintaining connection loading measurements includes maintaining a group count for each mobility management node instance, the group count including a count of a number of connections with the mobility management node instance, and selecting a mobility management node instance includes selecting a mobility management node instance using the group count.

16. The system of any one of claims 11 to 15, wherein the S1 / N2 connection distributor is configured to detect a failure of one of the mobility management node instances and automatically route the connection request message to an available mobility management node instance.

17. 17. The system of claim 16, wherein the S1 / N2 connection distributor is configured to detect re-establishment of the mobility management node instance, and applying the connection distribution algorithm includes including the re-established mobility management node instance as a selection candidate of the connection distribution algorithm.

18. The system of any one of claims 11 to 17, wherein the S1 / N2 connection distributor is configured to detect the availability of a new mobility management node instance, and applying the connection distribution algorithm comprises including the new mobility management node instance as a selection candidate of the connection distribution algorithm.

19. A program for causing a computer to execute the method according to any one of claims 1 to 10.

Citation Information

Patent Citations

  • Mechanisms for enabling interworking between network slicing and evolved packet core connectivity

    JP2021500800A

  • Method and system for scalable and manageable non-access stratum (NAS) node selection function for evolved packet system

    US20150117308A1

  • Methods, systems, and computer readable media for distributing sigtran connections among signal transfer point (STP) message processors

    US20200177508A1