CGN Load Sharing via Address Pool Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current load sharing methods for Network Address Translation (NAT) devices, particularly Carrier Grade NAT (CGN), result in uneven distribution of public network address resources and user device loads across CPUs, leading to performance inefficiencies and imbalance.
Innovation Solution
Configuring public network addresses into address pools, where each CPU corresponds to a similar number of addresses, and grouping user devices by traffic models to ensure balanced loads, using load sharing control information to allocate addresses and translate private to public addresses, thereby optimizing CPU processing speed and load distribution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If hashing is performed by a single public network address resource, then address translation can be performed, but relatively high performance is required for forwarding unit and processing unit
Solution Approach 1:
The patent divides the single public network address resource into multiple address pools, with each pool assigned to different processing units. This segmentation allows the load to be distributed across multiple CPUs, reducing the performance requirement for any single processing unit while maintaining overall address translation capability.
2Ease of manufacture
If hashing is performed by a fixed public network address block, then address allocation can be simplified, but there is a relatively large performance difference of address translation because of different numbers of processing units and different numbers of CPUs
Solution Approach 1:
The patent implements dynamic load sharing by continuously monitoring the number of allocated public network addresses in each address pool and adjusting the distribution of translation tasks among processing units. This dynamic approach maintains simple address allocation through fixed blocks while balancing the performance load across different numbers of CPUs and processing units.
3Ease of operation
If fixed public network address block hashing is used, then implementation is straightforward, but there is a problem of poor load sharing
Solution Approach 1:
The patent employs a feedback mechanism that monitors the allocation status of public network addresses in each address pool and uses this information to dynamically adjust load distribution. This feedback loop maintains ease of operation with straightforward hashing while achieving balanced load sharing across processing units by redirecting traffic based on current pool status.
4Device complexity
If public network address resources are unevenly distributed, then configuration is simpler, but CGN performance is affected by addition and deletion of resources
Solution Approach 1:
The patent creates multiple address pools that can dynamically adapt to resource changes. When public network addresses are added or deleted, the system automatically rebalances the distribution across pools and processing units, maintaining performance stability without requiring complex manual reconfiguration.
Data Source
Figure 1~3
Figure 4~5
AI summary
Provided is a load sharing method, including that public network addresses are configured in a form of address pools; after traffic transmitted by user devices is received, the user devices are grouped according to traffic models transmitted by the user devices; CPU allocate the public network addresses to the user devices and translate private network addresses of the user devices into the public network addresses, wherein each of the address pools includes a plurality of address blocks, each of the plurality of address blocks corresponds to one CPU, each user group includes a plurality of user blocks, and each of the plurality of user blocks corresponds to one CPU. A load sharing apparatus is also provided. Thus, uneven sharing of public network address resources among a plurality of CPUs and loads of user devices can be avoided, thereby not only improving the processing speed of the CPUs for address translation, but also obtaining an excellent load sharing effect.