SDN Traffic Distribution via Client Packet Bucketing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network traffic distribution methods, such as traditional routing and global server load balancing, are non-deterministic and rely on expensive device redundancy, leading to delays and inefficiencies when client flows change or network paths reconverge, especially when multiple targets share the same network address.
Innovation Solution
Implementing software-defined networking (SDN) with a switching layer that separates network traffic into buckets based on client packet elements, using a consistent hashing algorithm to assign these buckets to servers, allowing for predictable and balanced traffic distribution across multiple destinations without continuous synchronization or stateful awareness.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If traditional routing techniques are used to send traffic to the closest target, then traffic distribution is simple, but the system becomes non-deterministic and requires expensive device redundancy when network paths reconverge
Solution Approach 1:
The patent segments network traffic into distinct flows based on client device identifiers and applies deterministic routing rules to each flow segment. This allows independent control of traffic paths while maintaining session reliability without requiring redundant devices.
Solution Approach 2:
The patent introduces a controller as an intermediary that manages flow tables in network devices. This controller deterministically assigns flows to specific target devices, acting as a mediator between clients and multiple targets sharing the same network address, eliminating the need for expensive redundancy.
2Productivity
If GSLB is used to distribute traffic among targets with different addresses, then traffic distribution is achieved, but the system becomes expensive and non-deterministic
Solution Approach 1:
The patent enables multiple target devices to share a single network address, making the system universal in handling traffic for multiple destinations without requiring separate addresses or complex GSLB infrastructure. The flow-based routing provides multi-functionality across different target devices.
Solution Approach 2:
The patent changes the routing parameter from destination-based (traditional routing) to flow-based (client identifier, source address, destination address combination). This parameter change enables deterministic traffic distribution to multiple targets sharing the same address without requiring GSLB complexity.
3Adaptability or versatility
If network paths reconverge or client entry points change, then network adaptability improves, but session continuity is lost and delays occur
Solution Approach 1:
The patent performs preliminary action by pre-establishing deterministic flow rules in network device flow tables before network changes occur. When path reconvergence or entry point changes happen, the pre-configured flow rules immediately direct traffic to the correct target without session interruption or delays.
Solution Approach 2:
The patent implements feedback through the controller that monitors network conditions and dynamically updates flow tables to maintain session continuity. The controller receives information about path changes and adjusts flow assignments to preserve active sessions, reducing reestablishment time.
Data Source
AI summary
Systems and methods are disclosed for distributing network traffic received from a plurality of client devices and bound toward a plurality of servers sharing a common network address. One method includes receiving network traffic from the plurality of client devices, addressed to an network address associated the servers; separating the received network traffic into assigned buckets based on a respective source network address associated with each unit of traffic; and forwarding the received traffic to one of a plurality of servers associated with the predetermined network address, based on the bucket assigned. The network traffic may be separated into assigned buckets by determining which subset of bits of an network address of a client device to evaluate for bucket separations. A netmask may be created based on the determined subset of bits, and each source network address may be mapped to one of the buckets using the netmask.


