Resource Scheduler Module for Network Memory Bottlenecks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Network devices experience memory bottlenecks during heavy loading conditions due to limited system memory and large packet buffering requirements, leading to resource congestion and session drops in application-layer communication sessions.
Innovation Solution
A resource scheduler module (RSM) prioritizes communication sessions based on weighted expectations of remaining data receipt time, allocates additional memory resources to high-priority sessions, and employs mechanisms like TCP window management and preemptive session handling to manage resource access and reduce congestion.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If system memory is increased to handle heavy loading conditions, then processing throughput is improved, but device complexity and cost increase
Solution Approach 1:
The patent implements dynamic memory allocation where the resource scheduler module continuously monitors system memory utilization and adjusts memory allocation to communication sessions in real-time. When memory utilization exceeds thresholds, the system dynamically closes TCP windows, opens them for selected sessions, and preempts lower-priority sessions, allowing the same physical memory to efficiently handle variable load conditions without requiring excessive memory capacity.
Solution Approach 2:
The system changes operational parameters by implementing multiple resource thresholds that trigger different scheduling behaviors. As memory utilization increases and crosses predefined thresholds, the system transitions between different resource allocation strategies, including closing TCP windows, selecting sessions for parallel execution, and preempting sessions, thereby optimizing throughput across different memory conditions without expanding physical memory.
2Reliability
If packet buffering capacity is increased to reduce session drops, then session reliability is improved, but memory utilization and congestion increase
Solution Approach 1:
The patent applies local quality by providing differentiated memory buffering capacity to different communication sessions based on their priority and progress. The resource scheduler module identifies selected sessions and allocates them preferential access to buffer memory, while lower-priority sessions receive reduced or no buffering resources. This selective allocation ensures that critical sessions maintain reliability while overall memory utilization remains controlled.
Solution Approach 2:
The resource scheduler module acts as an intermediary between the limited buffer memory resources and multiple communication sessions. It manages the allocation and de-allocation of buffer memory dynamically, closing TCP windows for non-selected sessions to free buffer resources and opening them for selected sessions, thereby mediating between the need for session reliability and the constraint of limited memory capacity.
3Speed
If resource allocation is optimized for high-priority sessions, then processing speed is improved, but fairness to other sessions deteriorates
Solution Approach 1:
The system implements periodic re-evaluation of session priorities and progress through the resource scheduler module, which continuously monitors system memory utilization and session states. Based on predefined resource thresholds and session weights, the system periodically selects different sessions for parallel execution and memory allocation, ensuring that no single session monopolizes resources indefinitely and that fairness is maintained through structured, rule-based scheduling.
Solution Approach 2:
The patent incorporates feedback mechanisms where the resource scheduler module monitors session progress, memory utilization, and system performance, then adjusts resource allocation accordingly. Session weights are calculated based on expected receipt time of remaining data, and this feedback informs the selection of sessions for parallel execution, balancing processing speed for high-priority sessions with fair opportunity for other sessions to progress.
Data Source
AI summary
In general, the invention is directed to techniques for scheduling resource access within an intermediate network device. For example, as described herein, a device receives packets for a plurality of sessions that include application-layer data for the sessions. The device determines a weight for each of the plurality of sessions and, during periods of resource congestion, selects one or more sessions for additional resource allocation based on the respective weights of the sessions. The device allocates additional memory resources to selected sessions to enable further buffering of application-layer data such that the device may apply the service to multiple sessions concurrently despite the resource congestion.


