Disjoint multi-pathing for a data center network
First Claim
1. A data center fabric network system, comprising:
- a switch controller;
a plurality of switches directly connected to the switch controller via a plurality of secure communication links, the plurality of switches being restricted from executing a discovery protocol to determine paths to other switches in the system;
a source device connected to at least a first switch of the plurality of switches;
a destination device connected to at least a second switch of the plurality of switches; and
wherein the switch controller is configured to;
create a topology of the data center fabric network system,determine paths between the plurality of switches using path calculations performed by the switch controller,calculate one or more disjoint multi-paths from the source device to the destination device based on the topology by determining whether a fully disjoint multi-path is available from the source device to the destination device, the one or more disjoint multi-paths being fully disjoint based on a determination that a fully disjoint multi-path is available from the source device to the destination device and being partially disjoint based on a determination that a fully disjoint multi-path is not available from the source device to the destination device, andwrite the one or more disjoint multi-paths into a forwarding table of the source device, the source device being configured to communicate with the switch controller during the writing of the one or more disjoint multi-paths into the forwarding table, andwrite the one or more disjoint multi-paths into a switch forwarding table of a nearest shared switch to the source device so that all traffic sent from the source device is routed through the nearest shared switch.
2 Assignments
0 Petitions
Accused Products
Abstract
According to one embodiment, a data center fabric network system includes a controller, a plurality of switches connected to the controller via a plurality of communication links, a source device connected to at least a first switch of the plurality of switches, a destination device connected to at least a second switch of the plurality of switches, and wherein the controller is adapted for: creating a topology of the data center fabric network system, determining paths between the plurality of switches, calculating one or more disjoint multi-paths from the source device to the destination device based on the topology, and writing the one or more disjoint multi-paths into a forwarding table of at least one of: the source device, the first switch, and a nearest shared switch to the source device.
26 Citations
23 Claims
-
1. A data center fabric network system, comprising:
-
a switch controller; a plurality of switches directly connected to the switch controller via a plurality of secure communication links, the plurality of switches being restricted from executing a discovery protocol to determine paths to other switches in the system; a source device connected to at least a first switch of the plurality of switches; a destination device connected to at least a second switch of the plurality of switches; and wherein the switch controller is configured to; create a topology of the data center fabric network system, determine paths between the plurality of switches using path calculations performed by the switch controller, calculate one or more disjoint multi-paths from the source device to the destination device based on the topology by determining whether a fully disjoint multi-path is available from the source device to the destination device, the one or more disjoint multi-paths being fully disjoint based on a determination that a fully disjoint multi-path is available from the source device to the destination device and being partially disjoint based on a determination that a fully disjoint multi-path is not available from the source device to the destination device, and write the one or more disjoint multi-paths into a forwarding table of the source device, the source device being configured to communicate with the switch controller during the writing of the one or more disjoint multi-paths into the forwarding table, and write the one or more disjoint multi-paths into a switch forwarding table of a nearest shared switch to the source device so that all traffic sent from the source device is routed through the nearest shared switch. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer program product, the computer program product comprising non-transitory a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:
-
computer readable program code configured to create a topology of a data center fabric network system, wherein the system comprises a plurality of switches and a switch controller coupled directly to the plurality of switches via secure communication links, the plurality of switches being restricted from executing a discovery protocol to determine paths to other switches in the system; computer readable program code configured to determine paths between each switch and all other switches of the system using path calculations performed by the switch controller; computer readable program code configured to calculate one or more disjoint multi-paths from a source device to a destination device in the system using the switch controller by determining whether a fully disjoint multi-path is available from the source device to the destination device, the one or more disjoint multi-paths being fully disjoint based on a determination that a fully disjoint multi-path is available from the source device to the destination device and being partially disjoint based on a determination that a fully disjoint multi-path is not available from the source device to the destination device; and computer readable program code configured to write, using the switch controller, the one or more disjoint multi-paths into a forwarding table of the source device, the source device being configured to communicate with the switch controller during the writing of the one or more disjoint multi-paths into the forwarding table; and computer readable program code configured to write, using the switch controller, the one or more disjoint multi-paths into a switch forwarding table of a nearest shared switch to the source device so that all traffic sent from the source device is routed through the nearest shared switch. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A method for determining disjoint multi-paths in a data center fabric network system, the method comprising:
-
creating a topology of a data center fabric network system using a switch controller, wherein the system comprises a plurality of switches and the switch controller coupled directly to the plurality of switches via secure communication links, the plurality of switches being restricted from executing a discovery protocol to determine paths to other switches in the system; determining paths between the plurality of switches using path calculations performed by the switch controller; storing, using the switch controller, the determined paths to a switch forwarding table in each switch of the plurality of switches; calculating one or more disjoint multi-paths from a source device to a destination device in the system using the switch controller, wherein each of the one or more disjoint multi-paths comprise at least two paths that are disjoint from one another to as great of an extent as possible given the topology of the data center fabric network system resulting in at least one fully redundant path between the source device and the destination device; and writing, using the switch controller, the one or more disjoint multi-paths into at least a forwarding table of a nearest shared switch to the source device that is part of at least one disjoint multi-path, the nearest shared switch to the source device being configured to communicate with the switch controller during the writing of the one or more disjoint multi-paths into at least the forwarding table of the nearest shared switch to the source device. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
Specification