Dynamic Packet Scheduler for NFV Core Binding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current packet forwarders in Network Function Virtualization architectures, such as OVS-DPDK and VPP, have a static binding of cores to work items, leading to inefficient CPU resource allocation and uneven load distribution, resulting in wasted resources and limited throughput due to their inability to dynamically adjust CPU allocation based on workload demands.

Innovation Solution

A dynamic scheduler that periodically observes key performance indicators like CPU utilization, latency, and packet drops to adjust the binding of cores to work items within the user plane, allowing for dynamic allocation of resources and improving performance by scaling up or down based on observed demands.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If static binding of cores to work items is used, then device complexity is reduced and ease of operation is improved, but CPU resource utilization efficiency deteriorates and throughput is limited

Engineering Contradiction:
ImprovethroughputVSAvoidscheduler complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements dynamic core binding where the scheduler continuously monitors workload characteristics and packet flow patterns, then adjusts the binding between CPU cores and work items in real-time. This allows the system to adapt to varying traffic conditions, migrating work items between cores based on current load, cache efficiency, and workload affinity, thereby improving throughput without requiring overly complex static configurations

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The scheduler incorporates feedback mechanisms by monitoring performance metrics such as CPU utilization, packet processing latency, and workload distribution patterns. Based on this feedback, the scheduler dynamically adjusts core binding decisions, scaling up or down the number of cores assigned to specific work items according to observed demand, thus optimizing throughput while maintaining manageable complexity through data-driven decisions

Inventive Principle:
Principle #23Feedback

2Productivity

If static allocation of CPU resources is used, then ease of operation is improved, but resource utilization efficiency deteriorates due to uneven load distribution

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidconfiguration management
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The scheduler operates autonomously to manage CPU resource allocation, automatically monitoring workload patterns and dynamically adjusting core binding without requiring manual configuration. The system self-optimizes by detecting imbalances in load distribution and reallocating work items between cores based on current system state, eliminating the need for complex manual tuning while maximizing resource utilization efficiency

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system transitions from static to dynamic resource allocation, where the scheduler continuously adapts core binding configurations based on real-time workload characteristics. This dynamic approach allows the system to respond automatically to changing traffic patterns, ensuring optimal resource utilization without requiring operators to manually configure and reconfigure CPU assignments

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If dynamic allocation of CPU resources is implemented, then resource utilization efficiency is improved, but device complexity increases

Engineering Contradiction:
Improveadaptability to workloadVSAvoidscheduler complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The scheduler implements dynamic adaptability by continuously monitoring workload characteristics and adjusting core binding accordingly. The system can scale the number of cores assigned to work items up or down based on observed demand, and can migrate work items between cores to balance load and optimize performance. This dynamic behavior provides high adaptability to varying traffic conditions while maintaining manageable complexity through systematic decision-making algorithms

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP3698247B1An apparatus and method for providing a performance based packet scheduler
Publication Date: 2024.08.07 CISCO TECHNOLOGY INC
  • EP3698247B1 patent drawingFigure 1
  • EP3698247B1 patent drawingFigure 2
  • EP3698247B1 patent drawingFigure 3

AI summary

Disclosed is a method that includes periodically observing packets in a user plane according to at least one key performance indicator in a configuration file to yield an observation, wherein the observation represents a closed-loop demand of resources within the user plane. The method includes adjusting, via a scheduler in the user plane and based on the observation, a binding of cores to work items. The binding between cores and work items is dynamic and changeable to improve performance. The at least one key performance indicator can include one or more of a CPU utilization, latency and packet drops. The workload allocations can include work items that are individually schedulable functions that operate on a queue of packets within the user plane.