Multi-Stage Switch Fabric Programming with Load-Balancing and Blocking Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional switch programming algorithms in multi-stage switch fabrics are computationally intensive and inefficient, particularly in handling new and modified connections, leading to high mesh restoration times and complexity in managing drop and continue, multicast, and unidirectional connections.

Innovation Solution

The implementation of load-balancing, blocking recovery, background rebalancing, and rollback algorithms to efficiently select and manage center stage switches in multi-stage switch fabrics, reducing the need for chain pull operations and enabling deterministic connection setup times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional router-based algorithms are used to program switch connections, then complete reconfiguration of the entire switch element is achieved, but computational complexity and time consumption increase significantly

Engineering Contradiction:
Improveconnection reconfiguration reliabilityVSAvoidswitch programming complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the switch fabric into multiple center stage switches and divides the connection programming task into individual slice-level operations. Instead of reconfiguring the entire switch element, the algorithm selectively programs only the specific center stage switches and connection slices that need to be modified, thereby reducing computational complexity while maintaining reconfiguration reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention applies local quality by making the programming algorithm adaptive to the specific characteristics of each connection slice and center stage switch. The load-balancing and blocking recovery algorithms adjust their behavior based on local conditions such as current utilization patterns and blocking states, rather than applying uniform reconfiguration across the entire switch element.

Inventive Principle:
Principle #3Local quality

2Adaptability or versatility

If full switch element reconfiguration is performed for each switching event, then new connections are established, but mesh restoration time increases

Engineering Contradiction:
Improveconnection establishment capabilityVSAvoidmesh restoration time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-calculating load-balancing metrics and maintaining blocking recovery algorithms in standby. When a switching event occurs, the system can quickly determine the optimal center stage switch assignment using pre-established criteria, avoiding time-consuming computations during actual mesh restoration operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention applies partial action by performing reconfiguration only on the necessary portion of the switch fabric affected by the switching event. Instead of reconfiguring all center stage switches and connection slices, the algorithm identifies and modifies only those specific elements that are blocked or need to be updated, significantly reducing mesh restoration time.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If deterministic connection setup times are implemented, then connection provisioning efficiency improves, but algorithm complexity increases

Engineering Contradiction:
Improveconnection setup efficiencyVSAvoidalgorithm complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent achieves deterministic connection setup times by changing the algorithmic parameters from ad-hoc decision-making to structured, predictable operations. The load-balancing algorithm uses consistent metrics such as minimum utilization thresholds and blocking probability calculations, which produce deterministic outcomes. This structured approach improves connection setup efficiency while keeping algorithm complexity manageable through parameter-based control.

Inventive Principle:
Principle #35Parameter changes

4Productivity

If chain pull operations are reduced, then switch fabric performance improves, but connection management complexity increases

Engineering Contradiction:
Improveswitch fabric performanceVSAvoidconnection management ease
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent implements self-service by enabling the switch fabric to automatically perform load-balancing adjustments and blocking recovery operations without requiring manual chain pull interventions. The system monitors its own state and autonomously reconfigures center stage switches to maintain optimal performance, improving switch fabric productivity while the management interface provides simplified oversight rather than direct control.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8649370B2Systems and methods for programming connections through a multi-stage switch fabric with blocking recovery, background rebalancing, and rollback
Publication Date: 2014.02.11 CIENA CORP
  • US8649370B2 patent drawing
  • US8649370B2 patent drawing
  • US8649370B2 patent drawing

AI summary

The present invention provides systems and methods for programming connections through a multi-stage switch fabric. The present invention utilizes load-balancing, blocking recovery, background rebalancing, and rollback algorithms to select and manage connection balance on center stage switches in the multi-stage switch fabric for new and modified connections. The load-balancing algorithm attempts to spread the multi-connection slices across center stage switches as evenly as possible, to increase the probability that future multi-connection slices can be added without needing to rearrange existing slices. Advantageously, the present invention is efficient by making the best possible local decision for one multi-connection slice at a time, without considering other multi-connection slices that may also need center switch assignments. Additionally blocking recovery, rollback and background rebalancing features are also supported.