SYSTEMS AND METHODS FOR PROGRAMMING CONNECTIONS THROUGH A MULTI-STAGE SWITCH FABRIC WITH BLOCKING RECOVERY, BACKGROUND REBALANCING, AND ROLLBACK
First Claim
1. A method for programming a multi-connection slice through a multi-stage switch fabric comprising a plurality of ingress switches interconnected to a plurality of center stage switches interconnected to a plurality of egress switches, comprising:
- receiving a multi-connection slice request, wherein the multi-connection slice comprises the flow in a single direction across the multi-stage switch fabric from one of the plurality of ingress switches to one of the plurality of egress switches, and wherein the request comprises the number of channels;
computing an imbalance for all links from the one of the plurality of ingress switches to each of the plurality of center stage switches and from the one of the plurality of egress switches to each of the plurality of center stage switches; and
selecting a center stage switch of the plurality of center stage switches responsive to the lowest imbalance from the computing step.
6 Assignments
0 Petitions
Accused Products
Abstract
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.
-
Citations
20 Claims
-
1. A method for programming a multi-connection slice through a multi-stage switch fabric comprising a plurality of ingress switches interconnected to a plurality of center stage switches interconnected to a plurality of egress switches, comprising:
-
receiving a multi-connection slice request, wherein the multi-connection slice comprises the flow in a single direction across the multi-stage switch fabric from one of the plurality of ingress switches to one of the plurality of egress switches, and wherein the request comprises the number of channels; computing an imbalance for all links from the one of the plurality of ingress switches to each of the plurality of center stage switches and from the one of the plurality of egress switches to each of the plurality of center stage switches; and selecting a center stage switch of the plurality of center stage switches responsive to the lowest imbalance from the computing step. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A multi-stage switch fabric with a load-balancing algorithm for provisioning multi-connection slices through center stages of the switch fabric, comprising:
-
a plurality of ingress switches interconnected to a plurality of center stage switches interconnected to a plurality of egress switches; a controller in communication with the plurality of ingress switches, the plurality of center stage switches, and the plurality of egress switches, wherein the controller is configured to; receive a multi-connection slice request, wherein the multi-connection slice comprises the flow in a single direction across the multi-stage switch fabric from one of the plurality of ingress switches to one of the plurality of egress switches; and select one of the center stage switch of the plurality of center stage switches responsive to computed imbalances of all links the one of the plurality of ingress switches to each of the plurality of center stage switches and from the one of the plurality of egress switches to each of the plurality of center stage switches. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A three-stage optical switch with a load-balancing algorithm for provisioning connections through center stages of the switch fabric, comprising:
-
a plurality of line modules each line module comprising a plurality of ingress switches and a plurality of egress switches; a plurality of switch modules each switch module comprising a plurality of center stage switches; a backplane connected to the plurality of line modules and the plurality of switch modules, wherein the plurality of ingress switches, the plurality of egress switches, and the plurality of center stage switches are interconnected through the backplane; and means for selecting a center stage switch of the plurality of center stage switches responsive to one of a new and modified connection from one of the plurality of ingress switches to one of the plurality of egress switches. - View Dependent Claims (17, 18, 19, 20)
-
Specification