Dynamic Resource Allocation in Network Devices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network devices lack the flexibility to dynamically allocate resources efficiently, leading to suboptimal performance and inflexibility in handling varying network traffic demands and configurations.

Innovation Solution

Implementing a system where network devices can dynamically allocate physical resources such as RAM and TCAM across different lookup functions, using logical-physical mappings to adjust resource allocation based on demand, allowing for efficient processing and adaptation to different network scenarios.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If network devices use fixed resource allocation for lookup functions, then device structure is simple and easy to manage, but performance is suboptimal and flexibility is reduced when handling varying network traffic demands

Engineering Contradiction:
Improveflexibility in handling varying network traffic demandsVSAvoidresource allocation mechanism complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic resource allocation where physical resources (RAM, TCAM) are not statically assigned to lookup functions but can be dynamically allocated and reallocated based on current network traffic demands and configuration requirements. This allows the network device to adapt to varying workloads while maintaining manageable complexity through automated allocation mechanisms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent creates a universal resource pool that can serve multiple lookup functions (routing, switching, ACL, QoS, etc.). Instead of dedicating specific physical resources to each lookup function, a shared pool of physical resources is managed through logical-physical mappings that can be dynamically adjusted, enabling one resource pool to support multiple functions simultaneously.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If network devices allocate sufficient physical resources to all lookup functions, then performance is improved, but resource utilization efficiency decreases when not all functions are needed

Engineering Contradiction:
Improvenetwork packet processing performanceVSAvoidresource utilization efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The dynamic allocation mechanism continuously monitors and adjusts resource distribution to match actual usage patterns. When certain lookup functions are not needed or require minimal resources, those physical resources are automatically reallocated to other functions that need them, ensuring both high performance and efficient resource utilization without waste.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent merges previously separate physical resource allocations for different lookup functions into a unified dynamic resource pool. This consolidation allows resources to be shared and reallocated based on actual demand, improving overall utilization efficiency while maintaining the ability to provide sufficient resources to any single function when needed for optimal performance.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11316788B2Dynamic allocation of resources within network devices
Publication Date: 2022.04.26 HEWLETT PACKARD ENTERPRISE DEV LP
  • US11316788B2 patent drawing
  • US11316788B2 patent drawing
  • US11316788B2 patent drawing

AI summary

Examples relate to dynamic allocation of resources within network devices. In one example, a computing device may: receive, from a particular lookup function of a plurality of lookup functions, a lookup request for a network packet; identify, based on a logical table that corresponds to the particular lookup function, at least one physical resource included in a particular resource pool of at least one dynamic resource pool; obtain, from a particular physical resource of the at least one physical resource, response data that is responsive to the lookup request; and provide the response data to the particular lookup function.