IP Library Granted Patent US 11,102,142
Granted Patent B2
US 11,102,142 · App. 15/879,148 · Granted Aug 24, 2021

Methods and apparatus to perform dynamic load balancing for a multi-fabric environment in network-based computing

Inventors: Raja Kommula (Cupertino, CA); Raj Yavatkar (Saratoga, CA); Thayumanavan Sridhar (Sunnyvale, CA)
Assignee: VMware, Inc.
H04L47/726H04L47/781H04L47/803H04L47/125H04L47/826
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 11,102,142
App. No.
15/879,148
Granted
Aug 24, 2021
Kind
B2
Abstract

An example apparatus to manage network resources includes a load balancing detector to determine to reassign first and second network fabrics; and a network fabric configurator to, in response to the detecting to reassign the first and second network fabrics, configuring a virtual network distributed switch to: assign the first network fabric to ones of the first applications previously assigned to the second network fabric; and assign the second network fabric to the second application.

Claims (47)

1. A method to manage network resources, the method comprising:

determining to reassign first and second network fabrics; and

in response to the determining to reassign the first and second network fabrics, configuring a virtual network distributed switch to:

assign the first network fabric to ones of first applications previously assigned to the second network fabric; and

assign the second network fabric for exclusive use by a second application for a duration by assigning first and second distributed virtual ports of the virtual network distributed switch to the second application, the first and second distributed virtual ports corresponding to first and second network links forming the second network fabric.

2. The method as defined in claim 1 , wherein the determining to reassign the first and second network fabrics is based on a multi-fabric load balancing event indicative of high-bandwidth usage corresponding to the second application.

3. The method as defined in claim 1 , further including receiving an application programming interface call requesting exclusive network fabric use, and the determining to reassign the first and second network fabrics is based on the application programming interface call.

4. The method as defined in claim 3 , wherein the application programming interface call indicates the duration for the exclusive network fabric use.

5. The method as defined in claim 1 , further including receiving a probe response indicative of high-bandwidth usage corresponding to the second application, and the determining to reassign the first and second network fabrics is based on the high-bandwidth usage of the second application.

6. The method as defined in claim 1 , further including assigning at least some of the first applications to the second network fabric when the second application is finished using the second network fabric.

7. The method as defined in claim 1 , wherein the first applications are to communicate via the first network fabric using a first link aggregation group, and the second application is to communicate via the second network fabric using a second link aggregation group.

8. An apparatus to manage network resources, the apparatus comprising:

a load balancing detector structured to determine to reassign first and second network fabrics; and

a network fabric configurator structured to, in response to the determining to reassign the first and second network fabrics, configure a virtual network distributed switch to:

assign the first network fabric to ones of first applications previously assigned to the second network fabric;

assign the second network fabric for exclusive use by a second application for a duration by assigning first and second distributed virtual ports of the virtual network distributed switch to the second application, the first and second distributed virtual ports corresponding to first and second network links forming the second network fabric; and

assign the second network fabric to at least some of the first applications in response to a timer indicating that the duration has expired, at least one of the load balancing detector or the network fabric configurator including a logic circuit.

9. The apparatus as defined in claim 8 , wherein the load balancing detector is to determine to reassign the first and second network fabrics based on a multi-fabric load balancing event indicative of high-bandwidth usage corresponding to the second application.

10. The apparatus as defined in claim 8 , further including an application programming interface structured to receive a request for exclusive network fabric use, the load balancing detector to determine to reassign the first and second network fabrics based on the request received by the application programming interface.

11. The apparatus as defined in claim 10 , wherein the request indicates the duration for the exclusive network fabric use.

12. The apparatus as defined in claim 8 , further including a prober structured to receive a probe response indicative of high-bandwidth usage corresponding to the second application, the load balancing detector to determine to reassign the first and second network fabrics based on the high-bandwidth usage of the second application.

13. The apparatus as defined in claim 8 , wherein the network fabric configurator is further to assign at least some of the first applications to the second network fabric when the second application is finished using the second network fabric.

