Resource Scheduler Module for Network Memory Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering Contradiction Analysis

1Productivity

If system memory is increased to handle heavy loading conditions, then processing throughput is improved, but device complexity and cost increase

Engineering Contradiction:
Improveprocessing throughputVSAvoidsystem memory capacity
Core Design Contradiction:
ProductivityVSDevice complexity

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.

Inventive Principle:
Principle #15Dynamics

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.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If packet buffering capacity is increased to reduce session drops, then session reliability is improved, but memory utilization and congestion increase

Engineering Contradiction:
Improvesession continuityVSAvoidmemory utilization
Core Design Contradiction:
ReliabilityVSQuantity of substance

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.

Inventive Principle:
Principle #3Local quality

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If resource allocation is optimized for high-priority sessions, then processing speed is improved, but fairness to other sessions deteriorates

Engineering Contradiction:
Improveprocessing speedVSAvoidsession fairness
Core Design Contradiction:
SpeedVSEase of operation

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.

Inventive Principle:
Principle #19Periodic action

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.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9712374B1Network services resource management
Publication Date: 2017.07.18 JUNIPER NETWORKS INC
  • US9712374B1 patent drawing
  • US9712374B1 patent drawing
  • US9712374B1 patent drawing

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.