Elastic Application Instance Scaling for Network Visibility
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Network appliances face challenges in handling varying traffic volumes due to static capacity limitations, leading to potential data packet drops during high congestion, which is exacerbated in virtualized environments where a single application instance often cannot manage traffic from hundreds or thousands of virtual machines.
Innovation Solution
A visibility platform dynamically adjusts the number of application instances based on traffic volume, distributing traffic across a pool of instances to prevent drops, with new instances added during high demand and removed during low demand, using a load balancer to distribute packets effectively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a single application instance is used, then device complexity is reduced, but processing capacity becomes insufficient during high traffic volume
Solution Approach 1:
The system dynamically adjusts the number of application instances based on real-time traffic volume monitoring. When traffic exceeds a threshold, additional instances are automatically instantiated to handle the load, and when traffic decreases, instances are terminated to free resources. This dynamic scaling resolves the contradiction by adapting system capacity to actual demand rather than maintaining a fixed configuration.
Solution Approach 2:
Multiple instances of the same application are deployed to provide universal processing capability. Each instance can independently handle traffic processing tasks, and the system can flexibly allocate traffic to any available instance based on current capacity needs, thereby increasing overall processing capacity without requiring fundamentally different application types.
2Productivity
If multiple application instances are deployed, then processing capacity increases, but device complexity and resource management difficulty increase
Solution Approach 1:
The system implements continuous monitoring of traffic volume and uses this feedback to automatically trigger instance creation or termination. The monitoring component tracks incoming traffic patterns and communicates with the instance management system, which responds by scaling the number of instances accordingly. This closed-loop feedback mechanism automates complexity management rather than requiring manual intervention.
Solution Approach 2:
The system performs self-management of application instances through automated monitoring and dynamic instantiation/termination based on traffic conditions. Rather than requiring external administrative intervention to manage instance complexity, the system autonomously adjusts its own configuration in response to changing traffic demands, thereby handling complexity internally without increasing operational burden.
3Reliability
If application instances are continuously running, then processing capacity is always available, but resource waste occurs during low traffic periods
Solution Approach 1:
The system transitions from a static always-on configuration to a dynamic scaling model where application instances are instantiated only when traffic volume justifies their operation. During low-traffic periods, instances are terminated to conserve resources, while during high-traffic periods, instances are automatically created to maintain processing availability. This dynamic approach resolves the contradiction by making resource allocation responsive to actual demand.
Solution Approach 2:
The system discards (terminates) application instances during low-traffic periods when they are not needed, and recovers (reinstates) them when traffic volume increases and processing capacity is required. This cyclical pattern of discarding and recovering instances based on traffic conditions allows the system to maintain reliability when needed while minimizing resource waste during idle periods.
Data Source
AI summary
Introduced here are network visibility platforms having total processing capacity that can be dynamically varied in response to determining how much network traffic is currently under consideration. A visibility platform can include one or more network appliances, each of which includes at least one instance of an application configured to process data packets. Rather than forward all traffic to a single application instance for processing, the traffic can instead be distributed amongst a pool of application instances to collectively ensure that no data packets are dropped due to over-congestion. Moreover, the visibility platform can be designed such that application instances are elastically added/removed, as necessary, based on the volume of traffic currently under consideration.


