Adaptive Network Flow Profiles With Merge-Split Buckets
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network congestion issues in software-defined networking (SDN) environments, particularly due to VCI migrations and increased flows sharing the same link, lead to performance degradation and latency, as conventional TCP mechanisms fail to efficiently manage bandwidth allocation.
Innovation Solution
A method for generating flow profiles for computing entities by collecting and aggregating flow measurement values into buckets, using a merge-and-divide approach to reduce memory overhead and dynamically adjust bucket boundaries, allowing for efficient bandwidth management and congestion alleviation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If TCP fair sharing mechanism is used to allocate bandwidth among multiple flows, then bandwidth fairness is improved, but network performance and application speed deteriorate due to excessive flows sharing the same link
Solution Approach 1:
The patent extracts and removes excessive or redundant flows from the network link by implementing flow eviction mechanisms. When the number of flows exceeds a threshold, the system identifies and removes less important flows to reduce congestion and improve performance for remaining flows, directly addressing the contradiction between flow quantity and network productivity
Solution Approach 2:
The system dynamically changes the maximum number of flows parameter that can share a link based on current network conditions. By adjusting this parameter adaptively, the system can allow more flows during low-congestion periods and reduce the limit during high-congestion periods, resolving the contradiction between maintaining flow quantity and preserving network performance
2Measurement precision
If flow measurement data is collected for all flows to generate accurate profiles, then measurement precision is improved, but memory requirements increase significantly
Solution Approach 1:
The patent segments the collection of flow measurements by creating separate sampling mechanisms for different flow characteristics. Instead of uniformly collecting all flow data, the system divides measurement collection into segments based on flow importance, type, and activity level, maintaining precision for critical flows while reducing memory usage for less important ones
Solution Approach 2:
The system applies partial measurement action by selectively collecting detailed measurements only for a subset of important flows rather than all flows. For less important flows, the system uses simplified or aggregated measurements, achieving sufficient profile accuracy for critical operations while significantly reducing overall memory requirements
3Productivity
If VCI migration is performed to balance load across hosts, then resource utilization is improved, but network congestion increases due to additional flows on the new host
Solution Approach 1:
The patent applies preliminary action by evaluating the flow profile of the migrating VCI before the migration occurs. The system predicts the impact of migration on the destination host's flow capacity and congestion levels, and can pre-adjust parameters or prepare the destination host to accommodate the incoming flows, thereby avoiding post-migration congestion while maintaining good resource utilization
Solution Approach 2:
The system uses feedback mechanisms to monitor network congestion conditions on both source and destination hosts during VCI migration. Based on real-time congestion feedback, the system can adjust migration timing, select alternative destination hosts, or modify flow allocation parameters to prevent congestion while achieving load balancing and improved resource utilization
Data Source
AI summary
A method for creating a flow profile is provided. The method identifies a first plurality of flow measurements, each of which corresponding to one of a plurality of flows exchanged between a computing entity and a service during a first time period. The method, for each of a first plurality of buckets each of which has a pair of lower and upper bounds, increments a counter of the corresponding bucket for each of the plurality of flow measurements that falls within the pair of bounds of that bucket. The method generates a second plurality of buckets by merging and splitting at least some of the first plurality of buckets, identifies a second plurality of flow measurements for the computing entity during a second time period, and distributes these measurements into the second plurality of buckets. The method generate the flow profile by aggregating the first and second pluralities of buckets.


