US 11,677,680 B2
Dynamic allocation of bandwidth to virtual network ports
Parminder Singh Sethi, Ludhian (IN); Suren Kumar, Vellore (IN); and Chitrak Gupta, Bangalore (IN)
Assigned to Dell Products L.P., Round Rock, TX (US)
Filed by Dell Products L.P., Round Rock, TX (US)
Filed on Mar. 5, 2021, as Appl. No. 17/193,770.
Prior Publication US 2022/0286406 A1, Sep. 8, 2022
Int. Cl. H04L 47/78 (2022.01); H04L 47/74 (2022.01); H04L 47/762 (2022.01); H04L 41/0896 (2022.01); G06F 9/455 (2018.01); H04L 47/80 (2022.01)
CPC H04L 47/781 (2013.01) [G06F 9/45558 (2013.01); H04L 41/0896 (2013.01); H04L 47/748 (2013.01); H04L 47/762 (2013.01); H04L 47/805 (2013.01); G06F 2009/45595 (2013.01)] 14 Claims
OG exemplary drawing
 
1. A method for allocating bandwidth among a plurality of virtual network ports assigned to a plurality of virtual machines associated with a hypervisor, wherein the method comprises:
accessing assignment information indicating which virtual network ports are assigned to which virtual machines;
receiving, by a network bandwidth manager, network utilization information indicative of a network utilization of each virtual network port;
receiving, by the network bandwidth manager, virtual machine priority information indicative of a derived priority for each of the plurality of virtual machines; and
configuring one or more network port bandwidth parameters individually for each of the plurality of network ports based on the assignment information, the network utilization information, and the virtual machine priority information;
wherein receiving the virtual machine priority information includes receiving the virtual machine priority information from a dynamic virtual machine priority (DVP) module, wherein the DVP module comprises a machine learning engine configured to automatically determine a derived priority for each virtual machine; and
wherein the DVP module determines the derived priority for each individual virtual machine based on collected data including:
resource utilizations of the individual virtual machines;
application information indicative of installed applications; and
virtual machine log/alert information indicative of a health of a corresponding virtual machine.