14. The apparatus as defined in claim 8 , wherein the first applications are to communicate via the first network fabric using a first link aggregation group, and the second application is to communicate via the second network fabric using a second link aggregation group.

15. An apparatus to manage network resources, the apparatus comprising:

means for determining to reassign first and second network fabrics; and

means for configuring network fabric assignments in response to the determining to reassign the first and second network fabrics by:

assigning the first network fabric to ones of first applications previously assigned to the second network fabric;

assigning the second network fabric for exclusive use by a second application for a duration by assigning first and second distributed virtual ports of a virtual network distributed switch to the second application, the first and second distributed virtual ports corresponding to first and second network links forming the second network fabric; and

assigning the second network fabric to at least some of the first applications in response to expiration of the duration.

16. The apparatus as defined in claim 15 , wherein the means for determining is to determine to reassign the first and second network fabrics based on a multi-fabric load balancing event indicative of high-bandwidth usage corresponding to the second application.

17. The apparatus as defined in claim 15 , further including means for receiving an application programming interface call requesting exclusive network fabric use, the means for determining to reassign to determine to reassign the first and second network fabrics based on the application programming interface call.

18. The apparatus as defined in claim 17 , wherein the application programming interface call indicates the duration for the exclusive network fabric use, the means for configuring to assign the second network fabric for the exclusive use by the second application based on the duration from the application programming interface call.

19. The apparatus as defined in claim 15 , further including means for receiving a probe response indicative of high-bandwidth usage corresponding to the second application, the means for determining to determine to reassign the first and second network fabrics based on the high-bandwidth usage of the second application.

20. The apparatus as defined in claim 15 , wherein the means for configuring is further to assign at least some of the first applications to the second network fabric when the second application is finished using the second network fabric.

21. The apparatus as defined in claim 15 , wherein the first applications are to communicate via the first network fabric using a first link aggregation group, and the second application is to communicate via the second network fabric using a second link aggregation group.

22. A non-transitory computer readable storage medium comprising instructions that, when executed, cause at least one processor to at least:

determine to reassign first and second network fabrics; and

in response to the determining to reassign the first and second network fabrics, configure a virtual network distributed switch to:

assign the first network fabric to ones of first applications previously assigned to the second network fabric;

assign the second network fabric for exclusive use by a second application for a duration by assigning first and second distributed virtual ports of the virtual network distributed switch to the second application, the first and second distributed virtual ports corresponding to first and second network links forming the second network fabric; and

assign the second network fabric to at least some of the first applications in response to expiration of the duration.

23. The non-transitory computer readable storage medium as defined in claim 22 , wherein the instructions are to cause the at least one processor to determine to reassign the first and second network fabrics based on a multi-fabric load balancing event indicative of high-bandwidth usage corresponding to the second application.

24. The non-transitory computer readable storage medium as defined in claim 22 , wherein the instructions are further to cause the at least one processor to receive an application programming interface call requesting exclusive network fabric use, and to determine to reassign the first and second network fabrics based on the application programming interface call.

25. The non-transitory computer readable storage medium as defined in claim 24 , wherein the application programming interface call indicates the duration for the exclusive network fabric use.

26. The non-transitory computer readable storage medium as defined in claim 22 , wherein the instructions are further to cause the at least one processor to receive a probe response indicative of high-bandwidth usage corresponding to the second application, and to determine to reassign the first and second network fabrics based on the high-bandwidth usage of the second application.

27. The non-transitory computer readable storage medium as defined in claim 22 , wherein the instructions are further to cause the at least one processor to assign at least some of the first applications to the second network fabric when the second application is finished using the second network fabric.

28. The non-transitory computer readable storage medium as defined in claim 22 , wherein the first applications are to communicate via the first network fabric using a first link aggregation group, and the second application is to communicate via the second network fabric using a second link aggregation group.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2018
From: KOMMULA, RAJA; YAVATKAR, RAJ; SRIDHAR, THAYUMANAVAN
To: VMWARE, INC.
Reel/Frame 044720/0215 →