Switch Event Ordering via Sequencer Dependency Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing the order of configuration changes in a network switch database to preserve interdependencies and prevent errors, as traditional methods lack efficient mechanisms for reordering events with potential dependencies.

Innovation Solution

Implementing a Sequencer, a stream processing engine that applies speculative and concrete logic to resequence network traffic routing events, deferring changes with dependencies and resolving them in multiple passes to ensure correct programming into hardware.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If configuration changes are applied immediately to the switch without reordering, then the processing speed is fast, but errors and deadlocks occur due to unhandled interdependencies between changes

Engineering Contradiction:
Improveconfiguration correctnessVSAvoidconfiguration processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary analysis of configuration changes to identify interdependencies before applying them to the switch. The sequencer examines incoming changes, builds dependency graphs, and determines the correct application order in advance, preventing errors before they occur.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The configuration change process is segmented into distinct phases: change detection, dependency analysis, sequencing/determination of application order, and staged application. This segmentation allows the system to handle complex interdependencies systematically without compromising overall processing efficiency.

Inventive Principle:
Principle #1Segmentation

2Reliability

If a sequencer is implemented to reorder configuration changes, then interdependencies are preserved and errors are reduced, but the system complexity increases

Engineering Contradiction:
Improveconfiguration correctnessVSAvoidsystem architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The sequencer acts as an intermediary component between the configuration management system and the switch hardware. It receives configuration changes, analyzes dependencies, determines the correct application sequence, and forwards changes in the proper order, isolating the complexity from both the management system and the switch.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback mechanisms where the sequencer monitors the state of the switch and the progress of configuration changes. This feedback allows the system to adjust the sequencing dynamically and handle unexpected conditions, maintaining reliability without requiring overly complex manual intervention.

Inventive Principle:
Principle #23Feedback

3Manufacturing precision

If multiple passes are performed to resolve dependencies, then the accuracy of event ordering is improved, but the time required for configuration increases

Engineering Contradiction:
Improveevent ordering accuracyVSAvoidconfiguration application time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The sequencer performs partial dependency resolution in the first pass, handling the most critical dependencies immediately. Subsequent passes resolve remaining dependencies, with each pass processing only the necessary subset of changes. This approach achieves accurate ordering without performing unnecessary full passes over all changes.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The sequencing process is dynamic rather than static. The system adapts the number and scope of passes based on the actual complexity of the configuration changes and their interdependencies. Simple configurations require fewer passes, while complex configurations automatically receive the necessary additional passes.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11582290B2Switch event ordering
Publication Date: 2023.02.14 HEWLETT PACKARD ENTERPRISE DEV LP
  • US11582290B2 patent drawing
  • US11582290B2 patent drawing
  • US11582290B2 patent drawing

AI summary

Examples disclosed herein relate to a method comprising detecting a plurality of changes in a database, wherein the database is used to configure a switch operating traffic on a network. The method may include determining that a subset of the plurality of changes are to be deferred before being used to configure the switch, wherein each change in the subset has a potential dependency with at least one other change in the subset. The method may also include iterating through each change in the subset. The iteration may include confirming that a target change has a dependency with another change in the subset, resolving the dependency and transmitting the target change to an object manager for configuration of the switch.