Consolidator for Multi-Core Load Balancing Metrics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multi-core systems managing network traffic, synchronizing metrics across multiple packet processing engines operating on independent cores is challenging due to changing metric parameters and values, leading to outdated information that affects service accuracy.

Innovation Solution

A method is implemented where a timer is established for each packet engine, and a consolidator stores and updates counter values across cores, sending consolidated metrics to ensure accurate and up-to-date information for load balancing and network traffic management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If packet engines operate independently on separate cores, then processing speed and parallelism are improved, but metric synchronization and service accuracy deteriorate

Engineering Contradiction:
Improveprocessing speedVSAvoidservice accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

A consolidator component is introduced as an intermediary between packet engines on different cores. The consolidator collects metrics from each packet engine, consolidates them into a unified view, and distributes the consolidated metrics back to all packet engines. This mediator enables independent cores to share synchronized metric information without compromising their parallel processing capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If metrics are updated frequently across all packet engines, then service accuracy is improved, but system complexity and communication overhead increase

Engineering Contradiction:
Improveservice accuracyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The consolidator merges metric collection, consolidation, and distribution functions into a single centralized component. Instead of each packet engine independently managing metric synchronization, the consolidator handles all metric updates in one place, reducing the complexity of inter-core communication and coordination logic across the system.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system implements periodic metric consolidation where the consolidator collects metrics from packet engines at regular intervals and distributes updated consolidated metrics to all packet engines. This periodic action ensures metrics remain synchronized without requiring continuous communication, reducing system complexity while maintaining service accuracy.

Inventive Principle:
Principle #19Periodic action

3Measurement precision

If consolidated metrics are distributed to all packet engines, then load balancing accuracy is improved, but communication time and data exchange increase

Engineering Contradiction:
Improveload balancing accuracyVSAvoidcommunication time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The consolidator creates copies of the consolidated metric data and distributes them to all packet engines simultaneously. Each packet engine receives an identical copy of the consolidated metrics, enabling all engines to operate with the same up-to-date information without requiring continuous inter-engine communication, thus reducing communication time while maintaining load balancing accuracy.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8769067B2Systems and methods for statistics exchange between cores for load balancing
Publication Date: 2014.07.01 CITRIX SYSTEMS INC
  • US8769067B2 patent drawing
  • US8769067B2 patent drawing
  • US8769067B2 patent drawing

AI summary

Systems and methods for consolidating metrics and statistics used for load balancing by a plurality of cores of a multi-core intermediary are disclosed. A timer operating on each packet engine of each core in a multi-core system may expire. A consolidator may store, responsive to expiration of the timer, a set of counter values from each of the packet engines to a first storage location. The consolidator may send to each packet engine a message to update the set of counter values. The consolidator may, upon completion of updating the set of counter values by the packet engines, send a second message to the packet engines that includes a consolidated set of counter values determined based on the updated set of values from each packet engine. Each packet engine may establish settings and parameters for load balancing based on the consolidated set of counter values.