Hash-Based Link Selection for Stable Packet Flow Failover
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing load-balancing technologies in networks redistribute packet flows on functioning links when a link fails, causing service disruptions and congestion issues.
Innovation Solution
A data transmission method that determines a first member link using a hash calculation and, if it's unavailable, selects a second member link from a group including all available links, ensuring that packet flows are redirected to their original paths when a link fails or is restored, maintaining consistent flow distribution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the load-balancing algorithm uses only available links for modulo operation, then the chosen egress port is always available, but packet flows are redistributed when a link fails causing service disruptions
Solution Approach 1:
The patent applies preliminary action by pre-calculating hash values for all packet flows using the complete set of member links (including unavailable ones) before any link failure occurs. When a link fails, the pre-calculated hash values still map flows to their original links, avoiding redistribution. This is implemented by maintaining a hash table that stores the mapping relationship between packet flows and member links based on initial hash calculations, which remains valid even when link availability changes.
Solution Approach 2:
The patent inverts the conventional approach by not recalculating hash values when link availability changes. Instead of adapting the hash calculation to current available links, it maintains the original hash calculation based on the complete set of member links and uses the hash result to directly determine the egress link, regardless of current availability status. The availability check is performed separately after hash-based selection.
2Productivity
If the load-balancing algorithm redirects flows to available links when a link fails, then link utilization is improved, but original flow paths change causing congestion and service issues
Solution Approach 1:
The patent performs the hash calculation and flow-to-link mapping in advance, before any link failures occur. The hash table is pre-populated with mappings based on the complete set of member links. When links fail, the pre-established mappings are preserved, ensuring that packet flows continue along their original paths without redistribution, thereby maintaining session integrity while still achieving load balancing across available links through the initial hash distribution.
3Quantity of substance
If multiple low-speed links are used to connect network elements, then cost is reduced, but link failure impact increases due to flow redistribution
Solution Approach 1:
The patent establishes the flow-to-link mapping relationship in advance through hash calculation before any link failures occur. The hash table stores the predetermined mapping between packet flows and member links. When links fail or are restored, no recalculation is needed, and the original mappings are maintained. This preliminary establishment of mappings simplifies failure management and maintains stability in multi-link environments.
Data Source
Figure 1a~1b
Figure 2~3
Figure 4~5
AI summary
Disclosed are a data transmission method and apparatus and a network element. The method includes: receiving a packet; determining a first member link in a first group of member links based on a first decision manner, and if the first member link is unavailable, determining a second member link in a second group of member links based on a second decision manner, where all member links in the second group of member links are available and the first group of member links includes the second group of member links and an unavailable member link; and sending the packet through the second member link. According to the method, after a link fails, a flow that is distributed on another properly-functioning link before the link fails is not redistributed.