Network Flow Tracking System for Elephant Flow Rerouting
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
As network infrastructures in data centers become increasingly complex, managing network resilience to ensure minimal latency and data communication continuity becomes increasingly difficult, especially when portions of the network are not operating correctly.
Innovation Solution
A method and system that track flows in a network to identify congested egress ports on a switch, select an alternate non-congested egress port, and update the switch chip to reroute packets, using flow counter values and congestion information to determine 'elephant flows' and redirect them through less congested paths.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If network infrastructure complexity increases to handle more data flows, then network capacity and functionality improve, but network management difficulty and latency increase
Solution Approach 1:
The system enables self-service through automated flow tracking and classification. The network infrastructure automatically monitors flow counter values, identifies elephant flows, and redirects them without human intervention. This automation resolves the contradiction by allowing the system to handle increased network capacity while reducing management complexity through self-managing capabilities.
Solution Approach 2:
The system implements feedback mechanisms by continuously monitoring flow counter values and port congestion status. This feedback loop enables dynamic identification of elephant flows and automatic redirection to less congested ports, allowing the network to adapt to changing conditions and maintain efficient operation despite increased complexity.
2Reliability
If traditional flow management approaches are used, then implementation simplicity is maintained, but network resilience and latency performance deteriorate
Solution Approach 1:
The control plane automatically performs flow tracking, classification, and redirection without requiring manual network engineering intervention. This self-service approach enhances network resilience by dynamically adapting to congestion while avoiding the operational complexity of manual management.
Solution Approach 2:
The system performs preliminary classification of flows as elephant flows or mouse flows based on counter values before congestion occurs. This preliminary action enables proactive routing decisions that improve network resilience by preventing congestion rather than reacting to it, reducing the need for complex reactive management.
3Productivity
If elephant flows are not identified and redirected, then port congestion increases, but implementing flow tracking and redirection increases system complexity
Solution Approach 1:
The system uses parameter changes in flow counter values to identify elephant flows. By monitoring changes in counter values over time, the system automatically distinguishes elephant flows from mouse flows and redirects only those that would benefit from redirection, improving throughput without requiring complex analysis of each flow.
Solution Approach 2:
The control plane acts as an intermediary between the data plane and the routing infrastructure. It receives flow information, performs classification and routing decisions, then communicates redirection requests to the data plane. This intermediary approach simplifies the overall system by centralizing the complexity in a dedicated component rather than distributing it throughout the network infrastructure.
Data Source
AI summary
A method and system for tracking and managing network flows including receiving a first flow counter value for a flow of first flows and determining that the flow is an elephant flow. The method further includes obtaining flow egress port information by determining an egress port on a switch for each of the first flows, obtaining port congestion information for the switch, where the port congestion information includes port congestion data for each egress port, and selecting, based on the port congestion information and the flow egress port information, a new egress port for the flow, and sending a request to update a switch chip on the switch, where the request specifies that subsequently received packets for the flow are to be forwarded out of the new egress port.


