Flow Mapper Auto-Scaling State Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Clustering of compute services for packet processing experiences performance degradation and excessive network bandwidth consumption due to bulk synchronization during auto-scaling, particularly when new flow mapper nodes are added, as existing methods require bulk transfer of flow state information.
Innovation Solution
Implement a method where a newly added flow mapper node obtains flow state information from a previous flow mapper node using periodic flow state updates and hash computations, eliminating the need for bulk synchronization by directly messaging entities and enabling auto-discovery through external serverless functions or distributed data stores.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If bulk synchronization is performed upon member addition/removal, then stateful scalability and availability are maintained, but compute processing overhead and network bandwidth consumption increase excessively
Solution Approach 1:
The patent extracts the flow state information transfer from the bulk synchronization process. Instead of transferring all flow state information during cluster membership changes, only the specific flow identifier is transferred to the new member, while the actual flow state remains at the original owner. This selective extraction eliminates unnecessary data transfer and computation.
Solution Approach 2:
The patent segments the flow state information into two parts: the flow identifier (which is transferred to new members) and the flow state data (which remains at the owner). This segmentation allows new members to know which flows to forward without receiving duplicate copies of all flow state information, thereby reducing synchronization overhead.
2Loss of information
If bulk synchronization is performed upon member addition, then new members obtain complete flow state information, but network bandwidth and computational resources are consumed excessively
Solution Approach 1:
The patent extracts only the essential flow identifier from the complete flow state information and transfers it to new members. The actual flow state data remains at the original owner, eliminating the need for bulky data transfer while ensuring new members can still forward packets correctly by consulting the owner when needed.
3Adaptability or versatility
If auto-scaling is implemented in cluster environments, then service capacity and flexibility improve, but performance degradation occurs due to inherent synchronization overhead
Solution Approach 1:
The patent extracts the minimal necessary information (flow identifier) for auto-scaling operations, allowing new members to join the cluster without triggering bulk synchronization. This enables rapid scaling while maintaining performance, as the extraction approach eliminates the performance-degrading bulk transfer overhead.
Solution Approach 2:
The patent performs preliminary action by having new members obtain flow identifier information in advance through efficient lookup mechanisms. This preliminary acquisition of essential routing information allows new members to immediately participate in packet forwarding without waiting for bulk synchronization, thus maintaining productivity during scaling operations.
Data Source
AI summary
A method is provided including obtaining at a newly added flow mapper node of a plurality of flow mapper nodes, from a first flow locator node of a plurality of flow locator nodes, a flow owner lookup request for flow state information that includes identification of a particular flow locator that is to handle processing of a packet flow. The newly added flow mapper node determines whether it has stored flow state information. When the newly added flow mapper node does not have stored flow state information, the newly added flow mapper node identifies a particular flow mapper node of the plurality of flow mapper nodes which has stored flow state information for the particular packet flow and services the flow owner lookup request using flow state information stored by the particular flow mapper node.


