IP Library Granted Patent US 9,184,999
Granted Patent B1
US 9,184,999 · App. 13/872,626 · Granted Nov 10, 2015

Logical topology in a dynamic data center network

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,184,999
App. No.
13/872,626
Granted
Nov 10, 2015
Kind
B1
Abstract

A system for configuring a network topology in a data center is disclosed. The data center includes nodes having ports capable of supporting data links that can be connected to other nodes. The system includes a memory and a processing unit coupled to the memory. The processing unit receives demand information indicative of demands between nodes. The processing unit determines a set of constraints on the network topology based on the nodes, feasible data links between the nodes, and the demand information. The processing unit determines an objective function based on a sum of data throughput across data links satisfying demands. The processing unit performs an optimization of the objective function subject to the set of constraints using a linear program. The processing unit configures the network topology by establishing data links between the nodes according to results of the optimization.

Claims (35)

1. A system for configuring a network topology in a data center, the data center comprising a plurality of nodes, each node comprising ports capable of supporting data links that can be connected to a selected other node of the plurality of nodes, the system comprising:

a memory to store processor-executable instructions; and

a processing unit coupled to the memory, wherein execution of the processor-executable instructions by the processing unit causes the processing unit to:

receive demand information indicative of expected demand for data-transfer capacities between ordered pairs of nodes in the plurality of nodes;

determine a set of constraints on the network topology based on the nodes, feasible data links between the nodes, and the demand information;

determine an objective function based on a sum of data throughput across data links in the data center satisfying demands according to the demand information, wherein the objective function is further based on a minimum throughput allocated for satisfying each demand;

perform an optimization of the objective function subject to the set of constraints using a linear program; and

configure the network topology in the data center by establishing data links between the nodes in the plurality of nodes according to results of the optimization.

2. A system according to claim 1 , wherein the objective function is the sum of data throughput across data links in the data center.

3. A system according to claim 1 , wherein the objective function is a weighted sum of 1) the sum of the data throughput across data links in the data center and 2) the minimum throughput allocated for satisfying each demand.

4. A system according to claim 1 , wherein the network topology is limited to direct connections between nodes and two-hop connections between nodes.

5. A system according to claim 1 , wherein the objective function is further based on a ratio of the data throughput that is guaranteed to be simultaneously satisfied per each demand.

6. A system according to claim 1 , wherein each node comprises an equal number of ports.

7. A system according to claim 6 , wherein each port has an equal capacity.

8. A system according to claim 7 , wherein each port has equal incoming and outgoing capacities.

9. A method for configuring a network topology in a data center, the data center comprising a plurality of nodes, each node comprising ports capable of supporting data links that can be connected to a selected other node of the plurality of nodes, the method comprising:

receiving demand information indicative of expected demand for data-transfer capacities between ordered pairs of nodes in the plurality of nodes;

determining a set of constraints on the network topology based on the nodes, feasible data links between the nodes, and the demand information;

determining an objective function based on a sum of data throughput across data links in the data center satisfying demands according to the demand information, wherein the objective function is further based on a minimum throughput allocated for satisfying each demand;

performing an optimization of the objective function subject to the set of constraints using a linear program; and

configuring the network topology in the data center by establishing data links between the nodes in the plurality of nodes according to results of the optimization.

10. A method according to claim 9 , wherein the objective function is the sum of data throughput across data links in the data center.

11. A method according to claim 9 , wherein the objective function is a weighted sum of 1) the sum of the data throughput across data links in the data center and 2) the minimum throughput allocated for satisfying each demand.

12. A method according to claim 9 , wherein the network topology is limited to direct connections between nodes and two-hop connections between nodes.

13. A method according to claim 9 , wherein the objective function is further based on a ratio of the data throughput that is guaranteed to be simultaneously satisfied per each demand.

14. Non-transitory computer-readable storage media storing processor-executable instructions, which, when executed by one or more processors, cause the one or more processors to:

receive demand information indicative of expected demand for data-transfer capacities between ordered pairs of nodes in a plurality of nodes in a data center, wherein each node comprises ports capable of supporting data links that can be connected to a selected other node of the plurality of nodes;

determine a set of constraints on a network topology in the data center based on the nodes, feasible data links between the nodes, and the demand information;

determine an objective function based on a sum of data throughput across data links in the data center satisfying demands according to the demand information, wherein the objective function is further based on a minimum throughput allocated for satisfying each demand;

perform an optimization of the objective function subject to the set of constraints using a linear program; and

configure the network topology in the data center by establishing data links between the nodes in the plurality of nodes according to results of the optimization.

15. Non-transitory computer-readable storage media according to claim 14 , wherein the objective function is the sum of data throughput across data links in the data center.

16. Non-transitory computer-readable storage media according to claim 14 , wherein the objective function is a weighted sum of 1) the sum of the data throughput across data links in the data center and 2) the minimum throughput allocated for satisfying each demand.

17. Non-transitory computer-readable storage media according to claim 14 , wherein the network topology is limited to direct connections between nodes and two-hop connections between nodes.

18. Non-transitory computer-readable storage media according to claim 14 , wherein the objective function is further based on a ratio of the data throughput that is guaranteed to be simultaneously satisfied per each demand.

Assignments (2)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044334/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2013
From: KABBANI, ABDUL; VAHDAT, AMIN
To: GOOGLE INC.
Reel/Frame 030317/0738 →