NAT-Free Bidirectional Connections Through Stateless Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing communication networks face challenges in establishing NAT-free outbound bidirectional connections using stateless load balancers, particularly for protocols like SIP and SCTP, due to the complexity and inefficiency of stateful load balancers, which are required for high availability and scalability, and the limitations of current stateless load balancers in handling changing network topologies.

Innovation Solution

A method and system using stateless load balancers with Target Selector Hashing Functions (TSHF) to establish NAT-free outbound transport protocol connections by identifying eligible and permissible dynamically allocated connection resources, ensuring return packets are directed to the correct processing unit without Network Address Translation (NAT), utilizing algorithms like Consistent Hashing and Maglev Hashing for efficient load balancing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If stateful load balancers are used to establish NAT-free bidirectional connections, then connection reliability is improved, but device complexity and memory resource requirements increase

Engineering Contradiction:
Improveconnection reliabilityVSAvoidload balancer complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the connection state management into two parts: the load balancer handles only basic connection forwarding using hash functions, while the actual connection state is maintained by the backend servers themselves. This segmentation allows the load balancer to remain stateless and simple, while still achieving reliable bidirectional connections through the coordinated use of hashing algorithms and server-side state tracking.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The backend servers perform self-service by maintaining their own connection state information and using it to determine how to handle incoming packets. Instead of relying on the load balancer to track all connection states, each server independently manages its own connection information, reducing the complexity burden on the load balancer while ensuring connection reliability.

Inventive Principle:
Principle #25Self-service

2Reliability

If stateful load balancers are deployed for high availability, then system reliability is improved, but scalability and cost increase

Engineering Contradiction:
Improvehigh availabilityVSAvoidscalability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent uses hash function copying across multiple load balancers to achieve consistency without state replication. Each load balancer independently computes the same hash value for a given connection using the same hashing algorithm and parameters, ensuring that all load balancers make identical forwarding decisions without needing to share or replicate connection state information. This copying approach enables horizontal scaling while maintaining high availability.

Inventive Principle:
Principle #26Copying

3Ease of operation

If Network Address Translation (NAT) is used for load balancing, then packet routing is simplified, but protocol compatibility deteriorates

Engineering Contradiction:
Improvepacket routing simplicityVSAvoidprotocol compatibility
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent introduces hash-based connection identification as an intermediary mechanism between the load balancer and the actual packet routing. Instead of directly modifying packet addresses through NAT, the system uses hash functions to generate connection identifiers that mediate the routing process. This intermediary approach maintains original packet addresses intact while still achieving proper packet routing to the correct backend servers, thereby preserving protocol compatibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Device complexity

If stateless load balancers are used to reduce complexity, then device complexity is reduced, but ability to handle changing network topologies worsens

Engineering Contradiction:
Improveload balancer simplicityVSAvoidtopology adaptation
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic adaptation in stateless load balancers by using hash functions that can dynamically respond to changes in network topology. When backend servers are added, removed, or moved, the hashing algorithm automatically redistributes connections across the available servers without requiring load balancer reconfiguration or state updates. This dynamic hashing approach enables stateless load balancers to adapt to changing topologies while maintaining their simplicity.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12464040B2Establishing a bidirectional connection between a client and a remote node
Publication Date: 2025.11.04 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • US12464040B2 patent drawing
  • US12464040B2 patent drawing
  • US12464040B2 patent drawing

AI summary

A method for establishing a bidirectional connection between a client and a remote node is disclosed. The method is performed by a processing unit that is a member of a cluster of processing units implementing clients for a communication network node, wherein each member of the cluster comprises at least one identifier that is unique within the cluster, and wherein each member of the cluster shares the same Virtual Internet Protocol (VIP) address. An eligible dynamically allocated connection resource value for the connection comprises a resource value which ensure distribution coherency for packets returned on the connection, and a permissible dynamically allocated connection resource value for the connection comprises a resource value which will not cause a protocol violation of a protocol used for establishing the bidirectional connection.